問題 No.3489
ハッシュ関数の一つであり、任意の長さのデータから160ビットの固定長ハッシュ値を生成するアルゴリズムはどれか。
【正解の解説】
SHA-1
SHA-1は、どんなに分厚い辞書であっても、シュレッダーにかけると必ず決まった長さの160ビットの細切れ片になって出てくる特殊な機械のようなものです。元のデータが1文字でも変わると出力が全く別物に変わる性質を利用して、データの改ざん検知やデジタル署名など、セキュリティの様々な場面で広く活用されてきました。
スポンサーリンク
【その他の選択肢の解説】
MD5
MD5はSHA-1の先輩にあたる有名なハッシュ関数ですが、こちらは生成されるハッシュ値が128ビットとSHA-1より短くなっています。歴史が古く処理が速いというメリットがありましたが、現在では計算機の性能向上により安全性の脆弱性が発見されているため、セキュリティ用途での利用は避けられています。
AES
AESはハッシュ関数ではなく、送信者と受信者で同じ鍵を共有してデータをカプセル化する共通鍵暗号方式です。ハッシュ関数が「元に戻せない一方通行の変換」であるのに対し、AESは「鍵があれば正しく元に戻せる双方向の変換」である点が決定的な違いであり、試験でもよく混同されるので注意しましょう。
RSA
RSAはインターネット通信などで広く使われている公開鍵暗号方式であり、データの要約を作るハッシュ関数とは全く異なる仕組みです。素因数分解の難しさを利用して安全性を保つ方式であり、データの同一性確認を行うSHA-1とは目的も役割も根本的に異なるため注意が必要です。