暗号化における公開鍵証明書とは、デジタル署名を使用して公開鍵と物理 ID を結び付ける文書のことです。多くの場合、これらの証明書は、総称してデジタル証明書またはクライアント・デジタル証明書と呼ばれます。デジタル証明書の最も一般的な規格は X.509 規格です。
公開鍵暗号方式では、それぞれの証明書に公開鍵と秘密鍵という 2 つの鍵が関連付けられています。公開鍵は X.509 証明書に組み込まれており、常に証明書自体と一緒に入手できます。秘密鍵は常に非公開にされています (つまり、伝送されません)。移植しやすくするために、2 つの鍵 (および証明書) を PKCS#12 と呼ばれる、パスフレーズで保護された暗号化済みの 1 つのフォーマットに組み込むことができます。
証明書の認証性を検査するために、証明書では認証局 (CA) と呼ばれる別の証明書によってデジタル署名が行われます。この CA 証明書は、セキュア・アプリケーションの提供元の会社によって作成された (または、安全性が保たれた) ものか、Verisign などの会社によって作成されたものになります。
Web アプリケーションでデジタル証明書が必要な場合、管理者は通常、各許可ユーザーが使用するデジタル証明書を作成します。管理者は、システム CA 証明書を使用して、各証明書にデジタル署名します。それらの証明書は、公開鍵および秘密鍵と一緒にユーザーへ配布されます。多くの場合、それらの鍵は PKCS#12 フォーマットで配布されます。ユーザーは、それらの証明書を自分の Web ブラウザーにインポートします。ブラウザーは、サーバーから要求された場合、ブラウザーの証明書を生成します。
Web アプリケーション用の証明書をインポートするには、鍵がエクスポート可能であることを示すチェック・ボックスを選択します。このようにして示すと、証明書を PKCS#12 フォーマットのファイルにエクスポートして、後で他のプログラムで使用することができます。
実際のユーザーに割り当てられた証明書をパフォーマンス・テストの目的で使用しないでください。実際のユーザーに割り当てられていないテスト証明書を使用してください。
自己署名証明書 は、証明書の認証性を保証するエンティティーが必要ない場合に使用されます。これらは、作成および使用が最もシンプルな証明書です。ただし、通常、特定ユーザーを表すのには署名済み証明書が使用されます。
署名済み証明書 は、1 人のユーザーのため (だけ) に証明書を作成および発行する必要がある場合に使用されます。署名済み証明書は、認証局 (CA) によって署名されます。
認証局 (CA) 証明書 は、証明書に署名 (を認証) するために使用される自己署名証明書です。
未署名証明書 は、CA による署名も自己署名もされない証明書です。たいていの Web アプリケーションでは、未署名証明書は使用しません。
自己署名証明書または署名済み証明書 (CA 証明書を含む) を作成する場合、サブジェクト を指定できます。証明書のサブジェクトは、証明書にエンコードされた X.500 識別名の属性セットです。 サブジェクトにより、証明書の受信者は証明書の所有者に関する情報を参照することができます。サブジェクトには証明書の所有者が記述されていますが、サブジェクトは必ずしも固有ではありません。サブジェクトは電話帳の項目と考えてください。Patel Agrawal という項目は複数存在し得ますが、各項目は異なる人物を表します。
サブジェクトには、さまざまなタイプの識別データが含まれます。通常、 サブジェクトには以下のデータが含まれます。
属性 | 例 |
---|---|
COMMON NAME (CN) | CN=Patel Agrawal |
ORGANIZATION (O) | O=IBM Corporation |
ORGANIZATIONAL UNIT (OU) | OU=IBM Software Group |
COUNTRY (C) | C=IN |
LOCALITY (L) | L=Bangalore |
STATE または PROVINCE (ST) | ST=Kanataka |
E-MAIL ADDRESS (emailAddress) | emailAddress=agrawal@abc.ibm.com |
データを分離するスラッシュを使用して、この情報を 1 つのストリングとして入力することができます。
例えば、上記のサブジェクトは以下のように入力できます。
/CN=Patel Agrawal/O=IBM Corporation/OU=IBM Software Group/C=IN/L=Bangalore/ST=Karnataka/emailAddress=agrawal@abc.ibm.com
提供されているコマンド行プログラムを使用して証明書を作成する方法については、『デジタル証明書ストアの作成』を参照してください。