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

正文內(nèi)容

基于rsa的數(shù)字簽名的設(shè)計(jì)與實(shí)現(xiàn)42650-文庫吧資料

2025-06-24 16:39本頁面
  

【正文】 要的一步,也是MD5的核心算法,在這一步中包括了:(1)把四個連接變量復(fù)制到了四個變量a,b,c,d中,使a=A,b =B,c =C,d=D;其中a,b,c,d組合成128位的寄存器,且在實(shí)際算法運(yùn)算中保存中間結(jié)果和最終結(jié)果;(2)將當(dāng)前的512位塊分解為16個子塊,每個子塊為32位;(3)要循環(huán)四輪,每一輪處理一個塊中的16個子塊,四輪的第一步進(jìn)行不同的處理,其他的相同:每一輪有16個輸入子塊M[0],M[1],…………..M[15],或表示為M[i],其中i為015;t是常量數(shù)組,包含64個元素,每個元素為32位,數(shù)組t表示為t[1],t[2],………t[64],或t[k],k為164;MD5的循環(huán)四輪操作過程用下式表示: a=b+((a+proccessP(b,c,d)+M[i]+T[k])s) (s表示循環(huán)左移s位)產(chǎn)生消息摘要的主要代碼如下: int i。 m_Prime1=47。//通過以下兩個函數(shù)可獲得兩個大素數(shù),但增加了計(jì)算復(fù)雜性,為了方便,直接給定素數(shù)// m_Prime1 = FindPrime(1)。 } }}//產(chǎn)生素數(shù)的函數(shù)的實(shí)現(xiàn)GeneratePrimeNumbers(){ CString str。 if(d == d_dash) { m_d=d。k++) { d=(m_Undef*k+1)/m_e。 for(float k=1。 long d_dash。 else return true。 Y=R。 R=fmod(X,Y)。 } //在這時X總是比Y大 for(。 Y=XY。 } }}//互為素數(shù)的函數(shù)的實(shí)現(xiàn)IsRelativePrime(float X,float Y){ float R。i++) { if(IsRelativePrime((float)m_Undef,(float)i)) { m_e=(long)i。for(float i=2。e39。e39。 (str)。 (str)。 //第五步 計(jì)算D CalculateD()。e39。 //第三步 0=(p1)(q1) m_Undef = (m_Prime11) * (m_Prime21)。 //第一步 產(chǎn)生任意素數(shù) GeneratePrimeNumbers()。根據(jù)所選的素數(shù)的不同產(chǎn)生不同的密鑰。a= a m ( mod m), 因此對于整數(shù)m,只需計(jì)算a m ( mod m),再將結(jié)果與a比較,如果兩者相同,則m為素數(shù)。 實(shí)際應(yīng)用時:a m1 = 1 ( mod m)219。素性檢測采用Fermat測試。 各部分的設(shè)計(jì)實(shí)現(xiàn) 密鑰產(chǎn)生的實(shí)現(xiàn)在密鑰的產(chǎn)生部分中起決定性作用的是素數(shù)的選擇, 本軟件的總體要求和設(shè)計(jì)本軟件的總體要求有:1)按要求生成非對稱密鑰——公鑰和私鑰;2)按任意寫入的的消息字符串(明文信息)生成所需要的消息摘要MD;3)在本設(shè)計(jì)中用產(chǎn)生的私鑰d根據(jù)RSA算法的加密原理對所生成的消息摘要進(jìn)行加密運(yùn)算,得到數(shù)字簽名;4)在本設(shè)計(jì)中用產(chǎn)生的公鑰e根據(jù)RSA算法的解密原理對所加密的消息摘要即數(shù)字簽名進(jìn)行解密運(yùn)算,得到對應(yīng)的消息摘要(在本設(shè)計(jì)中標(biāo)示的為解密信息),比較兩個消息摘要,驗(yàn)證數(shù)字簽名者的身份的真實(shí)與否;5)提示信息完整、操作舒適、圖形界面雅觀。步驟4:以512比特(16個字)分組處理消息,這一步是MD5算法的主循環(huán),以512比特作為分組,在后面有詳細(xì)的介紹。步驟3:初始化MD緩存,MD5算法使用了一個4個字(128比特,MD4中每個字32比特)的緩存來計(jì)算消息摘要,它們主要用來存放MD5的中間及最終結(jié)果。具體的算法步驟如下:步驟1:附加填充比特,對消息進(jìn)行填充,使消息的長度(比特數(shù))與448模512同余,即恰好為一個比512比特的倍數(shù)僅小64位的數(shù)。這不但可以避免用戶的密碼被具有系統(tǒng)管理員權(quán)限的用戶知道,而且還在一定程度上增加了密碼被破解的難度。當(dāng)用戶登錄的時候,系統(tǒng)把用戶輸入的密碼計(jì)算成md5值,然后再去和保存在文件系統(tǒng)中的md5值進(jìn)行比較,進(jìn)而確定輸入的密碼是否正確。md5還廣泛用于加密和解密技術(shù)上。如果在以后傳播這個文件的過程中,無論文件的內(nèi)容發(fā)生了任何形式的改變(包括人為修改或者下載過程中線路不穩(wěn)定引起的傳輸錯誤等),只要你對這個文件重新計(jì)算md5時就會發(fā)現(xiàn)信息摘要不相同,由此可以確定你得到的只是一個不正確的文件。比如,在unix下有很多軟件在下載的時候都有一個文件名相同,在這個文件中通常只有一行文本,大致結(jié)構(gòu)如:md5 () = 0ca175b9c0f726a831d895e269332461  。 MD5算法的介紹MD5消息摘要算法(RFC 1321)是由Rivest(公開密鑰密碼RSA算法的設(shè)計(jì)者之一)所設(shè)計(jì)的單向散列函數(shù),MD5不基于任何假設(shè)和密碼體制,它采用了直接構(gòu)造的辦法,速度很快,非常實(shí)用。(2)消息摘要計(jì)算和比較: 驗(yàn)證者對消息用MD5算法重新計(jì)算,得到驗(yàn)證者自己的消息摘要。驗(yàn)證簽名的過程輸入為消息,簽名者的公鑰,簽名;輸出為驗(yàn)證的結(jié)果,即是否是正確的簽名。另外該函數(shù)的設(shè)計(jì)不基于任何假設(shè)和密碼體制而直接構(gòu)造,執(zhí)行的速度快,是一種被廣泛認(rèn)可的單向散列算法。數(shù)字簽名的原理圖如21所示 A BEDED 用A的私鑰加密 用B的公鑰 用B的私鑰 用A的公鑰解密 數(shù)字簽名 加密 解密 核實(shí)簽名圖21 數(shù)字簽名的原理 RSA數(shù)字簽名算法的實(shí)現(xiàn)原理RSA數(shù)字簽名算法分為以下兩個步驟: 1) 簽名算法(包括兩步:消息摘要計(jì)算,RSA加密)(1)消息摘要MD的計(jì)算: 消息在簽名前首先通過MD5計(jì)算,生成128位的消息摘要 ;MD5函數(shù)是一種單向散列函數(shù),它將任意長度的消息壓縮成128位的消息摘要。為了滿足數(shù)字簽名的這些要求,例如,通信雙方在發(fā)送消息時,既要防止接收方或其他第三方偽造,又要防止發(fā)送方因?qū)ψ约旱牟焕裾J(rèn),也就是說,為了保證數(shù)字簽名的真實(shí)性。如果一個消息的簽名是從別處復(fù)制得到的,則任何人都可以發(fā)現(xiàn)消息與簽名之間的不一致性,從而可以拒絕簽名的消息;4)簽名的消息是不可改變的:經(jīng)簽名的消息不能篡改,一旦簽名的消息被篡改,任何人都可以發(fā)現(xiàn)消息與簽名之間的不一致性;5)簽名是不可抵賴的:簽名者事后不能否認(rèn)自己的簽名。數(shù)字簽名類似手書簽名,它具有以下的性質(zhì):1)能夠驗(yàn)證簽名產(chǎn)生者的身份,以及產(chǎn)生簽名的日期和時間;2)能用于證實(shí)被簽消息內(nèi)容;3)數(shù)字簽名可由第三方驗(yàn)證,從而能夠解決通信雙方的爭議。網(wǎng)絡(luò)時代中,人們驗(yàn)證數(shù)字簽名來確定你正在和誰打交道,驗(yàn)證你的文件是否已被黑客篡改。認(rèn)證技術(shù)主要包括數(shù)字簽名認(rèn)證、身份認(rèn)證以及公開密鑰證明等。因?yàn)楹灻乃借€只有發(fā)送方自己保存,他人無法做一樣的數(shù)字簽名,如果第三方冒充發(fā)送方發(fā)出一個消息,而接收方在對數(shù)字簽名進(jìn)行解密時使用的是發(fā)送方的公開密鑰,只要第三方不知道發(fā)送方的私有密鑰,加密出來的數(shù)字簽名和經(jīng)過計(jì)算的數(shù)字簽名必然是不相同的,這就提供了一個安全的確認(rèn)發(fā)送方身份的方法,即數(shù)字簽名的真實(shí)性得到了保證。數(shù)字簽名的特點(diǎn)是它代表了消息的特征,消息如果發(fā)生改變,數(shù)字簽名的值也將發(fā)生改變,不同的消息將得到不同的數(shù)字簽名。RSA數(shù)字簽名算法,包括簽名算法和驗(yàn)證簽名算法。 RSA數(shù)字簽名基本概念和RSA數(shù)字簽名算法的實(shí)現(xiàn)原理 RSA數(shù)字簽名基本概念RSA數(shù)字簽名體制使用了RSA公開密鑰密碼算法進(jìn)行數(shù)字簽名,鑒于RSA算法在實(shí)踐中已經(jīng)被證明了的安全性,RSA數(shù)字簽名體制在許多安全標(biāo)準(zhǔn)中得以廣泛應(yīng)用。然而只根據(jù)n和e(不是p和q)要計(jì)算出d是不可能的。7) 將明文P (假設(shè)P是一個小于n的整數(shù))加密為密文C,計(jì)算方法為:C = P^e mod n。5) 得公鑰(e ,n ), 私鑰 (d , n) 。3) 在2和Φ(n)之間隨機(jī)選擇一個數(shù)e , e 必須和Φ(n)互素,整數(shù)e用做加密密鑰(其中Φ(n)=(p1)*(q1))。 RSA算法的實(shí)現(xiàn)原理1) 隨機(jī)選擇兩個不同的素數(shù)p和q,它們的寬度是密鑰寬度的二分之一。RSA在硬件方面,以技術(shù)成熟的IC應(yīng)用于各種消費(fèi)類電子產(chǎn)品。發(fā)展至今,電子安全領(lǐng)域的各方面已經(jīng)形成了較為完備的國際規(guī)范。因此,RSA的加密和解密均可在多項(xiàng)式時間內(nèi)完成。模冪算法采取平方乘算法,設(shè)l是c的長度,則計(jì)算xc mod n至多需要2l次模乘法,因?yàn)?1163。模乘法的計(jì)算方法采取先計(jì)算兩個數(shù)的乘積,再取模n,時間復(fù)雜性為O((log2n)2)。密鑰生成過程時間主要是生成隨機(jī)素數(shù)的時間及計(jì)算公鑰和私鑰的模乘法的時間。B)分組長度太大,為保證安全性,n 至少也要 600 bits。即RSA的重大缺陷是無法從理論上把握它的保密性能如何,而且密碼學(xué)界多數(shù)人士傾向于因子分解不是NPC問題。RSA是被研究得最廣泛的公鑰算法,從提出到現(xiàn)在已近二十年,經(jīng)歷了各種攻擊的考驗(yàn),逐漸為人們接受,普遍認(rèn)為是目前最優(yōu)秀的公鑰方案之一。2 RSA算法和RSA數(shù)字簽名算法的基本概念和原理
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1