ハッシュ関数

ハッシュ関数とは、どんな長さのデータからも、決まった長さの短い値を計算する仕組みのことです。 その値をハッシュ値と呼びます。

別表記:ハッシュ関数/ハッシュ値/要約関数/Hash Function

3つの性質

元に戻せません。 ハッシュ値から元のデータを復元することはできません。

わずかな違いで、まったく違う値になります。 1文字変えただけで、まるで別の値が出ます。

同じ値になるデータを作るのが困難です。 別の内容で同じハッシュ値を意図的に作り出すことは、現実的にできません。

何に使われるのか

データが書き換えられていないかの確認です。あらかじめ計算しておいた値と、いま計算した値を比べれば、途中で変わったかどうかが分かります。

電子署名の内部でも使われています。長いデータをそのまま署名するのではなく、ハッシュ値に対して署名する形が一般的です。

よくある誤解:ハッシュ値にすれば個人情報ではなくなるのか

「個人情報そのものではなくハッシュ値だけを記録すれば安全」という説明を見かけますが、そう言い切れません。

他の情報と照合することで個人を特定できる状態であれば、その記録が個人情報に該当しうるという議論があります。とくに、取りうる値の範囲が限られている情報の場合、総当たりで元の値を突き止められることがあります。

安全とみなすには、慎重な検討が必要です。

一覧に戻る