破解AES 256位加密有多難?

時間 2021-05-05 17:06:41

1樓:王司徒

256位加密靠暴力窮舉的話也就是說有(2)256種可能性可以簡單地看作(2)32相乘8次

這麼做的好處是我們可以直觀地感受(2)32的量(2)32≈40億

那麼假設有一塊cpu每秒能猜40億次你把40億塊這樣的cpu塞進一台電腦裡把40億臺這樣的電腦串聯成一台超算再給全球超過一半的人發一台這樣的超算然後有40億個這樣的星球在乙個星系裡然後存在這麼乙個宇宙有40億個這樣子的星系然後一刻不斷地算上40億

這麼折騰下來,恭喜你

你有40億分之1的機率猜中

嗯,就這麼難。

2樓:bestfizzzedna

實驗室已經成功破解過了

首先講一下破解秘鑰的兩種方式一種是叫做cryptoanalysis,就是基於密碼的數學演算法從中尋找漏洞來進行破解,比如線性密碼攻擊,差分密碼攻擊

對於AES來說,目前還沒有比較低複雜度的攻擊演算法另外一種是基於物理實現來攻擊的

首先,AES真正的應用必然不是題主或者我手算的,它必然執行於一些物理平台,最簡單的就是乙個ARM晶元,或者FPGA晶元。晶元會有一些側通道資訊,比如電磁輻射,功率,或者是運算時間。而對於不同的秘鑰,這些側通道資訊都是不同的。

目前這些攻擊都很強大,需要一定的反制措施來防範。具體方法的解釋涉及到最底層的硬體知識,就不做贅述了

3樓:

難的暴力破解,不難的是各種側通道攻擊。

暴力破解明顯耗能太多不值得,先進ET們表示這耗能明顯超過煮沸地球海洋。

然而監控地表資料,時間空間旅行,抓上母艦人肉分析什麼的,都是太輕鬆的事。

4樓:黑照

先放結論,資源有限,時間不足,用地球的每一粒沙子做出儲存運算的話在太陽膨脹或者氦閃之前你都算不出來。

下面是一些宇宙常數及計算(證明)過程。

2^256就是256位AES的金鑰空間的組合數,遠大於地球中沙子的數量(3×10^23)。2^256>2^(10*25)>10^(3*25)=10^75>>>3×10^23

現在問題來了。假設你能夠把每一粒沙子做出乙個儲存裝置,存乙個值。你只能儲存3*10^23個不同的答案。而你沒法全部試一遍。(只考慮儲存)。

如果是1秒鐘嘗試20億億次(假定以天河4號專用為計算機)不同的組合。10^75/(20*10^8*10^8*86400*365)=10^58/86400/365/2>10^50年。這麼長時間遠遠大於太陽的壽命,6*10^9億年。