1

ハッシュしている 2 32 個の 4 バイト キーがあります。衝突する確率は?

8 バイトのキーが 2 64 個ある場合(実際にはすべてのキーを保存しているわけではありませんが、最悪のケースを知りたいです)?

4

2 に答える 2

3

ウィキペディアの誕生日問題のページによると、 で適切な一次近似を見つけることができます1-e^(-(n^2)/d)。これを値に対してグラフ化すると、このグラフが得られます(横軸の対数、確率が急上昇し始める場所を拡大しました)。これは概算にすぎず、控えめに考えるべきであることに注意してください (つまり、実際の確率は多少高いかもしれませんが、正しい範囲内にあるはずです)。

于 2011-02-04T15:19:38.953 に答える
0

ハッシュコードで何をしていますか?それらを使用して 2 つのデータが同じかどうかを判断する場合、悪意のあるエンティティによって作成されたものではないデータを操作している場合に限り、MD5 ハッシュはかなり有効です。(暗号化の目的には、「悪意のある攻撃者」の問題に正確に対処するために、より優れたハッシュ アルゴリズムが必要です。)

それらをマップの構築に使用している場合 (つまり、ハッシュ テーブルを構築している場合)、通常は安価なハッシュを使用し、衝突のコストを軽減する方法を考え出すことをお勧めします (たとえば、リンクされたリストをオフにすることによって)。平均重みが大きくなりすぎた場合のハッシュテーブルとサイズ変更/再構築)。

于 2011-02-04T15:37:52.447 に答える