PKIは公開鍵の信頼性を保証するための大切な仕組みです。
ここでの説明は、公開鍵暗号方式とディジタル証明書の知識があることが前提となります。
PKIとは
暗号化した文書を送る場合などに公開鍵を使用しますが、その公開鍵は本当にその人のものなのかという疑問が出てきます。
仮に偽の公開鍵で暗号化してしまうとデータが盗み取られてしまいます。

PKIはCAが「証明書の中の公開鍵」と「本人情報(例:ドメイン名、組織名)」を結びつけて保証する仕組みです。

PKIの流れ
AさんがBさんの公開鍵を使って通信したい場合の例でPKIの仕組みを説明します。
最初の準備:公開鍵証明書を発行
最初にBさんが秘密鍵と公開鍵のペアを生成します。

次に公開鍵を本人情報とともにCAへ提出します。
このとき、CSR (証明書署名要求)という形式で提出をします。

CAはCSRの公開鍵と本人情報をもとに公開鍵証明書を生成して、そこにディジタル署名を付けて、Bさんはそれを受け取ります。
公開鍵証明書にはCAがディジタル署名をすることで発行元が確認できるようになっています。

公開鍵の正当性確認
Aさんは通信したい相手であるBさんの 公開鍵証明書 を受け取ります。
公開鍵証明書は相手がWEBサーバであればWEBサーバから送られてくる、メールであれば相手から直接送られてこられ、LDAPであればリポジトリというサーバに公開されていることがあります。

取得した公開鍵証明書を検証するため、次の確認をします。
①証明書に付いている CAのディジタル署名 を、CAの公開鍵で検証
②有効期限や失効リスト(CRL/OCSP)を確認
③証明書に書かれている「所有者名」が、確かに通信相手のBさんであることを確認

確認して問題がなければ公開鍵証明書内の公開鍵が安全だということになります。

まとめ
- PKIは公開鍵と本人情報の結びつきを保証。
- 公開鍵証明書に含まれる公開鍵と所有者情報の正当性は、CAのディジタル署名によって保証される。
コメント