ハッシュ関数の3つの特徴
1. 同じデータからは、必ず同じ値が出る
「apple」という文字を入れると、必ず「1f3870...」のような全く同じ文字列が出てきます。これでファイルが改ざんされていないか(本物か?)を確認できます。
2. 少しでも違うと、全然違う値になる
「apple」と「Apple」(大文字と小文字の違いだけ)でも、出てくるハッシュ値はまったくの別物になります。これを雪崩効果(アバランチ効果)と呼びます。
3. 元のデータには戻せない(不可逆性)
出てきたハッシュ値から、元の「apple」という言葉を逆算することは(現在の技術では)非常に困難です。そのため、パスワードをそのまま保存せず、ハッシュ値にして保存することで、万が一データベースが盗まれてもパスワードがバレないようになっています。
💡 イメージ例(SHA-256の場合)
「もふねこ」
↓ミキサー(ハッシュ関数)にかける↓
6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b
(※何を入れても、必ず決まった長さの文字・数字の羅列になります)