瀏覽單個文章
Raziel
Elite Member
 
Raziel的大頭照
 

加入日期: Dec 2006
您的住址: Taipei
文章: 8,344
引用:
作者ayler
有種變相的作法, 就是亂數產生資料, 丟進相同hash function計算, 看看結果是否相同
如果相同就是破解了

大多數一般人用的密碼只到8~10個碼以內, 以現在一般電腦速度來說, 很可能是幾十秒就破了...

沒有那麼簡單.

先不看任意本文, 因為不管本文多大, hash值結果是固定長度, 輸入的可能性無限, 輸出

值卻固定, 代表一定會有多於一個以上的解, 出現相同hash值, 也就是所謂的"碰撞".

所以就算你試出某個輸入得到那個hash值, 你也永遠無法確定本文是否就是你試出的那個

因為可能解非唯一. 單向函數有這樣特性, 你就永遠不能逆解. 有空可去查看資訊理論.


回過頭來看猜密碼, 就講8個字符 就好,
0~9 有10個選擇
A~Z 有26個選擇
a~z 有26個選擇
就算我都不要用符號, 只要英數字大小寫的組合 每一位都有(10+26+26=62)種選擇
62^8 ~ 218兆種排列組合, 你的電腦有多快?

如果妥善編列密碼, 就算8碼也絕對不是幾分鐘能try得出來. 我用過的破解工具, 單核一秒

能try幾千個, 就算能用到多核, 一秒給你try10萬次好了, 跟"兆"相比仍是尾數的零頭.
舊 2014-02-08, 09:25 AM #133
回應時引用此文章
Raziel離線中