法律状态公告日
法律状态信息
法律状态
2017-11-10
未缴年费专利权终止 IPC(主分类):H04L9/22 授权公告日:20150826 终止日期:20160927 申请日:20120927
专利权的终止
2015-08-26
授权
授权
2013-03-13
实质审查的生效 IPC(主分类):H04L9/22 申请日:20120927
实质审查的生效
2013-01-30
公开
公开
技术领域
本发明涉及信息安全技术领域,是基于耦合混沌映射系统的并行伪随机比 特发生器。
技术背景
伪随机数在蒙特卡罗计算、文本加密、图像加密和视频加密以及在密码协 议中的密钥、初始化变量中有着广泛的应用,因此随机数发生器的研究在统计 物理和现代密码中有着重要的地位。伪随机数发生器产生的序列要求具有尽可 能大的周期和良好的随机性。
由于混沌轨道对初值和参数的敏感性,以及混沌信号的伪随机性,近年来, 许多研究者应用混沌动力学来构建伪随机数发生器。从现有的研究成果来看, 比较有竞争力的一类是以时空耦合混沌映射格子为基础的混沌伪随机数发生 器。与低维系统相比,时空混沌系统具有多个正的李雅普诺夫指数,增加了系 统的复杂性和周期。混沌运算是基于实数域的,因此已有的基于混沌的随机数 发生器的设计大多适用于软件操作环境,用于平移到硬件平台上存在着操作代 价高,运行效率低的缺点。
本发明特制了全新的、基于混沌耦合映射的并行伪随机比特发生器,其主 要特点是采用一维耦合混沌映射系统,通过选择有效的参数,保证了系统的时 空混沌复杂性,也通过有限的、方便的移位操作不仅使输出的序列具有良好的 统计特性,而且适用于硬件平台;同时可用于并行输出随机比特序列。
发明内容
本发明的目的是设计可用于硬件实现、适用于并行操作、高效率的伪随机 比特发生器。基于耦合混沌映射系统的并行伪随机比特发生器,其过程特征在 于以下处理步骤:
A1)通过初始化模块,把伪随机比特发生器的初始值(也称为种子)通过 非线性变换扩展产生耦合混沌映射系统的初始值;
A2)把扩展产生的耦合混沌映射系统的初始值输入耦合混沌映射系统,经 过耦合混沌映射系统的作用,并行输出多路混沌序列;
A3)把输出的混沌序列通过输出模块的处理,并行输出满足测试标准的随 机比特序列。
在A1中,64比特的初始值通过非线性变换扩展成32N比特,产生耦合混沌 映射系统的N个初始值x0(i),i=1,2,...,N,N为耦合映射的个数,N≥4,每个x0(i) 都是属于[0,232)区间上的整数;若有全部相等的初始值,即x0(i)=x0(1), i=2,3,...,N,输出的初始值变化为x0(i)=x0(1)+10000×i,i=2,3,...,N,其中符号+ 为模232加法。
在A2中,把A1中扩展产生的耦合混沌映射系统的初始值输入耦合混沌映 射系统,所述的耦合混沌映射系统满足
xn+1(i)=(1-ε1-ε2)f(xn(i))+ε1f(xn(i+1))+ε2f(xn(i-1)),i=1,2,...,N,
其中n=0,1,2,...为离散时间步数;i为耦合映射位置坐标,N为耦合映射格子的 长度;采用周期边界条件xn(0)=xn(N),xn(N+1)=xn(1);f(x)=ax mod 232是移位 映射,a∈(1,2];ε1和ε2为耦合强度,满足ε1>0,ε2>0,且ε1≠ε2,1-ε1-ε2>0;
而且,所述的耦合混沌映射系统要求参数a,ε1和ε2的选择使得耦合系统为 时空混沌系统,同时为了使复杂的乘法运算转化为简单的移位操作,取参数为 如下形式
而且,所述的耦合混沌映射系统要求离散时间n大于100时才开始并行输出 混沌时间序列。
在A3中,把A2输出的混沌时间序列值转化为32比特 其中输出敏感性较低的部分比特位 j≥17,输出的比特序列采用NIST SP800-22修订版作为 测试标准,保证每个序列具有良好的统计性质,不同的序列之间相互独立。
本发明具有以下技术效果:
1.基于混沌动力学系统的随机数发生器一般只适用于软件操作环境,本发 明通过选择参数a,ε1和ε2,以较小的代价使基于混沌动力学系统的随机比特发 生器可方便用于硬件实现。
2.该伪随机比特发生器可以并行输出比特序列。
附图说明
图1是本发明的结构示意图。
图2是本发明实施例f(x)=2x mod 232的移位映射操作示意图。
图3是本发明实施例的移位映射操作示意图。
图4是本发明实施例的耦合混沌映射的示意图。
图5是本发明实施例的输出模块示意图。
具体实施方式
下面结合附图和实例进一步详细说明本发明的技术方案:A1)通过初始化模 块,把伪随机比特发生器的初始值(也称为种子)扩展产生耦合混沌映射系统 的初始值;A2)把扩展产生的耦合混沌映射系统的初始值输入耦合混沌映射系 统,经过耦合混沌映射系统的作用,并行输出多路混沌序列;A3)把输出的混沌 序列通过输出模块的处理,并行输出满足测试标准的随机比特序列。
在A1中,初始化模块是把64比特的初始值通过非线性变换扩展成32N比 特,产生耦合混沌映射系统的N个初始值x0(i),N为耦合映射的个数,N≥4, 每个x0(i)都是属于[0,232)区间上的整数。若全部初始值都相等,即x0(i)=x0(1), i=2,3,...,N,则输出的初始值为x0(i)=x0(1)+10000×i,i=2,3,...,N。
上述的非线性变换可以采用散列函数方法,例如SHA-1。将64比特的初始 值作为信息进行SHA-1散列变换,得到160比特的散列值,160比特的扩展对 应于N=5的耦合映射系统,每取32比特值作为耦合混沌映射系统的一个映射的 初始变量x0(i),i=1,2,3,4,5。如果是N>5的耦合映射系统,则继续把输出的 160比特值作为新的信息进行SHA-1散列变换,每取32比特输出的散列值继续 作为耦合混沌映射系统剩下映射的初始变量x0(i),i=6,7,8,9,10。以此类推, 若N>10的耦合映射系统,则继续把输出的160比特值作为新的信息进行SHA-1 散列变换,每取32比特输出的散列值作为耦合混沌映射系统的初始变量x0(i), i=11,12...,直至得到需要的耦合混沌映射系统的所有初始变量x0(i),i=1,2,...,N。
上述的非线性变换也可以采用如下方式:首先将64比特的初始值定义为 w(1)||w(2)||…||w(7)||w(8),每个w(i)是[0,28)的整数,i=1,2,...,8。定义 w(i+8)=S(w(i)+w(i+4)+i),i=1,2,...,4N-8。其中符号+为模28加法,S为8比特 到8比特的非线性S盒变换,可以选择AES的S盒变换。按顺序组合4个8比 特的w形成32比特的整数,如x0(1)=w(1)||w(2)||w(3)||w(4),x0(2)=w(5)||w(6)||w(7)||w(8), ...,x0(N)=w(4N-3)||w(4N-2)||w(4N-1)||w(4N)。
在A2中,把扩展产生的耦合混沌映射系统的初始值输入耦合混沌映射系 统,经过耦合混沌映射系统的作用,并行输出多路混沌序列。所述的耦合混沌 映射系统满足:
xn+1(i)=(1-ε1-ε2)f(xn(i))+ε1f(xn(i+1))+ε2f(xn(i-1)),i=1,2,...,N
其中移位映射f(x)=ax mod 232,a∈(1,2];ε1和ε2为耦合强度,满足ε1>0,ε2>0, 且ε1≠ε2,1-ε1-ε2>0。所述的耦合混沌映射系统要求参数a,ε1和ε2的选择使 得耦合系统为时空混沌系统,而且要求离散时间n大于100时才开始并行输出混 沌时间序列。
图2是本发明实施例的移位映射f(x)=ax mod 232操作示意图。若取a=2, 则移位映射f(x)=2x mod232转化为f(x)=(x<<<1)mod232,其中x<<<1表示左移 1位操作。
图3是本发明实施例的移位映射操作示意图。可以分 解为则移位映射转化为 f(x)=x+(x>>>1)+(x>>>2)mod 232,其中x>>>1和x>>>2分别表示右移1位和右 移2位操作。
图4是本发明实施例的耦合混沌映射的示意图。若取则参 数可以分解为
xn+1(i)=(1-ε1-ε2)f(xn(i))+ε1f(xn(i+1))+ε2f(xn(i-1))
=(1-ε1-ε2)Xn(i)+ε1Xn(i+1)+ε2Xn(i-1)
=(Xn(i)>>>1)+(Xn(i)>>>2)+(Xn(i)>>>3)
+(Xn(i+1)>>>4)+(Xn(i+1)>>>5)+(Xn(i-1)>>>5).
图2、3和4所显示的实施例中,保证了移位映射和耦合混沌映射的乘法运 算转化为移位操作,有利于硬件操作的设计。同时在上述参数下,系统为时空 混沌系统。要求运行时间大于100时才可以并行输出混沌时间序列,保证了输 入的初始值得到充分混合和扩散。
图5是本发明实施例的输出模块示意图。为了保证序列具有较好的统计性 质,选择32比特xn+1(i)中的灵敏度低的部分比特作为输出,即选择 ()中的16个低比特位 采用NIST SP800-22修订版的统计方法进行检测,检测 结果表明并行输出的N个序列(i=1,2,...,N)都具有 好的统计性质,同时相邻的序列具有好的互相关统计特性,即序列 也满足于 NIST SP800-22修订版的检测,其中i=1,2,...,N-1。
机译: 伪随机比特串发生器和使用该伪随机比特串发生器的密码通信方法
机译: 用于无线电发射机或接收机的伪随机发生器使用与算术逻辑单元耦合的寄存器,该算术逻辑单元提供伪随机字并由处理器控制伪随机发生器序列
机译: 模拟串行伪随机发生器的并行伪随机发生器及其实现方法