WebSphere Application Server, Version 6.0.x   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows

             目次と検索結果のパーソナライズ化

デジタル証明書

証明書はユーザーの認証方法を示すものです。 アプリケーションの各参加者にすべてのユーザーを認証するよう要求する代わりに、 第三者認証ではデジタル証明書を使用します。

デジタル証明書は、電子 ID カードと同等のものです。デジタル証明書には次の 2 つの目的があります。

証明書は、認証局 (CA) と呼ばれる、信頼のおける機関によって発行されます。 認証局は、ユーザーのアプリケーションの要件に応じて、営利ベンチャーであったり、ローカル・エンティティーであったりします。 いずれにしても、CA は、証明書をユーザーに発行する前に、 ユーザーを適正に認証するものとして信頼されています。 CA は、デジタル・シグニチャーを持つ証明書を発行します。 ユーザーが証明書を提示すると、その証明書の受信側は、デジタル・シグニチャーを使用してその証明書を検証します。 デジタル・シグニチャーによって証明書が有効であると確認された場合、 その証明書は未変更で信頼できるものとして認められます。 アプリケーションの参加者が行う必要があるのは、証明書の検証のみです。 参加者はユーザーを認証する必要はありません。 ユーザーが有効な証明書を提示できるという事実により、CA がそのユーザーを認証したことが証明されます。 信頼のおける第三者機関 という記述子は、 システムが CA の信頼性に依存していることを示します。

デジタル証明書の内容

証明書には、証明書の所有者および発行元 CA などの、いくつかの情報が入っています。 具体的には、証明書には次のものが含まれています。
  • 所有者の識別名 (DN)。DN は、固有 ID であり、所有者の共通名 (CN) だけでなく、 所有者の組織やその他の識別情報が含まれている完全修飾名です。
  • 所有者の公開鍵。
  • 証明書が発行される日付。
  • 証明書の有効期限が切れる日付。
  • 発行元 CA の識別名。
  • 発行元 CA のデジタル・シグニチャー。メッセージ・ダイジェスト機能は、以前にリストされたすべてのフィールドに基づいてシグニチャーを作成します。

証明書の中核となる考え方は、CA が所有者の公開鍵を取得して CA 自身の秘密鍵でその公開鍵に署名し、この情報を証明書として所有者に戻すというものです。 所有者は、証明書を別の機関に配布するとき、所有者の秘密鍵でその証明書に署名します。受信側は、所有者の公開鍵を使って CA の署名がある証明書を取り出すことができます。 受信側は、取り出された証明書に対して CA の公開鍵と CA の署名を使用して CA の署名を検証できます。 署名が有効である場合、証明書の取り出しに使用された公開鍵は、有効であると認められます。 所有者の署名の検証が行われ、これに成功すれば、所有者は受信側に対して正常に認証されたことになります。

証明書内のその他の情報は、 アプリケーションがその証明書を有効と認めるべきかどうかを判断するのに役立ちます。 有効期限によって、アプリケーションは、その証明書がまだ有効であるかどうかを判別することができます。 発行元 CA の名前によって、アプリケーションは、 そのサイトにおいてその CA が信用できると見なされているかどうかを検査できます。

証明書を使用するプロセスでは、 その公開鍵を含む個人証明書、および署名者証明書 と呼ばれる、 証明書に署名した CA の証明書を提供する必要があります。 信頼チェーンが確立される場合には、 複数の署名者証明書がかかわっていることがあります。

証明書の要求

証明書を取得するには、CA に認証要求を送信します。 認証要求には、次のものが含まれます。
  • 所有者または証明書が要求されているユーザーの識別名。
  • 所有者の公開鍵。
  • 所有者のデジタル・シグニチャー。
メッセージ・ダイジェスト機能は、以前にリストされたすべてのフィールドに基づいてシグニチャーを作成します。

CA は、要求内の公開鍵で署名を検証して、その要求が未変更で信頼できることを確認します。そのうえで、CA はその所有者を認証します。 認証の厳密な内容は、CA と要求元組織との間の事前の合意事項によって決まります。要求の所有者が正常に認証されると、 CA はその所有者に対して証明書を発行します。

証明書の使用: 信頼チェーンおよび自己署名証明書

証明書のデジタル・シグニチャーを検証するには、発行元 CA の公開鍵が必要です。 公開鍵は証明書内で配布されるので、 発行者によって署名された発行元 CA の証明書が必要になります。 ある CA は他の CA を認証することができるので、 CA のチェーンは他の CA に対して証明書を発行することができます。 これらの CA の公開鍵がすべて必要です。 最終的には、自己署名証明書を自己発行するルート CA にたどり着きます。 ユーザーの証明書を検証するためには、ルート CA までさかのぼって、 介在しているすべての参加者の証明書が必要になります。こうして、各証明書の検証に必要な公開鍵を、ユーザーの証明書を含めて手に入れられます。

自己署名証明書には、発行者の公開鍵が含まれ、秘密鍵で署名されます。デジタル・シグニチャーは他のすべての署名と同様に検証されます。 証明書が有効であれば、その証明書に含まれる公開鍵を使用して、 CA によって発行された他の証明書の妥当性が検査されます。 ただし、自己署名証明書は、だれでも生成することができます。 実際には、 実稼働証明書をインストールする前に、 テスト目的の自己署名証明書を生成することになる可能性があります。 自己署名証明書に有効な公開鍵が含まれているということは、発行者が信頼のおける認証局であることを意味するものではありません。自己署名証明書がトラステッド CA によって生成されたものであることを確実にするには、このような証明書をセキュアな方法、例えばフロッピー・ディスクでの手渡し、セキュアなサイトからのダウンロードなどで配布しなければなりません。

証明書を使用するアプリケーションは、 これらの証明書を鍵ストア・ファイルに保管します。一般に、このファイルには、必要な個人証明書、署名証明書、および秘密鍵が入っています。秘密鍵は、デジタル・シグニチャーを作成するためにアプリケーションが使用します。 サーバーの鍵ストア・ファイルには、個人証明書が必ずあります。 クライアントに個人証明書が必要なのは、相互認証が使用可能であるときに、 クライアントがサーバーに対する認証を行わなければならない場合のみです。

クライアントがサーバーに対する認証を行うことができるように、 サーバーの鍵ストア・ファイルには、 そのサーバーの秘密鍵と証明書、および CA の証明書が入っています。 クライアントのトラストストア・ファイルには、 クライアントが認証されなければならない各サーバーの CA の署名者証明書が含まれていなければなりません。

相互認証が必要な場合、クライアントの鍵ストア・ファイルには、 クライアントの秘密鍵と証明書が入っていなければなりません。 サーバーのトラストストア・ファイルには、 クライアントの CA の証明書のコピーが必要です。




サブトピック
デジタル・シグニチャー
公開鍵暗号方式
関連概念
Secure Sockets Layer
関連資料
セキュリティー: 学習用リソース
概念トピック    

ご利用条件 | フィードバック

最終更新: Jan 22, 2008 12:07:38 AM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.base.doc/info/aes/ae/csec_cert.html