読み方: こうかいかぎあんごう
1行定義
暗号化と復号に異なる鍵(公開鍵・秘密鍵)を使う暗号方式。鍵の安全な配送問題を解決し、TLS・デジタル署名の基盤
詳細解説
公開鍵暗号(Public Key Cryptography / 非対称暗号)は、数学的に対になる2つの鍵(公開鍵・秘密鍵)を使う暗号方式です。公開鍵は誰にでも公開し、秘密鍵は所有者のみが保管します。暗号化は「送信者が受信者の公開鍵で暗号化→受信者が自分の秘密鍵で復号」というフローで行います。公開鍵で暗号化した内容は対応する秘密鍵でしか復号できないため、公開鍵を配布しても安全です。代表的なアルゴリズムはRSA(大きな数の素因数分解の困難さが安全性の根拠)・楕円曲線暗号(ECC、RSAより短い鍵長で同等の安全性)があります。公開鍵暗号の欠点は共通鍵暗号に比べて処理が重いことで、TLSでは公開鍵暗号でセッション鍵(共通鍵)を安全に共有し、その後は高速な共通鍵暗号で通信データを暗号化するハイブリッド方式を採用しています。鍵の正当性を保証するのがデジタル証明書(X.509)で、認証局(CA)が署名して発行します。ITパスポート試験のシラバス(Ver.6.5)は共通鍵暗号方式・公開鍵暗号方式・ハイブリッド暗号方式とデジタル署名(署名鍵,検証鍵)を用語例に挙げており、令和4年度 問60・令和7年度 問89のように「誰のどの鍵で暗号化・復号するか」を問う問題が出ています。
公開鍵暗号方式の鍵の使い分け(暗号化)
結論:内容を秘密にして送るときは「受信者の公開鍵で暗号化し、受信者が自分の秘密鍵で復号」します。デジタル署名はその逆向きで、「送信者が自分の秘密鍵で署名し、受信者は送信者の公開鍵で検証」します。迷ったら「秘密鍵を使えるのは持ち主本人だけ」から考えます。
合格ナビに収録しているITパスポートの公開問題600問(令和3〜8年度・各100問)のうち、暗号方式の鍵の使い分けを問う問題は5問、デジタル署名の効果や確認を問う問題は3問です。基本情報技術者試験の収録問題520問(平成21年度〜令和7年度の公開問題と2022年のサンプル問題)では、公開鍵暗号の鍵の使い分け(暗号化・署名)を問う問題が5問あります(2026-10-02 集計)。
| 目的 | 送る側が使う鍵 | 受け取る側が使う鍵 | 守れること | 確認できる過去問 |
|---|---|---|---|---|
| 内容を秘密にする(暗号化) | 受信者の公開鍵 | 受信者の秘密鍵 | 他人に読まれない(機密性) | ITパスポート 令和4年度 問60 |
| デジタル署名 | 送信者の秘密鍵 | 送信者の公開鍵 | 本人が送ったこと・改ざんの検知(完全性) | 基本情報 平成26年度秋期 問37 |
| ハイブリッド暗号 | 本文は共通鍵、その共通鍵は受信者の公開鍵 | 受信者の秘密鍵で共通鍵を取り出す | 処理の速さと鍵の配りやすさの両立 | ITパスポート 令和5年度 問86 |
表の「使う鍵」は、それぞれの過去問の公式の正解(IPAの解答例)と一致しています。
例題:受け取ったメッセージのうち読めるのはどれか
A さんは,B さんから次の4種類のメッセージを受け取った。A さんが,受け取ったメッセージを復号して読むことができるものだけを全て挙げたものはどれか。
a A さんと B さんとの共通鍵で暗号化したメッセージ
b A さんの公開鍵で暗号化したメッセージ
c B さんの公開鍵で暗号化したメッセージ
d B さんの秘密鍵で暗号化したメッセージ
ア a,b,d イ a,c,d ウ b,d エ c,d
出典:令和7年度 ITパスポート試験 公開問題 問89(独立行政法人情報処理推進機構)(問題PDF・解答例PDF)
それぞれ「復号に必要な鍵をAさんが使えるか」で判定します。
| メッセージ | 復号に必要な鍵 | Aさんは使えるか |
|---|---|---|
| a 共通鍵で暗号化 | 同じ共通鍵 | 使える(AさんとBさんで共有している) |
| b Aさんの公開鍵で暗号化 | Aさんの秘密鍵 | 使える(自分の秘密鍵) |
| c Bさんの公開鍵で暗号化 | Bさんの秘密鍵 | 使えない(Bさん本人しか持たない) |
| d Bさんの秘密鍵で暗号化 | Bさんの公開鍵 | 使える(公開されている) |
- 読めるのは a・b・d → ア
- 検算:逆に「読めないもの」を探すと、Bさんの秘密鍵が必要な c だけです。c を含まない選択肢はアだけなので、答えは変わりません。
- d は誰でも読めるので秘密は守れませんが、「Bさんの秘密鍵で作ったものだと確かめられる」という点がデジタル署名の考え方につながります。
この論点の過去問を解く(暗号化の鍵):
デジタル署名で使う鍵(秘密鍵で署名・公開鍵で検証)
デジタル署名では、送信者が自分の秘密鍵で署名を作り、受信者は送信者の公開鍵で署名を検証します。秘密鍵は持ち主本人しか使えないので、検証できれば「その人が作ったもの」で、内容が途中で変わっていれば検証に失敗します。
| 確かめられること | 確かめられないこと | 根拠の過去問(IPAの正解) |
|---|---|---|
| 送信者本人からのものであること | 内容を他人に読まれないこと(署名だけでは暗号化されない) | 基本情報 平成26年度秋期 問37(ウ) |
| 改ざんが行われたこと(検知) | 改ざんそのものを防ぐこと | ITパスポート 令和5年度 問84(エ) |
| 完全性の向上 | 可用性・機密性の向上 | ITパスポート 令和4年度 問70(ウ) |
- 検証に使う鍵は「送信者の公開鍵」です(基本情報 令和元年度秋期 問38 の正解ウ)。受信者の鍵を使う選択肢は誤りです。
- 暗号化(受信者の鍵を使う)と署名(送信者の鍵を使う)で、使う人の鍵が入れ替わる点が出題のポイントです。署名の仕組みはデジタル署名で詳しく解説しています。
この論点の過去問を解く(デジタル署名):
必要な鍵の数の計算(共通鍵 n(n−1)/2・公開鍵 2n)
n人が互いに秘密の通信をするとき、必要な鍵の数は方式によって大きく変わります。
- 共通鍵暗号方式:2人の組ごとに別の鍵が要るので、鍵の数は「n人から2人を選ぶ組合せ」= n ×(n − 1)÷ 2
- 公開鍵暗号方式:1人が公開鍵と秘密鍵を1組ずつ持てば、誰からでも受け取れるので、鍵の数は 2 × n(公開鍵n個+秘密鍵n個)
| 人数 n | 共通鍵暗号方式 n(n−1)/2 | 公開鍵暗号方式 2n |
|---|---|---|
| 2人 | 1個 | 4個 |
| 10人 | 45個 | 20個 |
| 100人 | 4,950個 | 200個 |
| 1,000人 | 499,500個 | 2,000個 |
手順(自作の例:100人)
- 共通鍵:100 × 99 ÷ 2 = 4,950個
- 公開鍵:2 × 100 = 200個
- 検算(1人ずつ増やして数える):2人目が加わると鍵が1個、3人目で2個、…100人目で99個増えるので、0 + 1 + 2 + … + 99 = 4,950個で一致します。
- 4人までは共通鍵の方が少なく(4人で6個と8個)、5人で同じ10個になり、6人以上では公開鍵の方が少なくなります(6人で15個と12個)。「公開鍵の個数だけ」を問われたらnになる点にも注意します。
鍵の配布が難しいのは共通鍵暗号方式、処理が速いのも共通鍵暗号方式です(ITパスポート 令和6年度 問57 の正解ウ)。共通鍵暗号方式の特徴は共通鍵暗号で確認できます。
この論点の過去問を解く(方式の違い):
ITパスポートでの出題ポイント
- 公開鍵で暗号化、秘密鍵で復号(鍵配送問題を解決)
- RSAは素因数分解の困難さ、ECCは楕円曲線の計算困難さが根拠
- TLSはハイブリッド方式(公開鍵で共通鍵を交換→共通鍵で通信)
- デジタル証明書(X.509)でCA認証局が公開鍵の正当性を保証
関連用語
- 共通鍵暗号 セキュリティ
- デジタル署名 セキュリティ
- SSL / TLS ネットワーク
- ハッシュ関数 セキュリティ
- PKI(公開鍵基盤) セキュリティ
- 電子証明書(デジタル証明書) セキュリティ
- 量子コンピュータ AI・新技術
- 多要素認証(MFA) セキュリティ
「公開鍵暗号」の過去問を解いて理解を定着
合格ナビでは IPA 公式 600問 + 3段階の解説(初級・標準・上級) で「○○とは?」をその場で深掘りできます。
シラバス 6.5 準拠 / 最終更新: 2026-10-02
