タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

*algorithmと*programとhashに関するsh19910711のブックマーク (2)

  • MD5のハッシュ値オールゼロに挑戦 - わさっきhb

    いきなりですが問題です. MD5のハッシュ値(チェックサム,fingerprint,メッセージダイジェスト)がすべて0となるような,入力メッセージを答えなさい. さっそくですが解答…いや,答えは知りません.もし,そんな入力メッセージを得ていたら,弱衝突耐性を破ったってことになります.そんな入力があるかどうかも,分かっていません. そこで,もっと簡単な問題にします. MD5のハッシュ値の先頭32ビット(16進出力では最初の8桁)がすべて0となるような,入力メッセージを答えなさい. これくらいだと,計算機をぶん回せば,答えが出てきそうです.情報セキュリティの試験も終わったことですし,Rubyスクリプトを書いてみました. Find all-zero hash · GitHub 少し気をつかったことが2つ,あります.一つは,入力メッセージをどのように生成するかです.乱数を使うと,周期の問題がありま

    MD5のハッシュ値オールゼロに挑戦 - わさっきhb
    sh19910711
    sh19910711 2021/09/09
    "入力メッセージをどのように生成するかです.乱数を使うと,周期の問題があります.毎回必ず異なる文字列にしたい / String#succが「次の」文字列を作ってくれる"
  • C++でブルームフィルタを実装する方法 | POSTD

    ブルームフィルタとは、「ある要素が集合のメンバである可能性があるか、それとも確実に集合のメンバではないか」を効果的に確認することのできるデータ構造です。この記事では、C++でブルームフィルタを実装する簡単な方法をご紹介します。 ブルームフィルタとは何なのか 、また、 その背後にある多くの数学的要素 については紹介していませんので、ご了承ください。これらのトピックに関しては、素晴らしいリソースがあるので、そちらを参考にしてください。 インターフェイス まずは、ブルームフィルタを定義していきましょう。ここでは、3つのパブリック関数を定義していきます。 コンストラクタ ブルームフィルタにアイテムを追加する関数 アイテムがブルームフィルタにある可能性を確認するためのクエリを行う関数 また、フィルタの状態を保持するビットの配列を含んだ、メンバ変数についても定義します。 #include <vecto

    C++でブルームフィルタを実装する方法 | POSTD
  • 1