破譯密文簡單的方法,就是嘗試所有可能的密鑰組合

破譯密文簡單的方法,就是嘗試所有可能的密鑰組合

破譯密文簡單的方法,就是嘗試所有可能的密鑰組合。在這裡,假設破譯者有識別正確解密結果的能力。雖然大多數的密鑰嘗試都是失敗的,但最終總會有一個密鑰讓破譯者得到原文,這個過程稱為密鑰的窮盡搜索。

破譯密文簡單的方法,就是嘗試所有可能的密鑰組合

密鑰的窮盡搜索,可以用簡單的機械裝置,但效率很低,甚至達到不可行的程度。例如,PGP使用的IDEA加密算法使用128位的密鑰,因此,存在著2128=3.4×1038種可能性。

破譯密文簡單的方法,就是嘗試所有可能的密鑰組合

即使破譯者能夠每秒嘗試一億把密鑰,也需要1014年才能完成。UNIX系統的用戶賬號用8個字符(56位)的口令來保護,總共有256=6.3×1016個組合,如果每秒嘗試一億次,也要花上20年時間。到那時,或許用戶已經不再使用這個口令了。

破譯密文簡單的方法,就是嘗試所有可能的密鑰組合

如果加密系統密鑰生成的概率分佈不均勻,比如有些密鑰組合根本不會出現,而另一些組合則經常出現,那麼密鑰的有效長度則減小了很多。破譯者在瞭解這一底細之後,就可能大大加快搜索的速度。例如,UNIX用戶賬號的口令如果只用26個小寫字母組成,密鑰組合數目就減少了625×625倍。由於許多UNIX的用戶缺乏安全常識,選擇的口令被人猜出來的事件時有發生。


分享到:


相關文章: