基于變結(jié)構混沌的偽隨機序列發(fā)生器
式(5)~式(9)描述了混沌偽隨機序列發(fā)生器設計的核心算法。實現(xiàn)一個混沌偽隨機序列發(fā)生器可借助于軟件和硬件平臺。如果為計算機或其他軟件提供偽隨機序列,可借助數(shù)字計算機這個性能完善的平臺實現(xiàn)式(5)~式(9)的運算,如可用Matlab,C語言等軟件實現(xiàn)一個混沌偽隨機序列發(fā)生器。也可結(jié)合實際應用在相關信號處理軟硬件平臺上實現(xiàn)混沌偽隨機序列發(fā)生器,如利用DSP芯片對語音或視頻信號進行混沌加密,可在DSP內(nèi)進行上述運算而實現(xiàn)混沌偽隨機序列發(fā)生器,也可利用FPGA硬件平臺實現(xiàn)這種偽隨機序列發(fā)生器。本文不側(cè)重利用何種平臺,如何實現(xiàn)混沌偽隨機序列發(fā)生器,而是著重基于上述變結(jié)構混沌系統(tǒng)的偽隨機序列發(fā)生器性能的測試。為此,選擇Matlab求解變結(jié)構混沌系統(tǒng),通過實現(xiàn)式(5)~式(9)的運算產(chǎn)生一系列偽隨機序列,提取序列并進行序列的隨機性統(tǒng)計測試。
描述一個序列隨機性統(tǒng)計性能的指標有多種,但目前應用最廣的是NIST(National Institute of Standardsand Technology,美國國家技術與標準局)標準。NIST推出2.0版本的測試軟件包STS是當前最具權威的一種隨機性檢測工具,它為研究人員提供了一種量化的報告,顯式地說明一個偽隨機序列性能的好壞。STS-2.0b是當前最新的軟件包版本,由十五項核心測試指標組成。
該測試包評價序列性能好壞有兩項指標:其一是通過率,另一項是P-value分布的均勻性。測試獨立生成的m組隨機序列,依據(jù)各組每次測試的P-value值是否大于測試水平α=0.01來計算通過率。若各次測試的通過率在可信性區(qū)間內(nèi),其中1-a,則可說明此次測試算法的信任度高。對于P-value分布均勻性,若P-valueT>0.000 1,則說明P-value值是均勻分布的。
在Linux操作系統(tǒng)環(huán)境下進行測試。通過編程將變結(jié)構混沌系統(tǒng)進行離散迭代運算來產(chǎn)生數(shù)字混沌序列,然后將產(chǎn)生的二進制數(shù)字序列保存為txt文檔,并通過測試指令調(diào)用軟件包對txt文檔中的序列進行測試,測試由STS軟件包自動完成,并生成測試報告。基于變結(jié)構混沌系統(tǒng)產(chǎn)生的偽隨機序列的測試結(jié)果如表1所示,序列共有100000000 b,以每組100000 b分為1 000組。本文引用地址:http://2s4d.com/article/193646.htm
從表1中P-value這一列看出,序列僅在FFT這一項中的P-value值測試不滿足P-valueT>0.000 1的條件,這說明序列在該項測試中的P-value值分布不均勻,在其余14項測試中表現(xiàn)為分布均勻。若從通過率來分析,取顯著水平α=0.01,那么根據(jù)通過率可信區(qū)間的計算公式可得,當PROPORTION的值落在(0.980 560 8,0.999 439 2)區(qū)間內(nèi)時,表明序列通過該測試項,反之則為不通過。表1測試結(jié)果顯示序列在所有測試中其結(jié)果均落在可信區(qū)間之內(nèi),所有指標均通過該項測試。
3 結(jié)論
為產(chǎn)生性能良好的偽隨機序列,本文構造了一個新的變結(jié)構混沌系統(tǒng)。該系統(tǒng)在一個開關函數(shù)控制下自動地在兩個混沌子系統(tǒng)之間隨時問隨機地轉(zhuǎn)換,所產(chǎn)生的混沌信號是兩個不同的混沌信號的混合,因而具有較好的復雜性。利用該變結(jié)構混沌系統(tǒng)設計了一種偽隨機序列發(fā)生器,基于NIST標準和STS-2.0b測試套件對其產(chǎn)生的偽隨機序列進行了測試,序列通過率全部通過了測試,序列的均勻性只有一項未通過測試。測試結(jié)果表明,該偽隨機序列發(fā)生器具有良好的隨機性能,可應用于計算機、通信、信息加密等領域之中。
評論