在密码硬件内生成真随机数的方法和装置制造方法及图纸

技术编号:38035543 阅读:11 留言:0更新日期:2023-06-30 11:02
一种生成真随机数以供密码硬件组件用于密码算法或通信协议的方法,以及一种用于密码算法或通信协议的密码硬件组件。该方法包括以下步骤:在第一操作状态下,控制密码硬件组件中的脉冲锁存时钟的时钟脉冲宽度,PW,以在使用密码硬件组件生成真随机数之间切换;以及在第二操作状态下使用密码硬件组件进行加密处理。理。理。

【技术实现步骤摘要】
【国外来华专利技术】在密码硬件内生成真随机数的方法和装置


[0001]本专利技术广泛涉及在密码硬件内生成真随机数的方法和装置,具体地,涉及在同一密码核心(即,统一真随机数生成器(TRNG)和密码核心)内完全可合成的全数字统一动态熵的生成、提取和利用。

技术介绍

[0002]真随机数生成器(TRNG)是片上安全系统中非常重要的组件,作为动态熵源(不可预测的随机数字位序列)
[1]‑
[2]。TRNG输出经过后处理以满足密码密钥质量标准,并用作广泛用于保护不安全通道上的数据通信的私钥或对称密钥加密的密钥
[2]。传统上,单个或不同子系统中的这两个构建块分别使用不同的设计方法进行设计,并在系统设计期间集成在一起,从而导致更高的硅面积、成本和设计工作量。这两个构建块通常通过基于总线或硬连线的互连进行通信,使它们容易受到物理攻击(例如,微探测)。
[0003]然而,在低成本和功率受限的设备中采用TRNG需要具有低的面积、能量/位和设计工作量的体系结构
[1]‑
[12]。这促使人们对具有有限模拟设计或没有模拟设计
[3]‑
[4]的TRNG产生了更广泛的兴趣,并在同一电路中统一了多种功能(例如,具有物理不可克隆功能
[3]和数据转换器
[5]的TRNG)。然而,此类现有的TRNG需要单独的原始熵生成电路、通过后处理提取熵以及利用此类熵的密码核心。这阻止了面积共享机会,并在物理攻击中提供明显的目标
[1]。
[0004]美国专利号US9,335,972B2,真随机数生成器
[8](密歇根大学董事,美国,2014年),该专利提出了一种基于三边环形振荡器从三次谐波到一次谐波的相位反转时间的生成真随机数的方法。使用相位检测电路将相位反转时间转换为数字计数,作为利用抖动作为随机源的随机数。该方法也作为会议论文发表在IEEE国际固态电路会议(InternationalSolid

StateCircuitsConference)
[9]上。
[0005]美国专利号US9,928,036B2,随机数生成器
[10](英特尔公司,圣克拉拉,美国,2014年),该专利提出了一种与处理器耦合生成随机数执行单元的方法。利用亚稳态源中的热噪声生成随机数。执行单元包括熵源电路、相关电路和提取器电路。熵源电路包括全数字组件,用于生成初始随机比特流。IEEE固态电路学报(JournalofSolid

Statecircuits)
[11]中也描述了这种方法。
[0006]美国专利号US2019/0305970A1,用于生成混合静态/动态熵物理不可克隆函数的装置和方法
[12](英特尔公司,圣克拉拉,美国,2019年),该专利提出了一种用于生成物理不可克隆函数(PUF)和真随机数生成器(TRNG)的统一方法和装置。提供了一种装置,其包括:用于产生第一随机位序列的熵源,其中熵源包括双稳态交叉耦合反相器单元阵列;耦合到熵源的第一电路,其中第一电路生成熵源选择集;耦合到熵源和第一电路的第二电路,其中第二电路用于接收第一随机序列和熵源选择集,并且其中第二电路用于生成第二随机序列。这种方法在IEEE固态电路学报(JournalofSolid

Statecircuits)
[3]中也进行了扩展。
[0007]综上所述,现有的体系结构(例如,参考文献[3]‑
[12])仅提出了基于各种随机现
象(例如,亚稳态、抖动、混沌等)的高效真随机数生成装置。这些体系结构具有独立的硬件资源,专用于随机数生成和密码硬件,即,采用单独的电路来生成熵、提取熵并通过密码硬件将其用于加密,从而导致增加通常由TRNG主导的面积和能源成本。由于与密码核心的物理分离,独立的熵生成和提取也会将密钥暴露于物理攻击(例如,总线微探测)。在追求面积节省的同时,最近提出了将TRNG与其他功能合并在一起的统一体系结构,例如物理上不可克隆的功能和数据转换器,此类现有的建议并未涵盖从密钥生成到密码数据的整个信号链。
[0008]本专利技术的实施例试图解决至少一个上述问题。

技术实现思路

[0009]根据本专利技术的第一方面,提供了一种生成供密码硬件组件用于密码算法或通信协议的真随机数的方法,该方法包括以下步骤:
[0010]在第一操作状态下,控制该密码硬件组件中脉冲锁存时钟的时钟脉冲宽度,PW,以在使用密码硬件组件生成真随机数之间进行切换;和
[0011]在第二操作状态下,使用密码硬件组件进行加密处理。
[0012]根据本专利技术的第二方面,提供了一种用于密码算法或通信协议的密码硬件组件,密码硬件组件被配置为,在第一操作状态下,控制密码硬件组件中的脉冲锁存时钟的时钟脉冲宽度,PW,以在使用密码硬件组件生成真随机数之间进行切换,并在第二操作状态下,使用密码硬件组件进行加密处理。
[0013]在这里描述的非限制性示例实施例中,密码硬件组件包括用于私钥或对称密钥算法的对称密钥加密核心。要注意的是,如本领域技术人员所理解的,本专利技术将适用于任何具有较小修改的通用密码硬件。因此,根据本专利技术上述方面的密码硬件组件包括私钥密码核心、哈密函数等。
附图说明
[0014]从以下仅通过示例并结合附图的书面描述中将更好地理解本专利技术的实施例并且对于本领域的普通技术人员而言将是显而易见的,其中:
[0015]图1(a)示出了基于Feistel网络的私钥密码算法的原理微体系结构。
[0016]图1(b)示出了基于替代置换网络(例如,高级加密标准)实现的私钥密码算法的原理微体系结构。
[0017]图1(c)图示了根据示例实施例的基于脉冲锁存时钟的统一熵体系结构。
[0018]图2(a)图示了根据示例实施例的用于TRNG和密码核心(SIMON核心)以及负责自振荡的反相组合环路的统一体系结构。
[0019]图2(b)图示了根据示例实施例的使用保持时间违规(亚稳态)作为随机源的动态熵生成,以及单个逻辑路径的相关时序分析。
[0020]图3(a)示出了根据示例实施例的所测量的TRNG输出统计数据(香农(Shannon)熵和最大自相关函数值)与标称条件(0.9V,25℃)下的循环的关系。
[0021]图3(b)示出了根据示例实施例的基于4位异或门(XOR)的后处理。
[0022]图4示出了根据示例实施例的经历保持违例的路径与来自图2(a)中的实现的布局
后静态时序分析的时钟PW的关系的直方图。
[0023]图5示出了根据示例实施例的经历设置违规的路径与来自图2(a)中的实现的布局后静态时序分析的时钟PW的关系的直方图。
[0024]图6(a)示出了根据示例实施例的时序违规计数与时钟PW的关系:精细PW扫描(1

ps)高达256FO1。
[0025]图6(b)示出了根据示例实施例的时序违规计数与时钟PW本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种生成真随机数以供密码硬件组件用于密码算法或通信协议的方法,所述方法包括以下步骤:在第一操作状态下,控制所述密码硬件组件中的脉冲锁存时钟的时钟脉冲宽度,PW,以在使用所述密码硬件组件生成所述真随机数之间切换;和在第二操作状态下,使用所述密码硬件组件进行加密处理。2.根据权利要求1所述的方法,其中,在所述第一操作状态下使用所述密码硬件组件生成所述真随机数包括经由时钟脉冲宽度过度拉伸利用所述密码硬件组件的脉冲锁存流水线中的保持裕量。3.根据权利要求1或2所述的方法,其中,控制所述PW包括在所述第二操作状态期间将所述PW控制为小于所述密码硬件组件中的保持违例窗口。4.根据权利要求1至3中任一项所述的方法,其中,控制所述PW包括在所述第一操作状态期间将所述PW控制为大于所述密码硬件组件中的所述保持违例窗口。5.根据权利要求4所述的方法,其中,控制所述PW包括在所述第一操作状态期间将所述PW控制为大于所述保持违例窗口并且大于所述密码硬件组件中的最小循环延迟。6.根据权利要求5所述的方法,其中,控制所述PW包括在所述第一操作状态期间将所述PW控制为大于所述密码硬件组件中的所述最小循环延迟的阈值倍数。7.根据权利要求5或6中任一项所述的方法,其中,所述阈值倍数包括标称时钟脉冲宽度加上保持裕量以增加所组合的最小延迟。8.根据权利要求4至7所述的方法,其中,PW被控制为大于32 FO1的任何值,其中FO1对于给定的设计技术是扇出为1的反相器延迟。9.根据权利要求8所述的方法,其中,PW被控制为64 FO1。10.根据权利要求8所述的方法,其中,PW被控制为256 FO1。11.一种用于密码算法或通信协议的密码硬件组件,所述密码硬件组件被配...

【专利技术属性】
技术研发人员:萨钦
申请(专利权)人:新加坡国立大学
类型:发明
国别省市:

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

1