Encryption

如果使用 SHA3 函式而不是普通 DES 函式,DES 安全性?

  • November 13, 2020

我正在練習一些 python 程式,我決定實現一個簡單的 DES 加密函式,所以我決定採用一些捷徑,所以我只使用了一個簡單的鍵控 SHA3 雜湊函式,而不是 DES 擴展盒和 s-Boxes,輸入是:32-bit right side + key(any length I want but I used 128-bit)32-bit一個雜湊與左側異或以產生密文。所以現在忽略我設計了自己的加密以及我使用了一個非常簡單的密鑰調度功能的事實。使用此雜湊函式而不是普通雜湊函式有什麼安全優勢(請記住,它需要的128-bit密鑰大於56-bit普通 DES 的密鑰),以及如果我使用 SHA2 會有什麼不同(SHA2 對長度擴展攻擊的敏感性會影響安全)。最後,使用這種方法有什麼好處。

最初提出的問題基本上考慮了一個 64 位對稱 Feistel 密碼,具有 16 輪、一個大(128 位)密鑰、一個近乎理想的輪函式,但每一輪的函式和密鑰都相同滑動攻擊至少允許一個區分器,我認為按順序排列 $ 2^{31} $ 對加密預言機的查詢。再多一些,就有可能構造未查詢的明文/密文對。這是一個有趣的練習。從幾個角度來看,這使得安全性低於 DES。

如果有一個好的密鑰調度(例如,如果輪數計數器附加到散列的輸入),那麼我們回到 Feistel 網路,考慮到塊大小和足夠的輪數,它是非常安全的。我非常懷疑是否存在比 128 位密鑰的蠻力更好的攻擊。安全性遠高於 DES(但本機程式碼的性能要低得多)。

使用基於輪換的關鍵時間表(如註釋),事情取決於輪換計數。但是,如果它是奇數位,那麼絕大多數關鍵值都不會發生災難性的事情。

如果 SHA-2 和 SHA-3 之間存在安全差異,則意味著其中之一的中斷(針對恆定輸入長度的隨機預言模型)。最重要的是,它會將被攻擊的雜湊嵌入在對攻擊極其敵對的設置中。我打折。

引用自:https://crypto.stackexchange.com/questions/86153