SkillStack
テクノロジ系38 / 80問

応用情報技術者試験 令和6年度 春期 午前 問38

公開鍵暗号方式を使った暗号通信を n 人が相互に行う場合、全部で何個の異なる鍵が必要になるか。ここで、一組の公開鍵と秘密鍵は 2 個と数える。

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】イ

公開鍵暗号方式では、各利用者が公開鍵と秘密鍵を一つずつ持ちます。公開鍵は他者に公開し、秘密鍵は本人だけが厳重に保管します。n人のそれぞれに2個の鍵が必要なので、必要な鍵の総数は「2×n=2n個」です。例えば3人で暗号通信を行う場合、各人が2個ずつ持つため、「2×3=6個」となります。送信者は受信者の公開鍵で暗号化し、受信者は自分の秘密鍵で復号します。通信相手の組合せごとに新しい鍵を作る必要はないので、イが正解です。

アのn+1個は誤りです。全員が共通して使う鍵を1個追加するような数え方ですが、公開鍵暗号方式では各人に固有の公開鍵と秘密鍵が必要であり、この式にはなりません。

ウのn(n-1)/2個は誤りです。これはn人から2人を選ぶ組合せの数であり、共通鍵暗号方式で、通信する2人の組ごとに異なる共通鍵を持つ場合の鍵数です。

エのn²個は誤りです。送信者と受信者の順序を区別して通信の組を数えるような考え方ですが、公開鍵と秘密鍵は通信相手ごとには発行しないので過大な数になります。

【ポイント】 公開鍵暗号方式の鍵数は、1人当たり公開鍵と秘密鍵の2個なので2n個です。 共通鍵暗号方式で全員が相互通信する場合は、2人の組合せごとに鍵が必要です。 したがって、共通鍵方式の鍵数はn(n-1)/2個となります。

出典:令和6年度 春期 応用情報技術者試験 午前 問38
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の80問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める