有人能隨機猜出 AES 256 位加密的密鑰嗎?
是否有人可以隨機輸入 AES 256 位加密的密鑰並且它是正確的?這種情況發生的可能性有多大?有沒有可能?
有 $ 2^{256} $ 不同的 AES 密鑰,因此您在第一次嘗試時點擊正確的機會是 $ 2^{-256}=\frac1{2^{256}} $ .
從這個角度來看,這裡有一個事件列表,這些事件發生的可能性大約是所有事件的十億倍(複製自Thomas Pornin對 Information Security SE的回答):
- 電腦在密鑰生成過程中自發著火。
- 就在同一秒鐘內,英國被一顆墜落的小行星消滅了。
- 一隻從動物園逃出來的流氓大猩猩進入你的客廳並毆打你。
- 您連續三次在彩票中贏得數百萬美元。
按照他的回答,這些事件發生的機率大概是 $ 2^{-45},2^{-50},2^{-60},2^{-71} $ 每個,乘以 $ 2^{-226} $ 如果您希望所有這四個都發生,這仍然比第一次嘗試找到 256 位密鑰的可能性高出大約 10 億倍。
請注意,這假設密鑰確實包含 256 位熵,即它確實可以獲取所有 $ 2^{256} $ 不同的價值觀。
從理論上講,這是可能的……但是,您在下一秒內被流星擊中的機會比看到這種情況發生的機會更大,因為它實際上歸結為通過蠻力攻擊“變得非常幸運”。
想一想:256 位(32 個八位字節)。您可以自己進行數學計算,以計算最佳情況和最壞情況下的機會。
跳過已經提供的其他答案的詳細資訊,您正在考慮有幸從 1.1579209e+77 種可能性池中“猜出”一個正確密碼的人。換個角度來看……這意味著,平均而言,攻擊者需要四處走動$$ 57896044618658097711785492504343953926634992332820282019728792003956564819968 $$嘗試猜測正確的密碼(更好:密鑰)。
也就是說,假設具有正確和安全的 AES 實現以及密鑰材料的加密安全創建和處理的最佳情況。此外,這並沒有考慮其他潛在的攻擊向量,例如利用弱分組密碼操作模式等 - 因為該問題專門詢問“隨機輸入密鑰”正確的可能性。
另請參閱相關問題“猜測隨機 128 位 AES 密鑰的機率”以及它被接受的答案。