DES演算法原理

2021-08-18 07:34:22 字數 633 閱讀 7479

des 使用乙個 56 位的金鑰以及附加的 8 位奇偶校驗位(每組的第8位作為奇偶校驗位),產生最大 64 位的分組大小。這是乙個迭代的分組密碼,使用稱為 feistel 的技術,其中將加密的文字塊分成兩半。使用子金鑰對其中一半應用迴圈功能,然後將輸出與另一半進行「異或」運算;接著交換這兩半,這一過程會繼續下去,但最後乙個迴圈不交換。des 使用 16 輪迴圈,使用異或,置換,代換,移位操作四種基本運算。

演算法思想:

1.輸入64位位元明文資料,根據ip置換表混淆。

2.將混淆的64位資料分成左右兩部分。分別為32位l0,32位r0。li=ri-1,ri =li-1⊕ f(ri-1,ki)。根據此關係進行16輪迭代,將l16和r16交換,得到r16l16,作為ip逆置換的輸入。

3.feistel函式:將傳入的32位右半段二進位制串經過迴圈擴充套件表擴充套件成48位。 再用得到的48位二進位制串與對應的子金鑰進行位移或運算。 將異或運算所得48位分成8組,每組是一段6位二進位制串。 每組分別通過相應的s盒進行6-4變換(s盒變換),由6位變為4位。合併8組,形成32位二進位制串作為feistel輪函式的輸出。

4.通過ip逆置換輸出64位元密文資料。

總結:des具有很好的雪崩效應,明文或金鑰的微小改變將對密文產生很大的影響,安全性高,但是仍存在金鑰較短等一些問題。

DES演算法原理完整版

1.所需引數 key 8個位元組共64位的工作金鑰 data 8個位元組共64位的需要被加密或被解密的資料 mode des工作方式,加密或者解密 2.初始置換 des演算法使用64位的金鑰key將64位的明文輸入塊變為64位的密文輸出塊,並把輸出塊分為l0 r0兩部分,每部分均為32位。初始置換規...

des演算法描述 DES演算法描述簡介

des演算法描述簡介 1 簡介 des是data encryption standard 資料加密標準 的縮寫。它是由ibm公司研製的一種加密演算法,美國國家標準局於1977年公布把它作為非機要部門使用的資料加密標準,二十年來,它一直活躍在國際保密通訊的舞台上,扮演了十分重要的角色 10 des是乙...

DES加解密原理

des演算法是典型的分組密碼,加密前先將明文編碼表示後的二進位制序列劃分成長度為64b的分組,des演算法的金鑰也是長度為64b的二進位制序列,金鑰中第8 16 24 32 40 48 56 64位為奇偶校驗位。des演算法的基本步驟 1 初始置換ip 2 16輪迭代處理 3 互換左 右32位 4 ...