一種新的混沌RNG的實(shí)現(xiàn)方案及FPGA實(shí)現(xiàn)
僅僅由冗余度來(lái)衡量一個(gè)RNG是不夠的。為了了解本文提出的混沌RNG輸出序列的隨機(jī)性是否實(shí)現(xiàn)了“隨機(jī)”,我們根據(jù)美國(guó)國(guó)家標(biāo)準(zhǔn)及技術(shù)研究所(NIST)的要求對(duì)本文的混沌RNC方案產(chǎn)生的隨機(jī)數(shù)序列的隨機(jī)性進(jìn)行一系列測(cè)試。測(cè)試所用數(shù)據(jù)為慢速時(shí)鐘=8kHz,高速時(shí)鐘=100MHz,輸出精度為8bit的輸出值,測(cè)試長(zhǎng)度為3 000 000個(gè)8位隨機(jī)數(shù)的序列,表1為測(cè)試結(jié)果。
經(jīng)過(guò)以上一系列的隨機(jī)性測(cè)試,RNG表現(xiàn)良好,在置信水平為95%的情況下通過(guò)了全部測(cè)試,沒有表現(xiàn)出非隨機(jī)性,并且在信源相關(guān)度的測(cè)試(correlation order test)中性能超過(guò)了參考文獻(xiàn)中的混沌RNG方案。這項(xiàng)測(cè)試是測(cè)試一個(gè)隨機(jī)數(shù)序列的相鄰隨機(jī)數(shù)的相關(guān)度。一個(gè)理想RNG的前后隨機(jī)數(shù)相關(guān)度應(yīng)該為0。由表1中數(shù)據(jù)可知,本文的混沌RNG測(cè)試結(jié)果更接近于理想RNG。因此可以認(rèn)為,就目前已知的測(cè)試隨機(jī)數(shù)的隨機(jī)性的測(cè)試結(jié)果表明,本文介紹的混沌RNG生成的隨機(jī)數(shù)序列是比較好的。
光譜測(cè)試可以直觀地顯示出隨機(jī)數(shù)序列與其自身的相關(guān)情況。通過(guò)圖5可以更直觀地看到一個(gè)相關(guān)度低的RNG與一個(gè)偽RNG(用10位線性反饋移位寄存器來(lái)做例子)的對(duì)比。相關(guān)度為0的理想RNG應(yīng)該均勻分布在整個(gè)二維空間內(nèi),線性反饋移位寄存器的測(cè)試結(jié)果(圖b)就反映出了它的高相關(guān)度,而本文提出的混沌RNG方案的測(cè)試結(jié)果(圖a)則顯示了其不可預(yù)測(cè)性與無(wú)規(guī)則性分布。
2 硬件實(shí)現(xiàn)
本文采用Xilinx公司的xuPV2P30開發(fā)板實(shí)現(xiàn)這個(gè)混沌KNG,這塊開發(fā)板上自帶兩個(gè)獨(dú)立的(不同相位)時(shí)鐘源,二者都可以輸出8k~100MHz的不同頻率的時(shí)鐘。選擇慢速時(shí)鐘信號(hào)頻率范圍為8k~1MHz,高速時(shí)鐘信號(hào)頻率為100MHz,輸出精度為8bit。其邏輯使用資源情況如表2所示。
從表2可以看到,在硬件上以極低的邏輯資源使用(18個(gè)Slices約合1800+門)實(shí)現(xiàn)了本文提出的混沌RNG方案,對(duì)比參 考文獻(xiàn)中的方案(3000+門),該電路得到大大簡(jiǎn)化,而參考文獻(xiàn)中的偽高斯噪聲生成器占用了很大的硬件資源。該方案的最高輸出速率受到了板載最高時(shí)鐘頻率的限制。如果本文的混沌RNG用IC方案實(shí)現(xiàn),則可以進(jìn)一步減小所需要的硬件資源并進(jìn)一步提高輸出速率。
本文提出的方案通過(guò)了一系列高要求的隨機(jī)性測(cè)試,其邏輯資源的占用遠(yuǎn)小于傳統(tǒng)的混沌RNG方案,最高輸出速率可達(dá)8Mbps。因而這種RNG方案可以用于對(duì)安全性和性能需求日益增長(zhǎng)的加密系統(tǒng)中。
生成器采樣輸出信號(hào)進(jìn)行模2加操作(異或),再通過(guò)S/H產(chǎn)生最后的輸出x(n),x(n)被反饋到寄存器中進(jìn)行下次操作。
評(píng)論