【問89】情報・サイバーセキュリティ管理士 練習問題|ハッシュ関数の性質
情報セキュリティ対策 問14/25難易度B(標準)
問題文
ハッシュ関数およびそれが生成するメッセージダイジェストの性質として、最も適切なものはどれか。
- 1.任意の長さの入力から可変長の値を生成し、その値から元の文書に復号できる
- 2.同じ入力からは毎回異なる値が生成されるため、改ざんの検知に用いられる
- 3.入力が1文字違えば全く異なる値になり、値から元の文書の復元は困難である
- 4.生成される値の長さは、入力するデータの長さに比例して長くなっていく
解説
正解は3。ハッシュ関数は、任意の長さのデータから固定長の値(メッセージダイジェスト、ハッシュ値)を生成する一方向性関数である。入力がわずかでも異なれば出力は全く異なる値になり、逆にハッシュ値から元のデータを復元することは計算量的に困難である(原像計算困難性)。また、同じハッシュ値を持つ異なるデータを見つけることも困難である(衝突困難性)。代表的な方式はSHA-256であり、改ざん検知、デジタル署名、パスワードの保存に利用される。1は誤り。出力は固定長であり、かつ一方向性関数であるため元のデータへの復号はできない。2は誤り。同じ入力からは常に同じ値が得られる。値が毎回変われば比較による改ざん検知そのものが成り立たない。4は誤り。出力長は方式ごとに固定で、入力の長さに依存しない。本試験では、一方向性と固定長という2点が繰り返し問われる。