ブルームフィルタ(ブルームフィルタ)ハッシュアルゴリズムと

  また、フィンガープリント(指紋)として知られているアプリケーションでハッシュアルゴリズム、またはダイジェスト(ダイジェスト)アルゴリズムは、アルゴリズムの短いデータ列(ハッシュ値)に任意の長さのマッピング平文の文字列で、現在のアルゴリズムは、主として、MD5ハッシュ系列でありますSHAアルゴリズムおよびシステム・アルゴリズム

  ハッシュアルゴリズムはつまり、良いに4つの特徴を持っている必要があり、早送り逆困難、敏感入力するように、衝突回避

    早送り:平文とハッシュアルゴリズムを与えられた、ハッシュ値は、限られた時間と限られた資源内で計算することができます

    難しいリバース:にセットハッシュ値、限られた時間のために、プレーンテキストの導入を逆転することは困難です

    敏感入力します。元の入力情報が変更され、新たに作成されたのハッシュ値は非常に異なって表示されます

    衝突回避:そう、そのハッシュ値が一致していることを、プレーンテキストに2本の異なるコンテンツを見つけるのは難しいです。衝突回避はまた呼ばれる強力に分割し、衝突耐衝突性及び弱衝突耐性。ないの前提の下で与えられた平文が明示他の衝突を見つけた場合、アルゴリズムは弱い衝突抵抗を持っている、あなたは任意の二つの平文ハッシュ衝突アルゴリズムは、強い衝突耐性を持っていると言われて見つけることができない場合

  ハッシュ任意のコンテンツは、固定長の文字列にマッピングされてもよいし、異なるコンテンツにマッピングされているので、同じ文字列が非常に低い確率です。したがって、それは良い「コンテンツインデックス→」世代関係を構成しています。内容で指定されたメモリアレイのための、計算ハッシュ値派生コンテンツがイネーブル、配列のサイズを超えないように適切なハッシュ関数によって設定することができ、迅速なコンテンツベースの決定のためのルックアップ」かどうかAの要素コレクション内の問題、「。しかし、マップの範囲内のハッシュ値は、配列のサイズに制限され、それがパフォーマンスの急速な低下につながる、ハッシュの競合の多くの原因となりますので、人々はブルームフィルタに基づいてハッシュアルゴリズムを考案しました

  ブルームフィルタは、スペースの使用率を高めるためにハッシュ関数を複数使用しています。、所与の入力に対して同じであり、それぞれのハッシュ関数を計算し、複数のアドレスの複数のは、時間を見つけるために、同一の演算処理を1標識、すべてが1である場合、配列の要素に対応するこれらのアドレスを表示します下に示すように、大きな入力の存在の確率次に、コンテンツ実行HASH1、HASH2、HashK他の機能によれば、計算H1、H2、HK他の位置、これらの位置は、すべて1である場合、[email protected]大きな可能性があります

  

  大きな可能性がある理由は、符号化されたコンテンツに基づいているが、理由ストレージの制限により、競合が存在していてもよく、両方の方法こと、考え方は同じであり、それは単一のハッシュアルゴリズムまたはブルームフィルタであるかどうかということです同時に、問題の虚偽記載ではありませんも偽陽性の問題があります。しかし、偽陽性の割合単一ハッシュアルゴリズムよりもはるかに低いブルームフィルタ誤警報率のアプリケーションで

おすすめ

転載: www.cnblogs.com/yytxdy/p/12168019.html