2012-03-15 72 views
2

從我讀過的內容來看,MD5(以及其他算法,如SHA-1)哈希算法已被破壞。我只是好奇如何打破它。使用MD5不安全嗎?

是否有任何方法取出散列,並將其反轉爲原始文本?還是僅僅偶爾會發生碰撞?

在什麼情況下真的會使用MD5(或任何其他破碎的算法)?文件更改檢測?密碼安全性?查找重複的文件?

+1

不,不可能顛倒散列。可能發現(可能)碰撞。 – 2012-03-15 00:14:37

+0

有可能爲短字符串預先計算md5,然後使用md5值查詢並找出字符串。 – PasteBT 2012-03-15 00:21:13

回答

4

您可以在一臺不是特別快的計算機上,在大約一個小時(左右)內找到兩個產生相同MD5哈希的輸入。至少據我所知,目前還沒有已知的攻擊可以讓你找到一個能夠產生特定結果的輸入。

不是(也不可能)找到用於產生特定散列的原始字符串,除了(可能)意外。

爲了找到重複的文件,MD5和以前一樣好。爲了找到更改的文件,幾乎相同。無論哪種情況,只要你沒有人故意試圖攻擊MD5來產生衝突,那麼從密碼學的觀點來看,它就是無關緊要的事實。

對於任何與安全有關的事情,我會避免MD5。有很多更好的替代品可以輕鬆獲得,沒有理由支持MD5。

+0

所以,根據你的評論,你可以找到一個字符串,生成相同的MD5哈希*但*不確定該字符串是最初使用的相同? – 2014-11-21 11:23:03