一种真随机数发生器和真随机数发生方法技术

技术编号:23787105 阅读:25 留言:0更新日期:2020-04-15 00:29
本发明专利技术实施例公开了一种真随机数发生器和真随机数发生方法。多个环形振荡器电路以阵列方式排布,且能够通过随机数统计分析电路分析随机数序列并反馈分析结论至配置选择电路,配置选择电路根据随机数统计分析电路的分析结论,发送控制信息调整真随机数发生器的配置。通过实施本发明专利技术实施例,在不增加后端布局布线难度的情况下,能够自动调节真随机数发生器配置,生成高质量的随机数序列,效率高。

A true random number generator and a true random number generating method

【技术实现步骤摘要】
一种真随机数发生器和真随机数发生方法
本专利技术涉及信息安全
,尤其涉及一种真随机数发生器和真随机数发生方法。
技术介绍
真随机数普遍应用于密码运算场景。产生真随机数需要使用真随机数发生器。和伪随机数发生器不同的是,真随机数发生器需要使用物理噪声源。目前最常用的物理噪声源之一是使用环形振荡器环形振荡器,用采样时钟采样环形振荡器的输出。受到外界噪声的影响,环形振荡器产生的波形存在抖动,数字化处理后即可产生真随机数。由于单路环形振荡器输出的熵比较低,通常会使用多路环形振荡器采样,以增加输出的熵。环形振荡器通常使用反相器进行搭建。在使用设计中,为了方便后端布局布线,多路环形振荡器会采用相同反相器数量,即多路环形振荡器的周期较为接近。当周期比较接近的不同环形振荡器环进行震荡时,可能会出现部分环形振荡器频率互锁的情况,导致互锁的环形振荡器相位差稳定,输出结果异或处理后不产生随机效果。一般处理这个问题的方法是,在布局布线时手动将环形振荡器分散在芯片的各个部分,但这增加了后端布局布线的难度。此外,现有设计中,若产生的随机数序列无法达到要求,则需设计人员重新规划设计,以增强熵,改善随机数序列的质量,效率低下,缺乏自动调节的手段。
技术实现思路
本专利技术实施例提供一种真随机数发生器和真随机数发生方法,在不增加后端布局布线难度的情况下,能够自动调节真随机数发生器配置,生成高质量的随机数序列,效率高。一方面,本专利技术实施例提供一种真随机数发生器,包括:依次连接的配置选择电路,环形振荡器电路阵列,时钟采样阵列,异或电路,随机数统计分析电路;所述随机数统计分析电路的反馈输出端与所述配置选择电路的输入端连接;其中,所述环形振荡器电路阵列,包括多个环形振荡器电路;所述时钟采样阵列,包括与所述多个环形振荡器电路所对应的多个触发器;所述多个触发器用于以根据采样时钟分别对多个环形振荡器电路的信号进行采样;所述采样时钟受所述配置选择电路控制;所述异或电路,用于将所述时钟采样阵列的采样结果进行异或运算,并将运算产生的随机数序列发送至随机数统计分析电路;所述随机数统计分析电路,用于分析所述随机数序列并反馈分析结论至配置选择电路;所述配置选择电路,用于根据所述随机数统计分析电路的分析结论,发送控制信息调整所述真随机数发生器的配置。可选的,所述分析结论,包含随机数序列质量信息;所述随机数统计分析电路还用于,若所述随机数序列质量信息符合预设要求,则输出所述随机数序列。可选的,所述环形振荡器电路,包括:反相器链路和多路选择器;所述反相器链路,包括串联连接的奇数个反相器;所述多路选择器的控制端连接所述配置选择电路以接收所述配置选择电路的控制信息;所述多路选择器多个选择端分别连接至所述反相器链路的不同位置;所述多路选择器的输出端连接至所述反相器链路的末尾;所述多路选择器的使能关闭端置空;从而与所述反相器链路构成环形振荡器电路的回路。可选的,所述配置选择电路,根据所述随机数统计分析电路的分析结论,发送控制信息调整所述真随机数发生器的配置,包括通过以下方式中的至少一种:发送数量控制信息至所述环形振荡器电路阵列中的多路选择器,以控制所述多个环形振荡器电路的开启数量;发送长度控制信息至所述环形振荡器电路阵列中的多路选择器,以控制所述多个环形振荡器电路的长度;发送时钟控制信息至所述时钟采样阵列,以调整采样时钟。可选的,真随机数发生器还包括后处理电路,用于对输出的所述随机数序列进行后处理。另一方面,本专利技术实施例提供一种真随机数发生方法,应用于真随机数发生器,所述真随机数发生器包括依次连接的配置选择电路、环形振荡器电路阵列、时钟采样阵列、异或电路以及随机数统计分析电路;所述随机数统计分析电路的反馈输出端与所述配置选择电路的输入端连接;所述方法包括:采样,通过时钟采样阵列,根据采样时钟分别对环形振荡器电路阵列中,至少两个环形振荡器电路的信号进行采样;异或运算,通过异或电路将所述采样结果进行异或运算产生随机数序列;统计分析,通过随机数统计分析电路统计分析所述随机数序列是否符合预设要求,并反馈分析结论至所述配置选择电路;所述分析结论包含随机数序列质量信息;若符合,则输出所述随机数序列;若不符合,则通过配置选择电路发送控制信息以调整所述真随机数发生器的配置,并重复所述采样、异或运算和统计分析的步骤,直至所述随机数序列符合预设要求;调整的方式包括以下至少一种:调整所述多个环形振荡器电路的开启数量;调整所述多个环形振荡器电路的长度;以及,调整所述采样时钟。可选的,所述环形振荡器电路,包括:由反相器链路和多路选择器所构成的环形振荡器电路的回路;其中,所述反相器链路由串联的奇数个反相器组成;所述多路选择器包括置空的使能关闭端,用于接收控制信息的控制端,和连接到所述反相器链路不同位置的多个选择端。可选的,所述调整所述多个环形振荡器电路的开启数量,具体为:发送数量控制信息至所述多路选择器的控制端,以控制所述多路选择器选择使能关闭端,从而断开环形振荡器电路;或,控制所述多路选择器选择任一选择端而维持环形振荡器电路的开启。可选的,所述调整所述多个环形振荡器电路的长度,具体为:发送长度控制信息至所述多路选择器的控制端,以控制所述多路选择器选择多个选择端的其中一个,连通所述反相器链路的相应位置,从而调整所述多个环形振荡器电路的长度。可选的,所述时钟采样阵列,包括与所述多个环形振荡器电路所对应的多个触发器;所述多个触发器用于根据采样时钟分别对多个环形振荡器电路的信号进行采样;调整所述采样时钟,具体为:发送新的时钟信号至所述触发器的时钟输入端,替代原有的采样时钟。可选的,真随机数发生方法,还包括:后处理,对输出的所述随机数序列以预设方式进行后处理;所述预设方式包括:奇偶校验、冯-诺伊曼矫正、异或链、哈希函数、傅里叶变换、移位寄存器中的一种或多种。本专利技术实施例,多个环形振荡器电路以阵列方式排布,且能够通过随机数统计分析电路分析随机数序列并反馈分析结论至配置选择电路;配置选择电路根据随机数统计分析电路的分析结论,发送控制信息调整真随机数发生器的配置。通过实施本专利技术实施例,在不增加后端布局布线难度的情况下,能够自动调节真随机数发生器配置,生成高质量的随机数序列,效率高。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种真随机数发生器的实施例示意图;图2为图1对应实施例中环形振荡器电路阵列的示意图;图3为本专利技术实施例公开的一种真随机数发生方法的实施例示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部本文档来自技高网...

【技术保护点】
1.一种真随机数发生器,其特征在于,包括:依次连接的配置选择电路,环形振荡器电路阵列,时钟采样阵列,异或电路,随机数统计分析电路;所述随机数统计分析电路的反馈输出端与所述配置选择电路的输入端连接;其中,/n所述环形振荡器电路阵列,包括多个环形振荡器电路;/n所述时钟采样阵列,包括与所述多个环形振荡器电路所对应的多个触发器;所述多个触发器用于以根据采样时钟分别对多个环形振荡器电路的信号进行采样;所述采样时钟受所述配置选择电路控制;/n所述异或电路,用于将所述时钟采样阵列的采样结果进行异或运算,并将运算产生的随机数序列发送至随机数统计分析电路;/n所述随机数统计分析电路,用于分析所述随机数序列并反馈分析结论至配置选择电路;/n所述配置选择电路,用于根据所述随机数统计分析电路的分析结论,发送控制信息调整所述真随机数发生器的配置。/n

【技术特征摘要】
1.一种真随机数发生器,其特征在于,包括:依次连接的配置选择电路,环形振荡器电路阵列,时钟采样阵列,异或电路,随机数统计分析电路;所述随机数统计分析电路的反馈输出端与所述配置选择电路的输入端连接;其中,
所述环形振荡器电路阵列,包括多个环形振荡器电路;
所述时钟采样阵列,包括与所述多个环形振荡器电路所对应的多个触发器;所述多个触发器用于以根据采样时钟分别对多个环形振荡器电路的信号进行采样;所述采样时钟受所述配置选择电路控制;
所述异或电路,用于将所述时钟采样阵列的采样结果进行异或运算,并将运算产生的随机数序列发送至随机数统计分析电路;
所述随机数统计分析电路,用于分析所述随机数序列并反馈分析结论至配置选择电路;
所述配置选择电路,用于根据所述随机数统计分析电路的分析结论,发送控制信息调整所述真随机数发生器的配置。


2.根据权利要求1所述的真随机数发生器,其特征在于,所述分析结论,包含随机数序列质量信息;所述随机数统计分析电路还用于,若所述随机数序列质量信息符合预设要求,则输出所述随机数序列。


3.根据权利要求2所述的真随机数发生器,其特征在于,所述环形振荡器电路,包括:反相器链路和多路选择器;
所述反相器链路,包括串联连接的奇数个反相器;
所述多路选择器的控制端连接所述配置选择电路以接收所述配置选择电路的控制信息;所述多路选择器多个选择端分别连接至所述反相器链路的不同位置;所述多路选择器的输出端连接至所述反相器链路的末尾;所述多路选择器的使能关闭端置空;从而与所述反相器链路构成环形振荡器电路的回路。


4.根据权利要求3所述的真随机数发生器,其特征在于,所述配置选择电路,根据所述随机数统计分析电路的分析结论,发送控制信息调整所述真随机数发生器的配置,包括通过以下方式中的至少一种:
发送数量控制信息至所述环形振荡器电路阵列中的多路选择器,以控制所述多个环形振荡器电路的开启数量;
发送长度控制信息至所述环形振荡器电路阵列中的多路选择器,以控制所述多个环形振荡器电路的长度;
发送时钟控制信息至所述时钟采样阵列,以调整采样时钟。


5.根据权利要求2所述的真随机数发生器,其特征在于,还包括后处理电路,用于对输出的所述随机数序列进行后处理。


6.一种真随机数发生方法,应用于真随机数发生器,其特征在于,所述真随机数发生器包括依次连接的配置选择电路、环形振荡器电路阵列、时钟采样阵...

【专利技术属性】
技术研发人员:鹿益铭
申请(专利权)人:深圳市纽创信安科技开发有限公司
类型:发明
国别省市:广东;44

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

1