CN115758951A - 一种基于多回路布尔振荡环的数字熵源集成电路 - Google Patents
一种基于多回路布尔振荡环的数字熵源集成电路 Download PDFInfo
- Publication number
- CN115758951A CN115758951A CN202211672219.7A CN202211672219A CN115758951A CN 115758951 A CN115758951 A CN 115758951A CN 202211672219 A CN202211672219 A CN 202211672219A CN 115758951 A CN115758951 A CN 115758951A
- Authority
- CN
- China
- Prior art keywords
- loop
- input
- oscillation
- gate
- boolean
- 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.)
- Pending
Links
Images
Landscapes
- Logic Circuits (AREA)
Abstract
Description
技术领域
本发明属于熵源集成电路技术领域,具体涉及一种基于多回路布尔振荡环的数字熵源集成电路。
背景技术
在信息安全应用中,随机数有着举足轻重的地位,可以应用于密钥生成、身份验证协议以及用作应对侧信道攻击的掩码等。密钥的不可预测性是保证密码算法安全性的关键,因此,质量可靠、无法预测的随机数是信息安全领域的关键。
随机数可以分为伪随机数和真随机数两类。使用软件算法产生的随机数是典型的伪随机数,具有一定周期性,容易被攻击者预测,安全程度较低;而真随机数的产生一般利用自然界中各种不可预测的物理现象,如集成电路中的噪声、放射性元素的衰变等,通过对这些物理现象使用放大、提取、数字化等手段,产生不可预测的真随机数。而能够产生真随机数的信息源被称为真随机数发生器。
真随机数发生器主要由熵源、熵提取模块和后处理模块组成。熵源中存在不可预测的物理现象,是真随机数难以被预测的关键所在,因此,熵源是真随机数发生器中最重要的部分。主流的熵源基本都以集成电路的形式实现,常见的集成电路熵源实现原理有:噪声直接放大、环形振荡器抖动采样、集成电路亚稳态以及混沌电路等。其中,噪声直接放大法通常需要使用面积较大的模拟放大器电路,混沌电路也基于模拟电路来实现,这限制了熵源电路产生随机数的速率,也不利于进行SoC集成;环形振荡器抖动采样和基于亚稳态的熵源通常使用纯数字电路实现,易于SoC集成,但是,单个环形振荡器产生的抖动较小,通常需要结合多个环形振荡器作为熵源才能产生熵值足够的随机数,这大大增加了电路面积;而亚稳态电路对电路的工艺偏差、工作条件十分敏感,产生亚稳态需要较为苛刻的条件,所以目前主流的纯数字熵源在设计和应用中存在许多局限性。
通过在环形振荡器中引入异或门电路,输出振荡信号的周期和幅值将不再固定,从而呈现出一种随机或是混沌的输出状态,这种振荡状态也被称为布尔振荡。对布尔振荡输出信号采样得到的随机数更加难以预测,这也成为了设计高质量熵源的一种新手段。
因此,本申请借助在环形振荡器中加入多个异或门逻辑电路产生布尔振荡,设计出一种结构简单、仅需数字逻辑标准单元来实现且可扩展性强的新型纯数字熵源电路,具有重大意义。
发明内容
本发明目的在于提供一种基于多回路布尔振荡环的数字熵源集成电路,以解决现有技术中纯数字熵源电路的应用局限性问题。
为实现上述目的,本申请的具体方案如下:
一种基于多回路布尔振荡环的数字熵源集成电路,所述集成电路包括多回路布尔振荡环电路和熵采样电路,其中,
所述多回路布尔振荡环电路,用以产生无规则的布尔振荡输出信号,包括N个基本振荡单元;
所述熵采样电路,用于对多回路布尔振荡环电路产生的振荡信号进行采样获得原始的随机序列,包括N个并列设置的D触发器,以及与D触发器输出端连接的两输入异或门链,两输入异或门链包括N-1个两输入异或门;
进一步地,所述多回路布尔振荡环电路的第i个基本振荡单元的输出端outi与第i+1个基本振荡单元的输入端ini+1相连,第N个基本振荡单元的输出端outN与第1个基本振荡单元的输入端in1相连,N个基本振荡单元构成环形结构,i表示基本振荡单元的序号,,这样形式的基本振荡单元构成的环形结构具有较多分支,能够形成多种复杂的振荡反馈。
进一步地,所述第i个基本振荡单元的输出端outi与第i+1个基本振荡单元的输入端ini+1之间设置第i个延时单元;所述第N个基本振荡单元的输出端outN与第1个基本振荡单元的输入端in1之间设置第N个延时单元,延时单元的数量与基本振荡单元的数量相同,且延时单元延时的数值和基本振荡单元中两输入异或门的延时基本相同。
进一步地,所述基本振荡单元,包括异或门XOR0、异或门XOR1、异或门XOR2以及反相器INV,异或门XOR0和异或门XOR1形成交叉反馈的结构;异或门XOR0的一个输入端为基本振荡单元的输入端口in,异或门XOR0的另一个输入端与异或门XOR1的输出端相连;异或门XOR1的一个输入端与异或门XOR0的输出端连接,异或门XOR1的另一个输入端与反相器INV的输出端连接,反相器INV的输入端与异或门XOR2的输出端out连接;异或门XOR2的输出端为基本振荡单元的输出端口out,异或门XOR0的输出端和异或门XOR1的输出端分别与异或门XOR2的两个输入端连接。
进一步地,所述熵采样电路的第i个D触发器的输入端与多回路布尔振荡环电路中第i个基本振荡单元的输出端outi相连,N个D触发器连接同一个时钟,通过同一时钟驱动,在同一时钟边沿采得N比特的原始随机数,i表示D触发器的序号。
进一步地,所述第i个D触发器的输入端与多回路布尔振荡环电路中第i个基本振荡单元的输出端outi相连,N个D触发器使用同一个时钟驱动,N个D触发器的输出经过两输入异或门链得到最终的随机数输出。
进一步地,所述两输入异或门链中第一个D触发器的输出端和第二个D触发器的输出端分别与第一个两输入异或门的两个输入端口相连接;第一个两输入异或门的输出端和第三个D触发器的输出端分别与第二个两输入异或门的两个输入端口相连接;以此类推,第i个两输入异或门的输出端和第i+2个D触发器的输出端分别与第i+1个两输入异或门的两个输入端口相连接;第i+1个两输入异或门的输出端为整个熵源电路的输出端。
进一步地,所述异或门XOR0、异或门XOR1、异或门XOR2均为两输入异或门。
与现有技术相比,本发明有以下优点:
(1)多回路布尔振荡环电路由多个基本振荡单元相连而构成,基本振荡单元构成的环形结构具有较多分支,能够形成多种复杂的振荡反馈,基本振荡单元数目越多,反馈回路就越多,振荡行为就更加复杂不可预测,在实际应用中能够根据具体的需求而调整包含基本振荡单元的数目;
(2)多回路布尔振荡环电路能够通过采取调整集成电路布线延时、添加延时单元等手段,使基本振荡单元之间连接路径的延时有所不同,从而使得多回路布尔振荡环能够避免形成周期稳定的振荡,形成周期不固定的振荡,提高了熵源输出的随机性;
(3)本发明构建了输出为随机布尔振荡的多回路振荡环电路,随机布尔振荡相较于传统的规则振荡,振荡随机性大大提升,作为熵源使用时可以在较高的采样频率下仍保持较高的输出熵值;
(4)本发明熵源电路仅由数字标准单元组成,结构简单,大大降低了设计和集成的难度,适用性广泛;
(5)本发明所述的多回路布尔振荡环电路中基本振荡单元的个数可调节,可根据不同工艺、不同器件尺寸来进行改变以满足设计需求;每个基本振荡单元的输出均为布尔振荡,彼此相关性较低,因此对每个基本振荡单元的输出都进行采样得到多比特原始随机数,大大提升了熵源的输出速率,设计者也可以根据熵源输出质量情况选择对多比特数据进行异或处理或直接并行输出。
附图说明
图1为本发明实施例一的电路图;
图2为本发明实施例二的电路图。
具体实施方式
为了更好地了解本发明的目的、结构及功能,下面结合附图,对本发明一种基于多回路布尔振荡环的数字熵源集成电路作进一步说明。
实施例一
两个基本振荡单元和两个熵采样电路(即N=2时的数字熵源集成电路):
如图1所示的基于多回路布尔振荡环的数字熵源集成电路,包括多回路布尔振荡环电路100和熵采样电路200,其中,多回路布尔振荡环电路包括两个基本振荡单元和两个延时单元:基本振荡单元101-1、基本振荡单元101-2、延时单元102以及延时单元103,且延时单元102以及延时单元103的延时不相等。基本振荡单元101-1的输出端out与延时单元102的输入端口相连,102的输出端口与基本振荡单元101-2的输入端in相连,基本振荡单元101-2的输出端out与延时单元103的输入端口相连,延时单元103的输出端口与基本振荡单元101-1的输入端in相连,构成具有较多分支、带有复杂振荡反馈的环形结构。通过在振荡环中增加延时单元102和延时单元103,使得振荡环中各条反馈路径的延时差异加大,振荡行为趋于更加无序混乱的布尔振荡,输出信号包含的熵值更高。具体的,延时单元延时的数值和基本振荡单元中两输入异或门的延时基本相同。
基本振荡单元101-1,包括两输入异或门XOR0、两输入异或门XOR1、两输入异或门XOR2以及反相器INV,两输入异或门XOR0和两输入异或门XOR1形成交叉反馈的结构;两输入异或门XOR0的一个输入端为基本振荡单元的输入端口in,两输入异或门XOR0的另一个输入端与两输入异或门XOR1的输出端相连;两输入异或门XOR1的一个输入端与两输入异或门XOR0的输出端连接,两输入异或门XOR1的另一个输入端与反相器INV的输出端连接,反相器INV的输入端与两输入异或门XOR2的输出端out连接;两输入异或门XOR2的输出端为基本振荡单元的输出端口out,两输入异或门XOR0的输出端和两输入异或门XOR1的输出端分别与两输入异或门XOR2的两个输入端连接。基本振荡单元101-2与基本振荡单元101-1相同。
熵采样电路,包括并列的D触发器201-1、D触发器201-2以及一个两输入异或门202。多回路布尔振荡环中,基本振荡单元101-1的out端连接到D触发器201-1的输入D端,基本振荡单元101-2的输出端out连接到D触发器201-2的输入D端,两个D触发器的Q端输出与两输入异或门202的两个输入端口相连接,202的输出端为整个熵源电路的输出端OUT;2个D触发器的时钟输入由同一外部时钟源提供。对振荡环电路中的两个输出先进行D触发器采样,再进行异或的目的是减少两个基本振荡单元输出的相关性,提高熵源输出的熵值。
实施例二
三个基本振荡单元和三个熵采样电路(即N=3时的数字熵源集成电路):
如图2所示的基于多回路布尔振荡环的数字熵源集成电路,包括多回路布尔振荡环电路100和熵采样电路200,其中,多回路布尔振荡环电路包括三个基本振荡单元和三个延时各不相同的延时单元:基本振荡单元101-1、基本振荡单元101-2和基本振荡单元101-3、延时单元102、延时单元103以及延时单元104,基本振荡单元101-1的输出端out与延时单元102的输入端口相连,延时单元102的输出端口与基本振荡单元101-2的输入端in相连,基本振荡单元101-2的out端与延时单元103的输入端口相连,103的输出端口与基本振荡单元101-3的输入端in相连,基本振荡单元101-3的输出端out与延时单元104的输入端口相连,104的输出端口与基本振荡单元101-1的输入端in相连,形成环形结构。通过在振荡环中增加3个延时单元102、延时单元103和延时单元104,使得振荡环中各条反馈路径的延时差异加大,振荡行为趋于更加无序混乱的布尔振荡,输出信号包含的熵值更高。
基本振荡单元101-1、基本振荡单元101-2和基本振荡单元101-3的具体结构相同,均如101所示,包括两输入异或门XOR0、两输入异或门XOR1、两输入异或门XOR2以及反相器INV,两输入异或门XOR0和两输入异或门XOR1形成交叉反馈的结构;两输入异或门XOR0的一个输入端为基本振荡单元的输入端口in,两输入异或门XOR0的另一个输入端与两输入异或门XOR1的输出端相连;两输入异或门XOR1的一个输入端与两输入异或门XOR0的输出端连接,两输入异或门XOR1的另一个输入端与反相器INV的输出端连接,反相器INV的输入端与两输入异或门XOR2的输出端out连接;两输入异或门XOR2的输出端为基本振荡单元的输出端口out,两输入异或门XOR0的输出端和两输入异或门XOR1的输出端分别与两输入异或门XOR2的两个输入端连接。
熵采样电路,包括3个并列的D触发器(D触发器201-1、D触发器201-2和D触发器201-3),以及2个两输入异或门(两输入异或门202-1和两输入异或门202-2)。多回路布尔振荡环中,基本振荡单元101-1的输出端out连接到D触发器201-1的输入D端,基本振荡单元101-2的输出端out连接到D触发器201-2的输入D端,基本振荡单元101-3的输出端out连接到D触发器201-3的输入D端。D触发器201-1和D触发器201-2的Q端输出分别与两输入异或门202-1的两个输入端口相连接,两输入异或门202-1的输出端和D触发器201-3的输出Q端分别作为两输入异或门202-2的输入端;两输入异或门202-2的输出端口为整个熵源电路的随机比特输出端;3个D触发器的时钟输入由同一外部时钟源提供。
上述纯数字熵源集成电路,两输入异或门、反相器、D触发器,均使用ASIC数字标准单元库中的器件来实现,具体使用的电路工艺、器件尺寸参数等根据不同的设计而有所不同。在应用时,可以通过调整基本振荡单元中各个反馈路径的延时来产生更加混乱的布尔振荡,具体设计手段有:调整连接路径的布线长度、添加数字标准单元库中的延时电路等。当所需熵源随机数输出质量较高时,可以通过增加多回路布尔振荡环中基本振荡单元的数目来进行调整。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
3.根据权利要求2所述的一种基于多回路布尔振荡环的数字熵源集成电路,其特征在于,所述第i个基本振荡单元的输出端outi与第i+1个基本振荡单元的输入端ini+1之间设置第i个延时单元;所述第N个基本振荡单元的输出端outN与第1个基本振荡单元的输入端in1之间设置第N个延时单元,延时单元的数量与基本振荡单元的数量相同,延时单元延时的数值和基本振荡单元中两输入异或门的延时基本相同。
4.根据权利要求3所述的一种基于多回路布尔振荡环的数字熵源集成电路,其特征在于,所述基本振荡单元,包括异或门XOR0、异或门XOR1、异或门XOR2以及反相器INV,异或门XOR0和异或门XOR1形成交叉反馈的结构;异或门XOR0的一个输入端为基本振荡单元的输入端口in,异或门XOR0的另一个输入端与异或门XOR1的输出端相连;异或门XOR1的一个输入端与异或门XOR0的输出端连接,异或门XOR1的另一个输入端与反相器INV的输出端连接,反相器INV的输入端与异或门XOR2的输出端out连接;异或门XOR2的输出端为基本振荡单元的输出端口out,异或门XOR0的输出端和异或门XOR1的输出端分别与异或门XOR2的两个输入端连接。
6.根据权利要求5所述的一种基于多回路布尔振荡环的数字熵源集成电路,其特征在于,所述第i个D触发器的输入端与多回路布尔振荡环电路中第i个基本振荡单元的输出端outi相连,N个D触发器使用同一个时钟驱动,N个D触发器的输出经过两输入异或门链得到最终的随机数输出。
7.根据权利要求6所述的一种基于多回路布尔振荡环的数字熵源集成电路,其特征在于,所述两输入异或门链中第一个D触发器的输出端和第二个D触发器的输出端分别与第一个两输入异或门的两个输入端口相连接;第一个两输入异或门的输出端和第三个D触发器的输出端分别与第二个两输入异或门的两个输入端口相连接;以此类推,第i个两输入异或门的输出端和第i+2个D触发器的输出端分别与第i+1个两输入异或门的两个输入端口相连接;第i+1个两输入异或门的输出端为整个熵源电路的输出端。
8.根据权利要求1-4任一项所述的一种基于多回路布尔振荡环的数字熵源集成电路,其特征在于,所述异或门XOR0、异或门XOR1、异或门XOR2均为两输入异或门。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211672219.7A CN115758951A (zh) | 2022-12-26 | 2022-12-26 | 一种基于多回路布尔振荡环的数字熵源集成电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211672219.7A CN115758951A (zh) | 2022-12-26 | 2022-12-26 | 一种基于多回路布尔振荡环的数字熵源集成电路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115758951A true CN115758951A (zh) | 2023-03-07 |
Family
ID=85347509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211672219.7A Pending CN115758951A (zh) | 2022-12-26 | 2022-12-26 | 一种基于多回路布尔振荡环的数字熵源集成电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115758951A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116880801A (zh) * | 2023-07-24 | 2023-10-13 | 山西工程科技职业大学 | 一种双熵源物理随机数发生器 |
-
2022
- 2022-12-26 CN CN202211672219.7A patent/CN115758951A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116880801A (zh) * | 2023-07-24 | 2023-10-13 | 山西工程科技职业大学 | 一种双熵源物理随机数发生器 |
CN116880801B (zh) * | 2023-07-24 | 2024-03-22 | 山西工程科技职业大学 | 一种双熵源物理随机数发生器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11216252B2 (en) | High-speed random number generation method and device | |
US11301216B2 (en) | Self-timed random number generator | |
US8054098B2 (en) | Lightweight secure physically unclonable functions | |
JP6761934B1 (ja) | 検出および補正機能を備えた真の乱数の発生方法および装置 | |
JP5377667B2 (ja) | ビット列生成装置及びビット列生成方法 | |
JP3696209B2 (ja) | シード生成回路、乱数生成回路、半導体集積回路、icカード及び情報端末機器 | |
US7389316B1 (en) | Method and apparatus for true random number generation | |
WO2012051920A1 (zh) | 一种基于亚阈值特性的真随机数发生器 | |
JP5863994B2 (ja) | 統合セキュリティ装置および統合セキュリティ装置に用いられる信号処理方法 | |
Li et al. | A metastability-based true random number generator on FPGA | |
KR20140110142A (ko) | 난수 발생기 | |
Sivaraman et al. | Metastability-induced TRNG architecture on FPGA | |
CN115758951A (zh) | 一种基于多回路布尔振荡环的数字熵源集成电路 | |
US20220100475A1 (en) | System, method and apparatus for race-condition true random number generator | |
Jothi et al. | Parallel RC4 Key Searching System Based on FPGA | |
CN111078191A (zh) | 一种基于fpga硬件实现的伪随机数的生成方法 | |
CN107193533B (zh) | 一种低成本高速真随机数发生器 | |
CN112084539B (zh) | 一种基于混合布尔网络的多功能物理不可克隆函数装置 | |
Jin et al. | A dynamically reconfigurable entropy source circuit for high-throughput true random number generator | |
CN109558111B (zh) | 基于d触发器亚稳态特性的真随机数生成装置 | |
Oliveira et al. | True random number generator prototype implemented in an fpga | |
Mehra et al. | Design of Hexagonal Oscillator for True Random Number Generation | |
Ramasamy et al. | A modified PRBS: vertical stacked LFSR primitive polynomial for secure data communication | |
Antoniadis et al. | An efficient implementation of a delay-based PUF construction | |
Agnihotri et al. | A NOVEL APPROACH OF TRUE RANDOM NUMBER GENERATION USING VEDIC MULTIPLIER |
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 |