2013-12-10 82 views
5

如果你採用32位序列,並對其執行CRC32,則會得到另一個32位序列作爲結果;如果你做CRC32這個,你會得到另一個,等等。很容易證明,如果你一直這樣做,最終會在重新開始之前產生一個2^32位序列的循環。是否SHA256往返

簡單的問題:有沒有人知道SHA256是否適用(或不適用),從256位序列開始?在重新開始之前,類似的過程是否會循環遍歷所有2^256個可能的256位序列的循環?或者在這個散列中知道(或可能)更短的循環?

布賴恩

回答

2

SHA256尚未設計,以滿足2^256環的財產。不過,據我所知,沒有人證明沒有這樣的循環。此外,還不知道任何更短的循環,因爲如果有人發現了一些,那麼他也會發現碰撞,並且根據密碼散列函數的性質,這很難。

所以,由於沒有人沒有證明它,是的,有可能存在2^256週期。然而,我很不願意爲左睾丸打賭。 :-)

讓我也注意到,即使是最好的加密專家,IMO設計具有2^256循環的加密散列函數也是極其困難的。