“Triple AES”(就 Triple Des 的工作原理而言)是否會顯著提高安全性?
該系統要求在安全方面盡可能地偏執。對目前設計的少數預期更改之一是使用多重加密。第一個建議是在 AES-256 之上使用 Serpent,但經過研究,似乎三重 AES 也可以達到目的。
所以選項是:
Encrypted(Input) = AES256(key2, Serpent(key1, Input))
和
Encrypted(Input) = AES256Encrypt(key3, AES256Decrypt(key2, AES256Encrypt(key1, Input)))
所有密鑰都是獨立且隨機生成的。
在輸入應該代表我在生產中發現的第二個選項(三重 AES)的性能測試中,使用 Serpent 的性能要快 20% 左右。
據我所知,即使 DES 完全被破壞,Triple DES 仍然保持適度安全的抵抗力,即使可以使用理論上的中間相遇攻擊。所以,即使我沒有花太多時間在這方面,即使 AES 在未來 15 年內以某種方式被破壞,這仍然會為數據提供重要的保護(我預計大約 512 位)。這是一個正確的假設嗎?
我過去通常只是採用標準(sha256 儲存密碼的鹽,aes 256 具有安全隨機密鑰和 ivs,以及 4k rsa,當非對稱加密成為可能時),所以直到過去幾天我才探索更複雜的場景,所以我為我可能不正確的結論道歉。
這真的取決於AES會遭受什麼樣的破壞。DES 的主要問題是它的密鑰長度太小(56 位)。多重加密在這裡會有所幫助,因為它增加了整個操作的有效密鑰長度。對 DES 的中間相遇攻擊大約需要 2^112 次操作,短期內暴力破解是不可行的。
AES 在密鑰大小方面沒有問題,因此從這個意義上說,多重加密並不會真正幫助您。這實際上取決於 AES 上出現的攻擊類型,因此很難判斷多重加密是否會更好。它可能更安全,但不會是“巨大”的改進,也很難判斷。
您的第一個選擇:
加密(輸入)= AES256(key2,Serpent(key1,輸入))
遭受了教科書式的中間相遇攻擊。與單獨的 AES / Serpent 相比,它只會為您提供額外的安全性。如果您的目標是額外的偏執狂,這不是一個好的選擇。