DES加密中明文的處理經過三個階段:
首先,64位的明文經過初始置換(IP)而重新排列,然后進行16輪相同函數的作用,最后一輪函數的輸出是64位,其左半部分與右半部分互換產生預輸出,最后預輸出再進行逆初始置換得到64位的密文。
除了初始和最后的置換,DES結構與Feistel密碼結構完全相同。
在加密時,第十六輪函數以及左右互換后得到RE16||LE16,然后進行逆初始置(IP^-1)換得到密文,。
在解密時,密文第一個操作就是進行初始置換(IP),而初始置換和逆初始置換是互逆的操作,即RE16||LE6在經過逆初始置換和初始置換后仍然是RE16||LE16,然后再進行16輪函數作用,
在加密過程中有
LE16=RE15
RE16=LE15⊕F(RE15,K16)
在解密過程中有
LD1=RD0=LE16=RE15
RD1=LD0⊕F(RD0,K16)=RE16⊕F(RE15,K16)
? ? ? ? ?=LE15⊕F(RE15,K16)⊕F(RE15,K16)
? ? ? ? ?=LE15
則LD1=RE15和RD1=LE15,解密過程第一輪的輸出是加密過程第15輪的輸入,將該輸出作為輸入進行F函數會依次得到第14、13、……2、1輪的輸入,解密最后一輪得到LE0||RE0,將LE0||RE0經過逆初始置換后,由于初始置換和逆初始置換是互逆的操作,所以得到了加密過程初始置換的輸入,即明文。
由此可得,DES的解密是加密的逆