掌桥专利:专业的专利平台
掌桥专利
首页

一种混沌随机数发生器及发生方法

文献发布时间:2023-06-19 09:47:53


一种混沌随机数发生器及发生方法

技术领域

本发明属于集成电路的信息安全技术领域,尤其涉及一种混沌随机数发生器及发生方法。

背景技术

随着个人计算机和网络的普及,电子商务、电子政务有了飞速的发展,与此同时,电子商务、政务的信息安全问题也越来越受到人们的关注,安全芯片在信息社会的各个领域中应用广泛,其主要功能包括对用户关键数据的安全存储、加密、解密以及身份识别等。随着国家对信息安全产业的支持力度加大,安全芯片的安全性就需要等级保护。随机数发生器作为安全芯片中不可或缺的一部分,要求也越来越严格。随机数发生器是加密应用的基础,可用于产生指定安全要求的加密密钥、对抗侧信道攻击、生产初始向量、随机填充位等攻击。

由于伪随机数本身是可预测的,所以在信息加密应用中,必须采用完全不可预测的真随机数来保障信息的安全性。真随机数的不可预测性来源于一个本征的随机物理过程,如利用电阻热噪声产生真随机数等。随着非线性理论的发展和完善,混沌行为给真随机数发生器的设计提供了新的理论依据和实现方法。目前,考虑实现的可能性,通常选取分段性混沌表达式作为混沌映射函数,该映射函数的状态空间划分产生一个二进制的离散非记忆的信息源,从而在理论上保证了从该信息源产生的随机数是真随机数;混沌表达式如下所示,通过对X

X

X

然而,上述基于混沌表达式的随机数发生器,实现电路的稳定性差,对于系数A和B的取值存在约束,会存在X

发明内容

本发明针对上述基于混沌表达式的随机数发生器,实现电路的稳定性差,影响了序列的随机性,使得混沌系统进入了饱和,严重影响输出序列的随机性的问题,提出一种混沌随机数发生器及发生方法,能够保证混沌随机数发生器的稳定性和输出序列的随机性。

为了实现上述目的,本发明采用以下技术方案:

一种混沌随机数发生器,包括:随机源产生电路和后处理电路;

所述随机源产生电路,用于通过多路混沌随机源产生多路初始随机源,并将多路初始随机源数字化后进行异或叠加生成初始随机数且输出至后处理电路;其中,每一路混沌随机源至少包括多个混沌映射单元,采用链式环形电路结构,且通过混沌映射单元中设置的三维混沌映射电路,获取一路初始随机源;

所述后处理电路,用于对初始随机数进行检测、运算与串并转换处理后,输出最终随机数序列;

所述三维混沌映射电路基于三维混沌随机数方程实现,所述三维混沌随机数方程为:

其中,X

进一步地,所述三维混沌映射电路包括:第一混沌自愈单元、第二混沌自愈单元、第三混沌自愈单元、第一综合加法器、第二综合加法器、第三综合加法器、基准电路单元、决策电路和编码输出电路;

所述第一混沌自愈单元,用于对接收的模拟信号M进行自愈检测并输出模拟信号X;

所述第二混沌自愈单元,用于对接收的模拟信号O进行自愈检测并输出模拟信号Y;

所述第三混沌自愈单元,用于对接收的模拟信号P进行自愈检测并输出模拟信号Z;

所述基准电路单元,用于生成参考电源Vref1、Vref2、Vref3、Vref4,分别取值为A、B、C、D;

所述第一综合加法器,用于对所述模拟信号X、Y、Z和参考电源Vref1的取值A进行综合加法运算,得到新的模拟信号X=2X+Y+3Z+A;

所述第二综合加法器,用于对所述模拟信号X、Y、Z和参考电源Vref2的取值B进行综合加法运算,得到新的模拟信号Y=3X+2Y+5Z+B;

所述第三综合加法器,用于对所述模拟信号X、Y、Z和参考电源Vref3的取值C进行综合加法运算,得到新的模拟信号Z=2X+Y+4Z+C;

所述决策电路,用于将所述新的模拟信号X、Y进行比较以及将所述新的模拟信号Z与所述参考电源Vref4的取值D进行比较;

所述编码输出电路,用于根据所述决策电路的比较结果,输出一随机数序列。

进一步地,所述决策电路,具体用于:

判断三维坐标(X,Y,Z)在立体空间中的位置,其中X、Y、Z均为新的模拟信号,当新的模拟信号X>Y,且新的模拟信号Z>D时,输出二进制00;当新的模拟信号X大于Y,且新的模拟信号ZD时,输出二进制10;当新的模拟信号X

一种混沌随机数发生方法,包括:

随机源产生电路通过多路混沌随机源产生多路初始随机源,并将多路初始随机源数字化后进行异或叠加生成初始随机数且输出至后处理电路;其中,每一路混沌随机源至少包括多个混沌映射单元,采用链式环形电路结构,且通过混沌映射单元中设置的三维混沌映射电路,获取一路初始随机源;

后处理电路对初始随机数进行检测、运算与串并转换处理后,输出最终随机数序列;

所述三维混沌映射电路基于三维混沌随机数方程实现,所述三维混沌随机数方程为:

其中,X

进一步地,所述通过混沌映射单元中设置的三维混沌映射电路,获取一路初始随机源包括:

对接收的模拟信号M进行自愈检测并输出模拟信号X;

对接收的模拟信号O进行自愈检测并输出模拟信号Y;

对接收的模拟信号P进行自愈检测并输出模拟信号Z;

生成参考电源Vref1、Vref2、Vref3、Vref4,分别取值为A、B、C、D;

对所述模拟信号X、Y、Z和参考电源Vref1的取值A进行综合加法运算得到新的模拟信号X=2X+Y+3Z+A;

对所述模拟信号X、Y、Z和参考电源Vref2的取值B进行综合加法运算得到新的模拟信号Y=3X+2Y+5Z+B;

对所述模拟信号X、Y、Z和参考电源Vref3的取值C进行综合加法运算得到新的模拟信号Z=2X+Y+4Z+C;

将所述新的模拟信号X、Y进行比较以及将所述新的模拟信号Z与所述参考电源Vref4的取值D进行比较;

根据比较结果输出一随机数序列。

进一步地,将所述新的模拟信号X、Y进行比较以及将所述新的模拟信号Z与所述参考电源Vref4的取值D进行比较,具体包括:

判断三维坐标(X,Y,Z)在立体空间中的位置,其中X、Y、Z均为新的模拟信号,当新的模拟信号X>Y,且新的模拟信号Z>D时,输出二进制00;当新的模拟信号X大于Y,且新的模拟信号ZD时,输出二进制10;当新的模拟信号X

与现有技术相比,本发明具有的有益效果:

(1)本发明中三维混沌映射电路是基于三维混沌随机数方程实现,且三维混沌映射电路包括:第一混沌自愈单元、第二混沌自愈单元、第三混沌自愈单元、第一综合加法器、第二综合加法器、第三综合加法器、基准电路单元、决策电路和编码输出电路,判断三维坐标(X,Y,Z)在立体中的位置,当新的模拟信号X>Y,且新的模拟信号Z>D时,输出二进制00;当新的模拟信号X大于Y,且新的模拟信号ZD时,输出二进制10;当新的模拟信号X

(2)本发明中混沌随机源产生电路通过多路混沌随机源产生多路初始随机源,并将多路初始随机源数字化后进行异或叠加生成初始随机数且输出至后处理电路,在实际的应用中,安全芯片将8路独立混沌随机源数字化后进行异或叠加输出,可以有效增加整体的信源熵;

(3)本发明在实际中用模拟电路实现三维混沌随机数方程时,因为工艺偏差,每片IC上的电路实现的混沌函数都存在差异,而且,在每片IC上电工作时的初始状态都会有差异,这两个因素都会导致每片IC输出的混沌序列各不相同,形成真随机数;

(4)本发明中混沌自愈单元具有混沌自愈机制,当混沌自愈单元检测到混沌随机源产生电路已经脱离混沌区域并不可逆转时,能够重置电路使电路重新进入混沌区域,从而防止超过噪声防护边界的偶然情况与恶意攻击带来的电路失效,提高了系统的抗干扰能力;

(5)本发明中混沌随机源采用链式环形电路结构,由多个混沌映射单元组成,并可根据需要调整混沌映射单元的数目,以提高随机数产生速率。

附图说明

图1为本发明实施例一种混沌随机数发生器的结构原理图;

图2为本发明实施例一种混沌随机数发生器中三维混沌映射电路的结构示意图;

图3为本发明实施例一种混沌随机数发生方法的每一路混沌随机源实现框图。

具体实施方式

下面结合附图和具体的实施例对本发明做进一步的解释说明:

如图1所示,一种混沌随机数发生器,包括:随机源产生电路和后处理电路;

所述随机源产生电路,用于通过多路混沌随机源产生多路初始随机源,并将多路初始随机源数字化后进行异或叠加生成初始随机数且输出至后处理电路;其中,每一路混沌随机源至少包括多个混沌映射单元,采用链式环形电路结构,且通过混沌映射单元中设置的三维混沌映射电路,获取一路初始随机源;

所述后处理电路,用于对初始随机数进行检测、运算与串并转换处理后,输出最终随机数序列;

所述三维混沌映射电路基于三维混沌随机数方程实现,所述三维混沌随机数方程为:

其中,X

值得说明的是,A、B、C是可选的,在A、B、C为0时混沌随机数方程仍然成立。

作为一种可实施方式,在实际的应用中,有8路混沌随机源,每一路混沌随机源有四个混沌映射单元,四个混沌映射单元是异或运算将结果输出,最终8路混沌随机源也是异或运算输出,相当于32次异或运算输出,能够更好进行随机数生成,提高随机性,不可预知性。

进一步地,如图2所示,所述三维混沌映射电路包括:第一混沌自愈单元、第二混沌自愈单元、第三混沌自愈单元、第一综合加法器、第二综合加法器、第三综合加法器、基准电路单元、决策电路和编码输出电路;

所述第一混沌自愈单元,用于对接收的模拟信号M进行自愈检测并输出模拟信号X;

所述第二混沌自愈单元,用于对接收的模拟信号O进行自愈检测并输出模拟信号Y;

所述第三混沌自愈单元,用于对接收的模拟信号P进行自愈检测并输出模拟信号Z;

所述基准电路单元,用于生成参考电源Vref1、Vref2、Vref3、Vref4,分别取值为A、B、C、D;

所述第一综合加法器,用于对所述模拟信号X、Y、Z和参考电源Vref1的取值A进行综合加法运算,得到新的模拟信号X=2X+Y+3Z+A;

所述第二综合加法器,用于对所述模拟信号X、Y、Z和参考电源Vref2的取值B进行综合加法运算,得到新的模拟信号Y=3X+2Y+5Z+B;

所述第三综合加法器,用于对所述模拟信号X、Y、Z和参考电源Vref3的取值C进行综合加法运算,得到新的模拟信号Z=2X+Y+4Z+C;

所述决策电路,用于将所述新的模拟信号X、Y进行比较以及将所述新的模拟信号Z与所述参考电源Vref4的取值D进行比较;

所述编码输出电路,用于根据所述决策电路的比较结果,输出一随机数序列。

进一步地,所述决策电路,具体用于:

判断三维坐标(X,Y,Z)在立体空间中的位置,其中X、Y、Z均为新的模拟信号,当新的模拟信号X>Y,且新的模拟信号Z>D时,输出二进制00;当新的模拟信号X大于Y,且新的模拟信号ZD时,输出二进制10;当新的模拟信号X

作为一种可实施方式,在实际应用中,后处理电路包括扑克自检单元、运算与串并转换电路、512B的FIFO存储器、接口电路。扑克自检单元用于检测随机源产生的随机数据是否合乎要求。在这里,我们取512比特的随机数做扑克检测。自检不通过时会设置相应状态位,向CPU发出告警。否则,只要FIFO不空,就产生随机数,并写入FIFO。运算与串并转换电路由8个独立随机数发生器,全部参与异或,生成随机数比特流,该随机数比特流送入扑克自检单元做检测,如果正确,则输入串进并出移位寄存器,并设置工作正常标志位;如果错误,则设置随机数异常标志位。为了提高效率,采用了512字节的FIFO做数据缓存。

在上述实施例的基础上,本发明还公开一种混沌随机数发生方法,包括:

随机源产生电路通过多路混沌随机源产生多路初始随机源,并将多路初始随机源数字化后进行异或叠加生成初始随机数且输出至后处理电路;其中,每一路混沌随机源至少包括多个混沌映射单元,采用链式环形电路结构,且通过混沌映射单元中设置的三维混沌映射电路,获取一路初始随机源;

后处理电路对初始随机数进行检测、运算与串并转换处理后,输出最终随机数序列;

所述三维混沌映射电路基于三维混沌随机数方程实现,所述三维混沌随机数方程为:

其中,X

作为一种可实施方式,在实际的应用中,有8路混沌随机源,每一路混沌随机源实现框图如图3所示,采用链式环形电路结构,由混沌映射单元和混沌自愈单元组成,并可根据需要调整混沌映射单元的数目,以提高随机数产生速率。另外,由于形成了环状,每个混沌源由四个映射单元、一个混沌自愈单元构成。值得说明的是,每一路混沌随机源中再加入混沌自愈单元相当于再多一层保障,对混沌映射单元输出的随机序列进行检测,也可以不设置,可根据实际情况进行选择。

进一步地,所述通过混沌映射单元中设置的三维混沌映射电路,获取一路初始随机源包括:

对接收的模拟信号M进行自愈检测并输出模拟信号X;

对接收的模拟信号O进行自愈检测并输出模拟信号Y;

对接收的模拟信号P进行自愈检测并输出模拟信号Z;

生成参考电源Vref1、Vref2、Vref3、Vref4,分别取值为A、B、C、D;

对所述模拟信号X、Y、Z和参考电源Vref1的取值A进行综合加法运算得到新的模拟信号X=2X+Y+3Z+A;

对所述模拟信号X、Y、Z和参考电源Vref2的取值B进行综合加法运算得到新的模拟信号Y=3X+2Y+5Z+B;

对所述模拟信号X、Y、Z和参考电源Vref3的取值C进行综合加法运算得到新的模拟信号Z=2X+Y+4Z+C;

将所述新的模拟信号X、Y进行比较以及将所述新的模拟信号Z与所述参考电源Vref4的取值D进行比较;

根据比较结果输出一随机数序列。

进一步地,所述将所述新的模拟信号X、Y进行比较以及将所述新的模拟信号Z与所述参考电源Vref4的取值D进行比较,具体包括:

判断三维坐标(X,Y,Z)在立体空间中的位置,其中X、Y、Z均为新的模拟信号,当新的模拟信号X>Y,且新的模拟信号Z>D时,输出二进制00;当新的模拟信号X大于Y,且新的模拟信号ZD时,输出二进制10;当新的模拟信号X

综上:

本发明中三维混沌映射电路是基于三维混沌随机数方程实现,且三维混沌映射电路包括:第一混沌自愈单元、第二混沌自愈单元、第三混沌自愈单元、第一综合加法器、第二综合加法器、第三综合加法器、基准电路单元、决策电路和编码输出电路,判断三维坐标(X,Y,Z)在立体中的位置,当新的模拟信号X>Y,且新的模拟信号Z>D时,输出二进制00;当新的模拟信号X大于Y,且新的模拟信号ZD时,输出二进制10;当新的模拟信号X

本发明中混沌随机源产生电路通过多路混沌随机源产生多路初始随机源,并将多路初始随机源数字化后进行异或叠加生成初始随机数且输出至后处理电路,在实际的应用中,安全芯片将8路独立混沌随机源数字化后进行异或叠加输出,可以有效增加整体的信源熵;

本发明在实际中用模拟电路实现三维混沌随机数方程时,因为工艺偏差,每片IC上的电路实现的混沌函数都存在差异,而且,在每片IC上电工作时的初始状态都会有差异,这两个因素都会导致每片IC输出的混沌序列各不相同,形成真随机数;

本发明中混沌自愈单元具有混沌自愈机制,当混沌自愈单元检测到混沌随机源产生电路已经脱离混沌区域并不可逆转时,能够重置电路使电路重新进入混沌区域,从而防止超过噪声防护边界的偶然情况与恶意攻击带来的电路失效,提高了系统的抗干扰能力;

本发明中混沌随机源采用链式环形电路结构,由多个混沌映射单元组成,并可根据需要调整混沌映射单元的数目,以提高随机数产生速率。

以上所示仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

相关技术
  • 基于离散时间混沌发生器的真随机数发生器
  • 一种混沌随机数发生器及发生方法
技术分类

06120112308080