令和4年度 秋期 情報処理安全確保支援士試験 午前Ⅱ 問1 共通鍵暗号方式の鍵数

Tech

本記事はGeminiの出力をプロンプト工学で整理した業務ドラフト(未検証)です。

令和4年度 秋期 情報処理安全確保支援士試験 午前Ⅱ 問1 共通鍵暗号方式の鍵数

共通鍵暗号における必要鍵数の計算問題を解説します。解法の核は、n人の間での「組合せの公式」を適用することです。

【問題】

100人の利用者が、共通鍵暗号方式を用いて、それぞれ互いに暗号化通信を行うときに必要な鍵の総数はいくつか。ここで、1組の利用者間では、双方向の通信に同一の鍵を使用するものとする。

ア 100 イ 199 ウ 4,950 エ 9,900

【解説】

本問は、共通鍵暗号方式において、複数の利用者が安全に通信を行うために必要な鍵の総数を求める問題です。

1. 共通鍵暗号方式における鍵の性質

共通鍵暗号方式では、送信者と受信者が同じ1つの鍵を共有して暗号化と復号を行います。したがって、1組のペア(2人)に対して必要な鍵は1個となります。

2. 必要鍵数の計算モデル

利用者の総数を $n$ とします。全員が互いに個別の鍵を用いて通信を行う場合、必要な鍵の数は「$n$ 人の中から通信を行う2人のペアを選ぶ組合せの数」と等しくなります。

数学的には、異なる $n$ 個から 2 個を選ぶ組合せの数(${}_n\mathrm{C}_2$)として表されます。

$$ {}_n\mathrm{C}_2 = \frac{n(n-1)}{2} $$

3. 計算の実行

本問では、利用者の数 $n = 100$ であるため、上記の公式に代入して計算します。

$$ \frac{100 \times (100 – 1)}{2} = \frac{100 \times 99}{2} = 50 \times 99 = 4,950 $$

したがって、必要な鍵の総数は 4,950個 となります。

4. ネットワーク構造のイメージ($n=4$ の場合)

4人の利用者が互いに通信する場合、必要な鍵は ${}_4\mathrm{C}_2 = 6$ 個になります。

graph TD
    A("(User A")) ---|Key 1| B("(User B"))
    A ---|Key 2| C("(User C"))
    A ---|Key 3| D("(User D"))
    B ---|Key 4| C
    B ---|Key 5| D
    C ---|Key 6| D

【選択肢の吟味】

選択肢 判定 解説
誤り $n = 100$。これは「公開鍵暗号方式」において、各利用者が自身の「秘密鍵」のみを管理する場合の数(100個)に近いです。
誤り $2n – 1 = 199$。誤った算出式による数値です。
正解 公式 ${}_n\mathrm{C}_2 = \frac{n(n-1)}{2}$ に $n=100$ を代入して得られる正しい値です。
誤り $n(n-1) = 9,900$。これは「鍵の共有(双方向で同一)」を考慮せず、各方向で異なる鍵を使用する場合、または公開鍵暗号方式で全員が他者全員の公開鍵($n-1$個)を個別に保持する場合の数です。

【ポイント】

  • 共通鍵暗号の鍵数:$n$ 人の相互通信に必要な鍵数は ${}_n\mathrm{C}_2 = \frac{n(n-1)}{2}$ 個。

  • 公開鍵暗号の鍵数:$n$ 人の相互通信に必要な鍵数は $2n$ 個(各自が秘密鍵と公開鍵のペアを1組ずつ保持)。

  • 計算パターンの暗記:高度試験では頻出のため、組合せの公式($n$ と $n-1$ をかけて2で割る)を即座に引き出せるようにする。

ライセンス:本記事のテキスト/コードは特記なき限り CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。

コメント

タイトルとURLをコピーしました