NIST隨機(jī)數(shù)檢測軟件使用_第1頁
NIST隨機(jī)數(shù)檢測軟件使用_第2頁
NIST隨機(jī)數(shù)檢測軟件使用_第3頁
NIST隨機(jī)數(shù)檢測軟件使用_第4頁
NIST隨機(jī)數(shù)檢測軟件使用_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

目錄一、NIST簡介二、博主錯誤記錄三、測試程序四、NIST的使用一、NIST簡介NIST是評判偽隨機(jī)序列隨機(jī)性的一種方法,包含16個測試,測試內(nèi)容看這篇/lafu5137/article/details/79593845因?yàn)镹IST需要在Linux環(huán)境下運(yùn)行,所以我們需要下載Cygwin去模擬LInux環(huán)境,下載教程看這幾篇NIST下載教程(比較新)Cygwin安裝教程(比較全)NIST下載、安裝及使用(比較全)二、博主錯誤記錄標(biāo)注一個自己下載過程中出現(xiàn)的錯誤:在下載完Cygwin和NIST后,在Cygwin終端運(yùn)行NIST,一定要輸入正確的地址,我當(dāng)時直接cd+win中make.file的路徑直接復(fù)制然后回車,會提示:Nosuchfileordirectory的錯誤,然后百度無果,認(rèn)為是安裝兩軟件出現(xiàn)問題,然后查詢相關(guān)解決辦法,又認(rèn)為自己是沒有安裝make文件并且又去官網(wǎng)下載最新的文件,發(fā)現(xiàn)問題還是沒有解決,又認(rèn)為是Cygwin需要編譯環(huán)境,又去安裝gcc編譯環(huán)境,問題依然沒有解決,最后突然發(fā)現(xiàn)我們這塊要輸入不是cdD:\cygwin64\sts-2.1.2\sts-2.1.2,而是cdD:/cygwin64/sts-2.1.2/sts-2.1.2,看到差異了嗎\和/,前者是windows中直接復(fù)制的,后者是需要我們?nèi)刻鎿Q的可以在linux中識別的路徑在以上輸入正確路徑后,我們再輸入make命令,NIST軟件就會安裝,這時候在相同路徑下會產(chǎn)生一個asses.exe可執(zhí)行文件,這意味著NIST安裝成功。三、測試程序1.為了測試該程序是否正常工作,需要生成一個測試序列,博主使用matlab隨手生成了一個二進(jìn)制偽隨機(jī)序列tent_ode.m'''functionret=tent_ode(x,u,M)ret=zeros(M,1);ret(1)=x;fori=2:Mifret(i-1)<0.5ret(i)=2uret(i-1);endifret(i-1)>=0.5ret(i)=2u(1-ret(i-1));endend'''tent_out.m'''closeall;clear;M=102400;ret=tent_ode(0.1,0.99,M);rand_bin_stream=floor(mod(ret100,2));fid=fopen("rbs","w");tmp=0;fori=1:Mif(mod(i,8))tmp=tmp+rand_bin_stream(i)power(2,8-(mod(i,8)));elsetmp=tmp+rand_bin_stream(i);fwrite(fid,tmp);tmp=0;endendfclose(fid);'''2.博主使用的是帳篷映射來產(chǎn)生偽隨機(jī)序列,為了盡可能的去除序列中的相關(guān)性,博主又截取了小數(shù)點(diǎn)后面若干位作為二進(jìn)制偽隨機(jī)序列,這里會生成一個102400長度的二進(jìn)制偽隨機(jī)序列。這段代碼里面需要注意的是,偽隨機(jī)序列是一個二進(jìn)制比特流,這也是NIST唯一支持的格式。博主這里使用的是二進(jìn)制方式保存二進(jìn)制比特流,NIST也支持以ASCII方式保存的二進(jìn)制比特流運(yùn)行這段代碼,打開輸出的rbs文件3.如圖,腳本生成了102400長度的偽隨機(jī)二進(jìn)制序列,且正確保存在了rbs中(注意,這個長度只能是32的整數(shù)倍,否則會出現(xiàn)一大堆igamc:underflow報(bào)錯,有能力的可以看一下NIST原碼,找一下原因)(此處存疑,應(yīng)該是輸入數(shù)據(jù)長度不夠?qū)е碌模?.將rbs文件復(fù)制到linux下的當(dāng)前目錄中去(也可以是別的目錄,NIST支持絕對路徑),在終端中輸入命令5.需要注意的是assess的參數(shù),博主計(jì)劃將該數(shù)據(jù)分為十組進(jìn)行測試,102400/10=10240,因此assess的參數(shù)是10240,這個10240就是./assess<長度>的參數(shù)。6、EnterChoice:0輸入0,該命令告訴app從文件中獲取測試數(shù)據(jù)UserPrescribedInputFile:rbs輸入rbs,告訴app測試數(shù)據(jù)在那個文件中7、EnterChoice:1選18、SelectTest(0tocontinue):0選09、Howmanybitstreams?10這里的參數(shù)就是你想讓你的測試數(shù)據(jù)分成多少次參與測試,博主將數(shù)據(jù)分成10組,因此這個參數(shù)就是10.這里的輸入數(shù)值與assess的輸入?yún)?shù)相乘需要等于測試數(shù)據(jù)的總長度10、選擇輸入文件的格式,博主的測試數(shù)據(jù)是二進(jìn)制保存的,因此選111、計(jì)算結(jié)果分析四、NIST的使用1.輸入./assess.exe2.輸入./assess.exe1000000表示將數(shù)據(jù)段的長度設(shè)置為1000000(bits)=1M(bits)。注意,NIST檢驗(yàn)是按數(shù)據(jù)段來檢驗(yàn)的,無論你原始的數(shù)據(jù)文件多大,都是分成小段,這里一段是一百萬個比特位也就是1M。比如128M的數(shù)據(jù)就分成128段,30M的數(shù)據(jù)就分成30段。這里每段多長是可變的,但是數(shù)據(jù)段的長度應(yīng)該至少大于1M(bits),因?yàn)橛行z驗(yàn)要求輸入的數(shù)據(jù)流至少要大于等于1M,不然后面運(yùn)行會出警告。3.輸入0,再輸入待測試文件所在的路徑(這里是絕對路徑,也就是直接到達(dá)目標(biāo)位置)04.選擇要測試的項(xiàng)目,輸入1,回車,表示16個NIST測試都要進(jìn)行5.接下來,程序詢問我們是否選擇默認(rèn)的參數(shù)設(shè)置,這里無所謂,如果你的數(shù)據(jù)足夠大的話,[1]對應(yīng)的那個128可以變大些,直接輸1然后回車就可以更改,博主改成了20000,當(dāng)然不改也可以。非常重要的是這里有個Howmanybitstreams這個問題,這里一定要與之前的數(shù)據(jù)段長度對應(yīng),之前數(shù)據(jù)段是1M,那128M的數(shù)據(jù)就就是128個比特流,30M的數(shù)據(jù)就是30個流。128M的數(shù)據(jù)就就是128個比特流,這里就可以選一個比128小的數(shù),比如100,代表只檢驗(yàn)前100M數(shù)據(jù)的隨機(jī)性。6.接下來,程序詢問我們待測數(shù)據(jù)的存放各式。由于我的數(shù)據(jù)文件格式是二進(jìn)制,數(shù)據(jù)文件里只有0和1,所以輸入07.具在屏幕上輸出一行英文提示:統(tǒng)計(jì)測試進(jìn)行中…。接下來,耐心等待即可,運(yùn)算時間與數(shù)據(jù)量有關(guān)。8.當(dāng)數(shù)據(jù)測試完成后,會在測試包所在目錄的experiments->AlgorithmTesting目錄下生成兩個測試報(bào)告文件,他們分別是finalAnalysisReport.txt和freq.txt。9.查看finalAnalysisReport.txt和freq.txt首先前面16個文件夾分別對應(yīng)16個檢驗(yàn),每個文件夾里都有各自的檢驗(yàn)結(jié)果結(jié)果如下,有兩個文件stats.txt文件里會給出每個數(shù)據(jù)段通過此檢驗(yàn)的情況,success或者failurefinalAnalysisReport.txt文件是總的檢驗(yàn)結(jié)果打開之后,如下所示PROPORTION是所有數(shù)據(jù)段中通過檢驗(yàn)的比例。右邊那個是檢驗(yàn)的名稱,其中Non開頭那個比較特殊,它雖然是一個檢驗(yàn),但會出現(xiàn)多個P-value值。當(dāng)然也是大于0.01認(rèn)為隨機(jī)。所有P-value都大于等于0.01即可認(rèn)為通過了NIST檢

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論