基本情報技術者試験「ハッシュ関数の性質」の問題
暗号技術で用いるハッシュ関数が満たすべき性質として最も適切なものはどれか。
アハッシュ値から元のメッセージを容易に逆算して復元できる可逆な変換であること
イ同じハッシュ値を持つ異なるメッセージを見つけることが極めて困難であること
ウ入力が1ビット変わってもハッシュ値はまったく変化しないこと
エ入力の長さに比例してハッシュ値の長さも常に変動すること
正解
イ.同じハッシュ値を持つ異なるメッセージを見つけることが極めて困難であること
暗号学的ハッシュ関数は一方向性(値から原文を逆算困難)と衝突困難性(同じ値になる異なる入力を見つけるのが困難)を満たす必要がある。改ざん検出や署名で別データへの差し替えを防げるため、衝突困難性を述べた選択肢が正しい。
?選択肢ごとの解説
ア ×ハッシュ値から元を容易に逆算できるのは一方向性に反する。逆算困難であることこそハッシュ関数に求められる性質である。
イ ○暗号学的ハッシュ関数は一方向性(値から原文を逆算困難)と衝突困難性(同じ値になる異なる入力を見つけるのが困難)を満たす必要がある。改ざん検出や署名で別データへの差し替えを防げるため、衝突困難性を述べた選択肢が正しい。
ウ ×入力が1ビット変わるとハッシュ値は大きく変化するのが望ましい性質(雪崩効果)であり、変化しないという記述は逆で誤りである。
エ ×ハッシュ値は入力長によらず固定長になるのが特徴であり、入力に比例して長さが変動するという記述は誤りである。
✎くわしく
ハッシュ関数は任意長入力を固定長の値に変換し、一方向性・衝突困難性・原像計算困難性を備える。SHA-256などが代表で、わずかな入力変化で値が大きく変わる雪崩効果を持つ。これにより改ざん検出やパスワード保存、署名の前処理に利用される。
✓本番での押さえどころ
試験のコツ
ハッシュの3性質『一方向・固定長・衝突困難』を暗記する。復号できるかを問う選択肢は誤りと判断する。
覚え方
ハッシュは『指紋』。同じ指紋の別人は見つからず(衝突困難)、指紋から人は復元できない(一方向)と覚える。
よくある誤り
ハッシュを暗号(復号できる)と混同する、固定長である点を見落とす誤りが多い。『戻せない・固定長・衝突困難』が要点である。
セキュリティの他の問題
公開鍵暗号方式を用いて、送信者が受信者だけに読める暗号文を送る場合、暗号化に使う鍵はどれか。ハイブリッド暗号方式において、通信本文(平文データ)そのものの暗号化と、その暗号化に用いた鍵の受け渡しに使う方式の組合せとし…メッセージダイジェストの生成に用いるハッシュ関数が備えるべき性質として最も適切なものはどれか。PKI(公開鍵基盤)において、利用者の公開鍵が本人のものであることを保証する電子証明書を発行する機関はどれか。利用者の入力をWebページに無検証で出力する不備を悪用し、第三者が用意した不正なコードを被害者のブラウザ上で動作させる攻撃は…共通鍵暗号アルゴリズムであるAESの説明として最も適切なものはどれか。
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-a3-0282