• ベストアンサー

バイナリデータのハッシュ値

こんにちは。 以下の質問について、初心者として質問します。 画像や音楽データのハッシュ値って、1ビット変化しただけでも全く違うのでしょうか? というより変化しない場合というのはあるのでしょうか? 教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.2

> 1ビット変化しただけでも全く違うのでしょうか? はい,まったく違います。まったく違う値が出力されるように設計されているのが良いハッシュアルゴリズムです。 > 変化しない場合というのはあるのでしょうか? はい,あります。 ハッシュ関数は,どんなデータが入力されても固定長のハッシュ値を出力します。例えば代表的なハッシュアルゴリズムであるMD5は128bit長のハッシュ値を出力しますので,その出力パターンは2の128乗です。しかし,世界に存在し得るあらゆる入力データのパターンは2の128乗を越えますから, 入力データ→ハッシュ値,の写像関係は,多→1 になり,同じハッシュ値が出力される異なる入力データが存在します。同じハッシュ値となるような異なる入力データを容易に発見できないように設計されているのが良いハッシュアルゴリズムです。

noname#172236
質問者

お礼

回答ありがとうございます。 丁寧な説明ありがとうございます。 勉強になりました。

その他の回答 (1)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

>画像や音楽データのハッシュ値って、1ビット変化しただけでも全く違うのでしょうか? はい。全く違います。 >というより変化しない場合というのはあるのでしょうか? 128bitのハッシュだとすると、2の128乗分の1の確率(0.0000・・・03くらい。小数点以下39桁目に3)で一致します。

noname#172236
質問者

お礼

回答ありがとうございます。 とても勉強になりました。

関連するQ&A