基本情報技術者Webと認証の安全性オリジナル・公式資料照合難易度★★☆☆☆
パスワード保存方式を見直し、同じパスワードの利用者がいても、ハッシュの事前計算結果を利用者間でそのまま使い回しにくくしたい。適切なパスワード用ハッシュと計算コストを使うことに加え、ソルトをどう扱うのが適切か。
A
全利用者へ一つの固定ソルトを使えば、利用者別ソルトと同じ効果になる
全員で同じ固定値では、利用者ごとに異なるソルトがもたらす分離の効果が得られません。
B
ソルトは全利用者共通で秘密にし、パスワードDBとは別の保管先へ置く値だと定義する
全利用者で共有し、ハッシュと別に秘密として保管する値はpepperの考え方です。利用者別等に異なる公開可能なソルトとは区別します。
C
保存するパスワードごとに異なるランダムなソルトを使い、照合に必要なソルトをハッシュとともに保存する★ 正解
異なるソルトを使うことで、攻撃者が一つの事前計算結果を多数の利用者へ共通に適用しにくくします。
D
ソルトを付けるので、計算コストのあるパスワード用ハッシュを高速なSHA-256の1回適用へ置き換える
ソルトは事前計算等の使い回しを妨げますが、個別の大量推測に対する計算コストも必要です。高速ハッシュ1回への置換の理由にはなりません。
解説
ソルトは利用者ごと等に異なるランダム値とし、同じパスワードの同じハッシュ化結果や事前計算の再利用を避けます。ソルトは秘密の復号鍵ではなく、適切なライブラリが生成・保存する方式を利用できます。計算コストも別に必要です。
根拠資料・確認情報
対応範囲:2026年度 基本情報技術者試験 科目A・B
資料確認日:2026-10-28
同じレッスンの問題
問題 1
利用者名から会員を検索するSQLを、文字列連結で作っている。利用者名に引用符やSQL断片が含まれると、検索条件の構造が変わってしまう。値として受け取る利用者名に対する基本的な修正はどれか。
問題 2
コメント欄では利用者の入力を装飾せず、文字としてそのまま表示したい。ブラウザ側で入力をinnerHTMLへ入れると、HTMLタグが解釈されてスクリプトが動くおそれがある。この表示位置に適切な対策はどれか。
問題 3
Cookieによるログイン状態を使うWebアプリで、利用者が別サイトへ誘導され、そのサイトから送られた送金POSTが本人のCookie付きで実行された。POSTであることだけでは防げなかった。この不正な要求への基本対策として適切なのはどれか。
問題 5
攻撃者が偽ログイン画面へ入力されたパスワードとワンタイムコードを即時に正規サイトへ中継している。この中継型フィッシングへの耐性を高めるため、正規のサービスのオリジンに認証を結び付ける方式はどれか。登録・復旧経路も適切に保護されているものとする。