前回まで:
ここでまずイメージとしてはハッシュ関数がミクサーのようなものです。
そしてデータをそのハッシュ関数に入れると。
固定長の不規則値が出てきます。16Hexで0-9、A-F。
その出力値のことハッシュ値だと言います。
もちろん、そのハッシュ関数はPC内部でなんからの計算です。
特徴
ではそのハッシュ関数関数はどんな特徴あるでしょうか?
出力値の長さが変わらないこと。
そして非常大きなデータでも、そのハッシュ関数の長さは変わりません。
もちろん、どんな小さいなサイズなFileでもそのハッシュ値の長さは同じになります。
もし、似ているようなデータがあっても、1ビットが違っても出てくるハッシュ値も完全に違います。
最後にまったく別のデータでも、同じハッシュ値になることが、低確率ながら起こり得る。そのことハッシュ衝突といいます。
もちろん逆戻りはできません。
世の中に様々なハッシュ関数アルゴリズムが存在し、有名なのはMD5、SHA-1、SHA-2などです。MD-5、SHA-1は安全性の問題があり、もう使うことこと推奨しません。
では、そのハッシュ関数どこで使われてるでしょうか?
たとえばUserの入力パスワードをサーバーに保存する際に、そのハッシュ関数がよく使われてます。それは第三者に見られる恐れいがあるので、パスワードのハッシュ値取り、ハッシュ値を比較すればパスワード一致してるかどうかわかります。
お疲れ様ーです。