初級では「秘密鍵で署名、公開鍵で検証、証明書で保証」と捉えました。上級では、署名方式と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文字で答えてください。