freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

大隨機數(shù)生成器算法的研究與實現(xiàn)—免費畢業(yè)設計論文-文庫吧資料

2024-12-07 10:19本頁面
  

【正文】 } } // end for UINT temp。 i 64。 Step_5()。 i++) { Ri[(m 6) + i] = Result_3[i]。 Confidential PagePage 13 of 56 13 12/30/2020 for (i = 0。 Step_2()。 m 17。 int i,m。 (Result_4, KK1, KK2, Result_5)。 i++) { Result_4[i] = Result_1[i] ^ Result_3[i]。 for (i = 0。 (Result_2, KK1, KK2, Result_3)。 i++) { Result_2[i] = Vi[i] ^ Result_1[i]。 //之前已得到 V0 for (i = 0。 (DTi, KK1, KK2, Result_1)。 //得到時間二進制并保存在 DTi 中 GetKey()。 i++) { Vi[i] = rand()%2。 for (i = 0。 } } void CCreRndNum::GetVi() //得到 64 位的二進制隨機數(shù) {int i。 // 取得各通過移位異或把系統(tǒng)時間轉換成二進制數(shù)并放到 DTi 的高 32 和低 32 位中去 通過摸除 2得到 64位的二進制隨機數(shù) Vi DTi 和 Vi 都將作為主程序的輸入隨機數(shù) 輸入系統(tǒng)時間 Rand()產(chǎn)生的隨機數(shù) Confidential PagePage 11 of 56 11 12/30/2020 位的值 DTi[63 i] = (char)(( i) amp。 i++) { DTi[31 i] = (char)(( i) amp。 for (i = 0。 GetSystemTimeAsFileTime(amp。 } } 函數(shù)名 : GetTime 函數(shù)功能 : 得到 64bit 的當前日期和時間的二進制 輸入 : 系統(tǒng)時間 輸出 : btime[64] 算法示意圖: 圖 3 分別得到產(chǎn)生大隨機數(shù)的輸入隨機數(shù) void CCreRndNum::GetTime() { int i。 KK2[i] = iKey32[16 + i / 4] (i % 4) amp。 i++) //取出每一位 { KK1[i] = iKey32[i / 4] (i % 4) amp。 } for(i = 0。 i 32。 //轉換后的整型 Confidential PagePage 10 of 56 10 12/30/2020 sKey32 = CMD5Checksum::GetMD5(buf,sysInfoLen)。 CString sKey32。 } return ni。 ni += sizeof(MEMORYSTATUS)。buf[ni], amp。ms)。 } = sizeof(MEMORYSTATUS)。 ni += sizeof(dwRes)。buf[ni], amp。 } dwRes = GetTickCount()。 ni += sizeof(dwRes)。buf[ni], amp。 } dwRes = GetCurrentThreadId()。 ni += sizeof(dwRes)。buf[ni], amp。 dwRes = GetCurrentProcessId()。 //保存得到的字符串長度 DWORD dwRes。 3)帶有交換 S盒的 DES 算法 比哈姆和沙米爾證明通過優(yōu)化 S 盒的設計,甚至 S 盒本身的順序,可以抵抗差分密碼分析,以達到進一步增強 DES 算法的加密強度的目的。 2)具有獨立子密鑰的 DES算法 每一輪迭代都使用一個不同的子密鑰,而不是由一個 56 位二進制的密鑰產(chǎn)生。 針對以上 DES 的缺陷,人們提出了幾種增強 DES 安全性的方法,主要有以下3種: 1) 三重 DES算法 用 3 個不同密鑰的三重加密,即為: C=Ek3(Dk2(Ek1P)) P=Dk1(Ek2(Dk3C)) 該方法為密碼專家默克爾( Merkle)及赫爾曼( Hellman)推薦。 DES 算法簡介 自 DES 算法 1977 年公諸于世以來,人們一直對 DES 的安全性持懷疑態(tài)度,對密鑰的長度、迭代次數(shù)及 S盒的設計眾說紛紜。而且即使某次產(chǎn)生的隨機數(shù) Ri 泄露了,但由于 Ri又經(jīng)一次 EDE加密才產(chǎn)生新種子 Vi+1,所以別人即使得到 Ri也得不到 Vi+1,從而得不 到新隨機數(shù) Ri+1。 (公式 1) (說明 : EDE 表示兩個密鑰的三重 DES) step_4: 異或 Result_1 和 Result_3,得到 Result_4。 step_2: 任意設置一個值為 Vi 的初值 ,將 Vi 和 Result_1 進行異或 ,得到Confidential PagePage 7 of 56 7 12/30/2020 Result_2。 密鑰 : 產(chǎn)生器用了 3 次三重 DES 加密, 3 次加密使用相同的兩個 56 比特的密鑰 K1 和 K2,這兩個密鑰必須保密且不能用作他用。 游程檢驗,把隨機數(shù)序列按一定的規(guī)則進行分類,分為正負游程檢驗和升降游程檢驗等。 獨立性檢驗,即檢驗所產(chǎn)生的偽隨機數(shù)的獨立性和統(tǒng)計相關是否異常,包括相關關系檢驗和聯(lián)列表檢驗等。隨機數(shù)的檢驗方法有: 參數(shù)檢驗,檢驗其 分布參數(shù)的觀察值與理論值的差異顯著性。 需要指出的是,若所產(chǎn)生的偽隨機數(shù)序列通過某種隨機性檢驗,只是說它與隨機數(shù)的性質和規(guī)律不矛盾,我們不能扛絕它,并不是說它們已經(jīng)具有隨機數(shù)的性質與規(guī)律。 17 } 為防止 lamda 過大而溢出 ,故應該自己來寫 一個浮點類 3 隨機數(shù)的檢驗 隨機數(shù)的統(tǒng)計檢驗,就是根據(jù)( 0, 1)上均勻總體簡單子樣式的性質來研究所產(chǎn)生的隨機數(shù)序列的相應性質,進行比較鑒別,視其差異顯著與否,決定取舍。 15 } while ( b = c )。 12 b *= u。 6 } 7 double P_Rand( double Lamda ) // 泊松分布 8 { 9 double x = 0 ,b = 1 ,c = exp( Lamda ),u。 2 double U_Rand( double a, double b ) // 均勻分布 3 { 4 double x = random( MAX_VAL )。 顯然,這種方法較為粗糙,在試驗的過程中發(fā)現(xiàn):生成 的的隨機量只能算是近似的服從泊松分布,所以,更為有效的算法還有待嘗試。 離散型隨機變量 基本的思想是這樣的: 1 )在泊松分布中,求出 X 取何值時, p(X=k) 取最大值時,設為 Pxmax. 其時,這樣當于求解 f(x)=lamda^k/k! 在 k 取何值時有最大值,雖然,這道題有一定的難度,但在程序中可以能過一個循環(huán)來得到取得 f(x) 取最大值時的整數(shù)自變量 Xmax 。 經(jīng)過一定的計算變行,符合二維的正態(tài)分布的隨機變量的生成可按下面的方法進行: 1) 產(chǎn)生位于 01 區(qū)間上的兩個隨機數(shù) r1 和 r2. 2) 計算 u=2*r11,v=2*r21 及 w=u^2+v^2 3) 若 w1 , 則返回 1) 4) x=u[(lnw)/w]^(1/2) ( 怎么來的別問 ) y=v[(lnw)/w]^(1/2) 如果為 (miu,sigma^2) 正 態(tài)分 布 , 則 按上 述方 法 產(chǎn)生 x 后, x’=miu+sigma*x 由于采用基于乘同余法生成的 01 上的隨機數(shù)的正態(tài)分布隨機數(shù)始終無法能過正態(tài)分布總體均值的假設檢驗。 x=0,F(x)=1exp(lamda*x) 利用反函數(shù)法,可以求得 : x=lnR/lamda( 怎么來的別問 ) 正態(tài)分布隨機變量的生成 : 正態(tài)分布在概率統(tǒng)計的理論及應用中占有重要地位,因此,能產(chǎn)生符合正態(tài)分布的隨機變量就在模擬一類的工作中占有相當重要的地位。 10 11 } 反變換法 它首先需要使用均勻分布獲得一個 (0,1) 間隨機數(shù) , 這個隨機數(shù)相當于原概率分布的 Y 值 , 因為我們現(xiàn)在是反過來求 X. 哎 , 聽糊涂了也沒關系 , 只要知道算法怎么執(zhí)行的就行 . 采用概率積分變換原理 , 對于隨機變量 X 的分布函數(shù) F(X) 可以求其反函數(shù),得 : 原來我們一般面對的是概率公式 Y=f(X). 現(xiàn)在反過來 , 由已知的概率分布或通過其參數(shù)信息來反求 X. Xi=G(Ri) 其中 ,Ri 為一個 01 區(qū)間內(nèi)的均勻分布的隨機變量 . F(X) 較簡單時,求解 較易,當 F(X) 較復雜時,需要用到較為復雜的變換技巧。 7 r = (a + ) / 。 4 double r。 經(jīng)過前人檢驗的兩組性能較好的素數(shù)取模乘同余法迭代式的系數(shù)為 : 1 ) lamda=5^5,M=2^3531 2 ) lamda=7^5,M=2^311 混同于法 混合同余法是加同余法和乘同余法的混合形式 , 其迭代式如 下 : Xn+1=( Lamda*Xn+C )%M Rn+1=Xn/M 經(jīng)前人研究表明,在 M=2^q 的條件下,參數(shù) lamda,miu,X0 按如下選取,周期較大,概率統(tǒng)計特性好 : Lamda=2^b+1,b 取 q/2 附近的數(shù) Confidential PagePage 3 of 56 3 12/30/2020 C=(1/2+sqrt(3))/M X0 為任意非負整數(shù) 它的一個致命的弱點,那就是隨機數(shù)的生成在某一周期內(nèi)成線性增長的趨勢,顯然,在大多數(shù)場合,這種極富 “ 規(guī)律 ” 型的隨機數(shù)是不應當使用的。 乘同余法 乘同余法的迭代式如下 : Xn+1=Lamda*Xn(mod M) (Lamda 即參數(shù) λ ) Rn+1=Xn/M 各參數(shù)意義及各步的作用可參 。 第一個式子表示的是將 Xn 平方后右移 s 位,并截右端的 2s 位。 設計思路:采用 VC++ 1.使用 VC++實現(xiàn)控件的開發(fā)與界面的設計,盡量使外觀簡單容易實用,輸出結果方便易看 2.借鑒其他隨機數(shù)產(chǎn)生器的產(chǎn)生方法,參閱 AES, DES中隨機數(shù)的產(chǎn)生方法,借鑒出其中的精華,補上自己的構 思與想法盡量使隨機數(shù)不出現(xiàn)重復。 析他們的優(yōu)點和缺點,能夠保留的優(yōu)點就要盡量用到,如果有不足應該怎樣改正,加上自己的理解和題目的要求做一個滿意的隨機數(shù)產(chǎn)生器。 本課題研究的意義 保證我們能夠很快速的得到需要的隨機數(shù),而且隨機數(shù)能夠足夠大足夠隨機,盡量能夠實用在需要用到隨機數(shù)的任何地方,特別是在科研領域,比如第 3代移動通信系統(tǒng)( 3G)中需要的 1024 隨機數(shù),就能滿足它的要求,我們所要做的就是使產(chǎn)生的隨機數(shù)盡量的靠近真隨機數(shù)。 國內(nèi)外研究現(xiàn)狀 通過查閱質料 和在網(wǎng)上 了解 , 國外對隨機數(shù)的研究領先 于國人對隨機數(shù)的研究,但是總體來說對隨機數(shù)的研究都還不夠深入與透徹,都還不能脫離偽隨機數(shù)的陰影,但的確目前的技術支持與環(huán)境配置等方面都還制約著我們大多數(shù)只能在研究偽隨機數(shù)的層面,我們只可能的盡量地做到無限接近真隨機數(shù),而不能達到真正的隨機。像 RSA,MD5 需求大量隨機數(shù)的密碼技術正需求一個好的隨機數(shù)發(fā)生器的產(chǎn)生。偽隨機數(shù)可以通過一定的數(shù)學算法,近似真隨機數(shù)但仍然不是真隨機數(shù)。即,可以通過一定手段和方法發(fā)現(xiàn)或破譯其中的規(guī)律。 Encryption technology。 RSA。設計還對常見的隨機數(shù)的生成方法進行了檢析,提供多種隨機數(shù)的生成方法,并且也提供了多種隨機數(shù)的檢測方法供大家參考,希望對大家有所幫助。 畢業(yè)設計 ( 論文 ) 大隨機數(shù)生成器算法的研究與實現(xiàn) 論文作者姓名: 申請學位專業(yè): 申請學位類別: 指導教師姓名(職稱): 論文提交日期: 大隨機數(shù) 生成器算法的研究與實現(xiàn) 摘要 大隨機數(shù)已經(jīng)在當今社會的各個領域中都頻繁使用,特別是在加密技術中已經(jīng)成了不可
點擊復制文檔內(nèi)容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1