6

明らかに、SHA-1ハッシュは毎回40文字を生成するため、可能なハッシュの数には限りがあります。正確にいくつあるか知っている人はいますか?

4

3 に答える 3

14

SHA-1ハッシュには160ビットがあるためそのうち2160ビットです。
(2 160 = 1461501637330902918203684832716283019655932542976〜= 1.46 x 10 48

可能なハッシュよりもはるかに大きなメッセージスペースがあるため、衝突が発生する可能性があることに注意してください。

また、衝突の可能性はあなたが思っているよりもはるかに高いことに注意してください。誕生日のパラドックスのおかげで、たった2 80のメッセージで衝突の確率は50%です。(つまり、23人だけで、2人が同じ誕生日を迎える確率は50%です)。

于 2011-09-10T16:01:13.790 に答える
10

SHA-1 は 160 ビットの出力を生成し、160 ビットのほぼすべてのシーケンスを生成できるはずです。そのようなシーケンスは 2 160あります。つまり、1461 億に近いです。それはちょっと大きいです。

ただし、それらのすべてに到達可能であるという証拠はありません。可能な出力の数が 2 160よりも大幅に少ない場合、SHA-1 セキュリティにとって好ましくありません。たとえば、そのうちの 1/4 しか到達できない場合 (2 158 )、プリイメージ攻撃に対するセキュリティは 4 で割られ、衝突に対するセキュリティは半分になります。現在、SHA-1 でそのような問題は知られていません (衝突に対する耐性に関しては、SHA-1 の既知の弱点がありますが、それはありませ)

いくつかの 160 ビット出力に到達できない可能性があります (ただし、少なくとも少し驚くべきことです)。これは不明のままであると予想されますSHA-1 の可能な出力が 160 ビット空間全体をカバーすることを証明できることは、ある程度気になるでしょう: そのような証明には、SHA-1 の数学的構造と SHA のセキュリティのかなりの分析が必要です。 1 は、そのような分析が扱いにくいことに大きく依存しています。

于 2011-09-11T15:16:23.740 に答える
0

SHA-1 は、5 つの 32 ビット整数で構成されています。

それは 4294967296^5 または 2^160 です

または 1,461,501,637,330,902,918,203,684,832,716,283,019,655,932,542,976 の可能性

それを視野に入れて

可能な SHA-1 値の合計: 1,461,501,637,330,902,918,203,684,832,716,283,019,655,932,542,976 地球上の水の総ガロン: 365,904,000,000,000,000,000

これには、すべての海、海、湖などが含まれます -ソース

衝突の可能性は、現時点では理論上のものに過ぎません。まだ1つを聞くのを待っています。

于 2014-02-12T08:21:09.210 に答える