DES算法基本原理
DES算法基本原理
?
DES算法為密碼體制中的對稱密碼體制,又被稱為美國數據加密標準。
DES是一個分組加密算法,典型的DES以64位為分組對數據加密,加密和解密用的是同一個算法。
密鑰長64位,密鑰事實上是56位參與DES運算(第8、16、24、32、40、48、56、64位是校驗位,使得每個密鑰都有奇數個1),分組后的明文組和56位的密鑰按位替代或交換的方法形成密文組。
?
步驟:
IP置換
IP置換目的是將輸入的64位數據塊按位重新組合,并把輸出分為L0、R0兩部分,每部分各長32位。
密鑰置換
不考慮每個字節的第8位,DES的密鑰由64位減至56位,每個字節的第8位作為奇偶校驗位。產生的56位密鑰由規則表生成;
? ? ? 在DES的每一輪中,從56位密鑰產生出不同的48位子密鑰,確定這些子密鑰的方式如下:
1).將56位的密鑰分成兩部分,每部分28位。
2).根據輪數,這兩部分分別循環左移1位或2位。每輪移動的位數按規則表;
? ? ? 移動后,從56位中選出48位。這個過程中,既置換了每位的順序,又選擇了子密鑰,因此稱為壓縮置換。壓縮置換規則按規則表;
擴展置換
擴展置換目標是IP置換后獲得的右半部分R0,將32位輸入擴展為48位(分為4位×8組)輸出。
S盒代替
壓縮后的密鑰與擴展分組異或以后得到48位的數據,將這個數據送人S盒,進行替代運算。替代由8個不同的S盒完成,每個S盒有6位輸入4位輸出。48位輸入分為8個6位的分組,一個分組對應一個S盒,對應的S盒對各組進行代替操作。
P盒置換
S盒代替運算的32位輸出按照P盒進行置換。該置換把輸入的每位映射到輸出位,任何一位不能被映射兩次,也不能被略去,映射規則按規則表;
IP-1末置換
末置換是初始置換的逆過程,DES最后一輪后,左、右兩半部分并未進行交換,而是兩部分合并形成一個分組做為末置換的輸入。
經過以上步驟,就可以得到密文了。
?
總結
- 上一篇: 超图桌面版下载、安装、使用入门
- 下一篇: jsp对弹出jsp传值 和刷新网页后js