2010-12-02 99 views
0

我的原文:「桑傑」 SHA-1文本:「25ecbcb559d14a98e4665d6830ac5c99991d7c25」如何從散列值中獲取原始值?

現在,我怎樣才能得到原值 - 從這個散列值「桑傑?」

是否有任何代碼或算法或方法?

回答

4

這通常是重點 - 哈希過程通常是單向的。

這對於設計用於密碼或密碼學的哈希值來說尤其重要 - 哈希值與設計的哈希值不同,例如散列圖。而且,對於無界輸入長度,存在無限量的值,導致相同的散列值。

可以使用的一種方法是對一堆值(例如來自aaaaaaaa-zzzzzzz的蠻力)進行散列並查看哪個值具有相同的散列值。如果你找到了這個,你已經找到了「價值」(時間不便宜)。 「彩虹桌」的工作原理(但使用空間,而不是時間),但被一個隨機鹽擊​​敗。

+0

那麼,你*可以*做到這一點,但這確實是效率低下和耗時的。 +1爲邏輯答案。 – Blender 2010-12-02 06:45:05

0

從我對這個主題的教導中,如果你是將你的價值轉化爲哈希值的人,那麼你有機會完全訪問哈希函數,並且能夠在相同辦法。如果你只有具有原始值和最終值,並且不知道使用了什麼樣的哈希函數,那麼如果不按照上面所說的去做(如果超過了所有可能性),就無法真正地逆轉它。