ITパスポート 2019年 秋期 問80
問題文
パスワードの解読方法の一つとして、全ての文字の組合せを試みる総当たり攻撃がある。“A”から“Z”の26種類の文字を使用できるパスワードにおいて、文字数を4文字から6文字に増やすと、総当たり攻撃でパスワードを解読するための最大の試行回数は何倍になるか。
選択肢
ア:2
イ:24
ウ:52
エ:676(正解)
🔒 解説は解答すると表示されます
パスワードの文字数を4文字から6文字に増やすと総当たり攻撃での試行回数は何倍になるか 【ITパスポート 解説】
正解の理由
総当たり攻撃(ブルートフォース攻撃:考えられる全ての文字列を順番に試す方法)では、文字数が増えると試す組合せは掛け算で増えます。
1文字あたり使える文字が26種類(“A”〜“Z”)なら、長さのパスワードの総組合せは です。
長さを4文字から6文字に増やしたときの最大(最悪の場合の)試行回数の比は です。
したがって、選択肢のうち エ(676)が正しい理由です。
1文字あたり使える文字が26種類(“A”〜“Z”)なら、長さのパスワードの総組合せは です。
長さを4文字から6文字に増やしたときの最大(最悪の場合の)試行回数の比は です。
したがって、選択肢のうち エ(676)が正しい理由です。
解法ステップ
- 1文字あたりの選択肢は26通りなので、長さの総組合せは と表せることを確認する。
- もともとの最大試行回数は長さ4のときの 。増やした後は長さ6のときの 。
- 比を取る: 。
- よって試行回数は676倍になる。
短く言うと、「1文字増えるごとに26倍になる」→「2文字増えれば26×26=676倍」です。
選択肢別の誤答解説
-
ア: 2
間違いの原因:文字数が「2文字増えた」から単純に2倍になると考えてしまう誤り。文字数が増えると組合せは掛け算で増えるため、倍数はもっと大きくなります。 -
イ: 24
間違いの原因:26から2を引くなどの誤った算術操作をしている可能性があります。文字数の増加による組合せの変化は引き算では表せません。 -
ウ: 52
間違いの原因:26(1文字あたりの種類)に2(増えた文字数)を掛けてしまっている誤り。正しくは「1文字増えるごとに26倍」なので、2文字増えれば26×26=676です。 -
エ: 676
正しい理由は上記「正解の理由」を参照。26を2回掛けるため676倍になります。
よくある誤解
-
「文字数が2増えたから2倍」
→ 実際は「1文字増えるごとに26倍」です。増えた文字数がkなら、増加倍率は 。 -
「総当たりの総数は単に足し算」
→ 長さ4〜6すべての総組合せの総数は で足し算になりますが、問題は「最大の試行回数」(つまり最悪ケースの長さ6のみ)を比べている点に注意してください。 -
「順序や重複を無視している」
→ パスワードは順序が重要で、同じ文字の重複も許されます(例:AAAA)。そのため のようにべき乗で表します。
補足コラム
- 一般的な考え方:アルファベットの種類を 、増やす文字数を とすると、試行回数の倍率は です。アルファベットを大文字・小文字・数字・記号まで増やすと が大きくなり、さらに安全になります。
- 実務的な目安:短い英字のみのパスワードは総当たり攻撃に弱いです。長さと文字種類(大文字・小文字・数字・記号)を増やすことが重要です。ただし利便性とのバランスも必要です。
FAQ
Q. 「最大の試行回数」と「総組合せの合計」はどちらを比較すればよいですか?
A. 問題文が「最大の試行回数」とある場合は最長の長さだけを見ます(今回なら6文字)。4〜6文字全ての合計を求める問題なら を計算します。
A. 問題文が「最大の試行回数」とある場合は最長の長さだけを見ます(今回なら6文字)。4〜6文字全ての合計を求める問題なら を計算します。
Q. 英小文字(26種類)と英大文字(さらに26種類)を両方使えるとしたらどうなる?
A. 使える文字種類は52になります。長さが2増えると倍率は になります。
A. 使える文字種類は52になります。長さが2増えると倍率は になります。
Q. 「総当たりで必ず破られる」のですか?
A. 理論上は探索可能ですが、試行回数が非常に大きくなると現実的な時間で破るのは困難です。したがって、長く複雑なパスワードは実用的に安全性を高めます。
A. 理論上は探索可能ですが、試行回数が非常に大きくなると現実的な時間で破るのは困難です。したがって、長く複雑なパスワードは実用的に安全性を高めます。
関連キーワード: 総当たり攻撃、ブルートフォース、キー空間、べき乗、組合せ

\ せっかくなら /
ITパスポートを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

