2014-10-31 56 views
3

我正在做一個使用彩虹桌破解sha256的項目。我正在嘗試攻擊8位數字的字母數字序列。我清楚地知道彩虹桌是如何工作的,以及連鎖應該如何形成和儲存。但是,我不明白如何獲得一個減少函數形成鏈。我已經用Google搜索了幾個小時,並沒有任何結果。那麼,什麼是鏈的良好的還原功能,它如何證明它涵蓋了所有8位數的字母數字序列。SHA256彩虹桌減少算法

+1

這個問題似乎是題外話,因爲它是關於發展密碼分析技術和不包括編程的問題。 – 2014-10-31 08:59:22

+3

@鄧肯有人可能會爭辯說,這是一個關於軟件算法的問題,根據幫助中心,這是一個關於主題的問題。堆棧溢出不僅僅是編程問題。 – 2014-10-31 11:45:14

回答

3

有10^9不同的8位數字序列。 SHA256散列值的前30位有1073741824個可能的值。因此,一個合理的做法是提取那些30位,並使用數字模10^9作爲您還原功能:

R(hash) = hash[0:30] % 10^9 

這是不可能的,這實際上涵蓋了所有8個數字序列,但在實踐中它絕對應該不錯由於假定SHA256的「隨機性」屬性而足夠了。儘管由於模量的原因,對數字< = 2^30 - 10^9有一個小的偏差。