CN113377335A - 一种伪随机数发生器、伪随机数发生方法、处理器芯片 - Google Patents
一种伪随机数发生器、伪随机数发生方法、处理器芯片 Download PDFInfo
- Publication number
- CN113377335A CN113377335A CN202110528091.6A CN202110528091A CN113377335A CN 113377335 A CN113377335 A CN 113377335A CN 202110528091 A CN202110528091 A CN 202110528091A CN 113377335 A CN113377335 A CN 113377335A
- Authority
- CN
- China
- Prior art keywords
- neuron
- neural network
- random number
- pseudo
- hopfield neural
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/061—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using biological neurons, e.g. biological neurons connected to an integrated circuit
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Neurology (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种伪随机数发生器、伪随机数发生方法、处理器芯片,伪随机数发生器包括三神经元Hopfield神经网络混沌振荡单元和抽样量化单元,其中:三神经元Hopfield神经网络混沌振荡单元基于穿过神经元的磁通干扰李雅普诺夫指数最大的神经元,用于对接收的输入信号进行处理并生成对应的输出信号。抽样量化单元与三神经元Hopfield神经网络混沌振荡单元电连接,用于抽样量化三神经元Hopfield神经网络混沌振荡单元产生的输出信号,得到随机序列。本发明利用三神经元Hopfield神经网络混沌振荡单元的神经元的磁通量干扰Lyapunov指数最大的一个神经元,让Lyapunov指数最大的一个神经元加入不同的干扰因子,从而减少混沌退化对产生的RNs的影响,能够提高生成随机序列的随机性。
Description
技术领域
本发明涉及基于混沌系统的伪随机数发生器技术领域,特别涉及一种伪随机 数发生器、伪随机数发生方法、处理器芯片。
背景技术
随着数字通信技术的飞速发展,特别是在智能手机和网络通信日益普及的今 天,对私人信息的安全提出了更高的要求。密码学被广泛应用于信息和数据的快 速传输,能够满足隐私信息的安全要求。信息和数据的安全传输依赖于信息安全 系统的安全密钥的随机性。因此,使用高质量的随机序列作为安全密钥和加密数 据在当今的信息安全系统中越来越普遍。
在信息安全领域,伪随机数生成器(PRNG)作为流密码的重要组成部分,能够 高效地生成具有高随机性和高灵敏度的随机序列,提高信息安全系统的安全性。 同时,神经网络混沌系统的发展也为PRNG的设计提供了新的理论基础和思路,但 可能出现的一些信息安全问题越来越受到关注。因此,利用神经网络混沌系统构 建高性能PRNG已经成为信息安全领域研究的一个重要课题。但目前在FPGA上实 现基于神经网络混沌系统的伪随机数生成器(PRNG)时,数值精度有限引起的混沌 退化会对PRNG的性能产生巨大影响,导致PRNG生成的随机数存在周期性,最终 导致随机性不足的缺陷。
发明内容
本发明旨在至少解决现有技术中存在的技术问题。为此,本发明提出一种伪 随机数发生器、伪随机数发生方法、处理器芯片,能够减少混沌退化对产生的RNs 的影响,提高生成的随机序列的随机性。
本发明的第一方面,提供了一种伪随机数发生器,包括:
三神经元Hopfield神经网络混沌振荡单元,所述三神经元Hopfield神经网 络混沌振荡单元基于穿过神经元的磁通干扰李雅普诺夫指数最大的神经元,用于 对接收的输入信号进行处理并生成对应的输出信号;
抽样量化单元,与所述三神经元Hopfield神经网络混沌振荡单元电连接,用 于抽样量化所述三神经元Hopfield神经网络混沌振荡单元产生的输出信号,得到 随机序列。
根据本发明的实施例,至少具有如下技术效果:
伪随机数发生器由三神经元Hopfield神经网络混沌振荡单元和抽样量化单 元组成。由于第一维的Lyapunov指数最大,说明神经元x的灵敏度较高,神经元x的 变化会引起其他神经元的变化以及通过神经元的磁通的变化。因此为了解决目前 FPGA实现带来的混沌退化问题,本伪随机数发生器利用三神经元Hopfield神经 网络混沌振荡单元的神经元的磁通量干扰Lyapunov指数最大的一个神经元,让 Lyapunov指数最大的一个神经元加入不同的干扰因子,从而减少混沌退化对产生 的RNs的影响,能够提高抽样量化单元生成的随机序列的随机性。
本发明的第二方面,提供了一种伪随机数发生方法,包括以下步骤:
构建三神经元Hopfield神经网络混沌振荡器,所述三神经元Hopfield神经 网络混沌振荡器基于穿过神经元的磁通干扰李雅普诺夫指数最大的神经元,通过 所述三神经元Hopfield神经网络混沌振荡器对接收的输入信号进行处理并生成 对应的输出信号;
对所述三神经元Hopfield神经网络混沌振荡器的输出信号进行抽样量化,得 到随机序列。
根据本发明的实施例,至少具有如下技术效果:
本发明首先构建三神经元Hopfield神经网络混沌振荡单元,通过三神经元Hopfield神经网络混沌振荡单元的神经元的磁通量干扰Lyapunov指数最大的一 个神经元,让Lyapunov指数最大的一个神经元加入不同的干扰因子,从而减少混 沌退化对产生的RNs的影响,能够避免周期性,能够提高生成的随机序列的随机 性。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述 中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将 变得明显和容易理解,其中:
图1为本发明提供的三神经元Hopfield神经网络系统的李雅普诺夫指数图;
图2为本发明提供的利用Matlab对三神经元Hopfield神经网络系统的仿真 示意图;
图3为本发明提供的基于FPGA的神经网络混沌振荡器的流程框图;
图4为本发明提供的vivado模拟器的结果示意图;
图5为本发明提供的示波器的结果示意图;
图6为本发明实施例提供的基于改进的Hopfield神经网络混沌振荡器的PRNG 的结构示意图;
图7为本发明实施例提供的后处理单元的初始状态示意图;
图8为本发明实施例提供的基于改进的Hopfield神经网络混沌振荡器的PRNG 在FPGA上的仿真结果示意图;
图9为本发明实施例提供的示波器的结果示意图;
图10为本发明实施例提供的两个混沌振荡器产生的随机序列的结果示意图;
图11为本发明实施例提供的敏感性检测结果示意图;
图12为本发明实施例提供的自相关检测和互相关检测结果示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始 至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下 面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对 本发明的限制。
在介绍本发明实施例之前,先对本发明的原理进行介绍:
近年来,神经网络混沌动力学得到了广泛的研究。因此,利用FPGA实现的基 于神经网络混沌系统的PRNG引起了越来越多研究者的关注。Dong等人控制每次 迭代产生的六维细胞神经网络的输入和输出,并对逻辑映射产生的随机序列进行 异或操作。最终,可以通过延长输出序列的周期来改善瞬态周期现象以及生成的 随机序列的随机性和不可预测性,实验结果通过了NIST统计检验。目前也有利用 基于人工神经网络(ANN)的二维混沌振荡器和环形振荡器结构,设计了一种新的基 于混沌的PRNG。使用XILINX-ISE设计工具,采用VHDL编码对芯片进行合成,生 成的随机序列通过了NIST-800-22随机检验,证明了基于FPGA的PRNG存在的价 值。目前,还提出了一种面向硬件的混沌玻尔兹曼机(CBMs)算法,该算法包括定 点和移位运算,以降低电路的硬件资源利用率。因此,在FPGA上实现了CBMs,并将FPGA实现的CBMs与软件实现的CBMs的计算速度进行了比较,证明了FPGA 实现的CBMs优于其他解决方案。就硬件实现而言,FPGA使用已经建立的逻辑模 块和可重新编程的布线资源来实现所需的硬件功能。同时,FPGA可以充分利用硬 件并行性,使更多的任务被执行在一个固定的周期而不是顺序执行,可以减少设计 和测试周期成本,并增加基于神经网络混沌系统的PRNG的多样性和灵活性。但目 前还没有基于FPGA的Hopfield神经网络的混沌系统PRNG的研究。
为了降低FPGA实现造成的混沌退化对随机序列生成质量的影响,提高神经网 络振荡器生成随机数的随机性,本发明设计了一种基于改进的Hopfield神经网络 振荡器的PRNG。采用改进的Hopfield神经网络混沌振荡器来减少混沌退化现象, 提高随机数的质量。
其中改进的Hopfield神经网络主要来源于Lin等人提出的一个三神经元Hopfield神经网络系统,该神经网络系统的一个神经元暴露在电磁辐射中,该神 经网络系统在不同的控制参数下,表现出了丰富的混沌动态行为,该神经网络系 统相应的李雅普诺夫指数仿真结果进一步验证了这一结果。这个方程组由下方程 (1)给出:
Q(w)=α-β|w| (2)
方程(1)中,x,y,z和w是系统变量,其中x,y和z分别表示三个神经元的 膜电压,w表示暴露在电磁辐射下的神经元的磁通量,tanh(i)表示一个双曲正切 函数,即神经元i的激活函数,表示神经元的输入电压。Q(w)为磁控忆阻器的记忆 电导,表示电磁辐射下神经元中磁通耦合与膜电位的耦合关系。α和β分别表示两 个电磁辐射参数。因此,方程(1)表示一个三神经元Hopfield神经网络系统,神 经元x暴露在电磁辐射下。当系统参数设置为α=3.5,b=0.5,c=2.5,d= 0.7,e=3.4,f=1.6,g=0.95,h=2.5,m=1.9,n=1.5,α=0.24,β=0.7,初始 条件选为(0.1,0.1,0.1,0.1)时。方程(1)关于参数a的李雅普诺夫指数谱,如图 1所示。从图1(a)可以看出,系统中存在一个正的Lyapunov指数(李雅普诺夫指 数),当a=3.5时,Lyapunov指数为LE1=0.365,LE2=0.008,LE3= -0.482,LE4=-1.756。由图1(b)可以看出,在李雅普诺夫指数上,LE1大于0, LE2等于0,LE3和LE4小于0。因此,系统表现出混沌行为。其中,图1(a)中的李 雅普诺夫指数谱参数是a∈(0,4),图1(b)为随时间的李雅普诺夫指数谱。
当动力系统得到正确的初始条件时,随着时间的推移,系统的轨道趋于一定 的稳定状态。这种特殊的稳态称为系统的吸引子。发明人利用Matlab(一种常见 仿真软件)对系统的相图进行了仿真。如图2所示。其中,图2(a)为x-w平面 相图;图2(b)为y-w平面相图。
第一实施例;
本发明的一个实施例,提供了一种伪随机数发生器,应用于FPGA,本伪随机 数发生器包括三神经元Hopfield神经网络混沌振荡单元和抽样量化单元,其中:
三神经元Hopfield神经网络混沌振荡单元基于穿过神经元的磁通干扰李雅 普诺夫指数最大的神经元,用于对接收的输入信号进行处理并生成对应的输出信 号。
抽样量化单元与三神经元Hopfield神经网络混沌振荡单元电连接,用于抽样 量化三神经元Hopfield神经网络混沌振荡单元产生的输出信号,得到随机序列。
首先,证明本实施例的伪随机数发生器能够在FPGA上实现:
神经网络模型的离散化过程是在FPGA上实现神经网络模型的关键。根据离散 处理后得到的方程,可以确定在硬件实现中需要的寄存器、加法器、减法器、乘 法器、比较器等模块的数量。在本实施例中,整个离散过程由RK4数值算法完成。
该数值算法的数学方程由下式(3)给出。
其中,每次迭代的步长为Δh=0.001,Kj1,Kj2,Kj3,Kj4(j=x,y,z,w)分别表 示四个点在一次迭代中的斜率。在迭代过程中,(x(i),y(i),z(i),w(i))为系统提供 数据,(x(i+1),y(i+1),z(i+1),w(i+1))获得数据并为下一次迭代提供数据。
在方程(1)中,取优于sigmoid激活函数的双曲正切函数作为神经元激活函数。 查表一直是实现双曲正切函数的传统方法,但由于硬件数量的限制,其在FPGA上 的实现非常具有挑战性。Kwan等人提出了一种简单的类sigmoid的二阶分片激活 函数,它可以直接在硬件上实现,并且接近双曲正切函数。因此,tanh-like双 极函数和简单的sigmoid-like二阶分片函数由以下公式给出:
其中β=1,θ=0.25表示Hs(z)的斜率和增益,L=2决定中间区域的长度。 方程(3)、(4)和方程(5)为利用RK4数值算法在FPGA上实现神经网络系统模型提 供了保证。
然后,申请人于Vivado 2018.3设计平台上实现了一个神经元x在电磁辐射下 的三神经元Hopfield神经网络系统,并使用该平台开发的IP-CORE生成器获得或 创建了所需的加法器、减法器、乘法器、比较器等模块。在IEEE 754-1985高精 度32位浮点标准下,使用所需的模块和Verilog HDL硬件语言构建了RK4数值算 法和方程(1)的源文件。基于FPGA的神经网络混沌振荡器的流程框图如图3所示。
如图3所示,Hopfield神经网络混沌振荡器有四个输入信号和五个输出信号。Start和Clk是1位输入信号,用于同步每个模块单元。Δh和初始值(X0,Y0,Z0,W0) 都是32位输入信号,其中Δh是表示步长的参数。这两种输入信号都是从外界获 得的,并且易于修改。将4个32位输出信号(X_Out,Y_Out,Z_Out,W_Out)输入 到浮动到固定单元,作为Hopfield神经网络混沌振荡器下一轮迭代的初值。 “Floating to Fixed”将输入的32位浮点数转换为14位的定点数。DAC单元将 浮动到固定单元的输出信号转换成模拟信号,然后将模拟信号(x,w)输出到 Xilinx ZYNQ-XC7Z020芯片上。输出信号(x,w)的有效性由1位的XTZW_Ready信 号决定。vivado模拟器的结果如图4所示。然后将Xilinx ZYNQ-XC7Z020芯片分 别连接到计算机和示波器上,将vivado2018.3平台生成的比特流文件传输到芯片 上。示波器的结果如图5所示。结果表明,基于FPGA的具有神经元x暴露于电磁 辐射下的Hopfield神经网络的相图与MATLAB仿真相图一致,验证了FPGA的有效 性。
在本实施例中,伪随机数发生器由三神经元Hopfield神经网络混沌振荡单元 和抽样量化单元组成。由于方程(1)第一维的Lyapunov指数最大,说明神经元x的 灵敏度较高,神经元x的变化会引起其他神经元的变化以及通过神经元的磁通的变 化。因此为了解决目前FPGA实现带来的混沌退化问题,本实施利用三神经元 Hopfield神经网络混沌振荡单元的神经元的磁通量作为判断条件,选择性地干扰Lyapunov指数最大的一个神经元(即神经元x),让Lyapunov指数最大的一个神 经元加入不同的干扰因子,从而减少混沌退化对产生的RNs的影响,能够避免周 期性,能够提高抽样量化单元生成的随机序列的随机性。
第二实施例;
参照图6和图7,本发明的一个最佳实施例,提供了一种基于改进的Hopfield 神经网络混沌振荡器的PRNG(PRNG为伪随机数发生器的简称),包括:三神经元 Hopfield神经网络混沌振荡单元、抽样量化单元以及后处理单元。其中:
三神经元Hopfield神经网络混沌振荡单元基于穿过神经元的磁通干扰李雅 普诺夫指数最大的神经元,用于对接收的输入信号进行处理并生成对应的输出信 号。
如图6所示,在三神经元Hopfield神经网络混沌振荡单元中,方程(1)中第 一维的Lyapunov指数最大,说明神经元x的灵敏度较高,神经元x的变化会引起其 他神经元的变化以及通过神经元的磁通的变化。因此,可以利用神经元x的磁通量 w作为判断条件,选择性地干扰神经元x。本实施例的具体实现过程如下:
第一步、得到三神经元Hopfield神经网络混沌振荡单元磁通的32位输出信 号W_OUT和神经元的32位输出信号X_OUT。
第二步、取W_OUT的第16位和第17位进行异或操作,得到1位输出w′;如 果w′等于1,则让X_OUT=X_OUT+0.0002;否则,让X_OUT=X_OUT-0.0002。
其中数值0.0002是经过实验得出的最佳值。经过上述第一步和第二步的处理 之后,通过实验发现(实验结果在后文中展示),本设计能够极大的降低混沌退化 的影响,提高随机序列的质量。
抽样量化单元与三神经元Hopfield神经网络混沌振荡单元电连接,用于抽样 量化三神经元Hopfield神经网络混沌振荡单元产生的输出信号,得到随机序列。
这里的抽样量化单元根据ieee754-1985高精度32位浮点标准,在每个迭代 中,分别取三神经元Hopfield神经网络混沌振荡单元的四个输出信号 (X_OUT,Y_OUT,Z_OUT,W_OUT)的第0至15位,得到四个随机序列(X,Y,Z,W) 并量化,这四个随机序列按第一个维度到第四个维度的顺序形成一个随机序列, 并将该随机序列输出到后处理单元。
后处理单元与抽样量化单元电连接,用于对抽样量化单元产生的随机序列进 行移位异或处理,用以提高随机序列的随机性。
设置后处理单元的目的是为了提高随机序列的随机性。本实施例中的后处理 单元的初始状态如图7所示,它由32个寄存器和15个异或比较器组成,前16个 寄存器均为0,后16个寄存器依次从抽样量化单元输出的随机序列中得到 (k0,k1,k2,…,k14,k15)。寄存器每次向前移动一位,异或操作按顺序完成。最后, 每16次移位,寄存器的最后16位就需要从随机序列中再次添加。15个异或比较 器将自异或前16位产生一个1位随机数。直到所有的随机序列都被执行处理完毕。 因此,PRNG在改进的Hopfield神经网络混沌振子的每次迭代中产生64位随机数。
为了检验本实施例的可行性,在vivado 2018.3平台上,基于改进的Hopfield 神经网络混沌振荡器的PRNG在FPGA上的仿真结果如图8所示。由Verilog HDL 代码完成。根据实现时间报告,FPGA运行的时钟频率高达109.337MHz,最小运 行周期为9.146ns。PRNG的数据速率可以达到16.20Mbit/s。表1为基于FPGA 的PRNG的Xilinx ZYNQ-XC7Z020芯片的统计数据。最后,将生成的位流文件输出 到示波器中,示波器的结果如图9所示。
Xilinx ZYNQ-XC7Z020 chip statistics | Used/utilization% |
Number of Slice LUTs | 37977/71.39 |
Number of fully used LUT-FF pairs | 47195/44.36 |
Number of bonded IOBs | 20/16.00 |
Operating Frequency(MHz) | 109.337 |
The data rate of PRNG(Mbit/s) | 16.20 |
表1
以下对本实施例提供的PRNG的安全性进行分析,具体的分析结果如下:
第一、动态退化指标分析;
在硬件实现中,由于计算精度引起的混沌退化将极大地影响PRNG的随机性。 例如,混沌模拟会出现短周期现象,导致随机序列的周期性,最终导致随机序列 测试失败。目前,最常用的随机检验标准是NIST 800.22测试套件,它可以使用 15种测试方法对大量随机序列进行评估。因此,为了确定基于改进的Hopfield 神经网络混沌振荡器的PRNG的随机性,使用NIST 800.22测试套件对其产生的随 机序列进行测试。在实际测试中,PRNG舍弃前50000位的随机序列,将由两个混 沌振荡器产生的100个1-Mit测试随机序列放入NIST800.22测试套件。由两个 混沌振荡器产生的随机序列的结果如图11所示。通过对比,测试结果图10左对 照组中的三个项目表明P阀小于0.01,当P阀在[0.01,1]范围内时,表明测试通 过。因此,图10左对照组中的三个项目未能通过NIST 800.22测试套件。试验结 果图10右对照组表明15次试验均通过,随机序列具有良好的随机性。由此可见, 基于改进Hopfield神经网络混沌振子的PRNG可以大大降低混沌退化对系统随机 性的影响。其中图10左对照组为基于普通的Hopfield神经网络混沌振荡产生的 随机序列的随机性检验结果;图10右对照组为基于改进的Hopfield神经网络混 沌振荡产生的随机序列的随机性检验结果。
第二、密钥空间指标分析;
密钥空间的大小是决定加密系统安全性的重要指标,选择合适的密钥空间非 常重要。大的密钥空间可以提高加密强度,更好地抵抗密钥分析。小密钥空间无 法抵御穷尽攻击,密码更容易被破解。通常,当密钥空间大于2128时,可以保证 密码系统的安全性,抵抗穷尽性攻击。本实施例利用改进的Hopfield神经网络混 沌振荡器来构造PRNG。根据IEEE745-1985浮点标准,改良的Hopfield神经 网络混沌振荡器主要由初始条件(x0,y0,z0,w0)和系统参数 (a,b,c,d,e,f,g,h,m,n,α,β)构成,一共512位。因此,系统的密钥空间为2512,比2128大得多,有足够的空间抵抗穷举攻击。
第三、密钥敏感性指标分析;
混沌系统对参数和初始条件非常敏感。因此,基于改进Hopfield神经网络混 沌振荡器的PRNG应保持相同的灵敏度。密钥灵敏度试验用于分析初始条件或参数 的微小变化对相应输出的影响。当PRNG具有高灵敏度时,输入的微小变化会导致 相应输出的巨大差异。在该测试中,将初始条件(x0,y0,z0,w0)=(0.1,0.1,0.1,0.1) 和参数b=0.5=3.5,c=2.5d=0.7,e=3.4,f=1.6g=0.95,h=2.5 m=1.9,n=1.5,α=0.24,β=0.7输入到改进的Hopfield神经网络混沌振 荡器中,产生106位参考伪随机序列S1,然后对初始条件和参数进行如下的细微改 变:
(1)将初始条件x0=0.1修改为x′0=0.1+10-8,得到了一个新的具有106位的测试伪随机序列S2。
(2)将参数a=3.5改为a′=3.5+10-8,得到了一个新的带有106位的测试伪 随机序列S3。
比特变化率一直被认为是衡量PRNG灵敏度的一个重要指标。比特变化率越接 近50%,PRNG的密钥灵敏度越高。对应的比特变化率公式如下:
其中,P和N分别表示比特变化率和序列长度,Sa(k)和Sb(k)分别表示参考随机 数序列Sa和测试随机数序列Sb第k位的比特值。本文将S1分别与S2和S3进行比较, 得到的比特变化率如图11所示。从图11中可以看出,当基于改进的Hopfield神 经网络混沌振荡器的PRNG输入初始条件和参数仅增加10-8时,比特变化率P非常 接近50%。这说明PRNG对初始条件和参数高度敏感,能够满足安全应用的要求。 当初始输入条件x0和参数a变化10-8时,改进Hopfield神经网络混沌振荡器神经 元x的时域波形如图11所示。图11(a)为仅初始条件x0变化时神经元x的时域图, 图11(b)为仅参数a变化时神经元x的时域图。由此可见,改进后的Hopfield神经 网络混沌振子对初始条件和参数非常敏感。
Δx=x′-x | Δa=a′-a | P(%) | |
S<sub>2</sub> | 10<sup>-8</sup> | 0 | 49.96% |
S<sub>3</sub> | 0 | 10<sup>-8</sup> | 50.00% |
表2
第四、相关性指标分析;
自相关和互相关分析是检测两个等长的随机序列之间相关性的重要方法。其 中,自相关检测随机序列及其移位序列,互相关检测相邻测试随机序列。现在有 两个相邻的随机序列X={X1,X2,…,Xn}和Y={Y1,Y2,…,Yn},Xi和Yi表示随机序 列X和Y的随机数,i={1,2,3,…,n},所以相关的计算公式由式(7)所示。
其中,相关系数RXY∈(-1,1)。RXY越接近0,序列越独立;RXY越接近1或- 1,序列之间正相关或负相关越强。Cov(X,Y)是序列的协方差,SX和ST是序列的 标准差。n表示序列的长度,计算的相关系数 RXY=2.07×10-4,则可以认为两个测试随机序列之间不存在相关性。自相关检 测和互相关检测如图12所示。图12(a)为15个密钥产生的测试随机序列与其移 位序列之间的自相关性,图12(b)为15个相邻密钥产生的测试随机数之间的互相 相关性。从图中可以看出,本文提出的PRNG产生的伪随机序列之间不存在相关性。
在本实施例提出了一种基于改进Hopfield混沌神经网络振荡器的PRNG,并 在FPGA上得到了很好的实现。具有复杂动力学行为的改进Hopfield混沌神经网 络振荡器,以神经元的流量作为判断条件,让Lyapunov指数最高的神经元加入不 同的干扰因子,从而减少混沌退化对产生的RNs的影响,提高随机序列的随机性。 后处理单元由32个寄存器和15个异或比较器组成。从芯片统计数据可以看出, PRNG可以在FPGA上实现,输出数据速率可达16.2Mbit/s。最后,对PRNG的性能 进行了测试。结果表明,PRNG生成的随机序列具有良好的随机性和安全性。因此, 它适用于安全通信和信息加密。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实 施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例 描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。 在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而 且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示 例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解: 在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、 替换和变型,本发明的范围由权利要求及其等同物限定。
Claims (10)
1.一种伪随机数发生器,其特征在于,包括:
三神经元Hopfield神经网络混沌振荡单元,所述三神经元Hopfield神经网络混沌振荡单元基于穿过神经元的磁通干扰李雅普诺夫指数最大的神经元,用于对接收的输入信号进行处理并生成对应的输出信号;
抽样量化单元,与所述三神经元Hopfield神经网络混沌振荡单元电连接,用于抽样量化所述三神经元Hopfield神经网络混沌振荡单元产生的输出信号,得到随机序列。
2.根据权利要求1所述的伪随机数发生器,其特征在于,所述三神经元Hopfield神经网络混沌振荡单元基于穿过神经元的磁通干扰李雅普诺夫指数最大的神经元,包括:所述三神经元Hopfield神经网络混沌振荡单元将磁通的32位输出信号中的16位和第17位进行异或操作,得到1位输出的磁通量,若所述磁通量等于1,则使李雅普诺夫指数最大的神经元的32位输出信号增加第一设定值;若所述磁通量不等于1,则使李雅普诺夫指数最大的神经元的32位输出信号减少第二设定值。
3.根据权利要求2所述的伪随机数发生器,其特征在于,所述第一设定值和所述第二设定值均为0.0002。
4.根据权利要求2所述的伪随机数发生器,其特征在于,还包括由相互电连接的移位寄存器和异或比较器组成的后处理单元,所述后处理单元与所述抽样量化单元电连接,用于对所述抽样量化单元产生的随机序列进行移位异或处理,用以提高所述随机序列的随机性。
5.根据权利要求4所述的伪随机数发生器,其特征在于,所述后处理单元包括32个所述移位寄存器和15个所述异或比较器,前16个所述移位寄存器均为0,后16个所述移位寄存器从所述随机序列中获取对应的参数;所述移位寄存器每前移1位,15个所述异或比较器运行一次,产生一个1位随机数;所述异或比较器用于在所述移位寄存器每前移1位后,执行异或操作。
6.一种伪随机数发生方法,其特征在于,包括以下步骤:
构建三神经元Hopfield神经网络混沌振荡器,所述三神经元Hopfield神经网络混沌振荡器基于穿过神经元的磁通干扰李雅普诺夫指数最大的神经元,通过所述三神经元Hopfield神经网络混沌振荡器对接收的输入信号进行处理并生成对应的输出信号;
对所述三神经元Hopfield神经网络混沌振荡器的输出信号进行抽样量化,得到随机序列。
7.根据权利要求6所述的伪随机数发生方法,其特征在于,所述三神经元Hopfield神经网络混沌振荡器基于穿过神经元的磁通干扰李雅普诺夫指数最大的神经元,包括步骤:
所述三神经元Hopfield神经网络混沌振荡器将磁通的32位输出信号中的16位和第17位进行异或操作,得到1位输出的磁通量,若所述磁通量等于1,则使李雅普诺夫指数最大的神经元的32位输出信号增加第一设定值;若所述磁通量不等于1,则使李雅普诺夫指数最大的神经元的32位输出信号减少第二设定值。
8.根据权利要求6所述的伪随机数发生方法,其特征在于,还包括步骤:
构建相互电连接的32个移位寄存器和15个异或比较器,使前16个所述移位寄存器均为0,后16个所述移位寄存器从所述随机序列中获取对应的参数;
使所述移位寄存器向前移动,在每前移1位后,通过所述异或比较器执行异或操作,在所述移位寄存器每前移1位,15个所述异或比较器运行一次后,产生一个1位随机数,并且在所述移位寄存器每前移16位,所述移位寄存器重新从所述随机序列中获取对应的参数,直至所述随机序列全部完成移位。
9.一种处理器芯片,其特征在于,所述处理器芯片搭载权利要求1至5任一项权利要求所述的伪随机数发生器,并实施权利要求6至8任一项所述伪随机数发生方法。
10.一种信息数据处理终端,其特征在于,所述信息数据处理终端搭载权利要求9所述的处理器芯片,并用于实现权利要求6至8任一项所述伪随机数发生方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110528091.6A CN113377335B (zh) | 2021-05-14 | 2021-05-14 | 一种伪随机数发生器、伪随机数发生方法、处理器芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110528091.6A CN113377335B (zh) | 2021-05-14 | 2021-05-14 | 一种伪随机数发生器、伪随机数发生方法、处理器芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113377335A true CN113377335A (zh) | 2021-09-10 |
CN113377335B CN113377335B (zh) | 2022-07-01 |
Family
ID=77570937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110528091.6A Active CN113377335B (zh) | 2021-05-14 | 2021-05-14 | 一种伪随机数发生器、伪随机数发生方法、处理器芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113377335B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2788360C1 (ru) * | 2022-10-05 | 2023-01-17 | Вадим Георгиевич Прокопенко | Генератор хаотических колебаний |
CN117234460A (zh) * | 2023-08-31 | 2023-12-15 | 常州大学 | 基于三维mhm的超混沌伪随机数生成方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5007087A (en) * | 1990-04-16 | 1991-04-09 | Loral Aerospace Corp. | Method and apparatus for generating secure random numbers using chaos |
WO1994024637A1 (en) * | 1993-04-20 | 1994-10-27 | British Telecommunications Public Limited Company | Hopfield neural networks |
CN1121372A (zh) * | 1993-04-20 | 1996-04-24 | 英国电讯有限公司 | Hopfield神经网络 |
US5764858A (en) * | 1995-09-14 | 1998-06-09 | University Of Southern California | One-dimensional signal processor with optimized solution capability |
US20090287624A1 (en) * | 2005-12-23 | 2009-11-19 | Societe De Commercialisation De Produits De La Recherche Applique-Socpra-Sciences Et Genie S.E.C. | Spatio-temporal pattern recognition using a spiking neural network and processing thereof on a portable and/or distributed computer |
CN105612492A (zh) * | 2013-10-02 | 2016-05-25 | 高通股份有限公司 | 用于产生伪随机数的可编程概率分布函数的方法和装置 |
CN107231214A (zh) * | 2017-06-12 | 2017-10-03 | 哈尔滨工程大学 | 基于演化混沌量子神经网络的最优多用户检测方法 |
CN107592198A (zh) * | 2017-07-24 | 2018-01-16 | 广东工业大学 | 量子 Fourier 变换的四维 Hopfield 神经网络图像加密方法 |
CN108574653A (zh) * | 2018-04-19 | 2018-09-25 | 南京邮电大学 | 基于双Sigmoid迟滞噪声混沌神经网络的信号盲检测方法 |
CN110059806A (zh) * | 2019-04-22 | 2019-07-26 | 浙江科技学院 | 一种基于幂律函数的多阶段加权网络社团结构检测方法 |
-
2021
- 2021-05-14 CN CN202110528091.6A patent/CN113377335B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5007087A (en) * | 1990-04-16 | 1991-04-09 | Loral Aerospace Corp. | Method and apparatus for generating secure random numbers using chaos |
WO1994024637A1 (en) * | 1993-04-20 | 1994-10-27 | British Telecommunications Public Limited Company | Hopfield neural networks |
CN1121372A (zh) * | 1993-04-20 | 1996-04-24 | 英国电讯有限公司 | Hopfield神经网络 |
US5764858A (en) * | 1995-09-14 | 1998-06-09 | University Of Southern California | One-dimensional signal processor with optimized solution capability |
US20090287624A1 (en) * | 2005-12-23 | 2009-11-19 | Societe De Commercialisation De Produits De La Recherche Applique-Socpra-Sciences Et Genie S.E.C. | Spatio-temporal pattern recognition using a spiking neural network and processing thereof on a portable and/or distributed computer |
CN105612492A (zh) * | 2013-10-02 | 2016-05-25 | 高通股份有限公司 | 用于产生伪随机数的可编程概率分布函数的方法和装置 |
CN107231214A (zh) * | 2017-06-12 | 2017-10-03 | 哈尔滨工程大学 | 基于演化混沌量子神经网络的最优多用户检测方法 |
CN107592198A (zh) * | 2017-07-24 | 2018-01-16 | 广东工业大学 | 量子 Fourier 变换的四维 Hopfield 神经网络图像加密方法 |
CN108574653A (zh) * | 2018-04-19 | 2018-09-25 | 南京邮电大学 | 基于双Sigmoid迟滞噪声混沌神经网络的信号盲检测方法 |
CN110059806A (zh) * | 2019-04-22 | 2019-07-26 | 浙江科技学院 | 一种基于幂律函数的多阶段加权网络社团结构检测方法 |
Non-Patent Citations (1)
Title |
---|
董丽华等: "基于细胞神经网络的伪随机数生成方法", 《通信学报》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2788360C1 (ru) * | 2022-10-05 | 2023-01-17 | Вадим Георгиевич Прокопенко | Генератор хаотических колебаний |
CN117234460A (zh) * | 2023-08-31 | 2023-12-15 | 常州大学 | 基于三维mhm的超混沌伪随机数生成方法及装置 |
CN117234460B (zh) * | 2023-08-31 | 2024-04-02 | 常州大学 | 基于三维mhm的超混沌伪随机数生成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113377335B (zh) | 2022-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hu et al. | Efficient hardware architecture of softmax layer in deep neural network | |
Ichihara et al. | Compact and accurate digital filters based on stochastic computing | |
Krishnamoorthi et al. | Design of pseudo-random number generator from turbulence padded chaotic map | |
Panda et al. | Modified dual-CLCG method and its VLSI architecture for pseudorandom bit generation | |
Nguyen et al. | Designing a pseudorandom bit generator with a novel five-dimensional-hyperchaotic system | |
Wang et al. | A pseudorandom number generator based on a 4D piecewise logistic map with coupled parameters | |
CN113377335B (zh) | 一种伪随机数发生器、伪随机数发生方法、处理器芯片 | |
Liu et al. | Stochastic dividers for low latency neural networks | |
Neugebauer et al. | On the limits of stochastic computing | |
Gupta et al. | Coupled variable‐input LCG and clock divider‐based large period pseudo‐random bit generator on FPGA | |
Baker et al. | The hypergeometric distribution as a more accurate model for stochastic computing | |
Temenos et al. | Nonscaling adders and subtracters for stochastic computing using Markov chains | |
Aygun et al. | Agile simulation of stochastic computing image processing with contingency tables | |
Zhao et al. | Fully fixed-point integrated digital circuit design of discrete memristive systems | |
Abdellatef et al. | Accurate and compact stochastic computations by exploiting correlation | |
Othman et al. | Implementation of neural-cryptographic system using FPGA | |
Temenos et al. | Stochastic computing max & min architectures using Markov chains: Design, analysis, and implementation | |
Islam et al. | Empirical word-level analysis of arithmetic module architectures for hardware trojan susceptibility | |
Abdellatef et al. | Characterization of correlation in stochastic computing functions | |
Güngör et al. | A logistic map Runge Kutta-4 solution for FPGA using fixed point representation | |
Bakiri et al. | One random jump and one permutation: Sufficient conditions to chaotic, statistically faultless, and large throughput PRNG for FPGA | |
Li et al. | Chaotic frequency hopping prediction based on temporal convolutional network | |
Gao et al. | FPGA-based logistic chaotic pseudo-random sequence generator design | |
Hu et al. | An Efficient Stochastic Convolution Accelerator Based on Pseudo-Sobol Sequences | |
PV et al. | Design and implementation of efficient stochastic number generator |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |