平成26年度 春期 ITパスポート試験 公開問題 問51 解説 総当たり攻撃の試行回数
パスワードの解読方法の一つとして,全ての文字の組合せを試みる総当たり攻撃がある。“0”から“9”の10種類の文字を使用できるパスワードにおいて,桁数を4桁から6桁に増やすと,総当たり攻撃でパスワードを解読するための最大の試行回数は何倍になるか。
- 1.5
- 20
- 100 ✓ 正答
- 1,024
解説
桁数と組合せ数の計算ルール
今回の問題は、指数を用いて総当たり攻撃の試行回数を比較することで解くことができます。
4桁のパスワードの場合、各桁が0から9までの10通りであるため、組合せの総数は 通りです。同様に、6桁の場合は 通りとなります。
増加倍率を求めるには、6桁の総数を4桁の総数で割ります。
よって、試行回数は100倍になります。
指数関数的な増加の仕組み
この問題のポイントは、桁数が増えることで組合せの数が「加算的(足し算)」ではなく「指数的(掛け算)」に増大するという点です。
パスワードの桁数(n)が増えると、組合せ数は という形で計算されます。今回の例では差が2桁ですが、もしこれが「1桁増える」だけであれば10倍、「3桁増える」のであれば1,000倍になります。このように、パスワードを1桁増やすだけで、解読の難易度(試行回数)は一気に跳ね上がることがわかります。
セキュリティ対策における重要性
この知識は、システム開発や情報セキュリティの現場で「なぜパスワードポリシーを厳しく設定する必要があるのか」を論理的に説明する際に不可欠です。
例えば、単純な4桁のパスワードであれば、現代のコンピュータの処理能力を用いれば一瞬で解読可能です。しかし、桁数を増やす、あるいは使用できる文字の種類(英大文字、英小文字、記号など)を増やすことで、攻撃者が突破を試みる際の負荷は天文学的に増加します。
ITパスポート試験においてこの問題が出題される意図は、単なる算数の計算能力を問うことではなく、「パスワードの長さを確保することが、攻撃者に対して物理的・時間的な壁を築くためにどれほど有効か」というセキュリティの基本原理を理解させることにあります。