電子署名・証明書 — 本物であることの証明

上級の解説は準備中のため、上級の内容を表示しています。

概要 — まず全体をつかむ

初級では「秘密鍵で署名、公開鍵で検証、証明書で保証」と捉えました。上級では、署名方式とPKIの運用へ。

詳細 — 1段階ずつ追う

署名方式

  • RSA-PSS — RSAベース。確率的パディングで安全性を高めた署名
  • ECDSA — 楕円曲線ベース。短く高速だがnonce(署名ごとの乱数)の扱いが命
  • EdDSA(Ed25519) — 決定的nonceで事故を防ぐ、現代的で高速な方式

流れは「データ→ハッシュ→秘密鍵で署名/公開鍵で検証」。ハッシュを挟むのは、任意長を扱い、安全性を担保するためです。

PKI — 信頼をたどる仕組み

公開鍵が本物だと保証するのが PKI(公開鍵基盤)

  • 信頼チェーン — ルートCA → 中間CA → サーバ証明書、と署名でつながる
  • 失効CRL(リスト)/OCSP(オンライン確認)/OCSP stapling
  • Certificate Transparency(CT) — 発行された証明書を公開ログに記録し、不正発行を検知
  • ACME/自動化 — Let's Encrypt などで短命証明書を自動発行・更新
  • mTLS — サーバだけでなくクライアントも証明書で認証

⚠️ 運用と攻撃

  • ECDSAのnonce事故 — 漏洩・再利用で秘密鍵露出(決定的nonce/EdDSAで回避)
  • CA侵害・誤発行 — 信頼の起点が破られると全体が揺らぐ(CTで検知)
  • 失効の伝播遅延 — 失効しても、確認が届くまで悪用の余地
  • 証明書ピンニングの運用難 — 固定しすぎると更新で自分が詰まる
  • 期限・チェーン不備 — 最も多いトラブルは、期限切れと中間証明書の欠落

理解度チェック

そのまま解けます(成績は保存されません)。無料アカウントを作ると、学習の記録と進捗の山登りが始まります。

1. 証明書が「もう信用できない」と失効したことを確認する仕組みは?

2. ECDSA署名で、署名ごとの乱数(nonce)が漏れたり再利用されたりすると?

3. EdDSA(Ed25519)がECDSAのnonce事故を避けられるのはなぜ?

4. 発行された証明書を公開ログに記録し、不正発行を検知する仕組みは?

5. 署名の前にデータのハッシュを取る理由として正しいのは?

6. OCSP staplingの利点として正しいのは?

7. サーバだけでなくクライアントも証明書で認証する方式を、英字4文字で答えてください。

8. Let's Encrypt などで短命証明書を自動発行・更新するプロトコルを、英字4文字で答えてください。