ITパスポート 2022年 問60
問題文
公開鍵暗号方式で使用する鍵に関する次の記述中のa, bに入れる字句の適切な組合せはどれか。
それぞれ公開鍵と秘密鍵をもつA社とB社で情報を送受信するとき、他者に通信を傍受されても内容を知られないように、情報を暗号化して送信することにした。A社からB社に情報を送信する場合、A社は[ a ]を使って暗号化した情報をB社に送信する。B社はA社から受信した情報を[ b ]で復号して情報を取り出す。

選択肢
ア:
イ:
ウ:
エ:(正解)
🔒 解説は解答すると表示されます
公開鍵暗号方式で使用する鍵 +【ITパスポート 解説】
正解の理由
送信者のA社がB社に対して「内容を第三者に知られないように」情報を送る場合、受け取る側(B社)だけが復号(暗号を元に戻すこと)できる必要があります。公開鍵(public key:誰でも入手できる鍵)と秘密鍵(private key:持ち主だけが持つ秘密の鍵)は対になっており、公開鍵で暗号化したデータは対応する秘密鍵でしか復号できません。したがって、A社は受け取り側であるB社の公開鍵を使って暗号化し、B社は自社の秘密鍵で復号します。これが正しい組合せであり、選択肢では エ が該当します。
(補足)公開鍵暗号方式(public‑key cryptography:公開鍵と秘密鍵の対を使う暗号)では、
- 機密性(第三者に内容を知られないこと)を確保したければ「受信者の公開鍵で暗号化」→「受信者の秘密鍵で復号」
- 発信者の本人性/改ざん防止(電子署名)を確保したければ「発信者の秘密鍵で署名(暗号化的処理)」→「発信者の公開鍵で検証」 という使い分けをします。
解法ステップ
- 問題の目的を確認:ここは「内容を知られないように暗号化して送信する」=機密性を守る場面。
- 機密性のルールを思い出す:受信者だけが復号できるようにするには「受信者の秘密鍵で復号される」必要がある。
- 鍵の対関係を使う:公開鍵で暗号化したものは対応する秘密鍵で復号する。
- よって、暗号化に使うのは「B社の公開鍵」、復号に使うのは「B社の秘密鍵」。選択肢の中では エ が一致。
短い覚え方:機密性=「相手の公開鍵でロック」→「相手の秘密鍵でアンロック」。
選択肢別の誤答解説
-
ア(A社の公開鍵 / A社の公開鍵)
誤りです。A社の公開鍵で暗号化すると、対応するA社の秘密鍵でしか復号できません。つまりB社は復号できず、受信できません。また、公開鍵は誰でも入手できるため、それで暗号化しても機密性が保てない場面もあります(用途により意味が異なります)。 -
イ(A社の公開鍵 / B社の秘密鍵)
誤りです。暗号化と復号は対応した鍵ペアで行う必要があります。A社の公開鍵で暗号化したものをB社の秘密鍵で復号することはできません。鍵が対応していないため復号に失敗します。 -
ウ(B社の公開鍵 / A社の公開鍵)
部分的に正しく見えますが誤りです。暗号化にB社の公開鍵を使う点は正しいです。しかし、復号にA社の公開鍵を使うのは間違いです。B社の公開鍵で暗号化したデータはB社の秘密鍵でしか復号できません。A社の公開鍵では復号できません。 -
エ(B社の公開鍵 / B社の秘密鍵)
正しいです。受信者であるB社の公開鍵で暗号化し、B社が自分の秘密鍵で復号することで、第三者に中身を知られずに通信できます。したがって最適な組合せは エ です。
よくある誤解
-
「公開鍵で暗号化したら誰でも復号できる」
→ 誤りです。公開鍵で暗号化したデータは、通常は対応する秘密鍵でしか復号できません。公開鍵は暗号化に使うために公開されますが、復号は秘密鍵でしかできません。 -
「公開鍵と秘密鍵はどちらも同じ働きをする」
→ 混同しやすい点です。両者は対(鍵ペア)ですが、用途が異なります。機密性を守る暗号化では受信者の公開鍵で暗号化、受信者の秘密鍵で復号します。電子署名(送信者の本人確認)では逆に送信者の秘密鍵で処理し、送信者の公開鍵で検証します。 -
「公開鍵が漏れたら安全ではない」
→ 公開鍵は名前の通り公開するものですが、偽の公開鍵を渡されると安全性が損なわれます(中間者攻撃)。公開鍵の正当性は証明書(CA)や指紋確認で担保します。
補足コラム
- ハイブリッド暗号:実際の通信(例:WebのTLS)では、長いデータを公開鍵だけで暗号化することは計算コストが高いため、公開鍵で「共通鍵(共通鍵暗号:symmetric key)」を安全に送り、その共通鍵でデータ本体を暗号化します。これをハイブリッド方式と呼びます。
- 代表的な公開鍵方式:RSA(Rivest–Shamir–Adleman:古典的によく使われる方式)、ECC(楕円曲線暗号:短い鍵で強い安全性)などがあります。
- 鍵管理の重要性:秘密鍵は絶対に他人に知られてはいけません。紛失や漏洩が起きると秘密性や署名の有効性が失われます。
FAQ
Q1. 公開鍵が盗まれたらどうなる?
A1. 公開鍵自体は公開するものなので「盗まれる」ことに対するリスクは低いです。ただし、攻撃者が正規の公開鍵になりすまして送信者に渡す(偽の公開鍵)と中間者攻撃が可能になります。そのため公開鍵の正当性を証明する仕組み(証明書、CA、鍵の指紋確認など)が重要です。
A1. 公開鍵自体は公開するものなので「盗まれる」ことに対するリスクは低いです。ただし、攻撃者が正規の公開鍵になりすまして送信者に渡す(偽の公開鍵)と中間者攻撃が可能になります。そのため公開鍵の正当性を証明する仕組み(証明書、CA、鍵の指紋確認など)が重要です。
Q2. 「秘密鍵」で暗号化することはありますか?
A2. はい。秘密鍵で処理するのは主に電子署名に相当します。秘密鍵で署名(暗号化的処理)し、受信者は発信者の公開鍵で検証します。これにより送信者の本人性と改ざん検知ができます。ただし、機密性を目的とする暗号化とは用途が逆です。
A2. はい。秘密鍵で処理するのは主に電子署名に相当します。秘密鍵で署名(暗号化的処理)し、受信者は発信者の公開鍵で検証します。これにより送信者の本人性と改ざん検知ができます。ただし、機密性を目的とする暗号化とは用途が逆です。
Q3. 受信者の秘密鍵が他人に知られたら?
A3. 即座に安全性が失われます。知られた相手はその秘密鍵で暗号化されたデータを復号できるため、鍵をローテーション(交換)したり、証明書を失効させる手続きが必要です。
A3. 即座に安全性が失われます。知られた相手はその秘密鍵で暗号化されたデータを復号できるため、鍵をローテーション(交換)したり、証明書を失効させる手続きが必要です。
関連キーワード: 公開鍵暗号, 公開鍵, 秘密鍵, 暗号化, 復号, 鍵ペア, RSA, 電子署名, ハイブリッド暗号, TLS, 鍵管理

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

