des在窮舉攻擊下相對脆弱,使用des進行多次加密且使用多個金鑰的方式是能夠保護已有軟硬體的投資的較好方式。本文從簡單的雙重金鑰開始,直到最廣泛應用的三重des(3des)演算法。
雙重des
給定明文p及金鑰k1,k2,密文c的生成如下:
c = e( k2, e( k1, p ) )解密時逆序使用這兩個金鑰:
p = e( k1, e( k2, c ) )在這種情況下有人發問:對所有56位金鑰,給定k1, k2,可能存在金鑰k3使得:
e(k2, e( k1, p ) ) == e( k3, p )如果這種說法成立的話,那麼多重加密是沒有意義的。書中給出了證明這種說法錯誤的解釋,奈何我沒看懂。先貼上記下:
注:非常感謝西電睿思論壇某同學的解釋,現貼如下:
雙重des加密**:
對應攻擊方法
假設:c = e( k2, e(k1, p ) )2. 使用兩個金鑰的三重des具體過程為加密-解密-加密(ede):則有:x = e( k1, p ) = d( k2, c )
於是,攻擊就很顯而易見了:
簡單來說就是你知道一對對應的明文(p)和密文(c),那麼用所有可能的金鑰k1對明文p加密並存到乙個表中,然後用所有可能的金鑰k2對密文c解密,將每次解密結果和表中的值一一比較,如果相等就用這一對k1,k2對新的明密文驗證,如果成功則得到正確的金鑰對。
經驗證該種破解方法比攻擊單des付出的代價高不了多少。
c = e( k1, d( k2, e( k1, p ) ) )p = d( k1, e( k2, d( k1, c ) ) )
對稱密碼 分組密碼 AES
aes產生背景 des的安全性和應用前景受到挑戰,因此需要設計乙個高保密性能的 演算法公開的 全球免費使用的分組密碼演算法,用於保護敏感資訊,並希望以此新演算法取代des演算法,稱為新一代資料加密標準,取名為高階資料加密標準 aes aes演算法並不是乙個具體的演算法,而是乙個演算法的標準,它的要求...
密碼篇 對稱加密 AES
目錄 aes介紹 rijndael加密中的一輪 rijndael解密中的一輪 對三種對稱密碼的使用 rijndael於2000年被選為新一代的標準密碼演算法 aes 在aes規格中,金鑰長度為128 192 256位元三種 rijndael使用的是spn結構 rijndael中存在反向運算 不像fe...
密碼篇 非對稱加密
目錄 非對稱密碼介紹 公鑰通訊流程 公鑰密碼無法解決的問題 公鑰密碼演算法 針對rsa的攻擊 其他公鑰密碼 總結 在對稱加密中,加密與解密使用的金鑰是相同的,因此必須向接收者配送金鑰。用於解密的金鑰必須配送給接收者,由此產生了金鑰配送問題。解決金鑰配送問題可使用公鑰密碼 公鑰密碼中,金鑰可分為加密金...