影響DES安全性的因素有哪些?


DES是一種強大的加密標準,它作用於64位明文塊並生成64位密文。因此,DES實現了264種可能的64位排列之間的置換,其中每一位可以是0或1。

DES有16輪,它可以對明文塊重複使用相同的技術16次。任何少於16輪的演算法都會使DES容易受到差分密碼分析的攻擊。

在資料加密標準中,64位明文塊會經過一個初始置換,這個置換不依賴於金鑰,而該置換的逆置換在演算法結束時完成,併產生密文。

金鑰長度為56位。金鑰通常寫成64位數字,但每第8位用於奇偶校驗,並在金鑰載入到DES演算法中時被丟棄。

DES的基本組成部分是對明文進行的一系列操作,並基於金鑰。這稱為一輪。影響DES安全性的因素如下:

**弱金鑰** — 由於初始金鑰轉換為每輪演算法的子金鑰的方法,某些特定的初始金鑰是弱金鑰。初始金鑰值被分成兩半,每一半都獨立地進行變換。

如果每一半的所有位都是0或1,那麼該金鑰在演算法的某些迴圈中與演算法的所有迴圈相同。如果金鑰完全是1,完全是0,或者金鑰的一半完全是1而另一半完全是0,則會出現這種情況。這使得DES安全性降低。

**代數結構** — DES加密操作可以構成一個群,用k1加密一組明文塊,然後用k2加密,可能等於用k3加密這些塊。

更糟糕的是,DES容易受到中間相遇已知明文攻擊,其執行時間僅為228步。如果DES是封閉的,那麼對於任何k1和k2,都存在一個k3,使得

$$\mathrm{E_{k2}\left ( E_{k1}\left ( P \right ) \right )\, =\, E_{k3}\left ( P \right )}$$

**金鑰長度** — 如果有可能透過時空權衡來加快搜索過程。計算和儲存256個可能的在每個可能的金鑰下加密單個明文塊的結果,然後破解未知金鑰的可能性,這需要將資料塊新增到加密流中,恢復生成的密文並檢視金鑰。

**輪數** — 輪數保持為16,因為減少輪數會使演算法更容易受到攻擊。只有三輪或四輪的DES很容易被破解。任何少於16輪的DES都比暴力攻擊更容易受到已知明文攻擊的破解。

更新於:2022年3月14日

341 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.