混沌PN序列的DSP实现及其性能分析

2012-07-18 07:40王光义
关键词:示波器初值密钥

王 莹,王光义

(杭州电子科技大学电子信息学院,浙江杭州310018)

0 引 言

伪噪声(Pseudo-Noise,PN)序列是保密通信及加密应用领域的一个重要分支,PN序列性能的好坏,直接影响到加密系统的安全性。目前主要的PN序列有m序列,gold序列等,但这些序列都存在复杂度低、保密性不高等缺点[1]。混沌具有对初值极端敏感、非周期、不可预测等诸多优良特性,能够产生大量的非相关、类随机但可再生的信号,利用混沌产生的PN序列具有很好的随机性和较长周期[2]。混沌序列的产生可以采取多种硬件方式实现,比如FPGA、ASICs等。但从性价比考虑,在对乘法运算精度要求不是很高的情况下,DSP显然优于ASICs;而DSP汇编语言中特有的乘法和加法指令使其比FPGA实现更有优势[3]。本文基于一个新的混沌系统和DSP技术提出了混沌PN序列的一种生成方法,对获得的序列性能进行了NIST测试及密钥空间、密钥敏感性分析,结果表明序列性能良好,适合用于实际的密码加密系统或扩频通信。

1 一个新的混沌模型

为了增强混沌的动力学运动复杂性,扩展密钥空间和提高序列性能,在原始Rossler方程基础上对其进行改进,提出了一个新的混沌模型:

式中,x=(x,y,z)∈R3,当 a=0.7,b=0.3,c=0.2,d=0.1 时,系统存在一个混沌吸引子,如图 1 所示。可以证明,新的混沌方程与原始的Rossler方程是非拓扑等价的。

系统的Lyapunov指数图和分岔图如图2、3所示:

当b∈[0,0.3]时,通过MATLAB计算可得到相应的Lyapunov指数谱和分岔图。从图2中可以看出:当b∈[0.16,0.3]时,存在一个正的Lyapunov指数,系统处于混沌状态。

图1 混沌吸引子相图

图2 Lyapunov指数谱

图3 分岔图

2 混沌PN序列的DSP实现

采用ICETEK-VC5502-AE评估板,评估板的主处理 DSP芯片是16位定点数字信号处理器TMS320C5502。

2.1 基于DSP的混沌PN序列设计

若使连续系统能够通过数字器件实现,需要先对系统进行离散化处理。本文采用差商逼近法进行离散化处理[4,5]。差商逼近法是用适当差商逼近导数值使式2离散化的方法[6]。

式中,为离散间隔,根据式2,对改进的Rossler方程进行离散化得到:

式中,=0.008,将式3作为循环体进行迭代求解得到混沌实值序列,由此,便完成了连续混沌系统的离散化。将混沌实值序列经过D/A转换,便可通过示波器观察输出波形。

2.2 实验结果

抽取混沌实值序列每个浮点型数据的小数点后第5位,将其与0x01相与,得到混沌二值序列。序列波形图经示波器输出如图4所示。

图4 序列波形图

为了验证经过离散化后的混沌系统仍然具有原始连续的混沌系统的特性,将迭代产生的混沌实值序列直接经过D/A转换输出并观察混沌吸引子图。从示波器上观察得到的混沌吸引子图如图5所示。将图5与图1比较可得,由DSP生成的混沌信号在选取相同参数和初值的前提下,与MATLAB仿真结果相吻合,实现了连续混沌信号的输出。

图5 示波器显示的混沌吸引子相图

3 混沌PN序列性能分析

3.1 序列NIST测试分析

美国国家标准技术研究院,该机构制定了一套关于序列随机特性测试的标准,从不同角度检验被测序列在统计特性上相对于理想随机序列的偏离程度。以下为该测试软件包STS相关知识介绍[7]。

评价序列性能好坏有两项指标:一项是通过率;另外一项是P-value分布的均匀性。测试独立生成的m组随机序列,依据各组每次测试的p-value值是否大于0.01来计算通过率。若各次测试的通过率在可信性区间内,其中,则可以说明此次测试算法的信任度高。对于P-value分布均匀性,若p-valueT>0.000 1,则说明P-value值是均匀分布的。测试由STS软件包自动完成,并生成测试报告。序列测试报告如表1所示,其中,星号标识表示该项测试不合格。

表1 序列性能测试结果

测试结果显示,序列的具有良好的随机性。

3.2 密钥敏感性及密钥空间分析

一个性能良好的PN序列不仅要有良好的随机性,还要有作为密钥的好的敏感性和大的密钥空间,因此对序列进行密钥敏感性和密钥空间分析非常必要。

如图6所示,在初值仅相差千分之一的情况下,随着方程不断迭代,这一微小差异被不断放大,致使后期的迭代值迥然不同。混沌对初值的极端敏感性保证了密钥的敏感性。

图6 初值敏感性

对混沌系统而言,要确定密钥空间就必须要确定出各参数和初值的变化范围,如表2所示,参数在这些范围取值时通过MATLAB计算可以证明方程处于混沌状态。

表2 各参数变化范围

初值(x0,y0,z0)取(-2,2)。迭代次数值N,取0<N<256。基于实际的计算精度和混沌对初值的敏感性,这里以计算精度10-6估算。

综上可知,密钥空间为:4×106×4×106×4×106×2.8×106×0.35×106×0.4×106×0.4×106×0.3×106≈7.5×1042。假设密码分析人员使用目前世界上运行速度最快的计算机以每秒千万亿次搜索密钥,仍然需要大约1020年才能够穷举所有密钥,足以抵抗穷举攻击。

4 结束语

本文基于DSP和提出的一个混沌系统研究了一种产生混沌序列的方法,并对该序列进行了NIST测试,并从测试结果、密钥敏感性、密钥空间等方面对序列性能进行了分析。结果表明,序列性能良好。

[1] 罗友梅,何世彪,谷诚.一种新的混沌扩频序列优选算法[J].计算机工程,2009,36(24):99-101.

[2] Mozaary A,Zaainari L,Keol K,et al.Theoretical connection between PN-sequences and chaos makes simple FPGA pseudo-chaos sources possible[J].Electronics and Computer Engineering,2007,38(2):1 539 -1 542.

[3] 万佑红,张学军.混沌跳频序列的DSP实现[J].南京邮电大学学报,2006,26(3):88-91.

[4] 卞丽雅,戴青云,李亚.连续Lorenz混沌系统的DSP硬件实现[J].微计算机信息,2007,23(8):1-2.

[5] 郭倩颖,王光义.一个改进的混沌系统及其DSP实现[J].杭州电子科技大学学报,2010,30(3):9-12.

[6] 吕同富,兆敏,秀男.数值计算方法[M].北京:清华大学出版社,2008:266-269.

[7] Aandrew Rukhin,Juan Soto,Janmes Nechvatal,etal.A statistical test suit for random and pseudorandom number generators for cryptographic applications[EB/OL].http://www.nist.org,2010 -09 -16.

猜你喜欢
示波器初值密钥
具非定常数初值的全变差方程解的渐近性
一种适用于平动点周期轨道初值计算的简化路径搜索修正法
密码系统中密钥的状态与保护*
三维拟线性波方程的小初值光滑解
TPM 2.0密钥迁移协议研究
一种对称密钥的密钥管理方法及系统
一款教学示波器的Y通道设计与实现
可携带式虚拟双踪示波器
基于TEGRA K1的实时信号处理示波器的设计
具有无穷大初值的二维奇异摄动问题的渐近解