一种基于SRAM PUF的密钥提取方法及系统技术方案

技术编号:13190722 阅读:36 留言:0更新日期:2016-05-11 18:51
本发明专利技术公开了一种基于SRAM PUF的密钥提取方法及系统,在注册阶段,读取SRAM固定地址段产生的原始数据,将其作为初始值;多次上电,对获得的多个初始值进行比较,将初始值中容易出错的数据位所对应的地址剔除掉,获得稳定地址;使用稳定地址产生的初始值作为生成密钥的密钥素材,并使用纠错算法生成密钥素材的纠错码。这样,降低了生成密钥素材的SRAM地址段的错误率,在下次提取密钥素材时,系统可以选取较为简单的纠错算法对较短的原始数据进行纠错,提升了系统效率;在验证阶段,从注册阶段获得的稳定地址提取错误率较低的原始数据,使用相同的纠错算法进行纠错,最终恢复出密钥素材。

【技术实现步骤摘要】

本专利技术涉及信息安全领域,特别涉及一种基于SRAM (静态随机存储器)PUF的密钥提取方法及系统。
技术介绍
近些年来,随着智能卡、射频识别(Rad1 Frequency Identificat1n, RFID)等物理实体的广泛应用,如何对这些物理实体实施有效认证是成为确保系统安全的基础问题。然而,由于这类实体普遍存在着计算能力差、资源有限等问题,传统基于密码学的认证方法在应用时存在着很大障碍。借鉴当前普遍使用的人体唯一特征(指纹或虹膜)对个人实施认证的思想,人们基于物理实体的内在物理构造来唯一地标识单个物理实体实现有效认证的思路,提出了物理不可克隆函数(Physical Unclonable Funct1n, PUF)的概念。PUF是指对一个物理实体输入一个激励,利用其不可避免的内在物理构造的随机差异输出一个不可预测的响应这样一个物理不可克隆的函数。PUF最基本的应用是利用实体的唯一标识来实现认证。随着人们对PUF的理解和应用的不断深入,PUF又逐渐被应用到系统认证、密钥生成等更多的领域,并逐渐成为硬件安全领域研究中的一个热门话题。依据现有的研究,PUF分为非电子PUF系统、模拟电路PUF系统和数字电路PUF系统。其中,利用一些存储器单元结构的稳定状态的制造变化来实现的数字电路PUF系统是最容易实现的PUF系统。一般情况下,完成存储器的数字存储是通过双稳态逻辑单元,也就是一个逻辑单元假设有两个不同的但是逻辑上稳定的状态。具体过程是,首先通过交叉搞合两个门器件例如反相器来构建一个双稳态逻辑单元,然后这个双稳态逻辑单元选择寄存在两个中的一个状态,就实现了存储一个二进制数字。但是,如果双稳态逻辑单元进入一个不稳定状态,它就可能在不稳定状态之间振荡,但最后会回到双稳态中的一个。而实验表明大多数单元都会有其明确偏向。这个效果是由其对称设计单元参数间的不匹配造成的。而这种不匹配是由制造变化差异引起的,所以能够观察到这样一个存储单元的稳定状态显示出一个类似于PUF的行为。例如通过观察一个静态随机存取(Static RandomAccess Memory, SRAM)单元或一个触发器的稳定状态,就实现了 SRAM PUF和触发器PUF。而锁存PUF和蝴蝶PUF是通过破坏一个单元之后观察稳定的状态来实现的。所以总结所有的情况,PUF的激励是一个特定的单元的地址,而响应是单元的稳定状态。综上所述,可以看出,PUF具有不可克隆性、防篡改、轻量级等良好的属性,可以应用于密钥生成算法协议中。但是,从PUF响应中提取一个安全的密钥需要处理两个主要问题。首先,在不同的测量中,所有PUF实现方法产生的响应都有一个非负概率的错误。因此,在后处理过程中就需要采用一个纠错步骤来保证每次派生出相同的密钥。其次,提取算法需要确保输出的密钥是完全不可预测的,也就是说,它应该是一个均匀分布的随机比特串。由于PUF的响应大多数只有部分不可预测,提取算法需要压缩一些响应到一个密钥中以保证强的不可预测性。目前,已经研究出同时满足这两个要求的算法,称为模糊提取。模糊提取的主要想法是:最初的生成阶段,给PUF输入一个激励并产生一个响应,然后模糊提取算法根据响应产生一个包含额外信息的密钥。这些额外信息通常被称为辅助数据。这两个都被验证者存储在一个安全的数据库中而不是在设备上。在认证阶段,验证者把辅助数据提供给算法,算法用它来从PUF中提取相同的密钥。这样一来,含有PUF的设备和验证者之间就建立了一个共享密钥。在模糊提取过程中,需要选择能够对数据错误率大于或者等于初始值变化率的数据进行纠错的算法作为基准算法。PUF的数据错误率的大小直接影响了所选择算法的复杂度和所需辅助数据的存储空间大小。PUF的错误率除了取决于生产制造水平,还会受到包括温度、电压、半导体设备的经年等动作环境变化的影响变高。现有的基于PUF的密钥生成器方案,以算法的复杂度和辅助数据存储空间的增长为代价来解决PUF的错误率的问题,占用资源较多。由于嵌入式系统资源相对受限,因此需要实现简单、占用资源少、运行速度快的高效解决方法。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种基于静态随机存储器PUF的密钥提取方法及系统,以在嵌入式系统资源相对受限的条件下,实现简单、占用资源少、运行快速的私钥提取。为实现上述目的,本专利技术提供了一种基于SRAM PUF的密钥提取方法,包括:注册阶段:步骤1:SRAM PUF上电,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据;步骤2:SRAM PUF再次上电,读取SRAM与步骤I相同的固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储;步骤3:SRAM PUF再次上电,读取SRAM与步骤I相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息;步骤4:根据所述稳定数据的位置信息从基准响应数据中提取预定长度的第一数据;步骤5:根据所述预定长度的第一数据和纠错算法生成纠错码,并存储纠错码;步骤6:删除基准响应数据,以所述第一数据作为密钥素材生成密钥;验证阶段:步骤I’:SRAM PUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值;步骤2’:根据所述注册阶段存储的稳定数据的位置信息,从所述第二初始值中提取预定长度的第二数据;步骤3’:依据注册阶段生成的纠错码对所述第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥。进一步,注册阶段的步骤3中SRAM PUF再次上电,读取SRAM与步骤I相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息包括:步骤31:SRAM PUF再次上电,读取SRAM与步骤I相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,将出错的数据位剔除掉生成产生稳定数据的地址信息,新的第一初始值中剩余的数据即为稳定数据;步骤32:把产生稳定数据的地址信息与存储的稳定数据的位置信息对比,将产生出错数据位的地址剔除掉,筛选出一直产生稳定数据的地址信息,作为更新的稳定地址信息进行存储;;步骤33:根据更新的稳定地址信息位个数与原来的稳定地址信息位个数计算误码率,将得到的误码率与预设的误码率阈值进行对比,当误码率小于所述预设的误码率阈值时执行步骤4,当误码率大于所述预设的误码率阈值时重复执行步骤31和步骤32。进一步,所述步骤2中,SRAM PUF再次上电,读取SRAM与步骤I相同的固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比为对相同存储地址中的数值进行异或运算,以异或运算结果作为稳定数据的位置信息进行存储。进一步,所述步骤31中,SRAM PUF再次上电,读取SRAM与步骤I相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比为进行异或运算,以异或运本文档来自技高网
...

【技术保护点】
一种基于SRAM PUF的密钥提取方法,其特征在于,包括:注册阶段:步骤1:SRAM PUF上电,读取并存储SRAM固定地址段产生的原始数据,并以该原始数据作为基准响应数据;步骤2:SRAM PUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为第一初始值与所述的基准响应数据进行对比,获得稳定数据,获得产生稳定数据的地址信息作为稳定数据的位置信息并存储;步骤3:SRAM PUF再次上电,读取SRAM与步骤1相同的固定地址段的原始数据,作为新的第一初始值与所述的基准响应数据进行对比,获得稳定数据,将产生稳定数据的地址信息与系统存储的稳定数据的位置信息对比,获得并存储更新的稳定数据的位置信息;步骤4:根据所述稳定数据的位置信息从基准响应数据中提取预定长度的第一数据;步骤5:根据所述预定长度的第一数据和纠错算法生成纠错码,并存储纠错码;步骤6:删除基准响应数据,以所述第一数据作为密钥素材生成密钥;验证阶段:步骤1’:SRAM PUF上电,读取与注册阶段相同的SRAM固定地址段产生的原始数据,并以该原始数据作为第二初始值;步骤2’:根据所述注册阶段存储的稳定数据的位置信息,从所述第二初始值中提取预定长度的第二数据;步骤3’:依据注册阶段生成的纠错码对所述第二数据进行纠错,将纠错结果作为验证阶段恢复出的密钥素材,生成密钥。...

【技术特征摘要】

【专利技术属性】
技术研发人员:刘宗斌章庆隆韩晔向继高能马原
申请(专利权)人:中国科学院数据与通信保护研究教育中心
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1