本章では、公開鍵暗号方式の課題として、公開鍵の所有者を保証することの重要性と、それを実現するための PKI のモデルについて解説します。
次に、PKI の実装として、X.509 証明書のプロファイルと関連する技術要素を解説します。また、PKI の運用面からは、運用ポリシー (CP/CPS)、証明書のライフサイクル、証明書の検証方法について解説します。
公開鍵暗号方式を使用する際には、はじめに通信相手に公開鍵を送信します。しかし、ネットワーク経由での通信では通信相手が見えないため、第三者が通信相手に成りすまして公開鍵を送信する可能性があります(図 3-1)。そのため、公開鍵暗号方式を利用する時には、使用する公開鍵が本当に正しい相手のものであるかを確認しなければなりません。

図 3-1 公開鍵配布時のなりすまし
上図において、B さんが、A さんに成りすました C さんの公開鍵を、A さんの公開鍵と思って取得した場合を考えます。この場合、B さんが A さんへ送信した暗号文は、意図した A さんではなく第三者である C さんに復号されてしまいます。また、B さんは C さんが作成したデジタル署名を、A さんのデジタル署名であると信じてしまいます。
このような危険性が存在する状況では、安心して暗号化や署名を利用できません。そのため、公開鍵の所有者を正しく確認する仕組みが必要になります。
公開鍵の所有者を確認する仕組みとして、以下の 2つの認証モデルが考えられました。
(1) PGP モデル
公開鍵の所有者を信頼できる人物に保証してもらう方法です。PGP (Pretty Good Privacy) にて採用されています。A さんが未知の C さんの公開鍵を取得したい場合、A さんと C さんの双方と信頼関係にある B さんが、C さんの公開鍵に署名を付けてA さんに送付します。
この方法は、個人レベルで信頼関係を構築することになり、全体を管理する主体が存在しないため企業などの組織に適用するのは難しくなります。
(2) 認証局モデル
信頼できる第三者機関 (TTP: Trusted Third Party)に公開鍵の所有者を保証してもらう方法です(図 3-2)。TTP は、公開鍵の所有者 [28] の本人性をなんらかの方法で確認し、公開鍵とその所有者を保証する証明書(Certificate) [29] を発行します。証明書には、公開鍵とその所有者を証明する情報 [30] が記載され、改ざんを防ぐために TTP の署名が付与されます。証明書を発行する TTP のことを、認証局 (CA: Certification Authority) [31] といいます。

図 3-2 認証局モデル
以下に、認証局モデルにおける公開鍵の交換方法を示します(図 3-3)。

図 3-3 認証局モデルにおける公開鍵の交換
(1) A さんは CA に公開鍵を提出します。
(2) CA は A さんの本人性を対面などで確認し、A さんの証明書を発行します。
(3) A さんは、発行された証明書を B さんに送信します。
(4) B さんは、証明書に記載されている A さんの情報と CA の署名を確認し、証明書内の A さんの公開鍵を入手します。
仮に C さんが A さんになりすまして公開鍵を配布しても、CA から発行された証明書がないため、簡単に見破られてしまいます。
CA は、利用者から信頼できるものでなければなりません。CA は、「認証局運用規定 (CPS: Certificate Practice Statement)」 [32] と呼ばれる文書を公開して、セキュリティポリシーを定めます [33]。また、政府が CA を認定する認定認証業務制度も発足しています [34]。
CA は、自分自身を証明するために証明書を持ちます。CA の証明書には CA 自身によって署名が付与されます。このような証明書を自己署名証明書と呼びます。また、大規模な PKI の場合は、CA の証明書が他の CA から署名されることもあります(詳細は 5章にて解説します)。
前のページ 目次 次のページ Copyright © 2002 Information-technology Promotion Agency, Japan. All rights reserved.