CN109766672A - 一种芯核版权匿名认证方法 - Google Patents
一种芯核版权匿名认证方法 Download PDFInfo
- Publication number
- CN109766672A CN109766672A CN201910031365.3A CN201910031365A CN109766672A CN 109766672 A CN109766672 A CN 109766672A CN 201910031365 A CN201910031365 A CN 201910031365A CN 109766672 A CN109766672 A CN 109766672A
- Authority
- CN
- China
- Prior art keywords
- puf
- sent
- fpga
- response
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明公开了一种芯核版权匿名认证方法,采用双PUF结构的应用原理,实现对硬件FPGA与软件IP的版权认证。双PUF结构的使用,使得FPGA提供商不需要预先存储PUF所有的激励响应对,占用系统资源少,安全性和适用性更高。在IP电路进行交易之前,IP提供商将版权信息及购买者的匿名身份嵌入到IP核,以实现被动的IP的版权保护与盗版追踪。匿名性使得购买者的权益得到保证,同时在可信设备提供商的参与下可以实现盗版行为的追踪溯源。
Description
技术领域
本发明涉及芯核版权认证领域,特别是一种芯核版权匿名认证方法。
背景技术
自PUF概念被Pappu等人[1]首次提出以来,国内外研究者已经围绕基于PUF 实现的版权保护方法作出了诸多具有启发性的探索。本发明基于PUF来实现芯核版权匿名认证方案,下面主要针对现有相关研究进行介绍。
在基于PUF的FPGA芯核版权保护方面,Li等人[2]提出利用PUF、数据选择器以及可配置逻辑来隐藏原始逻辑函数,从而防止非法攻击者通过逆向工程攻击得到完整的电路网表。这种方法适用于组合逻辑电路和时序逻辑电路。仿真结果表明,通过这种混淆方法仅需要少于10%的面积开销就可以达到较高的安全级别。Kumar等人[3]针对FPGA器件实现了一种基于SRAM的“蝶形PUF”结构并提出一种新型IP保护协议。该PUF结构使用了不稳定的交叉耦合电路,即将逆变器换成了锁存器或触发器。锁存器通常用来存储电路信息,它可以被清空(此时输出为0)或者被重置(输出1),这样的好处是它们不需要上电就可以进行实时测量。BPUF适用于所有类型的FPGA,是一种基于FPGA的IP核保护机制下提出的PUF新结构。此外,该团队还提出基于公钥加密的FPGA IP认证协议[4]. 基于公钥的方法无需在FPGA设备中存储密钥,有利于提高算法安全性。安全性能的提高主要以额外硬件开销为代价,但是它并不会引起明显的性能下降。
为了保证IP核版权的合法性以及被合法应用于授权的器件上,已提出的技术中,Gora等人[5]利用FPGA上实现的PUF电路来提取128位密钥信息用于加密软件IP核,由此达到将单个软件IP核与FPGA硬件绑定的目的。这种方法假设系统集成商是完全可信的,FPGA中PUF电路的所有CRP由系统集成商来存储。Simpson等人[6]提出利用PUF来认证第三方IP以及软件模块运行的硬件平台。在协议中,TTP能够获知IP的内容,可能产生因第三方不可信而导致的IP 内容泄露问题。为了解决IP暴露给第三方的问题,文献[7]提出一种新型的PUF 架构,同时对认证协议进行了简化和改进。最大的优势在于TTP不能获取有关 IP内容的信息,PUF用于产生加密密钥信息以及消息认证码的认证密钥。由于加密不能对版权进行认证,所以可以利用消息认证码来验证IP的原始性。Zhang 等人利用芯核电路中FSM的构造原理,提出一系列FPGA IP保护方法[8-10],用来抵抗非法的重放攻击。此外该研究团队利用FPGA器件生产工艺中的延时差异,提出一种基于延时的PUF来保护FPGA IP核[11]。但是,这些方法在实现安全性的同时也带来了较大的硬件开销。为了解决这个问题,方法[12]提出一种低开销高性能的RO-PUF用来实现FPGA设计的版权保护。
PUF作为一种新型的物理指纹技术,可以为每个集成电路生成独一无二的 ID。在硬件安全领域,PUF已经成为非常具有潜力的硬件安全原语。利用PUF 生成安全密钥时,模糊提取模型是用于保证密钥可靠性的主要手段。其主要原理是从PUF响应信号中利用容错的方式将均匀分布的随机密钥进行可靠提取。当 PUF响应信号发生微小变化时,提取的密钥仍然保持不变。纠错编码是模糊提取模型中关键的部分。纠错编码算法的性能好坏直接影响模糊提取器的性能或者模糊提取功能的实现。现有一些模糊提取器采用汉明码或BCH码来实现纠错编码,但是实现成本和硬件开销较大。此外,在基于PUF的认证方法中,通常需要直接传输PUF的所有激励响应对。如果被非法攻击者截获这些激励响应信息,则可能对PUF(特别是强PUF)的安全性造成威胁。
发明内容
本发明所要解决的技术问题是,针对现有技术不足,提供一种芯核版权匿名认证方法,使FPGA提供商不需要预先存储PUF所有的激励响应对,占用系统资源少,安全性和适用性更高;匿名性使得购买者的权益得到保证,同时在可信设备提供商的参与下可以实现盗版行为的追踪溯源。
为解决上述技术问题,本发明所采用的技术方案是:一种芯核版权匿名认证方法,包括以下步骤:
1)为每个器件Fi装配芯片指纹提取的PUF硬件模块;对于每个器件测试器件中PUF的激励响应对CRPs,利用CRPs进行 PUF延迟属性特征分析,将PUF延迟向量存储于数据库服务器;发布进行交易售卖;系统集成商SD/FPGA提供商FV将发送给FPGA提供商,申请购买FPGA提供商记录购买者身份信息ID(SDi)或ID(CVi),并为之分配唯一的延迟向量; Fi为未配置PUF的FPGA设备;为已配置PUF的FPGA设备;为的唯一身份标识符;
2)IP提供商CV申请向FV申请IP注册,向FV发送{Hash(IPi), Description};其中,为IP提供商的签名信息,Hash(IPi)为芯核IPi的哈希摘要,Description为芯核IPi的描述信息;FV收到CV 的真实身份注册信息{Hash(IPi),Description}后,产生一个随机数Nc以及对称密钥KeyFC,然后计算: 表示异或操作; 在分配ID之后,FV保存{ID(CVi), ID(IPi),Hash(IPi),Description};注册完成后,将{ID(CVi),ID(IPi),}返回给CV,CV收到FV返回的注册信息,提取出Nc与 KeyFC,验证接收到的内容是否遭受篡改;若验证成功,则将注册的身份标识ID(CVi)以及IP的相关注册信息{ID(IPi),IPi,Nc,KeyFC, Description}存储到数据库,并发布ID(IPi)进行公开售卖;为IP提供商的身份信息;IPi表示IP核;ID(IPi)为IPi的唯一身份标识符;
3)SD将真实身份注册信息发送给可信的FV,FV收到SD的注册信息后,产生一个随机数Ns以及对称密钥KeyFS,然后计算: FV将ID(SDi)、Ns、以及KeyFS保存到买方数据库中,将ID(SDi)、KFS与发送给SD;SD收到FV 返回的注册信息,根据提取出并验证Ns和KeyFS的有效性,如果验证成功,则将{ID(SDi),Ns,KeyFS}保存到数据库,用于申请购买IP 核时使用;否则,注册无效,重新向FV申请注册;为系统集成商的身份信息;
4)在FPGA交易中,FPGA提供商公开相应型号的FPGA设备的ID标识及相关说明,进行公开售卖;SD或CV需要购买FPGA设备时,根据进行交易;FV保存相关的交易记录同时通过交易渠道将FPGA设备发送给SD/CV;
5)合法的SD从销售商处购买得到FPGA硬件,若要证明硬件的合法性,SD将发送给FV申请硬件身份认证;如果CV发现其 IP核被非授权使用,则向FV申请对其版权进行认证,CV将质疑的 IP身份信息ID(IPi)和发送给FV,同时在FV的参与下,利用指纹水印提取技术从被质疑的IP中提取出相应的指纹信息和
步骤4)的具体实现过程包括:
1)CV保存ID(IPi)与IPi到数据库,公布ID(IPi)进行IPi售卖;
2)SD申请购买ID(IPi)和对应的IP核,将{ID(SDi),ID(IPi), }发送给FV,并向FV申请交易的指纹信息;ID(SDi)为SDi的唯一身份标识符;
3)FV验证ID的合法性,生成一个随机数Ni,用于计算SD本次交易的临时身份信息以及一次交易口令,并将{ID(IPi),Pi}发送给 CV和SD;其中,其中,H表示哈希摘要;
4)SD获得临时身份和口令Pi用于IP交易认证;SD产生随机数a,计算PUF响应R(a),然后将发送给 CV;
5)CV根据申购的ID(IPi)查找相应的IP核,对其进行版权指纹和匿名用户指纹的嵌入,得到含版权指纹的IP核CV判断是否存在于数据库中,如果存在,则将发送给FV;
6)FV根据得到系统集成商的身份信息ID(SDi),进而查找并通过ID(SDi)解密获得并将发送给芯核提供商CVi;
7)CVi根据延迟向量计算响应R′(a),如果R′(a)=R(a),则验证SDi成功,然后发送ID(CVi)给FV;
8)FV根据ID(CVi)查找出并用ID(CVi)解密得到延迟向量同时生成一个随机数b,并通过计算出R′(b),并将随机数b 发送给CVi;
9)CVi将b作为PUF_mod的激励,生成R(b),并将R(b)和发送给FV;
10)如果响应R(b)等于响应R′(b),则FV验证CVi成功;
11)CVi更新芯核提供商的身份信息ID(CVi)=ID(CVni),计算a异或 b得到共同激励根据PUF模型PUF_mod计算对应的响应最终生成加密形式的IP核将发送给SD。其中,E表示加密算法,表示PUF响应信息;
12)SDi获得根据随机数a和b计算得到共同激励,然后生成解密响应密钥,使得IPi w解密并进行正常配置运行。
SD将发送给FV申请硬件身份认证的过程为:FV首先查找数据库确认硬件ID是否存在于数据库,若ID存在,则随机选取该器件的CRP返回给 SD进行认证;SD收到认证信息后,利用激励信号产生对应输出响应;当生成的响应与从FV处收到的响应一致,则证明硬件身份是合法的,若二者不一致,SD 告知FV存在伪造行为,SD和FV均向销售商进行追溯,找到产品伪造的始作俑者,追究其违法行为。
步骤5)中,FV根据CV在版权纠纷认证过程中提取到的SD临时交易匿名身份,查找相应SD的ID(SDi)以及真实身份信息,并交由CV进行盗版追责。
所述PUF硬件模块包括:
激励信号生成模块,包括线性反馈移位寄存器与混合函数;所述线性反馈移位寄存器产生随机激励信号之后,由混合函数生成多组测试激励信号;
PUF特征提取模块,包括两个仲裁器PUF电路;两个仲裁器PUF电路异或,用于提取电路的延迟特征;当产生的多组测试激励信号输入到所述PUF特征提取模块,产生满足电路特定延时需求的测试响应信号;
多数响应选举模块,用于从测试响应信号的输出位中选择出现最多次数的1 或0作为输出。
所述激励信号生成模块具体执行如下操作:线性反馈移位寄存器对输入的初始的激励信号进行循环移位,每次产生一个新的激励信号进入混合函数,混合函数生成多组激励信号数据。
与现有技术相比,本发明所具有的有益效果为:本发明的协议通过综合考虑整个IP交易链中涉及的参与方及其在交易过程中的权益及安全性问题,结合PUF 与数字指纹技术,提出一种基于双PUF技术的芯核版权匿名认证协议。该方法采用双PUF结构的应用原理,实现对硬件FPGA与软件IP的版权认证。双PUF 结构的使用,使得FPGA提供商不需要预先存储PUF所有的激励响应对,占用系统资源少,安全性和适用性更高。在IP电路进行交易之前,IP提供商将版权信息及购买者的匿名身份嵌入到IP核,以实现被动的IP的版权保护与盗版追踪。匿名性使得购买者的权益得到保证,同时在可信设备提供商的参与下可以实现盗版行为的追踪溯源。本发明主要用于对硬件FPGA平台与软件IP进行电路版权的绑定认证,当芯核电路出现侵权行为时,该方案便可以根据双PUF电路的认证结构,使得PUF电路与FPGA平台绑定的CRPs信息进行匹配识别,在硬件电路的安全认证过程中,验证双方可根据共同产生的激励信息来防止攻击者进行重放攻击和建模攻击。基于双PUF结构协议的使用,使得FPGA提供商无需存储大量的CRPs,节省了大量的存储空间。IP核在交易之前,IP提供商将版权信息及购买者的匿名身份信息事先成功嵌入到IP核中,解决了IP的版权的被动保护与盗版追踪难的问题。匿名可追踪性使得购买者的权益得到保证,同时在可信设备提供商的参与下可以实现盗版行为的追踪溯源。
附图说明
图1为双PUF认证模型;
图2为参与方注册协议;
图3为FPGA设备交易协议;
图4为IP交易协议;
图5为改进的PUF电路整体结构;
图6为LFSR激励信号生成模块;
图7为传统仲裁器PUF电路;
图8为改进的2-XOR PUF。
具体实施方式
本发明的认证方案采用双PUF认证结构,即FPGA制造商采用PUF模型,而器件中配置原始PUF。合法制造者通过对原始PUF设置一个接入点,通过该接入点,制造者可以收集足够数量的激励响应对,通过对收集到的激励响应对进行建模分析,可以得到PUF结构内部的线性延迟向量,就能完成对PUF的建模,在建立好PUF模型后,为了防止攻击者使用,该接入点会被销毁,永久禁止再使用该接入点。文献[13]指出建立一个准确率高达90%,错误率为10%的PUF 模型,仅仅只需要一千个左右的激励响应对(这些PUF通常都是简单的PUF,且激励响应信息完全暴露给攻击者的情况下),在较短的时间内既可以建立出这种PUF模型。PUF模型具有与原始PUF类似的行为,所以可以用到身份认证中。
对于n级仲裁器PUF,其响应取决于仲裁路径上电信号的延时差,也就是每级仲裁器路径上所有延时差的总和。而每级仲裁路径上,延时差是与相应的激励信号相关的。因此,在n级仲裁器PUF的第i级路径上,μ1,i和μ0,i分别表示与激励信号“1”和激励信号“0”相关的延时差。FPGA制造商可以通过接入点测量出所有的每个器件的CRPs,然后据此进行模型的建立。对于m级仲裁器PUF 来说,可以通过计算每级路径上的延时向量来建立其仿真模型,如下所示:
在仲裁路径输出端,总的延迟ΔD即为延迟向量的转置与激励信号C的特征向量的乘积,即当ΔD>0时,激励响应R为1;反之,激励响应R为0。其中,激励信号C的特征向量表示如下:
本发明提出的双PUF认证模型如图1所示,PUF的激励信息是通过双方各自产生的随机数构成,恶意的攻击者无法在一次认证中完全控制PUF的激励信息。在版权认证过程中,并不直接传输PUF的所有CRPs。由于难以获取足够数量的激励响应对,攻击者实现建模攻击的难度加大。此外,在PUF电路的实现中,仲裁器输出结果通过异或处理,也有效提高了模型的抗攻击能力。此外,结合FPGA芯核交易链中涉及的主要参与方及其相关权益,采用数字水印的实现方式来保护芯核版权以及购买者用户隐私。现有的一些芯核水印方案可以直接应用到本发明的方案中,而无需对其做出额外的修改。
本发明的版权认证方案涉及硬件和软件两方面,主要包括设备认证和芯核认证。设备认证是硬件芯片的认证,而芯核认证是对所有者版权的保护。在整个芯核交易链路中,主要涉及的参与方之间必须满足相应的安全协议,来保证交易中涉及的各个参与方的权益。协议主要包括FPGA提供商、IP提供商、系统集成商、可信第三方等。FPGA提供商(FV)主要是指制造FPGA的半导体企业,如Xilinx、Altera等;IP提供商(CV)是设计、实现并完成具有特定功能IP 模块的企业或个人等;系统集成商(SD)是指利用FPGA提供商生产的硬件平台以及IP提供商实现的IP模块进行系统集成,并以此来实现具有特定功能的复杂系统设计;假设可信第三方(TTP)是在交易过程中其他参与方可以信任的,有能力存储、处理、传输数据以及认证方案涉及的参与方。
本发明的芯核版权匿名认证的安全通信协议主要包括:注册,IP交易,版权认证与盗版追踪。为了便于理解,表1列出了芯核电路保护系统安全协议模型中所涉及到的相关符号以及各个符号所代表的作用和功能的详细说明。
表1相关符号说明
1、注册阶段
在这部分协议中,主要涉及设备注册、IP注册、SD注册等,如图2所示。具体的内容描述如下:
(1)FPGA注册交易
制造工厂生产出FPGA器件后,由FV为每个器件Fi装配芯片指纹提取的 PUF硬件模块。对于每个器件测试器件中PUF的激励响应对CRPs,利用CRPs进行PUF延迟属性特征分析,将PUF延迟向量存储于数据库服务器DB,以备后续对器件进行身份认证。FV发布进行交易售卖。 SD/CV将发送给FV,申请购买FV记录购买者身份信息ID(SDi) 或ID(CVi),并为之分配唯一的延迟向量。
(2)IP登记注册。
CV申请向FV申请IP注册,向FV发送FV 收到CV的真实身份注册信息后,产生一个随机数Nc以及对称密钥KeyFC,然后计算:
尽管在文中FV被认为是可信的,但是为了保障IP内容的安全,在注册阶段,CV将IP的哈希摘要及IP相关描述发送给FV。在分配ID之后,FV保存 {ID(CVi),ID(IPi),Hash(IPi),Description}。注册完成后,将{ID(CVi),ID(IPi), }返回给CV。CV收到FV返回的注册信息,从提取出Nc与KeyFC,验证接收到的内容是否遭受篡改。若验证成功,则将注册的身份标识ID(CVi)以及 IP的相关注册信息{ID(IPi),IPi,Nc,KeyFC,Description}存储到数据库,并发布ID(IPi)进行公开售卖。
(3)SD登记注册。
为了完成系统设计,SD需要分别从第三方IP提供商CV以及硬件提供商 FV处购买相应的软件IP核以及FPGA器件。SD需要将真实身份注册信息发送给可信的FV。FV收到SD的注册信息后,产生一个是随机数Ns以及对称密钥 KeyFS,然后计算:
FV将ID(SDi)、Ns、以及KeyFS保存到买方数据库中,将ID(SDi)、KFS与发送给SD。这个身份标识对于不同的SD是唯一存在的,且除了SD本身和FV,第三方并不知晓该身份标识所代表的真实用户身份。因此,SD的身份对于CV而言是匿名的。SD收到FV返回的注册信息,根据提取出并验证Ns和 KeyFS的有效性。如果验证成功,则将{ID(SDi),Ns,KeyFS}保存到数据库,用于申请购买IP核时使用;否则,注册无效,需要重新向FV申请注册。
2、IP交易协议
IP交易链主要包括FPGA设备交易与IP核交易。在FPGA交易中,首先FPGA 提供商公开相应型号的FPGA设备的ID标识及相关说明,进行公开售卖。SD 或CV需要购买FPGA设备时,根据进行交易。FV保存相关的交易记录{ID(SDi)/ID(CVi),},同时通过交易渠道将FPGA设备发送给SD/CV。协议流程如图3所示。
IP交易的协议如图4所示,具体内容如下:
步骤1:CV保存ID(IPi)与IPi到数据库,公布ID(IPi)进行IPi售卖。
步骤2:SD申请购买ID(IPi)和对应的IP核,将{ID(SDi),ID(IPi),}发送给FV,并向FV申请交易的指纹信息。
步骤3:FV验证ID的合法性,生成一个随机数Ni,用于计算SD本次交易的临时身份信息以及一次交易口令,并将发送给CV和SD。
步骤4:SD获得临时身份和口令Pi用于IP交易认证。SD产生随机数a,计算R(a),然后将发送给CV。
步骤5:CV根据申购的ID(IPi)查找相应的IP核,对其进行版权指纹和匿名用户指纹的嵌入,得到CV判断是否存在于数据库中,如果存在,则将发送给FV。
步骤6:FV根据得到ID(SDi),进而查找并通过ID(SDi)解密获得并将发送给CVi。
步骤7:CVi根据延迟向量计算响应R′(a),如果R′(a)=R(a),则验证SDi成功,然后发送ID(CVi)给FV。
步骤8:FV根据ID(CVi)查找出并用ID(CVi)解密得到同时生成一个随机数b,并通过计算出R′(b),并将随机数b发送给CVi。
步骤9:CVi将b作为PUF_mod的激励生成R(b),并将R(b)和发送给FV。
步骤10:如果R(b)等于R′(b),则FV验证CVi成功,更新ID(CVi)=ID(CVni)。
步骤11:CVi更新ID(CVi)=ID(CVni),计算a异或b得到共同激励根据PUF_mod计算对应的响应最终生成加密形式的IP核将发送给SD。
步骤14:SDi获得根据随机数a和b计算得到共同激励,然后生成解密响应密钥,使得解密并进行正常配置运行。
为了保证用户交易的匿名性,SD在每次交易过程中申请到的指纹水印是不同的。这样,即使是相同的SD多次购买IP核,CV在正常情况下并不知道交易用户的真实身份。得到用于保证其主动加密保护被破解后实现被动的版权认证和追踪。这里,为了实现购买者匿名,可以利用FV生成的SD临时身份信息作为购买者指纹,而版权指纹则可以采用CV的签名信息。在芯核版权匿名认证方案中,我们会对SDi和CVi的身份进行认证,防止非法的SDi和CVi获取解密IP信息。采用双PUF认证模型,在FV对CVi进行认证时,通过产生随机数a作为随机激励来对CVi的合法性进行认证,FV和CVi不需要预先存储PUF所有的激励响应对,占用系统资源少,安全性和适用性更高。
(1)在解密IP前系统给会进行两次的认证,首先CVi会先认证SDi,在注册时SDi会被分配一个唯一的身份标识ID(SDi)。每个ID(SDi)绑定一个唯一的延迟向量CVi通过访问FV,并申请在FV内查找到对应的经过 ID(SDi)解密得到后发送给CVi。CVi通过将SD产生的随机数a作为的激励信息计算出R′(a)。如果R′(a)等于R(a),则SDi身份认证成功。只有合法的 SDi才有资格解密IP的信息。
(2)第二轮的身份认证是FV认证CVi。在CVi成功认证SDi的身份后,CVi向FV发送自身的ID(CVi)信息,FV通过ID(CVi)在数据库中查找通过ID(CVi)解密后得到同时生成一个随机数b作为的激励信息,生成的响应R′(b)。将随机数b发送给CVi,CVi将b作为激励输入自身的PUF结构中,得到R(b)。R(b)和被发送给FV,FV通过对比R(b)和R′(b)是否相等来认证CVi。如果CVi是合法的,需要更新CVi的ID信息,以防止合法的CVi出售自身PUF的延迟向量信息,使非法的CVi欺骗FV来达到认证的目的。
3、版权认证与盗版跟踪
芯核电路版权认证阶段主要涉及两个方面:一是对硬件电路的认证;二是对软件IP的认证。这里我们假设两种场景。
(1)合法的SD从销售商处购买得到FPGA硬件,若要证明硬件的合法性, SD可以将发送给FV申请硬件身份认证。FV首先查找数据库确认硬件 ID是否存在于数据库。若ID存在,则随机选取该器件的CRP返回给SD进行认证。SD收到认证信息后,利用激励信号产生对应输出响应。当生成的响应与从 FV处收到的响应一致,则可以证明硬件身份是合法的。若二者不一致,SD可以告知FV存在伪造行为,SD和FV均可以向销售商进行追溯,找到产品伪造的始作俑者,追究其违法行为。
(2)如果CV发现其IP核被非授权使用,可以向FV申请对其版权进行认证。CV将质疑的IP身份信息ID(IPi)和发送给FV,同时在FV的参与下,利用指纹水印提取技术从被质疑的IP中提取出相应的指纹信息和 的成功提取,可以有效证明IP的版权归属。为了追溯盗版的分发者,FV根据CV在版权纠纷认证过程中提取到的SD临时交易匿名身份查找相应SD 的ID(SDi)以及真实身份信息,并交由CV进行盗版追责。
针对协议的特点与实际需要,结合传统仲裁器PUF的工作原理,提出一种可供参考的改进的仲裁器PUF电路结构的FPGA实现,如图5所示。该电路主要包括激励信号生成模块、PUF特征提取模块以及多数响应选举模块。
1、激励信号生成模块
在发明提出的PUF参考模型中,激励生成模块包括线性反馈移位寄存器与混合函数。轻量级的线性反馈移位寄存器(LFSR)产生随机激励信号之后,由混合函数生成多组测试激励信号。在理想情况下,一个n级LFSR要求具有最大长度序列特征,而且生成的序列满足Golomb随机性假设的随机特性。一个n阶的线性反馈移位寄存器由n个触发器和若干异或门组成,如图6所示。其中,D 表示触发器,f0,f1,f2,...,fn表示反馈系数,取值为0或1。当取值0时,电路中不存在反馈线路;当取值为1时,电路中存在反馈线路。将初始的激励信号输入到移位寄存器,通过循环移位,每次将产生一个新的激励信号进入混合函数。混合函数主要是用来生成多组激励信号数据,主要取决于所设计的生成密钥的PUF 电路中仲裁器的路数以及级数。扩展函数输出多组激励信号,输入到PUF电路。例如,本发明采用的2-XOR PUF产生128比特响应输出密钥,那么要求混合函数生成两组128比特的激励信号作为PUF电路的输入。
2、PUF特征提取模块
本发明介绍的PUF属于仲裁器PUF,是一种强PUF结构,能够提供大量的激励响应信号对(CRPs)。由于仲裁器具有数量巨大的CRPs,对于非法攻击者实施的重放攻击具有良好的抵抗能力。基于仲裁器的PUF并不是通过检测电路某一特定路径上的绝对延时来工作,而是依靠两条完全一致且对称的路径之间的延时差。它主要由多路复用器和仲裁器组成,如图7所示。多路复用器有两个输入端和两个输出端,由于制造工艺的差异,每个多路复用器和线内部的延迟是不一样的,所以当信号通过该路径时,会出现不一样的延迟。当激励信号C=0时,信号在两条通路上直接通过;当C=1时,信号交叉通过。通过比较两条直接和交叉路径的延迟差异,最后到达仲裁器的信号如果是顶端信号,仲裁器输出一个比特1,如果先到达仲裁器的是底端的信号,仲裁器输出一个比特0。
但是,由于传统的仲裁器在FPGA上实现时,PUF电路中每个节点的多路复用器之间的传输路径存在耦合,难以实现完全对称的布线,从而导致生成的PUF 响应信号唯一性较差。据此,文献[14]提出一种双重结构仲裁器PUF,虽然唯一性得到有效提升,但是导致对FPGA资源的消耗成倍增长。为了解决资源问题,文献[15]指出,传统仲裁器PUF在FPGA上唯一性差的主要原因在于,PUF电路中每个节点的多路复用器之间的传输路径存在耦合。将这些路径的耦合去掉,则仲裁器PUF便可以在FPGA上实现布局布线的对称性。该方法在保证PUF具有良好的唯一性的同时,有效降低的PUF消耗的硬件资源。但是方法[15][15]主要对传统仲裁器PUF的资源消耗进行改进,在唯一性和稳定性方面仍然存在一定的不足。
本发明采用基于文献[15]的方法来实现2-XOR PUF,以降低传统实现方式带来的资源开销。如图8所示,通过对两个仲裁器PUF的输出进行异或,可以有效提高PUF的唯一性。为了能够输出更加稳定的响应,我们在该PUF结构中加入了选举模块。信号选举模块遵循少数服从多数原则,由LFSR构成的激励输入信号流,每个信号重复输入多次,多个相同的输入信号经过激励信号的控制后通过仲裁器模块,产生的输出位中选择出现最多次数的1或0作为该PUF的输出。该PUF结构不仅占用的硬件面积少,且输出会更加稳定。
3、多数响应选举模块
多数响应选举电路即通过施加相同的激励信后输入,在特定次数内,输出的比特值数量较多的则选定为电路输出,也就是采用“少数服从多数”的输出原则。这个模块可以有助于实现稳定的数据输出,避免因偶然环境或条件因素等导致某次比特翻转,而产生不稳定的输出。在传统的实现方法中,纠错算法被广泛用来保证输出的稳定性。但是,这种方法要求占用的硬件资源开销较大,不太适合于轻量级的PUF。通过选举电路来实现稳定的电路输出,可以有效减少硬件资源开销。
信号选举电路实现如下:假定ct为采样计数器,负责对相同激励输入产生的一定次数的决策结果sr进行采样。rmaj表示通过决策结果样本sr进行统计得到的出现次数较多的输出,其值为“0”或“1”。而tmaj则是出现次数较多的信号rmaj出现的次数。首先对信号选举电路进行参数初始化处理,将采样计数器ct以及tmaj的值设定为0。当输入激励信号后,采样计数器开始首次采样操作,得到的第一次响应输出结果sr则作为rmaj的初始值,tmaj递增。若第二次输入相同激励信号产生的响应输出与rmaj相同,则tmaj继续递增;若二者不相同,则tmaj递减。当 tmaj的数值为0时,比较当前的sr与rmaj。如果sr与rmaj不相同,则用sr的值来替代rmaj。以上过程重复操作,直到采样结束条件(ct溢出)触发为止。此时,由信号选举模块产生的有效电路输出即为当前的rmaj。
本发明用到的参考文献如下:
[1]Pappu R S,Recht B,Taylor J,et al.Physical One-WayFunctions.Science, 2002,2026-2030
[2]Li D,Liu W,Zou X,et al.Hardware IP Protection through Gate-LevelObfuscation.International Conference on Computer-Aided Design and ComputerGraphics,ICCADCG 2015,Xi’an,China:IEEE,2015,186-193.
[3]Kumar S S,Guajardo J,Maes R,et al.Extended Abstract:The ButterflyPUF Protecting IP on Every FPGA.Host,2008,67-70.
[4]Guajardo J,Kumar S S,Schrijen G J,et al.Physical UnclonableFunctions and Public-Key Crypto for FPGA IP Protection.InternationalConference on Field Programmable Logic and Applications,ICFPLA 2007,Amsteradm, Netherlands:IEEE,2007,189-195.
[5]Gora M,Maiti A,and Schaumont P.A Flexible Design Flow for SoftwareIP Binding in Commodity FPGA.In Proceedings of IEEE Symposium on IndustrialEmbedded Systems(SIES),Jul.2009,211-218.
[6]Simpson E,Schaumont P.Offline Hardware/Software Authentication forReconfigurable Platforms.Cryptographic Hardware and Embedded Systems- CHES2006,International Workshop,Yokohama,Japan,October 10-13,2006,Proceedings.DBLP,2006:311-323.
[7]Guajardo J,Kumar S S,Schrijen G J,Tuyls P.FPGA Intrinsic PUF andTheir Use for IP Protection.CHES2007.LNCS,2007,4727:63-80.
[8]Zhang J,Lin Y,Lyu Y,et al.A PUF-FSM Binding Scheme for FPGA IPProtection and Pay-per-Device Licensing.IEEE Transactions on InformationForensics&Security,2017,10(6):1137-1150.
[9]Zhang J,Lin Y,Liu Y,et al.Binding hardware IPs to Specific FPGADevice via Inter-twining the PUF Response with the FSM of SequentialCircuits.In 21st IEEE International Symposium on Field-Programmable CustomComputing Machines(FCCM’13),Seattle,USA,2013,227-231.
[10]Zhang J,Lin Y,Qu G.Reconfigurable Binding against FPGA ReplayAttacks. ACM Transactions on Design Automation of Electronic Systems,2015, 20(2):33.
[11]Zhang J,Wu Q,Lyu Y,et al.Design and Implementation of a Delay-based PUF for FPGA IP Protection.In 13th IEEE International Conference onComputer-Aided Design and Computer Graphics(CAD/Graphics’13),Hong Kong,China,2013,107-114.
[12]张国栋,刘强,张齐军.用于FPGAIP保护的低成本高性能PUF设计.西安电子科技大学学报(自然科学版),2016,43(6):97-102.
[13]Majzoobi M,Rostami M,Koushanfar F,et al.Slender PUF Protocol:ALightweight,Robust,and Secure Authentication by Substring Matching.IEEESymposium on Security and Privacy Workshops.IEEE Computer Society, 2012,33-44.
[14]Machida T,Dai Y,Iwamoto M,et al.Implementation of Double ArbiterPUF and its Performance Evaluation on FPGA.Design Automation Conference.IEEE,2015,6-7.
[15]刘政林,刘柏均,鲁赵骏,等.一种低资源消耗的物理不可克隆函数FPGA 设计.华中科技大学学报(自然科学版),2016,2:5-8。
Claims (6)
1.一种芯核版权匿名认证方法,其特征在于,包括以下步骤:
1)为每个器件Fi装配芯片指纹提取的PUF硬件模块;对于每个器件测试器件中PUF的激励响应对CRPs,利用CRPs进行PUF延迟属性特征分析,将PUF延迟向量存储于数据库服务器;发布进行交易售卖;系统集成商SD/FPGA提供商FV将发送给FPGA提供商,申请购买FPGA提供商记录购买者身份信息ID(SDi)或ID(CVi),并为之分配唯一的延迟向量;Fi为未配置PUF的FPGA设备;为已配置PUF的FPGA设备;为的唯一身份标识符;
2)IP提供商CV申请向FV申请IP注册,向FV发送 其中,为IP提供商的签名信息,Hash(IPi)为芯核IPi的哈希摘要,Description为芯核IPi的描述信息;FV收到CV的真实身份注册信息后,产生一个随机数Nc以及对称密钥KeyFC,然后计算: 表示异或操作; 在分配ID之后,FV保存{ID(CVi),ID(IPi),Hash(IPi),Description};注册完成后,将 返回给CV,CV收到FV返回的注册信息,提取出Nc与KeyFC,验证接收到的内容是否遭受篡改;若验证成功,则将注册的身份标识ID(CVi)以及IP的相关注册信息{ID(IPi),IPi,Nc,KeyFC,Description}存储到数据库,并发布ID(IPi)进行公开售卖;为IP提供商的身份信息;IPi表示IP核;ID(IPi)为IPi的唯一身份标识符;
3)SD将真实身份注册信息发送给可信的FV,FV收到SD的注册信息后,产生一个随机数Ns以及对称密钥KeyFS,然后计算: FV将ID(SDi)、Ns、以及KeyFS保存到买方数据库中,将ID(SDi)、KFS与发送给SD;SD收到FV返回的注册信息,根据提取出并验证Ns和KeyFS的有效性,如果验证成功,则将{ID(SDi),Ns,KeyFS}保存到数据库,用于申请购买IP核时使用;否则,注册无效,重新向FV申请注册;为系统集成商的身份信息;
4)在FPGA交易中,FPGA提供商公开相应型号的FPGA设备的ID标识及相关说明,进行公开售卖;SD或CV需要购买FPGA设备时,根据进行交易;FV保存相关的交易记录同时通过交易渠道将FPGA设备发送给SD/CV;
5)合法的SD从销售商处购买得到FPGA硬件,若要证明硬件的合法性,SD将发送给FV申请硬件身份认证;如果CV发现其IP核被非授权使用,则向FV申请对其版权进行认证,CV将质疑的IP身份信息ID(IPi)和发送给FV,同时在FV的参与下,利用指纹水印提取技术从被质疑的IP中提取出相应的指纹信息和
2.根据权利要求1所述的芯核版权匿名认证方法,其特征在于,步骤4)的具体实现过程包括:
1)CV保存ID(IPi)与IPi到数据库,公布ID(IPi)进行IPi售卖;
2)SD申请购买ID(IPi)和对应的IP核,将 发送给FV,并向FV申请交易的指纹信息;ID(SDi)为SDi的唯一身份标识符;
3)FV验证ID的合法性,生成一个随机数Ni,用于计算SD本次交易的临时身份信息以及一次交易口令,并将发送给CV和SD;其中,其中,H表示哈希摘要;
4)SD获得临时身份和口令Pi用于IP交易认证;SD产生随机数a,计算PUF响应R(a),然后将发送给CV;
5)CV根据申购的ID(IPi)查找相应的IP核,对其进行版权指纹和匿名用户指纹的嵌入,得到含版权指纹的IP核IPi w;CV判断是否存在于数据库中,如果存在,则将发送给FV;
6)FV根据得到系统集成商的身份信息ID(SDi),进而查找并通过ID(SDi)解密获得并将发送给芯核提供商CVi;
7)CVi根据延迟向量计算响应R′(a),如果R′(a)=R(a),则验证SDi成功,然后发送ID(CVi)给FV;
8)FV根据ID(CVi)查找出并用ID(CVi)解密得到延迟向量同时生成一个随机数b,并通过计算出R′(b),并将随机数b发送给CVi;
9)CVi将b作为PUF_mod的激励,生成R(b),并将R(b)和发送给FV;
10)如果响应R(b)等于响应R′(b),则FV验证CVi成功;
11)CVi更新芯核提供商的身份信息ID(CVi)=ID(CVni),计算a异或b得到共同激励根据PUF模型PUF_mod计算对应的响应最终生成加密形式的IP核将发送给SD。其中,E表示加密算法,表示PUF响应信息;
12)SDi获得根据随机数a和b计算得到共同激励,然后生成解密响应密钥,使得IPi w解密并进行正常配置运行。
3.根据权利要求1所述的芯核版权匿名认证方法,其特征在于,SD将发送给FV申请硬件身份认证的过程为:FV首先查找数据库确认硬件ID是否存在于数据库,若ID存在,则随机选取该器件的CRP返回给SD进行认证;SD收到认证信息后,利用激励信号产生对应输出响应;当生成的响应与从FV处收到的响应一致,则证明硬件身份是合法的,若二者不一致,SD告知FV存在伪造行为,SD和FV均向销售商进行追溯,找到产品伪造的始作俑者,追究其违法行为。
4.根据权利要求1所述的芯核版权匿名认证方法,其特征在于,步骤5)中,FV根据CV在版权纠纷认证过程中提取到的SD临时交易匿名身份IDti,查找相应SD的ID(SDi)以及真实身份信息,并交由CV进行盗版追责。
5.根据权利要求1所述的芯核版权匿名认证方法,其特征在于,所述PUF硬件模块包括:
激励信号生成模块,包括线性反馈移位寄存器与混合函数;所述线性反馈移位寄存器产生随机激励信号之后,由混合函数生成多组测试激励信号;
PUF特征提取模块,包括两个仲裁器PUF电路;两个仲裁器PUF电路异或,用于提取电路的延迟特征;当产生的多组测试激励信号输入到所述PUF特征提取模块,产生满足电路特定延时需求的测试响应信号;
多数响应选举模块,用于从测试响应信号的输出位中选择出现最多次数的1或0 作为输出。
6.根据权利要求5所述的芯核版权匿名认证方法,其特征在于,所述激励信号生成模块具体执行如下操作:线性反馈移位寄存器对输入的初始的激励信号进行循环移位,每次产生一个新的激励信号进入混合函数,混合函数生成多组激励信号数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910031365.3A CN109766672B (zh) | 2019-01-14 | 2019-01-14 | 一种芯核版权匿名认证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910031365.3A CN109766672B (zh) | 2019-01-14 | 2019-01-14 | 一种芯核版权匿名认证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109766672A true CN109766672A (zh) | 2019-05-17 |
CN109766672B CN109766672B (zh) | 2022-07-12 |
Family
ID=66452919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910031365.3A Active CN109766672B (zh) | 2019-01-14 | 2019-01-14 | 一种芯核版权匿名认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109766672B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111027102A (zh) * | 2019-11-13 | 2020-04-17 | 云南大学 | 一种高安全性可配置ro-puf电路结构 |
CN111339502A (zh) * | 2020-02-23 | 2020-06-26 | 苏州浪潮智能科技有限公司 | 一种FPGA中kernel的启动方法、系统、设备以及介质 |
CN111565110A (zh) * | 2020-05-09 | 2020-08-21 | 西安电子科技大学 | 基于ro puf多核系统的统一身份认证系统及方法 |
CN112115449A (zh) * | 2020-09-25 | 2020-12-22 | 中物院成都科学技术发展中心 | 一种芯片物理指纹可靠性评估方法、装置、设备及介质 |
CN112596869A (zh) * | 2020-12-08 | 2021-04-02 | 海光信息技术股份有限公司 | 延时模型的构建方法及装置、电子设备及存储介质 |
CN113312589A (zh) * | 2021-06-09 | 2021-08-27 | 福州大学 | 基于多puf的meda生物芯片硬件版权保护方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090083833A1 (en) * | 2007-09-19 | 2009-03-26 | Verayo, Inc. | Authentication with physical unclonable functions |
WO2012088663A1 (zh) * | 2010-12-28 | 2012-07-05 | 北京邮电大学 | 具有版权保护特性的数字水印作品及其生成方法 |
CN107145804A (zh) * | 2017-05-08 | 2017-09-08 | 北京化工大学 | 一种基于fpga的低开销的ro puf电路结构 |
CN109033895A (zh) * | 2018-07-16 | 2018-12-18 | 东南大学 | 一种基于改进的dapuf电路的轻量级认证体系 |
-
2019
- 2019-01-14 CN CN201910031365.3A patent/CN109766672B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090083833A1 (en) * | 2007-09-19 | 2009-03-26 | Verayo, Inc. | Authentication with physical unclonable functions |
WO2012088663A1 (zh) * | 2010-12-28 | 2012-07-05 | 北京邮电大学 | 具有版权保护特性的数字水印作品及其生成方法 |
CN107145804A (zh) * | 2017-05-08 | 2017-09-08 | 北京化工大学 | 一种基于fpga的低开销的ro puf电路结构 |
CN109033895A (zh) * | 2018-07-16 | 2018-12-18 | 东南大学 | 一种基于改进的dapuf电路的轻量级认证体系 |
Non-Patent Citations (3)
Title |
---|
JILIANG ZHANG ET.AL.: "A PUF-FSM Binding Scheme for FPGA IP Protection and Pay-Per-Device Licensing", 《IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY》 * |
MAHIN ANIL KUMAR ET.AL.: "FPGA based delay PUF Implementation for Security Applications", 《2017 IEEE INTERNATIONAL CONFERENCE ON TECHNOLOGICAL ADVANCEMENTS IN POWER AND ENERGY(TAP ENERGY )》 * |
WEI LIANG ET.AL.: "A Novel Lightweight PUF-Based RFID Mutual Authentication Protocol", 《FRONTIER COMPUTING》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111027102A (zh) * | 2019-11-13 | 2020-04-17 | 云南大学 | 一种高安全性可配置ro-puf电路结构 |
CN111027102B (zh) * | 2019-11-13 | 2023-05-26 | 云南大学 | 一种高安全性可配置ro-puf电路结构 |
CN111339502A (zh) * | 2020-02-23 | 2020-06-26 | 苏州浪潮智能科技有限公司 | 一种FPGA中kernel的启动方法、系统、设备以及介质 |
CN111565110A (zh) * | 2020-05-09 | 2020-08-21 | 西安电子科技大学 | 基于ro puf多核系统的统一身份认证系统及方法 |
CN111565110B (zh) * | 2020-05-09 | 2022-03-04 | 西安电子科技大学 | 基于ro puf多核系统的统一身份认证系统及方法 |
CN112115449A (zh) * | 2020-09-25 | 2020-12-22 | 中物院成都科学技术发展中心 | 一种芯片物理指纹可靠性评估方法、装置、设备及介质 |
CN112596869A (zh) * | 2020-12-08 | 2021-04-02 | 海光信息技术股份有限公司 | 延时模型的构建方法及装置、电子设备及存储介质 |
CN112596869B (zh) * | 2020-12-08 | 2023-05-26 | 成都海光微电子技术有限公司 | 延时模型的构建方法及装置、电子设备及存储介质 |
CN113312589A (zh) * | 2021-06-09 | 2021-08-27 | 福州大学 | 基于多puf的meda生物芯片硬件版权保护方法 |
CN113312589B (zh) * | 2021-06-09 | 2022-06-14 | 福州大学 | 基于多puf的meda生物芯片硬件版权保护方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109766672B (zh) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109766672A (zh) | 一种芯核版权匿名认证方法 | |
US11153098B2 (en) | Systems, devices, and methods for recording a digitally signed assertion using an authorization token | |
CN110224993B (zh) | 基于区块链的可追责匿名电子投票方法及系统 | |
KR100457750B1 (ko) | 인증매체의 암호키와 컴퓨터하드웨어의 고유정보를 이용한 변동 암호키 방식의 인증 방법 및 이 인증 방법을 기록한 기간과 권한이 명시된 인증 매체 | |
Wei et al. | SecCloud: Bridging secure storage and computation in cloud | |
EP0881559A1 (en) | Computer system for protecting software and a method for protecting software | |
CN109417478A (zh) | 多链路密码逻辑区块链 | |
CN109905360B (zh) | 数据验证方法及终端设备 | |
Long et al. | PUF-based anonymous authentication scheme for hardware devices and IPs in edge computing environment | |
CN107615285A (zh) | 包括物理不可克隆功能和阈值加密的认证系统和装置 | |
Liang et al. | Study on PUF based secure protection for IC design | |
CN109688119A (zh) | 一种云计算中的可匿名追踪性身份认证方法 | |
CN113158143B (zh) | 一种基于区块链数字版权保护系统的密钥管理方法及装置 | |
CN106487786A (zh) | 一种基于生物特征的云数据完整性验证方法及系统 | |
Win et al. | Privacy enabled digital rights management without trusted third party assumption | |
Bose et al. | BLIC: A blockchain protocol for manufacturing and supply chain management of ICS | |
CN114255034A (zh) | 一种基于区块链的可验证公平性的电子投票方法 | |
CN109687977A (zh) | 基于多个密钥池的抗量子计算数字签名方法和抗量子计算数字签名系统 | |
Yang et al. | Enhanced digital rights management authentication scheme based on smart card | |
Jiang et al. | SearchBC: A blockchain-based PEKS framework for IoT services | |
Hasan | Overview and applications of zero knowledge proof (ZKP) | |
JP2002529778A (ja) | 共有無作為性の分散暗号化への組み込み | |
CN107104804A (zh) | 一种平台完整性验证方法和装置 | |
Kokila et al. | Resource efficient metering scheme for protecting SoC FPGA device and IPs in IOT applications | |
CN107947923A (zh) | 一种无可信中心的属性密钥分发方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |