CN105530097A - 一种基于sram puf的密钥提取方法及系统 - Google Patents
一种基于sram puf的密钥提取方法及系统 Download PDFInfo
- Publication number
- CN105530097A CN105530097A CN201410520665.5A CN201410520665A CN105530097A CN 105530097 A CN105530097 A CN 105530097A CN 201410520665 A CN201410520665 A CN 201410520665A CN 105530097 A CN105530097 A CN 105530097A
- Authority
- CN
- China
- Prior art keywords
- data
- stable
- sram
- initial value
- error correction
- 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
- 238000000605 extraction Methods 0.000 title claims abstract description 20
- 238000012937 correction Methods 0.000 claims abstract description 57
- 239000000463 material Substances 0.000 claims abstract description 30
- 239000000284 extract Substances 0.000 claims abstract description 9
- 230000004044 response Effects 0.000 claims description 55
- 238000012795 verification Methods 0.000 claims description 18
- 238000000034 method Methods 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 3
- 230000003068 static effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于SRAM?PUF的密钥提取方法及系统,在注册阶段,读取SRAM固定地址段产生的原始数据,将其作为初始值;多次上电,对获得的多个初始值进行比较,将初始值中容易出错的数据位所对应的地址剔除掉,获得稳定地址;使用稳定地址产生的初始值作为生成密钥的密钥素材,并使用纠错算法生成密钥素材的纠错码。这样,降低了生成密钥素材的SRAM地址段的错误率,在下次提取密钥素材时,系统可以选取较为简单的纠错算法对较短的原始数据进行纠错,提升了系统效率;在验证阶段,从注册阶段获得的稳定地址提取错误率较低的原始数据,使用相同的纠错算法进行纠错,最终恢复出密钥素材。
Description
技术领域
本发明涉及信息安全领域,特别涉及一种基于SRAM(静态随机存储器)PUF的密钥提取方法及系统。
背景技术
近些年来,随着智能卡、射频识别(RadioFrequencyIdentification,RFID)等物理实体的广泛应用,如何对这些物理实体实施有效认证是成为确保系统安全的基础问题。然而,由于这类实体普遍存在着计算能力差、资源有限等问题,传统基于密码学的认证方法在应用时存在着很大障碍。借鉴当前普遍使用的人体唯一特征(指纹或虹膜)对个人实施认证的思想,人们基于物理实体的内在物理构造来唯一地标识单个物理实体实现有效认证的思路,提出了物理不可克隆函数(PhysicalUnclonableFunction,PUF)的概念。PUF是指对一个物理实体输入一个激励,利用其不可避免的内在物理构造的随机差异输出一个不可预测的响应这样一个物理不可克隆的函数。PUF最基本的应用是利用实体的唯一标识来实现认证。随着人们对PUF的理解和应用的不断深入,PUF又逐渐被应用到系统认证、密钥生成等更多的领域,并逐渐成为硬件安全领域研究中的一个热门话题。
依据现有的研究,PUF分为非电子PUF系统、模拟电路PUF系统和数字电路PUF系统。
其中,利用一些存储器单元结构的稳定状态的制造变化来实现的数字电路PUF系统是最容易实现的PUF系统。一般情况下,完成存储器的数字存储是通过双稳态逻辑单元,也就是一个逻辑单元假设有两个不同的但是逻辑上稳定的状态。具体过程是,首先通过交叉搞合两个门器件例如反相器来构建一个双稳态逻辑单元,然后这个双稳态逻辑单元选择寄存在两个中的一个状态,就实现了存储一个二进制数字。但是,如果双稳态逻辑单元进入一个不稳定状态,它就可能在不稳定状态之间振荡,但最后会回到双稳态中的一个。而实验表明大多数单元都会有其明确偏向。这个效果是由其对称设计单元参数间的不匹配造成的。而这种不匹配是由制造变化差异引起的,所以能够观察到这样一个存储单元的稳定状态显示出一个类似于PUF的行为。例如通过观察一个静态随机存取(StaticRandomAccessMemory,SRAM)单元或一个触发器的稳定状态,就实现了SRAMPUF和触发器PUF。而锁存PUF和蝴蝶PUF是通过破坏一个单元之后观察稳定的状态来实现的。所以总结所有的情况,PUF的激励是一个特定的单元的地址,而响应是单元的稳定状态。
综上所述,可以看出,PUF具有不可克隆性、防篡改、轻量级等良好的属性,可以应用于密钥生成算法协议中。
但是,从PUF响应中提取一个安全的密钥需要处理两个主要问题。首先,在不同的测量中,所有PUF实现方法产生的响应都有一个非负概率的错误。因此,在后处理过程中就需要采用一个纠错步骤来保证每次派生出相同的密钥。
其次,提取算法需要确保输出的密钥是完全不可预测的,也就是说,它应该是一个均匀分布的随机比特串。由于PUF的响应大多数只有部分不可预测,提取算法需要压缩一些响应到一个密钥中以保证强的不可预测性。目前,已经研究出同时满足这两个要求的算法,称为模糊提取。
模糊提取的主要想法是:最初的生成阶段,给PUF输入一个激励并产生一个响应,然后模糊提取算法根据响应产生一个包含额外信息的密钥。这些额外信息通常被称为辅助数据。这两个都被验证者存储在一个安全的数据库中而不是在设备上。在认证阶段,验证者把辅助数据提供给算法,算法用它来从PUF中提取相同的密钥。这样一来,含有PUF的设备和验证者之间就建立了一个共享密钥。
在模糊提取过程中,需要选择能够对数据错误率大于或者等于初始值变化率的数据进行纠错的算法作为基准算法。PUF的数据错误率的大小直接影响了所选择算法的复杂度和所需辅助数据的存储空间大小。PUF的错误率除了取决于生产制造水平,还会受到包括温度、电压、半导体设备的经年等动作环境变化的影响变高。现有的基于PUF的密钥生成器方案,以算法的复杂度和辅助数据存储空间的增长为代价来解决PUF的错误率的问题,占用资源较多。由于嵌入式系统资源相对受限,因此需要实现简单、占用资源少、运行速度快的高效解决方法。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于静态随机存储器PUF的密钥提取方法及系统,以在嵌入式系统资源相对受限的条件下,实现简单、占用资源少、运行快速的私钥提取。
为实现上述目的,本发明提供了一种基于SRAMPUF的密钥提取方法,包括:
注册阶段:
步骤1:SRAMPUF上电,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据;
步骤2:SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储;
步骤3:SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息;
步骤4:根据所述稳定数据的位置信息从基准响应数据中提取预定长度的第一数据;
步骤5:根据所述预定长度的第一数据和纠错算法生成纠错码,并存储纠错码;
步骤6:删除基准响应数据,以所述第一数据作为密钥素材生成密钥;
验证阶段:
步骤1’:SRAMPUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值;
步骤2’:根据所述注册阶段存储的稳定数据的位置信息,从所述第二初始值中提取预定长度的第二数据;
步骤3’:依据注册阶段生成的纠错码对所述第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥。
进一步,注册阶段的步骤3中SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息包括:
步骤31:SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,将出错的数据位剔除掉生成产生稳定数据的地址信息,新的第一初始值中剩余的数据即为稳定数据;
步骤32:把产生稳定数据的地址信息与存储的稳定数据的位置信息对比,将产生出错数据位的地址剔除掉,筛选出一直产生稳定数据的地址信息,作为更新的稳定地址信息进行存储;;
步骤33:根据更新的稳定地址信息位个数与原来的稳定地址信息位个数计算误码率,将得到的误码率与预设的误码率阈值进行对比,当误码率小于所述预设的误码率阈值时执行步骤4,当误码率大于所述预设的误码率阈值时重复执行步骤31和步骤32。
进一步,所述步骤2中,SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比为对相同存储地址中的数值进行异或运算,以异或运算结果作为稳定数据的位置信息进行存储。
进一步,所述步骤31中,SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比为进行异或运算,以异或运算结果作为产生稳定数据的地址信息。
进一步,所述步骤32中,把产生稳定数据的地址与存储的稳定数据的位置信息对比为进行或运算,将运算结果作为更新的稳定地址信息替换原来的稳定地址信息进行存储。
本发明还提供了一种基于SRAMPUF的密钥提取系统,包括:
在注册阶段,用于SRAMPUF上电后,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据的第一模块;用于SRAMPUF再次上电,读取SRAM所述固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储的第二模块;用于SRAMPUF再次上电,读取SRAM所述固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息的第三模块;用于根据所述稳定数据的位置信息从基准响应数据中提取预定长度的第一数据的第四模块;用于根据所述预定长度的第一数据和纠错算法生成纠错码,并存储纠错码的第五模块;用于删除基准响应数据,以所述第一数据作为密钥素材生成密钥的第六模块;
在验证阶段,用于SRAMPUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值的第七模块;用于根据所述注册阶段存储的稳定数据的位置信息,从所述第二初始值中提取预定长度的第二数据的第八模块;用于依据注册阶段生成的纠错码对所述第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥的第九模块。
采用本发明提供的基于SRAMPUF的密钥提取方法及系统,在注册阶段,读取SRAM固定地址段产生的原始数据,将其作为初始值;多次上电,对获得的多个初始值进行比较,将初始值中容易出错的数据位所对应的地址剔除掉,获得稳定地址;使用稳定地址产生的初始值作为生成密钥的密钥素材,并使用纠错算法生成密钥素材的纠错码。这样,降低了生成密钥素材的SRAM地址段的错误率,在下次提取密钥素材时,系统可以选取较为简单的纠错算法对较短的原始数据进行纠错,提升了系统效率;在验证阶段,从注册阶段获得的稳定地址提取错误率较低的原始数据,使用相同的纠错算法进行纠错,最终恢复出密钥素材。
附图说明
图1为本发明一种基于SRAMPUF的密钥提取方法中注册阶段流程示意图;
图2为本发明一种基于SRAMPUF的密钥提取方法中验证阶段流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明作进一步详细说明。
本发明提供了一种基于静态随机存储器PUF的密钥提取方法,包括注册阶段和验证阶段:
注册阶段如图1所示,包括:
步骤1:SRAMPUF上电,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据;
步骤2:SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储;
步骤3:SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息;
步骤4:根据所述稳定数据的位置信息从基准响应数据中提取预定长度的第一数据;
步骤5:根据所述预定长度的第一数据和纠错算法生成纠错码,并存储纠错码;
步骤6:删除基准响应数据,以所述第一数据作为密钥素材生成密钥。
验证阶段如图2所示,包括:
步骤1’:SRAMPUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值;
步骤2’:根据所述注册阶段存储的稳定数据的位置信息,从所述第二初始值中提取预定长度的第二数据;
步骤3’:依据注册阶段生成的纠错码对所述第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥。
以下结合实施例进行详细说明:
在注册阶段,静态随机存储器每次上电后,均会生成一个原始数据,该原始数据可以是一个按存储地址排列的字符串,例如……1010101……,由于静态随机存储器存在不可避免的非负概率的错误,上述字符串中的某些存储地址对应的数值可能会发生变化;
在本实施例中,SRAMPUF首次上电时,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据,例如选择的固定地址段产生的原始数据为1010101,则以1010101作为基准响应数据;
SRAMPUF第二次上电,读取SRAM中与上次相同的固定地址段的原始数据,作为第一初始值与基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储;在本实施例中,假设第二次上电时,读取SRAM中与上次相同的固定地址段的原始数据为1110101,以1110101作为第一初始值与基准响应数据1010101进行异或运算,以异或运算结果0100000作为稳定数据的位置信息进行存储,异或运算结果0100000表示存储地址的第二位出现了非负概率的错误,因此,除了第二位外的存储地址所对应的数据没有发生变化;
SRAMPUF第三次上电,读取SRAM与上次相同的固定地址段的原始数据,作为新的第一初始值与基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息;在本实施例中,该步骤具体的包括以下流程:
首先,SRAMPUF再次上电,读取SRAM与上次相同的固定地址段的原始数据,作为新的第一初始值与基准响应数据进行对比,将出错的数据位剔除掉,生成产生稳定数据的地址信息,新的第一初始值中剩余的数据位即为稳定数据对应的数据位;假设第三次上电时,读取SRAM中与上次相同的固定地址段的原始数据为1011101,将新的第一初始值1011101与基准响应数据1010101进行异或运算,以异或运算结果0001000作为稳定数据的地址信息,以该稳定数据的地址信息,其中数值为1的数据位为此次出错的数据位,数值为0的数据位为稳定数据对应的数据位;
然后,把产生稳定数据的地址信息与存储的稳定数据的位置信息对比,将产生出错数据位的地址剔除掉,筛选出一直产生稳定数据的地址信息,作为更新的稳定地址信息进行存储;即,把产生稳定数据的地址信息0001000与存储的稳定数据的位置信息0100000对比,将产生出错数据位的地址剔除掉,筛选出一直产生稳定数据的地址信息,作为更新的稳定地址信息进行存储,优选将产生稳定数据的地址信息0001000与存储的稳定数据的位置信息0100000进行或运算,得到运算结果0101000,将或运算结果0101000作为更新的稳定地址信息替换原来的稳定地址信息进行储存,其表示除了第二、第四位以外的存储地址存储的数据是稳定的;
最后,根据更新的稳定地址信息位个数与原来的稳定地址信息位个数计算误码率,将得到的误码率与预设的误码率阈值进行对比;根据上述举例的内容,可以看出更新的稳定地址信息较原来的稳定地址信息有一个存储地址不是可信的稳定地址,其误码率为1/6;将得到的误码率与预设的误码率阈值进行对比,若该误码率大于预设的误码率阈值,则重复执行第三次上电的步骤,由于对于静态随机存储器而言,其不稳定的数据为有限的,因此,通过上述步骤的反复筛选,最终可以筛选出稳定数据的位置信息,其所对应的原始数据其在多次生成过程中是相对稳定且可信的。
接着,当根据最终筛选出的稳定数据的位置信息,从基准响应数据中提取预定长度的第一数据。
根据预定长度的第一数据和纠错算法生成纠错码,并存储纠错码。
删除基准响应数据,以所述第一数据作为密钥素材生成密钥。
在验证阶段,首先,SRAMPUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值;
然后,根据注册阶段存储的稳定数据的位置信息,从第二初始值中提取预定长度的第二数据;
最后,依据注册阶段生成的纠错码对第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥。
在验证阶段中,由于使用的稳定数据的位置信息是通过注册步骤中多次筛选得出的,其对应的数据的稳定性很高,因此,得到的第二数据与注册步骤中的第一数据差别很小;进一步,在验证阶段中使用在注册阶段根据第一数据和纠错算法生成的纠错码,由第二数据就可以得到与第一数据趋近于完全相同的密钥素材,是以可以还原出注册阶段时生成的密钥。
对应于上述的基于SRAMPUF的密钥提取方法,本发明还提供了一种基于SRAMPUF的密钥提取系统,包括:
在注册阶段,用于SRAMPUF上电后,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据的第一模块;用于SRAMPUF再次上电,读取SRAM所述固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储的第二模块;用于SRAMPUF再次上电,读取SRAM所述固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息的第三模块;用于根据所述稳定数据的位置信息从基准响应数据中提取预定长度的第一数据的第四模块;用于根据所述预定长度的第一数据和纠错算法生成纠错码,并存储纠错码的第五模块;用于删除基准响应数据,以所述第一数据作为密钥素材生成密钥的第六模块;
在验证阶段,用于SRAMPUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值的第七模块;用于根据所述注册阶段存储的稳定数据的位置信息,从所述第二初始值中提取预定长度的第二数据的第八模块;用于依据注册阶段生成的纠错码对所述第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥的第九模块。
需要说明的是,本申请基于SRAMPUF的密钥提取系统中的各个模块所执行的功能,本领域技术人员可以通过计算机软件实现,在此不再赘述。
综上所述,采用本发明提供的基于SRAMPUF的密钥提取方法及系统,在注册阶段,读取SRAM固定地址段产生的原始数据,将其作为初始值;多次上电,对获得的多个初始值进行比较,将初始值中容易出错的数据位所对应的地址剔除掉,获得稳定地址;使用稳定地址产生的初始值作为生成密钥的密钥素材,并使用纠错算法生成密钥素材的纠错码。这样,降低了生成密钥素材的SRAM地址段的错误率,在下次提取密钥素材时,系统可以选取较为简单的纠错算法对较短的原始数据进行纠错,提升了系统效率;在验证阶段,从注册阶段获得的稳定地址提取错误率较低的原始数据,使用相同的纠错算法进行纠错,最终恢复出密钥素材。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (6)
1.一种基于SRAMPUF的密钥提取方法,其特征在于,包括:
注册阶段:
步骤1:SRAMPUF上电,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据;
步骤2:SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储;
步骤3:SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息;
步骤4:根据所述稳定数据的位置信息从基准响应数据中提取预定长度的第一数据;
步骤5:根据所述预定长度的第一数据和纠错算法生成纠错码,并存储纠错码;
步骤6:删除基准响应数据,以所述第一数据作为密钥素材生成密钥;
验证阶段:
步骤1’:SRAMPUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值;
步骤2’:根据所述注册阶段存储的稳定数据的位置信息,从所述第二初始值中提取预定长度的第二数据;
步骤3’:依据注册阶段生成的纠错码对所述第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥。
2.根据权利要求1所述的方法,其特征在于,注册阶段的步骤3中SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息包括:
步骤31:SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,将出错的数据位剔除掉,生成产生稳定数据的地址信息,新的第一初始值中剩余的数据位即为稳定数据对应的数据位;
步骤32:把产生稳定数据的地址信息与存储的稳定数据的位置信息对比,将产生出错数据位的地址剔除掉,筛选出一直产生稳定数据的地址信息,作为更新的稳定地址信息进行存储;
步骤33:根据更新的稳定地址信息位个数与原来的稳定地址信息位个数计算误码率,将得到的误码率与预设的误码率阈值进行对比,当误码率小于所述预设的误码率阈值时执行步骤4,当误码率大于所述预设的误码率阈值时重复执行步骤31和步骤32。
3.根据权利要求2所述的方法,其特征在于,所述步骤2中,SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比为对相同存储地址中的数值进行异或运算,以异或运算结果作为稳定数据的位置信息进行存储。
4.根据权利要求3所述的方法,其特征在于,所述步骤31中,SRAMPUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比为进行异或运算,以异或运算结果作为产生稳定数据的地址信息。
5.根据权利要求4所述的方法,其特征在于,所述步骤32中,把产生稳定数据的地址与存储的稳定数据的位置信息对比为进行或运算,将运算结果作为更新的稳定地址信息替换原来的稳定地址信息进行存储。
6.一种基于SRAMPUF的密钥提取系统,其特征在于,包括:
在注册阶段,用于SRAMPUF上电后,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据的第一模块;用于SRAMPUF再次上电,读取SRAM所述固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储的第二模块;用于SRAMPUF再次上电,读取SRAM所述固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息的第三模块;用于根据所述稳定数据的位置信息从基准响应数据中提取预定长度的第一数据的第四模块;用于根据所述预定长度的第一数据和纠错算法生成纠错码,并存储纠错码的第五模块;用于删除基准响应数据,以所述第一数据作为密钥素材生成密钥的第六模块;
在验证阶段,用于SRAMPUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值的第七模块;用于根据所述注册阶段存储的稳定数据的位置信息,从所述第二初始值中提取预定长度的第二数据的第八模块;用于依据注册阶段生成的纠错码对所述第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥的第九模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410520665.5A CN105530097B (zh) | 2014-09-30 | 2014-09-30 | 一种基于sram puf的密钥提取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410520665.5A CN105530097B (zh) | 2014-09-30 | 2014-09-30 | 一种基于sram puf的密钥提取方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105530097A true CN105530097A (zh) | 2016-04-27 |
CN105530097B CN105530097B (zh) | 2018-09-28 |
Family
ID=55772111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410520665.5A Expired - Fee Related CN105530097B (zh) | 2014-09-30 | 2014-09-30 | 一种基于sram puf的密钥提取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105530097B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055491A (zh) * | 2016-05-31 | 2016-10-26 | 东南大学 | 一种基于sram puf的熵提取方法及电路 |
CN106297863A (zh) * | 2016-08-09 | 2017-01-04 | 复旦大学 | 可双重预充电的puf存储器及其密码生成方法 |
CN106941400A (zh) * | 2017-03-06 | 2017-07-11 | 东南大学 | 一种基于sram‑puf的模糊保险箱认证方法 |
CN107169377A (zh) * | 2017-04-29 | 2017-09-15 | 苏州芯动科技有限公司 | 一种基于puf的数据存储系统 |
CN107229578A (zh) * | 2017-07-14 | 2017-10-03 | 北京宏思电子技术有限责任公司 | 一种基于芯片生成非重复应用数据的方法及装置 |
CN107239715A (zh) * | 2017-04-29 | 2017-10-10 | 苏州芯动科技有限公司 | 生成稳定puf响应的方法及电路 |
CN107844715A (zh) * | 2016-09-20 | 2018-03-27 | 华邦电子股份有限公司 | 半导体装置及安全系统 |
CN108415662A (zh) * | 2017-02-10 | 2018-08-17 | 中芯国际集成电路制造(上海)有限公司 | 获取存储器物理不可克隆函数的方法和系统 |
CN109670346A (zh) * | 2017-10-13 | 2019-04-23 | 三星电子株式会社 | 半导体装置、产生和登记安全密钥的方法、以及电子系统 |
CN110730068A (zh) * | 2019-09-25 | 2020-01-24 | 中国电子科技集团公司第五十八研究所 | 一种基于sram-puf的密钥提取方法 |
CN111459726A (zh) * | 2019-01-18 | 2020-07-28 | 中山远实微科技有限公司 | 一种芯片以及芯片自修复方法 |
CN112804678A (zh) * | 2021-04-15 | 2021-05-14 | 浙江口碑网络技术有限公司 | 设备注册、认证及数据传输方法和装置 |
CN114091068A (zh) * | 2021-11-24 | 2022-02-25 | 东南大学 | 高效提取dram puf的密钥生成系统及方法 |
CN114465711A (zh) * | 2022-01-29 | 2022-05-10 | 支付宝(杭州)信息技术有限公司 | 一种存储器的硬件秘钥重构方法及装置 |
CN114996774A (zh) * | 2021-03-02 | 2022-09-02 | 兴唐通信科技有限公司 | 一种基于sram puf的硬件指纹提取方法及系统 |
FR3154224A1 (fr) * | 2023-10-12 | 2025-04-18 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Generation cle cryptographique a partir d’une memoire sram |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020552A (zh) * | 2012-12-20 | 2013-04-03 | 天津联芯科技有限公司 | 基于sram的puf的片上自我注册系统及其实现方法 |
US20130142329A1 (en) * | 2011-12-02 | 2013-06-06 | Cisco Technology, Inc. | Utilizing physically unclonable functions to derive device specific keying material for protection of information |
CN103338107A (zh) * | 2013-06-05 | 2013-10-02 | 北京华大信安科技有限公司 | 密钥生成方法及密钥生成装置 |
CN103544410A (zh) * | 2013-09-30 | 2014-01-29 | 华中科技大学 | 一种嵌入式微处理器非可克隆函数密钥认证系统和方法 |
-
2014
- 2014-09-30 CN CN201410520665.5A patent/CN105530097B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130142329A1 (en) * | 2011-12-02 | 2013-06-06 | Cisco Technology, Inc. | Utilizing physically unclonable functions to derive device specific keying material for protection of information |
CN103020552A (zh) * | 2012-12-20 | 2013-04-03 | 天津联芯科技有限公司 | 基于sram的puf的片上自我注册系统及其实现方法 |
CN103338107A (zh) * | 2013-06-05 | 2013-10-02 | 北京华大信安科技有限公司 | 密钥生成方法及密钥生成装置 |
CN103544410A (zh) * | 2013-09-30 | 2014-01-29 | 华中科技大学 | 一种嵌入式微处理器非可克隆函数密钥认证系统和方法 |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055491A (zh) * | 2016-05-31 | 2016-10-26 | 东南大学 | 一种基于sram puf的熵提取方法及电路 |
CN106055491B (zh) * | 2016-05-31 | 2019-03-12 | 东南大学 | 一种基于sram puf的熵提取方法及电路 |
CN106297863A (zh) * | 2016-08-09 | 2017-01-04 | 复旦大学 | 可双重预充电的puf存储器及其密码生成方法 |
CN106297863B (zh) * | 2016-08-09 | 2020-07-28 | 复旦大学 | 可双重预充电的puf存储器及其密码生成方法 |
CN107844715B (zh) * | 2016-09-20 | 2020-09-25 | 华邦电子股份有限公司 | 半导体装置及安全系统 |
CN107844715A (zh) * | 2016-09-20 | 2018-03-27 | 华邦电子股份有限公司 | 半导体装置及安全系统 |
CN108415662A (zh) * | 2017-02-10 | 2018-08-17 | 中芯国际集成电路制造(上海)有限公司 | 获取存储器物理不可克隆函数的方法和系统 |
CN106941400B (zh) * | 2017-03-06 | 2020-04-24 | 东南大学 | 一种基于sram-puf的模糊保险箱认证方法 |
CN106941400A (zh) * | 2017-03-06 | 2017-07-11 | 东南大学 | 一种基于sram‑puf的模糊保险箱认证方法 |
CN107239715B (zh) * | 2017-04-29 | 2020-06-26 | 苏州芯动科技有限公司 | 生成稳定puf响应的方法及电路 |
CN107169377A (zh) * | 2017-04-29 | 2017-09-15 | 苏州芯动科技有限公司 | 一种基于puf的数据存储系统 |
CN107239715A (zh) * | 2017-04-29 | 2017-10-10 | 苏州芯动科技有限公司 | 生成稳定puf响应的方法及电路 |
CN107229578A (zh) * | 2017-07-14 | 2017-10-03 | 北京宏思电子技术有限责任公司 | 一种基于芯片生成非重复应用数据的方法及装置 |
CN107229578B (zh) * | 2017-07-14 | 2020-08-18 | 北京宏思电子技术有限责任公司 | 一种基于芯片生成非重复应用数据的方法及装置 |
CN109670346A (zh) * | 2017-10-13 | 2019-04-23 | 三星电子株式会社 | 半导体装置、产生和登记安全密钥的方法、以及电子系统 |
CN109670346B (zh) * | 2017-10-13 | 2023-06-16 | 三星电子株式会社 | 半导体装置、产生和登记安全密钥的方法、以及电子系统 |
CN111459726A (zh) * | 2019-01-18 | 2020-07-28 | 中山远实微科技有限公司 | 一种芯片以及芯片自修复方法 |
CN110730068A (zh) * | 2019-09-25 | 2020-01-24 | 中国电子科技集团公司第五十八研究所 | 一种基于sram-puf的密钥提取方法 |
CN114996774A (zh) * | 2021-03-02 | 2022-09-02 | 兴唐通信科技有限公司 | 一种基于sram puf的硬件指纹提取方法及系统 |
CN112804678A (zh) * | 2021-04-15 | 2021-05-14 | 浙江口碑网络技术有限公司 | 设备注册、认证及数据传输方法和装置 |
CN112804678B (zh) * | 2021-04-15 | 2021-07-20 | 浙江口碑网络技术有限公司 | 设备注册、认证及数据传输方法和装置 |
CN114091068A (zh) * | 2021-11-24 | 2022-02-25 | 东南大学 | 高效提取dram puf的密钥生成系统及方法 |
CN114091068B (zh) * | 2021-11-24 | 2024-06-25 | 东南大学 | 高效提取dram puf的密钥生成系统及方法 |
CN114465711A (zh) * | 2022-01-29 | 2022-05-10 | 支付宝(杭州)信息技术有限公司 | 一种存储器的硬件秘钥重构方法及装置 |
FR3154224A1 (fr) * | 2023-10-12 | 2025-04-18 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Generation cle cryptographique a partir d’une memoire sram |
Also Published As
Publication number | Publication date |
---|---|
CN105530097B (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105530097B (zh) | 一种基于sram puf的密钥提取方法及系统 | |
Gao et al. | Lightweight (reverse) fuzzy extractor with multiple reference PUF responses | |
Kumar et al. | The butterfly PUF protecting IP on every FPGA | |
Garg et al. | Design of SRAM PUF with improved uniformity and reliability utilizing device aging effect | |
Maes et al. | Physically unclonable functions: A study on the state of the art and future research directions | |
Gao et al. | Memristive crypto primitive for building highly secure physical unclonable functions | |
Delvaux et al. | Helper data algorithms for PUF-based key generation: Overview and analysis | |
Maes | Physically unclonable functions: Concept and constructions | |
Maes et al. | A soft decision helper data algorithm for SRAM PUFs | |
CN105337725B (zh) | 一种密钥管理装置及方法 | |
Holcomb et al. | DRV-fingerprinting: Using data retention voltage of SRAM cells for chip identification | |
CN104168112B (zh) | 一种基于多模态生物特征的密钥生成方法 | |
Barbareschi et al. | Testing 90 nm microcontroller SRAM PUF quality | |
CN104168264B (zh) | 一种低成本、高安全性物理不可克隆函数电路 | |
Santiago et al. | Realizing strong PUF from weak PUF via neural computing | |
Barbareschi et al. | On the adoption of physically unclonable functions to secure iiot devices | |
He et al. | Reliable and efficient PUF‐based cryptographic key generator using bit self‐tests | |
Gao et al. | mrPUF: A novel memristive device based physical unclonable function | |
TW201826159A (zh) | 資料處理的方法與裝置 | |
Platonov et al. | Using power-up sram state of atmel atmega1284p microcontrollers as physical unclonable function for key generation and chip identification | |
Aung et al. | Evaluation of SRAM PUF characteristics and generation of stable bits for IoT security | |
Gao et al. | NoisFre: Noise-tolerant memory fingerprints from commodity devices for security functions | |
Wang et al. | Architecture and physical implementation of reconfigurable multi-port physical unclonable functions in 65 nm CMOS | |
Alimohammadi et al. | Secure hardware key based on physically unclonable functions and artificial neural network | |
Noor et al. | Defense mechanisms against machine learning modeling attacks on strong physical unclonable functions for iot authentication: a review |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180928 Termination date: 20190930 |
|
CF01 | Termination of patent right due to non-payment of annual fee |