ハッシュ化
はっしゅか
English: hashing
意味
特定の計算手順(ハッシュ関数)を用いて、データを不規則な文字列(ハッシュ値)に変換すること。元のデータに戻すこと(復号)が極めて困難であるため、パスワード保存などで使われる。
概要
元のデータを、特定の計算式(ハッシュ関数)に通して、一見デタラメな文字列(ハッシュ値)に変換すること。
特徴
- 不可逆: ハッシュ値から、元のデータに戻すことはできない(暗号化とは違う)。
- 「こんにちわ」→「a1b2...」にはできるが、「a1b2...」から「こんにちわ」は計算できない。
- 一意性: 1文字でも違えば、全く違うハッシュ値になる。
用途
- パスワード保存: データベースにはパスワードそのものではなく、ハッシュ化して保存する。もし流出しても、元のパスワードは分からない。
- 改ざん検知: ファイルのハッシュ値を照合すれば、中身が書き換えられていないか確認できる。