LinuCレベル1 セキュリティ 問9
セキュリティ/暗号化によるデータの保護ハッシュ関数に関する説明として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル1の出題範囲「セキュリティ」に対応。実際の試験問題ではありません)
- A同じ入力からは毎回異なるハッシュ値が生成される
- B任意の長さのデータから固定長の値(ハッシュ値)を生成し、その値から元のデータを復元することは基本的にできない
- Cハッシュ関数は、暗号化されたデータを元に戻す(復号する)ために使う
- Dハッシュ関数は、必ず元のデータより短いデータに圧縮した上で、復元も可能である
正解:B
解説
ハッシュ関数は、任意の長さの入力データから固定長のハッシュ値を生成する一方向の関数で、ハッシュ値から元のデータを復元することは基本的にできません(一方向性)。同じ入力からは常に同じハッシュ値が生成されます(決定性)。暗号化されたデータを元に戻す処理は復号であり、ハッシュ関数の役割とは異なります。
選択肢ごとの解説
- A誤り。同じ入力からは常に同じハッシュ値が生成されます(そうでなければ検証等に使えません)。
- B正しい。ハッシュ関数は固定長の値を生成し、そこから元のデータを復元することは基本的にできません。
- C誤り。暗号化されたデータを元に戻す(復号する)のは復号処理であり、ハッシュ関数の役割ではありません。
- D誤り。ハッシュ関数によって元のデータを復元することは基本的にできません。