DES算法描述簡介
密碼學 - 分組密碼 時間:2005-7-21 23:04:09 來源:中國信息安全組織 點擊:554 |
![]() DES是Data Encryption Standard(數據加密標準)的縮寫。它是由IBM公司研制的一種加密算法,美國國家標準局于1977年公布把它作為非機要部門使用的數據加密標準,二十年來,它一直活躍在國際保密通信的舞臺上,扮演了十分重要的角色[10]。 DES是一個分組加密算法,他以64位為分組對數據加密。同時DES也是一個對稱算法:加密和解密用的是同一個算法。它的密匙長度是56位(因為每個第8位都用作奇偶校驗),密匙可以是任意的56位的數,而且可以任意時候改變。其中有極少量的數被認為是弱密匙,但是很容易避開他們。所以保密性依賴于密鑰。 ![]() DES對64(bit)位的明文分組M進行操作,M經過一個初始置換IP置換成m0,將m0明文分成左半部分和右半部分m0=(L0,R0),各32位長。然后進行16輪完全相同的運算,這些運算被稱為函數f,在運算過程中數據與密匙結合。經過16輪后,左,右半部分合在一起經過一個末置換,這樣就完成了[12]。 在每一輪中,密匙位移位,然后再從密匙的56位中選出48位。通過一個擴展置換將數據的右半部分擴展成48位,并通過一個異或操作替代成新的32位數據,在將其置換換一次。這四步運算構成了函數f。然后,通過另一個異或運算,函數f的輸出與左半部分結合,其結果成為新的右半部分,原來的右半部分成為新的左半部分。將該操作重復16次,就實現了。具體圖4所示。 ![]() 圖4 DES算法框圖 ![]() 在經過所有的代替、置換、異或盒循環之后,你也許認為解密算法與加密算法完全不同。恰恰相反,經過精心選擇的各種操作,獲得了一個非常有用的性質:加密和解密使用相同的算法。 DES加密和解密唯一的不同是密匙的次序相反。如果各輪加密密匙分別是K1,K2,K3….K16那么解密密匙就是K16,K15,K14…K1。 ![]() 第一種電子密本方式(ECB) 將明文分成n個64比特分組,如果明文長度不是64比特的倍數,則在明文末尾填充適當數目的規定符號。對明文組用給定的密鑰分別進行加密,行密文C=(C0,C1,……,Cn-1)其中Ci=DES(K,xi),i=0,1,…..,n-1。 第二種密文分組鏈接方式(CBC) 在CBC方式下,每個明文組xi在加密前與先一組密文按位模二加后,再送到DES加密,CBC方式克服了ECB方式報內組重的缺點,但由于明文組加密前與一組密文有關,因此前一組密文的錯誤會傳播到下一組。 第三種密文反饋方式(CFB),可用于序列密碼 明文X=(x0,x1,……,xn-1),其中xi由t個比特組成0 與CFB唯一不同的是OFB是直接取DES輸出的t個比特,而不是取密文的t個比特,其余都與CFB相同。但它取的是DES的輸出,所以它克服了CFB的密文錯誤傳播的缺點 |
Feedback
Houses are quite expensive and not everyone is able to buy it. But, <a href="http://bestfinance-blog.com">loans</a> was created to support different people in such cases.
# re: DES算法描述簡介 回復 更多評論
2010-07-25 00:04 by buy custom essay onlineThe term papers writing can’t always be enjoying. The essay papers online could cost a lot of time and efforts. Wise people will suggest to buy an essay online. I guess that it’s the best way out.
# re: DES算法描述簡介 回復 更多評論
2010-08-05 04:50 by professional custom writing servicesTo choose the professional custom papers service should be a right way out for university students, who're confused about the academic papers performing.
# re: DES算法描述簡介 回復 更多評論
2010-09-07 06:50 by plagiarism detectorThe main problem of modern society seems to be plagiarism. As for me, I do not like plagiarized contents and use plagiarism check always.
只有注冊用戶登錄后才能發表評論。 | ||
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
![]() |
||
相關文章:
|
||
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
|
||
|