證明DES解密是加密的逆過程

DES的加密解密結構

DES運用的算法和Feistel密碼的算法是相同的,只是子密鑰的使用次序相反,還有初始置換和最終置換是相反的。


DES加密過程

DES算法遵守Feistel密碼結構,加密時,會經過IP置換,生成子密鑰,16輪函數迭代作用后,完成加密。其中16輪函數迭代是比較麻煩且值得研究的。

DES解密過程

DES解密會經過16輪函數迭代作用,子密鑰使用次序相反,最終置換,其中說明DES解密是加密的逆過程體現在16輪函數迭代中。

DES解密是加密的逆過程

前面已經知道DES的加密和解密的操作,其中加密時,輸入的是長為2w位的明文分組和密鑰K,明文分組被分為等長的兩部分:LE0和RE0。其中第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。
那么以此類推,第16輪是LD16 = RE0,RD16 = LE0。
經過最后的最終置換,那么最后解密出來的明文分組的兩部分和加密前的明文分組的兩部分對應了起來。
所以DES解密是加密的逆過程是對的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容