0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【セキュリティ】PKI(Public Key Infrastructure)とは

0
Posted at

はじめに

―― デジタル社会の「信頼」を支える見えないインフラ

インターネットは本質的に信用できない世界です。
相手が本物か、通信が盗み見られていないか、途中で改ざんされていないか。
この「不信の前提」をひっくり返す仕組みが PKI(公開鍵基盤) です。

本記事では

  • PKIとは何か
  • 何を解決するのか
  • どう動いているのか
  • なぜ壊れるのか

暗号をかじった人向けに整理します。


1. PKIとは何か

PKI(Public Key Infrastructure) とは、

公開鍵暗号を「社会で安全に運用するための
ルール・組織・技術の集合体」

です。

重要なのは、PKIは暗号アルゴリズムそのものではないという点。
RSAやECDSAは部品であり、
PKIはそれを誰が・どう信頼するかを決める仕組みです。


2. PKIが解決する3つの課題

① 認証(Authentication)

  • この公開鍵は本当に「その人」のものか?
  • デジタル証明書で保証

② 完全性(Integrity)

  • データは途中で改ざんされていないか?
  • デジタル署名

③ 否認防止(Non-repudiation)

  • 後から「自分はやっていない」と言えない
  • → 署名+証明書の組み合わせ

3. PKIを構成する要素

公開鍵と秘密鍵

  • 秘密鍵:本人だけが保持(漏れたら即ゲームオーバー)
  • 公開鍵:証明書に含めて配布

デジタル証明書

「この公開鍵は◯◯のものです」という電子的な身分証

含まれる情報:

  • 公開鍵
  • 所有者情報(ドメイン名・組織名など)
  • 有効期限
  • 発行者(CA)の署名

認証局(CA)

  • 証明書を発行する第三者機関
  • PKIの信頼の根源
  • ブラウザやOSは特定のCAを最初から信頼している

信頼の連鎖(Chain of Trust)

ルートCA
   ↓
中間CA
   ↓
サーバ証明書
  • エンド証明書を直接信頼しない
  • 署名の連鎖を検証して信頼を伝播させる

4. PKIの動作フロー(HTTPS例)

  1. サーバが鍵ペアを生成
  2. 公開鍵を含むCSRをCAへ送信
  3. CAが本人確認
  4. CAが証明書を発行
  5. サーバは証明書を提示
  6. クライアントはCA署名を検証
  7. 信頼できれば通信開始

👉実際に信頼しているのはサーバではなくCA


5. PKIはどこで使われているか

分野 役割
HTTPS / TLS Web通信の盗聴・なりすまし防止
電子署名 契約書・公文書
コード署名 マルウェア対策
クライアント証明書 VPN・社内認証
JWT(RS256) トークン改ざん防止

6. PKIの弱点と限界

❌ CAが絶対に安全ではない

  • 過去にCA侵害事件は多数存在
  • CAが壊れると信頼モデル全体が揺らぐ

❌ 失効確認が甘い

  • CRL / OCSPは実装されていないことも多い
  • 「失効してるのに使える」事故が起きやすい

❌ 運用が地獄

  • 秘密鍵管理
  • 更新期限
  • 設定ミス

実際の事故原因の多くは暗号ではなく運用


7. よくある誤解

❌ 公開鍵暗号 = PKI

違う
PKIは「信頼の仕組み」、暗号は「計算」

❌ 証明書があれば安全

違う

  • 秘密鍵流出
  • 有効期限切れ
  • CAの信頼崩壊

どれか一つで破綻します。


まとめ

PKIとは何か?

暗号を「信用できる社会インフラ」に変えるための仕組み

数学は強い。
でも信頼を作るのは人・組織・運用

だからPKIは

  • 技術
  • ポリシー
  • ガバナンス

全部ひっくるめた総合格闘技なのです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?