今日のどう書く

終電逃しかけた。ハッシュという言葉は改ざん防止の文脈とハッシュテーブル実装の文脈とで目標とする挙動が違うんだよな。ハッシュ関数でググって見たけどいい説明が見当たらない。

前者は、改ざんされていないかの確認のために同じ内容をもう一度送って比較するのはコストが高過ぎるというのが大前提だよね。なので頑張って衝突しにくいハッシュ関数にしてある。一方、後者は内容そのものを比較するのが簡単という前提。だからハッシュ関数が頑張る必要はそんなにはないかわりに、衝突が起こることを見越した処理が必要。でもそのおかげで違うものを同じと判定してしまうことはない。