1

ソルトを含む最大 4000 万の文字列 (最大 20 シンボル) の md5 ハッシュを生成する必要があります。

md5 (文字列 + ソルト)

衝突をチェックしてから bd に保存します。次に、ソルトが変更されたら、新しいソルトで新しいハッシュを生成し、衝突をチェックし、古いハッシュとの衝突をチェックする必要があります。

ここで私を助けるライブラリはありますか?多分ブルームフィルターが役立つでしょうか?HashMap を使用して衝突をチェックできますか?

4

1 に答える 1

1

生成された md5 ハッシュをデータベースに挿入し、ループのすべての反復をチェックすることをお勧めします。より迅速な検索を行うために、「ハッシュ値」列にインデックスを作成できます。テーブルは非常に大きくなります。ハッシュをいくつかのテーブル (またはデータベース) に分割し、異なる最初の文字または最初の文字グループ (hashes_aa、hashes_ab など) を使用することもできます。

この解決策がうまくいかないほど頻繁に塩を交換していますか?

編集:衝突は非常にまれです。チェックをスキップしていただけますか?

于 2012-09-21T10:30:46.050 に答える