説明

サーバ証明書発行システム

【課題】証明書発行の対象となるWebサーバの実在性を確認でき、セキュリティが一層向上したサーバ証明書発行システムを実現する。
【解決手段】本発明によるサーバ証明書発行システムでは、SSL証明書の形態のテスト用証明書を用いて本人認証を行う。サーバ(3,4)は、登録サーバ(6)に対してサーバ証明書発行要求を送信する。登録サーバは、テスト証明書発行機関(8)に対してテスト用証明書の発行を要求する。テスト証明書発行サーバは、生成したテスト用証明書を登録サーバに送信する。登録サーバは、テスト用証明書を対応するサーバに送信し、インストールすることを求める。登録サーバは、サーバに対してSSLプロトコルでアクセスし、SSLプロトコルのセッションが確立されるか否かを検証し、SSLプロトコルが確立された場合に限り、CSRを証明書発行サーバ(7)に送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバ証明書の申込からダウンロードまでの一連の処理が自動的に実行されるサーバ証明書発行システムに関するものである。
【0002】
さらに、本発明は、サーバ証明書発行システムにおいて実施される本人認証方法に関するものである。
【背景技術】
【0003】
WebサーバとWebブラウザとの間のインターネット通信を安全に行うため、公開鍵暗号基盤(PKI:Public Key Infrastructure)を利用したSSL(Secure Socket Layer)が実用化されている。SSLが導入された通信システムでは、信頼できる第三者機関である認証機関(認証局:CA)から発行されたサーバ証明書(SSL証明書)を用いて暗号化処理が行われるため、なりすまし、改ざん、盗聴等が防止され、一層セキュアなインターネット通信が確保される。
【0004】
認証機関がサーバ証明書を発行する際、サーバ証明書の発行要求者の同一性確認(本人確認)が重要であり、同一性確認の方法として、ドメイン認証を利用したサーバ証明書発行システムが実用化されている(例えば、特許文献1参照)。この既知の本人確認方法では、サーバ証明書の発行要求があった際、登録サーバはドメイン登録機関のデータベース(Whois 情報)にアクセスし、当該Webサーバについてサーバ証明書の発行を承認する権限を有する承認者と連絡をとり、電話やe-mail等の連絡手段を用いて証明書の発行要求を承認するか否かが検証され、承認者の承認が得られた場合に限り証明書が発行されている。
【特許文献1】特表2005−506737号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
従来のドメイン認証を利用した本人確認方法では、証明書の発行について承認権限を有する者をWhois情報に基づいて検索し、検索された承認者の承認に基づいて本人確認が行われている。しかし、Approver-Email.方式の認証方法では、承認権限を有する者の承認を得ているにすぎず、証明書の発行対象となるWebサーバの実在性が確認されていないため、セキュリティ上の問題があった。また、E-mailによる本人確認では、E-mailが盗聴された場合など、セキュリティ上の問題が発生する危険性が潜在している。さらに、登録機関は、ドメイン登録サーバのデータベースにアクセスして承認者を検索しなければならず、登録機関における本人確認作業が煩雑になる欠点もあった。しかも、電話等の連絡手段により承認確認を得なければならず、証明書の発行を自動化する上で大きな障害となっていた。
【0006】
本発明の目的は、証明書発行の対象となる各種サーバの実在性を確認でき、セキュリティが一層向上したサーバ証明書発行システムを実現することにある。
【0007】
本発明の別の目的は、サーバ証明書の発行の申込からダウンロードまでの一連の処理が自動的に実行されるサーバ証明書発行システムを実現することにある。
【0008】
さらに、本発明の別の目的は、上述したサーバ証明書発行システムに用いられる本人認証方法を提供することにある。
【課題を解決するための手段】
【0009】
本発明による本人認証方法は、登録機関により管理され、ネットワークを介して各種サーバから送られてくるサーバ証明書発行要求を受取り、所定の審査を行って署名要求ファイル(CSR)を発行機関に送信する登録サーバと、発行機関により管理され、登録サーバから送られてくるCSRを受け取り、デジタル署名を行ってサーバ証明書を生成し、生成されたサーバ証明書を前記登録サーバに送信する証明書発行サーバと、試験用のテスト用証明書を発行するテスト証明書発行機関により管理され、テスト用証明書を発行するテスト証明書発行サーバとを具えるサーバ証明書発行システムにおいて実施される本人認証方法であって、
各種サーバから登録サーバに対してサーバ証明書発行要求を送信する工程と、
登録サーバからテスト証明書発行サーバに対して、テスト用証明書発行要求を送信する工程と、
前記テスト証明書発行サーバにおいて、前記サーバ証明書発行要求に含まれる情報を用い、公開鍵証明書の規格として標準化されているX.509の規格に基づきSSL証明書のフォーマットで表されたテスト用証明書を生成する工程と、
生成されたテスト用証明書を登録サーバから前記サーバに対して送信する工程と、
前記サーバにおいて、受取ったテスト用証明書をインストールする工程と、
前記登録サーバからサーバ証明書発行要求に含まれるアドレスのサーバに対してSSLプロトコルでアクセスする工程と、
前記登録サーバが前記サーバにアクセスした際、前記サーバとの間SSLプロトコルのセッションが確立されるか否かを検証する検証工程とを具えることを特徴とする。
【0010】
本発明では、本人認証は、テスト証明書発行機関により生成されるSSL証明書の形態のテスト用証明書を用いて行われる。すなわち、各種サーバから登録機関に対してサーバ証明書の発行要求がされた場合、登録機関からテスト証明書発行機関に対してテスト用証明書発行要求が送信され、テスト証明書発行機関は、サーバ証明書発行要求に含まれるCSRを用いてSSL証明書の形態のテスト用証明書を生成する。生成されたテスト用証明書はテスト証明書発行機関から登録機関に送信され、登録機関から証明書発行要求に含まれるアドレスのサーバに送信されテスト用証明書をインストールすることが求められる。次に、登録機関は、サーバ証明書発行要求に含まれるアドレス情報により特定されるサーバにSSLプロトコルでアクセスし、SSLプロトコルのセッションが確立されるか否かを検証する。すなわち、テスト用証明書をインストールするためには、テスト用証明書と共に対応する秘密鍵が必要である。そして、対応する秘密鍵が存在しない場合、SSLプロトコルでアクセスしても登録機関と当該サーバとの間にSSL通信プロトコルが確立されることはない。従って、登録機関が当該サーバにアクセスした際、当該サーバと登録機関との間にSSLプロトコルのセッションが確立されることは、サーバ証明書発行要求により特定されるサーバに、テスト用証明書に対応する秘密鍵が存在することになる。この検証により、証明書の発行対象であるサーバの実在性が確認される。さらに、サーバ証明書の申込者が当該サーバについて管理権限を有する者であるか否かも検証される。この結果、従来のドメイン認証よりも一層セキュリティの高い本人認証が行われる。特に、インストールされるテスト用証明書はSSL証明書の形態をしているので、検証作業は高いセキュリティ環境のもとで行われる利点が達成される。さらに、検証作業において、SSLセッションが確立されているか否かが検証されると共にインストールされているテスト用証明書に含まれる証明書情報と送信されたテスト用証明書に含まれる証明書情報とを照合することにより行われるので、全ての作業は、電子データを処理することにより実行される。この結果、本人認証の一連の処理は、登録機関により管理されるコンピュータシステムにおいて自動的に実行される。
【0011】
本明細書において、「サーバ」とは、Webサーバだけでなく、コミニュケーションサーバやロードバランサ等のサーバ証明書を必要とする各種サーバを含むものである。
【0012】
本発明によるサーバ証明書発行システムは、登録機関により管理され、ネットワークを介して各種サーバから送られてくるサーバ証明書発行要求を受取り、所定の審査を行って署名要求ファイル(CSR)を発行機関に送信する登録サーバと、発行機関により管理され、登録サーバから送られてくるCSRを受け取り、デジタル署名を行ってサーバ証明書を生成し、生成されたサーバ証明書を前記登録サーバに送信する証明書発行サーバと、試験用のテスト用証明書を発行するテスト証明書発行機関により管理され、試験用のテスト用証明書を発行するテスト証明書発行サーバとを具えるサーバ証明書発行システムであって、
前記サーバは、申込情報を入力する手段と、公開鍵と秘密鍵とのキーペアを生成する手段と、生成された公開鍵を含むCSRを生成する手段と、CSR及び付加情報を含むサーバ証明書発行要求を生成する手段と、生成したサーバ証明書発行要求を登録サーバに送信する手段と、前記テスト証明書発行サーバにより生成され、本人認証のために登録サーバから送られてくるテスト用証明書をインストールする手段とを有し、
前記登録サーバは、前記サーバから送られてくるサーバ証明書発行要求を受信する手段と、前記テスト証明書発行サーバに対してテスト用証明書発行要求を送信する手段と、テスト証明書発行サーバにより生成されたテスト用証明書を受信して前記サーバに送信する手段と、前記サーバ証明書発行要求に含まれるアドレスのサーバに対してSSLプロトコルでアクセスする手段と、前記サーバにインストールされているテスト用証明書を検証する検証手段とを有し、
前記テスト証明書発行サーバは、テスト用証明書発行要求に含まれる情報を用いて、公開鍵証明書の規格として標準化されているX.509の規格に基づいて、SSL証明書のフォーマット形式のテスト用証明書を生成する手段を有することを特徴とする。
【0013】
本発明では、CSRはサーバ証明書発行要求を生成したサーバにおいて生成されるだけでなく、登録サーバにおいて生成することも可能である。CSRが登録サーバにおいて生成される場合、テスト用証明書と共に秘密鍵も登録サーバから対応するサーバに送信される。そして、当該サーバは、受信した秘密鍵を用いてテスト用証明書をインストールする。
【発明の効果】
【0014】
本発明によれば、SSL証明書の形態をしたテスト用証明書を用いて本人認証を行っているので、SSLプロトコルが確立された高いセキュリティ環境下において本人認証が行われる。この結果、従来のドメイン認証方法よりも一層高いセキュリティ環境下においてサーバ証明書が発行される。さらに、本人認証は、電子データを比較することにより行われるので、コンピュータシステム及び通信手段を利用することにより、サーバ証明書の申込からインストールまでの処理を自動的に行うことができる。
【発明を実施するための最良の形態】
【0015】
図1は本発明によるサーバ証明書発行システムの全体構成を示す図である。ネットワーク1には、ユーザ端末2a〜2n及びWebサーバ3a〜3mが接続されている。各ユーザは、ユーザ端末を介して自己が所有し又は管理し或いは使用権限を有するWebサーバにアクセスして作動させることができる。また、ネットワーク1には、通信機器として機能するサーバであるコミュニケーションサーバ4も接続されている。さらに、ネットワーク1には、ホスティング事業者に管理が委託されているWebサーバも接続されている。さらに、ネットワーク1には、証明書の発行要求を受け付ける登録機関により管理される登録サーバ6及び登録サーバから送られてくるCSRを受取りサーバ証明書を発行する発行機関により管理される証明書発行サーバ7が接続されている。さらに、ネットワーク1には、試験のために用いられるテスト用証明書を発行するテスト証明書発行機関により管理されるテスト証明書発行サーバ8も接続されている。テスト用証明書は、特定の環境下においてサーバ証明書がインストールされるか否かを確認するため、又は、特定の業務プログラムの動作を試験するために用いられるSSL証明書の形態をした証明書データであり、テスト証明書発行機関により発行される。このテスト用証明書は、各種サーバから登録サーバを介して送られてくる署名要求ファイルについて、テスト証明書発行サーバにおいてテスト証明書発行機関の秘密鍵を用いてデジタル署名することにより生成される。尚、テスト証明書発行機関は、登録機関又は発行機関が兼務する場合があり、そのような場合、テスト用証明書は登録機関又は発行機関から発行されることになる。
【0016】
各ユーザは、自己が所有し又は管理するWebサーバについてサーバ証明書の発行を希望する場合、ユーザ端末及びネットワークを介してWebサーバにアクセスしてサーバ証明書発行要求を生成し、ネットワークを介して登録サーバ6に送信する。また、コミュニケーションサーバ4についても、Webサーバと同様にサーバ証明書を発行することができる。この場合、当該コミュニケーションサーバの管理者は、端末及びネットワークを介してコミュニケーションサーバ4にアクセスし、サーバ証明書発行要求を生成して登録サーバ6に送信する。さらに、ホスティング事業者の管轄下にあるWebサーバについては、使用権限を有するユーザが自己のWebサーバにアクセスしてサーバ証明書発行要求を生成して登録サーバに送信することができる。或いは、Webサーバの管理がホスティング事業者委託されている場合、ユーザは、ホスティング事業者にサーバ証明書の発行申込を委託することができる。この場合、ホスティング事業者が、証明書の対象となるWebサーバにアクセスしてサーバ証明書発行要求を生成し、生成されたサーバ証明書発行要求はWebサーバから登録サーバに送信される。
【0017】
証明書発行サーバからサーバ証明書が生成された場合、生成されたサーバ証明書は登録サーバを介してWebサーバ及びコミュニケーションサーバを含む各種サーバにダウンロードされる。尚、サーバ証明書の申込からダウンロードまでの一連の処理は、Webサーバ及びコミュニケーションサーバを含む各種サーバについて同一であるため、以下の説明においてWebサーバを例にして説明する。
【0018】
本例では、サーバ証明書の発行要求から発行された証明書のダウンロードまでの各種の機能は、Webサーバ又はコミュニケーションサーバに実装されているコントロールパネルにより実行する。各Webサーバには、主としてWeb及びメールの設定及び管理を行うコントロールパネルが実装され、コントロールパネルの制御のもとでSSL証明書の発行及び管理が行われる。例えばWebサーバの管理者がサーバ証明書の発行を希望する場合、この管理者は、ネットワークを介して自己が管理するWebサーバにアクセスし、コントロールパネルのメニューを表示させる。そして、表示されたメニューから、メニュー「SSL証明書の発行」をクリックする。メニュー「SSL証明書の発行」がクリックされると、コントロールパネルは、サーバ証明書の申込情報を入力するための入力画面を表示する。サーバ証明書発行の申込情報として、少なくとも以下の情報を含む。
ア.当該Webサーバのコモンネーム(FQDN:Fully Qualified Domain Name)又はIPアドレス
イ.申込管理者の名前及び電子メールアドレス
ウ.証明書の有効開始日及び有効期間
エ.証明書の種類
必要な申込情報の入力が完了すると、コントロールパネルは、署名要求ファイル(CSR)を生成すると共にサーバ証明書発行要求を生成する。サーバ証明書発行要求は、CSR及び付随する付加情報を含む。CSRは、公開鍵、WebサーバのFQDN、カントリーコード、企業名、住所等の情報を含む。また、付加情報は、証明書の有効期間及び証明書の種類に関する情報を含む。CSR及び付加情報を含むサーバ証明書発行要求は、ネットワークを介して登録サーバ6に送出され、登録サーバにおいて本人認証を含む審査が行われる。当該証明書発行要求が所定の要件を満たしている場合、登録サーバ6はCSRを発行機関に設置されている証明書発行サーバ7に送り、証明書発行サーバは発行機関の秘密鍵を用いてデジタル署名を行ってサーバ証明書を作成する。作成されたサーバ証明書は登録サーバ6に送られ、ダウンロード領域に格納され、登録サーバはダウンロードが完了したことをWebサーバに通知する。Webサーバのコントロールパネルは、ダウンロード通知を受け取ると、登録サーバにダウンロード要求を行い、ダウンロードされたサーバ証明書をインストールする。すなわち、本例では、Webサーバの管理者による証明書発行要求が入力された後、Webサーバに実装されているコントロールパネルの制御のもとで、証明書の発行申込からサーバ証明書のインストールまでの一連の処理が自動的に実行される。
【0019】
図2は本発明によるWebサーバの一例の構成を示す線図である。Webサーバは、通信手段20を有し、通信手段20を介してユーザ端末との通信を実行する。さらに、Webサーバはコントロールパネル21を有し、コントロールパネル21によりメール及びWebの設定及び管理が行われる。従って、メール機能部22及びWeb機能部23の設定及び管理はコントロールパネル21により行われる。Web機能部23には、SSL証明書の制御機能部が設けられ、証明書のインストール、証明書を基にhttpsプロトコルの制御に加え、一般的にはPKI鍵ペアとCSRの生成機能等を備えている。Webサーバには、アプリケーション1〜3が実装されると共にデータベース24も実装されている。
【0020】
コントロールパネル21は、SSL証明書発行管理プログラム25が設けられ、このSSL証明書発行管理プログラム25の制御のもとでサーバ証明書の発行申込から発行されたサーバ証明書のインストールまでの一連の処理が実行される。
【0021】
図3は、Webサーバ、登録サーバ、テスト証明書発行サーバ及び証明書発行サーバ間におけるサーバ証明書の発行申込からサーバ証明書がインストールされるまでの処理手順を示す線図である。本例では、Webサーバから登録サーバに対してサーバ証明書の発行要求が送信された際、テスト証明書発行サーバによりCSRを用いて生成されたテスト用証明書を用いて本人認証を行う。テスト用証明書は、公開鍵証明書の規格として標準化されているX.509規格に基づいて生成され、SSL証明書のフォーマットで表された暗号化データである。このテスト用証明書は、テスト証明書発行サーバにおいて、テスト証明書発行機関の秘密鍵を用いてCSRにデジタル署名することにより生成される。Webサーバの管理者は、サーバ証明書の発行申込に際し、自己が管理するWebサーバにアクセスし、入力画面を表示させ、所定の申込事項を入力する。Webサーバは、コントロールパネルの制御のもとで、キーペア及びCSRを生成すると共にサーバ証明書発行要求を生成する。生成されたサーバ証明書発行要求は、ネットワークを介して登録サーバに送信される。
【0022】
登録サーバは、初めにフォーマットのチェックを行い、入力情報に誤りがある場合、エラー送信を行う。次に、登録サーバは、テスト用証明書発行要求を生成し、テスト用証明書行サーバに送信する。テスト用証明書発行要求は、テスト用証明書の発行を要求する旨の表示、CSR及び付随する付加情報を含む。テスト証明書発行サーバは、CSR及び必要に応じて付随する付加情報を用いて、テスト証明書発行機関の秘密鍵でデジタル署名を行ってテスト用証明書を生成する。テスト用証明書は、特定の環境下においてサーバ証明書がインストールされるか否かを試験するために用いられるSSL証明書の形態をした証明書データであり、テスト証明書発行機関から発行される。尚、テスト証明書発行機関は、正規の証明書を発行する発行機関とは名称(DN)が相違するため、利用者は受信した証明書がテスト用証明書であること明確に区別することができる。テスト証明書発行サーバにより生成されたテスト用証明書は、登録サーバに送信され、登録サーバからサーバ証明書発行要求に対する応答して対応するWebサーバに送信される。
【0023】
Webサーバは、CSRを生成する際に作成された秘密鍵を用いて、受信したテスト用証明書をインストールし、インストール完了通知を登録サーバに送信する。尚、登録サーバは、テスト用証明書を送信した後所定の時間期間内にインストール完了通知を受信しない場合、エラーとして処理する。
【0024】
登録サーバは、インストール完了通知を受信すると、サーバ証明書発行要求に含まれるアドレスのサーバに対してSSLプロトコルによるアクセスを行う。そして、SSLプロトコルが確立されるか否かが検証される。テスト用証明書は、公開鍵証明書の規格として標準化されているX.509規格に基づいて生成され、正規のSSL証明書と同一のフォーマットを有する。従って、秘密鍵を用いてテスト用証明書がインストールされている場合、登録サーバとWebサーバとの間にSSLセッションが確立され、SSLプロトコルに基づいてデータ交換が行われる。従って、登録サーバの検証手段は、Webサーバとの間にSSLプロトコルが確立されるか否か検証し、SSLプロトコルのセッションが確立されない場合エラーとして処理する。SSLプロトコルのセッションが確立されると、登録サーバとWebサーバとの間でデータ交換が行われ、登録サーバの検証手段が作動し、アクセスされたWebサーバのアドレスとCSRに含まれるアドレスとの一致性が確認されると共に、インストールされているテスト用証明書に含まれている証明書情報と送信したテスト用証明書に含まれている証明書情報との一致性が確認される。SSLセッションが確立されると共にアドレスの一致性及び証明書情報の一致性が確認できた場合、登録サーバは、有効なサーバ証明書発行要求であると判定する。一方、登録サーバは、SSLプロトコルでアクセスした際、SSLプロトコルが確立されない場合、本人認証できないものと判断し、エラーとして処理する。また、テスト用証明書に含まれる証明書情報の一致性が確認できない場合もエラーとして処理する。
【0025】
本人認証できた場合、登録サーバは、Webサーバに対して受付IDと共に受付完了通知を送信する。また、証明書発行サーバに対してCSR及び付加情報を正式に送信する。
【0026】
Webサーバは、登録サーバから受付完了通知を受信した場合及びエラー処理の通知を受信した場合、直ちにインストールされているテスト用証明書を消去する。
【0027】
証明書発行サーバは、CSR及び付加情報を受信すると、受取ったCSR及び付加情報について発行機関の秘密鍵を用いてデジタル署名を行ってサーバ証明書を生成する。生成されたサーバ証明書を登録サーバに送信する。登録サーバは、サーバ証明書を受取ると、受信したサーバ証明書をダウンロード領域に格納する。
【0028】
登録サーバは、Webサーバから周期的に送られてくるステータス照会を受信し、ダウンロード領域にサーバ証明書が格納されているか否かを確認し、格納されていない場合、応答としてWebサーバに未完了通知を送信する。サーバ証明書がダウンロード領域に格納されている場合、ステータス照会の応答としてダウンロード通知を行う。Webサーバは、ダウンロード通知を受信すると、登録サーバに対してダウンロード要求を送信する。登録サーバは、受信したダウンロード要求に応じて、該当するサーバ証明書をWebサーバにダウンロードする。Webサーバは、コントロールパネルの制御のもとで、ダウンロードされたサーバ証明書をインストールする。
【0029】
このように、本発明によるサーバ証明書発行システムでは、Webサーバの管理者がサーバ証明書の発行に必要な事項を入力画面に入力するだけで、サーバ証明書のインストールまでの一連の処理が自動的に実行され、管理者の手続的負担が大幅に軽減される。
【0030】
図4は、Webサーバに搭載されているコントロールパネルのSSL証明書発行管理プログラムの機能を示す線図である。Webサーバの管理者からの証明書発行のためのアクセスがあると、入力画面情報生成手段30が起動し、証明書を発行するために必要な申込情報を入力するための入力画面がモニタ上に表示される。サーバ管理者による申込情報の入力が完了すると、キーペア生成手段31が作動してWebサーバに公開鍵と秘密鍵のキーペアを生成する。次に、CSR生成手段32が作動して公開鍵を含むCSRが生成される。証明書の有効開始日及び有効期間及び証明書の種類を示す付加情報は、生成されたCSRと共にサーバ証明書発行要求生成手段33に送出される。サーバ証明書発行要求生成手段33において、サーバ証明書発行要求が生成され、通信手段20及びネットワーク1を介して登録機関に設置された登録サーバに送信される。
【0031】
SSL発行管理プログラムは、応答手段34を有し、登録サーバから送られてくるテスト用証明書を受信する。受信されたテスト用証明書は、テスト用証明書インストール手段35によりキーペア生成手段31により生成された秘密鍵と関連付けてインストールされる。テスト用証明書のインストールが完了すると、テスト用証明書インストール完了通知が応答手段34を介して登録サーバに送信される。尚、テスト証明書発行機関の証明書については、Webサーバの信頼するルート証明書リストに含めておくことが望ましい。
【0032】
登録サーバによる本人認証が終了し、登録サーバからWebサーバに対して受付完了通知が送信された場合又は本人認証できずエラーとして処理された場合、テスト用証明書消去手段36が作動してインストールされているテスト用証明書は消去される。
【0033】
さらに、SSL発行管理プログラムは、証明書の発行状況を登録サーバに問い合わせるステータス照会手段37を有し、サーバ証明書発行要求を送信した後登録サーバに対して周期的に証明書の発行状況を照会すると共に登録サーバからの応答を受信する。さらに、サーバ証明書ダウンロード要求手段38を有し、登録サーバからダウンロード通知がされた際、登録サーバに対してダウンロードの要求を行う。ダウンロードされたサーバ証明書は、サーバ証明書格納手段39に格納され、インストール手段40によりインストールされる。
【0034】
図5及び図6は、登録機関により管理される登録サーバのコンピュータシステムの一例を示す線図である。尚、図5はサーバ証明書発行要求を受信した後証明書発行サーバにCSR及び付加情報を送信するまでの機能を示し、図6はCSRを送信した後の機能を示す。Webサーバから送信された証明書発行要求は、通信手段50を介して証明書発行要求受信手段51により受信される。受信された証明書発行要求は、ID付与手段52により受付IDが付与され、記憶手段53に記憶される。記憶された証明書発行要求は、審査手段54により審査され、所定の申込事項が含まれているか否かフォーマットのチエックが行われる。所定の事項が含まれていない場合、エラーとして処理される。
【0035】
フォーマットのチェックが終了した後、テスト用証明書発行要求生成手段55が作動する。テスト用証明書発行要求生成手段は、テスト用証明書の発行を要求する旨の表示並びにサーバ証明書発行要求に含まれるCSR及び付加情報を含む。生成されたテスト用証明書発行要求は、テスト用証明書発行要求送信手段56を介してテスト証明書発行サーバに送信される。テスト証明書発行サーバは、CSR及び付加情報についてテスト証明発行機関の秘密鍵を用いてデジタル署名を行ってテスト用証明書を生成する。生成されたテスト用証明書は、ネットワークを介して登録サーバに送信される。
【0036】
テスト証明書発行サーバから送られてくるテスト用証明書は、テスト用証明書受信手段57により受信される。受信されたテスト用証明書は、テスト用証明書送信手段58により対応するWebサーバに送信され、Webサーバは、テスト用証明書をインストールすることが求められる。尚、テスト用証明書が送信された後所定の時間期間内にインストールされない場合、エラーとして処理する。
【0037】
Webサーバから送られてくるテスト用証明書インストール完了通知は、インストール完了通知受信手段59により受信される。次に、SSLプロトコルアクセス手段60が作動し、サーバ証明書発行要求に含まれるFQDNのサーバに対してSSLプロトコルによるアクセスが行われる。テスト用証明書が秘密鍵と関連付けてインストールされている場合、登録サーバとWebサーバとの間にSSLセッションが確立され、データの交換が行われる。次に、テスト用証明書検証手段61が作動し、SSLプロトコルのセッションが確立されるか否か検証されると共にWebサーバにインストールされているテスト用証明書の有効性が判断される。このテスト用証明書検証手段61は、アクセスしたサーバのアドレスとCSRに含まれるアドレス情報とが一致するか否か検証すると共にWebサーバに送信したテスト用証明書に含まれる証明書情報とインストールされているテスト用証明書に含まれる証明書情報とが一致するか否かも検証する。検証結果として、SSLセッションが確立されたこと、アドレスが一致すること、及びインストールされているテスト用証明書の内容と送信したテスト用証明書の内容とが一致することが確認できた場合、当該サーバ証明書発行要求は、有効なサーバ証明書発行要求であると判断する。検証結果として、SSLプロトコルのセッションが確立されない場合、エラーとして処理する。
【0038】
有効なサーバ証明書発行要求の場合、証明書申込受付完了通知手段62が作動し、Webサーバに対してサーバ証明書の申込の受付が完了したことを受付IDと共に送信する。また、CSR送信手段63が作動し、サーバ証明書発行要求から取り出されたCSR及び付加情報が証明書発行サーバに送信される。
【0039】
発行機関(IA)に設置された証明書発行サーバは、登録サーバから送られてくるCSR及び付加情報を受信すると、発行機関の秘密鍵を用いてデジタル署名を行ってサーバ証明書を生成し、ネットワークを介して登録サーバに送信する。
【0040】
図6を参照するに、証明書発行サーバから送られてくるサーバ証明書は、サーバ証明書受信手段64により受信され、ダウンロード領域65に格納される。登録サーバは、Webサーバから送られてくるステータス照会を受信するステータス照会受信手段66を有する。ステータス照会受信手段66は、Webサーバからのステータス照会を受信すると、受付IDをキーとしてダウンロード領域65に対応するサーバ証明書が格納されているか否かを確認する。サーバ証明書が格納されていない場合、ステータス応答送信手段67を介してWebサーバに対して未完了通知を行う。サーバ証明書が格納されている場合、ステータス応答送信手段を介してダウンロード通知を送信する。Webサーバからのダウンロード要求は、証明書ダウンロード要求受信手段68により受信される。Webサーバからのダウンロード要求が受信されると、当該サーバ証明書は、サーバ証明書ダウンロード手段69によりネットワークを介してWebサーバにダウンロードされる。図4に示すように、ダウンロードされたサーバ証明書は、Webサーバのサーバ証明書格納手段39に格納され、証明書インストール手段40によりインストールされる。
【0041】
尚、Webサーバからのステータス照会を受信した時点において、サーバ証明書がダウンロード領域に格納されている場合、ステータス応答としてステータス応答送信手段68を介して当該サーバ証明書をダウンロードすることも可能である。
【0042】
本人認証のために用いられるテスト用証明書の変形例について説明する。上述した実施例では、テスト証明書発行サーバにおいて、テスト証明書発行機関の秘密鍵を用いてデジタル署名することによりテスト用証明書が生成された。しかし、発行機関の正規な秘密鍵を用いてデジタル署名を行うことによりテスト用証明書を生成することも可能である。この場合、登録サーバは、サーバ証明書発行要求に含まれる付加情報である証明書の有効期間を数分〜数時間程度に短縮した付加情報を作成し、作成した付加情報とCSRを含むテスト用証明書発行要求を生成して証明書発行サーバに送信する。証明書発行サーバでは、受取ったCSR及び有効期間が短縮された付加情報について正規の秘密鍵を用いてデジタル署名を行い、テスト用証明書を生成する。生成されたテスト用証明書は、有効期間が数分〜数時間の正規のサーバ証明書である。この有効期間が短縮された正規のサーバ証明書をテスト用証明書として、登録サーバに送信し、登録サーバは対応するWebサーバに送信する。
【0043】
Webサーバは、登録サーバから送られてきたテスト用証明書をインストールし、インストールの完了を登録サーバに通知する。登録サーバは、当該WebサーバにSSLプロトコルでアクセスし、インストールされているテスト用証明書について検証を行う。検証の結果として、SSLプロトコルが確立されたことが確認された場合、正規なサーバ証明書の発行要求であると判断する。このように、発行機関の正規な秘密鍵を用いてテスト用証明書を生成することも可能である。
【0044】
上述したサーバ証明書発行システムでは、キーペア及びCSRはWebサーバにおいて生成したが、本発明によるサーバ証明書発行システムではキーペア及びCSRを登録サーバにおいて生成することも可能である。図7は、キーペア及びCSRを登録サーバにおいて生成するサーバ証明書発行システムの一連の処理手順を示す図であり、図8及び図9は登録サーバのコンピュータシステムを示す図である。尚、図8及び図9において、図5及び図6で用いた構成要素と同一の構成要素には同一符号を付し、その説明は省略する。図7を参照するに、Webサーバにおいて申込情報が入力され、サーバ証明書発行要求が生成される。申込情報として、WebサーバのFQDN、Dn(organization、organization unit、country code 等)、証明書の有効期限、証明書の種類、連絡用のメールアドレス、及びPkcs12用のパスワード等の情報が含まれる。ここで、Pkcs12用のパスワードは、登録サーバから送られてくるテスト用証明書及び秘密鍵を復号化するために用いられる。尚、Pkcs12の復号化プログラムは、Webサーバに標準装備されているため、Webサーバにおいて標準装備されているプログラムを用いてPkcs12の暗号化ファイルを復号化することが可能である。
【0045】
発行要求の受信に応じて、登録サーバは、キーペア生成手段70によりキーペアを生成すると共にCSR生成手段71によりCSRを生成する。続いて、テスト用証明書発行要求生成手段55によりCSRを含むテスト用証明書発行要求が生成され、テスト証明書発行サーバに送信される。テスト証明書発行サーバは、テスト用証明書発行要求に含まれるCSRを取り出し、テスト証明書発行機関の秘密鍵でデジタル署名を行い、テスト用証明書を生成する。生成されたテスト用証明書は、登録サーバに送信される。
【0046】
登録サーバは、Pkcs12暗号化ファイル生成手段73により、Pkcs12用のパスワードを用いてキーペア作成時に生成された秘密鍵及びテスト用証明書を暗号化し、Pkcs12暗号化ファイルを生成する。この暗号化ファイルは、ダウンロード領域65に格納される。そして、Webサーバからのダウンロード要求に応じて、対応するWebサーバに送信される。
【0047】
Webサーバは、受信したPkcs12暗号化ファイルをパスワードを用いて復号化し、テスト用証明書及び対応する秘密鍵を取り出す。続いて、Webサーバは、秘密鍵を用いて受信したサーバ証明書をインストールする。
【0048】
本発明は上述した実施例だけに限定されず、種々の変更や変形が可能である。上述した実施例では、入力画面情報入力手段、キーペア生成手段、CSR生成手段、及びランダム検証ページ生成手段をコントロールパネルに実装した実施例について説明したが、これらの手段がWebサーバに実装され、コントロールパネルに実装されていない場合についても適用される。
【0049】
さらに、上述した実施例では、1台のWebサーバを単一の者が管理する場合について説明したが、1台のWebサーバを複数の者が共用する共用型のWebサーバについても適用可能である。
【0050】
さらに、上述した実施例では、Webサーバに搭載されているコントロールパネルの制御のもとでサーバ証明書の発行申込から証明書のインストールまでの処理を行った。しかし、上述したSSL証明書発行管理プログラムをWebサーバに直接構築することも可能であり、或いは、プラグイン方式により追加の機能としてWebサーバに構築することも可能である。
【図面の簡単な説明】
【0051】
【図1】本発明によるサーバ証明書発行システムの全体構成を示す線図である。
【図2】本発明によるWebサーバの一例を示す線図である。
【図3】Webサーバ、登録サーバ及び証明書発行サーバ間の一連の操作及び処理を示す図である。
【図4】Webサーバに実装されたSSL証明書発行管理プログラムの一例を示す線図である。
【図5】登録サーバのコンピュータシステムのCSRの送信機能までを示す図である。
【図6】登録サーバのコンピュータシステムのCSR送信機能以後の機能を示す図である。
【図7】登録サーバにおいてテスト用証明書を生成する実施例を示す図である。
【図8】登録サーバにおいてテスト用証明書を生成する実施例における登録サーバのコンピュータシステムを示す図である。
【図9】登録サーバにおいてCSRを生成する実施例における登録サーバのコンピュータシステムを示す図である。
【符号の説明】
【0052】
1 ネットワーク
2a〜2n ユーザ端末
3a〜3m Webサーバ
4 コミュニケーションサーバ
5 ホスティング事業者
20,50 通信手段
21 コントロールパネル
22 メール機能部
23 Web機能部
24 データベース
25 SSL証明書発行管理プログラム
30 入力画面情報生成手段
31 キーペア生成手段
32 CSR生成手段
33 サーバ証明書発行要求生成手段
34 応答手段
35 テスト用証明書インストール手段
36 テスト用証明書消去手段
37 ステータス照会手段
38 ダウンロード要求手段
39 サーバ証明書格納手段
40 インストール手段
51 サーバ証明書発行要求受信手段
52 ID付与手段
53 記憶手段
54 審査手段
55 テスト用証明書発行要求生成手段
56 テスト用証明書発行要求送信手段
57 テスト用証明書受信手段
58 テスト用証明書送信手段
59 インストール完了通知受信手段
60 SSLプロトコルアクセス手段
61 テスト用証明書検証手段
62 受付完了通知送信手段
63 CSR送信手段
64 サーバ証明書受信手段
65 ダウンロード領域
66 証明書ステージ照会受信手段
67 ステータス応答送信手段
68 証明書ダウンロード要求受信手段
69 サーバ証明書ダウンロード手段

【特許請求の範囲】
【請求項1】
登録機関により管理され、ネットワークを介して各種サーバから送られてくるサーバ証明書発行要求を受取り、所定の審査を行って署名要求ファイル(CSR)を発行機関に送信する登録サーバと、発行機関により管理され、登録サーバから送られてくるCSRを受け取り、デジタル署名を行ってサーバ証明書を生成し、生成されたサーバ証明書を前記登録サーバに送信する証明書発行サーバと、試験用のテスト用証明書を発行するテスト証明書発行機関により管理され、テスト用証明書を発行するテスト証明書発行サーバとを具えるサーバ証明書発行システムにおいて実施される本人認証方法であって、
各種サーバから登録サーバに対してサーバ証明書発行要求を送信する工程と、
登録サーバからテスト証明書発行サーバに対して、テスト用証明書発行要求を送信する工程と、
前記テスト証明書発行サーバにおいて、前記サーバ証明書発行要求に含まれる情報を用い、公開鍵証明書の規格として標準化されているX.509の規格に基づきSSL証明書のフォーマットで表されたテスト用証明書を生成する工程と、
生成されたテスト用証明書を登録サーバから前記サーバに対して送信する工程と、
前記サーバにおいて、受取ったテスト用証明書をインストールする工程と、
前記登録サーバからサーバ証明書発行要求に含まれるアドレスのサーバに対してSSLプロトコルでアクセスする工程と、
前記登録サーバが前記サーバにアクセスした際、前記サーバとの間SSLプロトコルのセッションが確立されるか否かを検証する検証工程とを具えることを特徴とする本人認証方法。
【請求項2】
請求項1に記載の本人認証方法において、前記検証工程において、登録サーバは、SSLプロトコルのセッションが確立されるか否か検証すると共に、送信したテスト用証明書に含まれる証明書情報とインストールされているテスト用証明書に含まれる証明書情報とが一致するか否かを検証することを特徴とする本人認証方法。
【請求項3】
請求項1又は2に記載の本人認証方法において、前記登録サーバは、前記サーバに対してSSLプロトコルでアクセスした際、SSLプロトコルのセッションが確立された場合に限り、CSRを証明書発行サーバに送信することを特徴とする本人認証方法。
【請求項4】
請求項1、2又は3に記載の本人認証方法において、前記テスト用証明書は、サーバ証明書発行要求に含まれるCSR又は登録サーバにより生成されたCSRを用いて生成され、生成されたテスト用証明書は登録サーバを介して前記サーバに送信されることを特徴とする本人認証方法。
【請求項5】
登録機関により管理され、ネットワークを介して各種サーバから送られてくるサーバ証明書発行要求を受取り、所定の審査を行って署名要求ファイル(CSR)を発行機関に送信する登録サーバと、発行機関により管理され、登録サーバから送られてくるCSRを受け取り、デジタル署名を行ってサーバ証明書を生成し、生成されたサーバ証明書を前記登録サーバに送信する証明書発行サーバと、試験用のテスト用証明書を発行するテスト証明書発行機関により管理され、テスト用証明書を発行するテスト証明書発行サーバとを具えるサーバ証明書発行システムであって、
前記サーバは、申込情報を入力する手段と、公開鍵と秘密鍵とのキーペアを生成する手段と、生成された公開鍵を含むCSRを生成する手段と、CSR及び付加情報を含むサーバ証明書発行要求を生成する手段と、生成したサーバ証明書発行要求を登録サーバに送信する手段と、前記テスト証明書発行サーバにより生成され、本人認証のために登録サーバから送られてくるテスト用証明書をインストールする手段とを有し、
前記登録サーバは、前記サーバから送られてくるサーバ証明書発行要求を受信する手段と、前記テスト証明書発行サーバに対してテスト用証明書発行要求を送信する手段と、テスト証明書発行サーバにより生成されたテスト用証明書を受信して前記サーバに送信する手段と、前記サーバ証明書発行要求に含まれるアドレスのサーバに対してSSLプロトコルでアクセスする手段と、前記サーバにインストールされているテスト用証明書を検証する検証手段とを有し、
前記テスト証明書発行サーバは、テスト用証明書発行要求に含まれる情報を用いて、公開鍵証明書の規格として標準化されているX.509の規格に基づいて、SSL証明書のフォーマット形式のテスト用証明書を生成する手段を有することを特徴とするサーバ証明書発行システム。
【請求項6】
請求項5記載のサーバ証明書発行システムにおいて、前記登録サーバは、サーバ証明書発行要求に含まれるアドレスのサーバにアクセスした際にアクセスした際SSLプロトコルのセッションが確立された場合に限り、CSR及び付随する付加情報を証明書発行サーバに送信することを特徴とするサーバ証明書発行システム。
【請求項7】
請求項6に記載のサーバ証明書発行システムにおいて、前記登録サーバは、サーバ証明書発行要求に含まれるアドレスのサーバにアクセスした際にSSLプロトコルのセッションが確立され、且つ、送信したテスト用証明書に含まれる証明書情報とインストールされているテスト用証明書に含まれる証明書情報とが一致する場合に限り、CSRを証明書発行サーバに送信することを特徴とするサーバ証明書発行システム。
【請求項8】
請求項5から7までのいずれか1項に記載のサーバ証明書発行システムにおいて、前記テスト証明書発行サーバは、受信したテスト用証明書発行要求に含まれるCSRに対して、テスト証明書発行機関の秘密鍵を用いてデジタル署名を行ってテスト用証明書を生成することを特徴とするサーバ証明書発行システム。
【請求項9】
請求項5に記載のサーバ証明書発行システムにおいて、前記サーバは、主としてWeb及びメールの設定及び管理を行うコントロールパネルを有し、前記申込情報を入力するための手段、公開鍵と秘密鍵とのキーペアを生成する手段、CSRを生成する手段、サーバ証明書発行要求を生成する手段、及び、発行されたサーバ証明書をインストールする手段は、前記コントロールパネルに実装されていることを特徴とするサーバ証明書発行システム。
【請求項10】
登録機関により管理され、ネットワークを介して各種サーバから送られてくるサーバ証明書発行要求を受取り、所定の審査を行って署名要求ファイル(CSR)を発行機関に送信する登録サーバと、発行機関により管理され、登録サーバから送られてくるCSRを受け取り、デジタル署名を行ってサーバ証明書を生成し、生成されたサーバ証明書を前記登録サーバに送信する証明書発行サーバと、試験用のテスト用証明書を発行するテスト証明書発行機関により管理され、テスト用証明書を発行するテスト証明書発行サーバとを具えるサーバ証明書発行システムであって、
前記サーバは、申込情報を入力する手段と、サーバ証明書の発行を要求するサーバ証明書発行要求を生成する手段と、生成したサーバ証明書発行要求を登録サーバに送信する手段と、前記テスト証明書発行サーバにより生成され、本人認証のために登録サーバから送られてくるテスト用証明書をインストールする手段とを有し、
前記登録サーバは、前記サーバから送られてくるサーバ証明書発行要求を受信する手段と、公開鍵と秘密鍵とのキーペアを生成する手段と、生成された公開鍵を含むCSRを生成する手段と、前記テスト証明書発行サーバに対してテスト用証明書発行要求を送信する手段と、テスト証明書発行サーバにより生成されたテスト用証明書を受信して対応するサーバに送信する手段と、前記サーバ証明書発行要求に含まれるアドレスのサーバに対してSSLプロトコルでアクセスする手段と、前記サーバにインストールされているテスト用証明書を検証する検証手段とを有し、
前記テスト証明書発行サーバは、テスト用証明書発行要求に含まれる情報を用いて、公開鍵証明書の規格として標準化されているX.509の規格に基づいて、SSL証明書のフォーマット形式のテスト用証明書を生成する手段を有することを特徴とするサーバ証明書発行システム。
【請求項11】
請求項10に記載のサーバ証明書発行システムにおいて、前記サーバ証明書発行要求はパスワードを含み、前記登録サーバは、テスト用証明書及び生成された秘密鍵を前記パスワードを用いて暗号化し、暗号化ファイルを対応するサーバに送信し、前記サーバは、受信した暗号化ファイルを前記パスワードを用いて復号化し、受取った秘密鍵を用いてテスト用証明書をインストールすることを特徴とするサーバ証明書発行システム。
【請求項12】
請求項10に記載のサーバ証明書発行システムにおいて、前記サーバ証明書発行要求はパスワードを含み、前記登録サーバは、発行されたサーバ証明書及び秘密鍵を前記パスワードを用いて暗号化し、暗号化ファイルを対応するサーバに送信し、前記サーバは、受信した暗号化ファイルを前記パスワードを用いて復号化し、受取った秘密鍵を用いてサーバ証明書をインストールすることを特徴とするサーバ証明書発行システム。
【請求項13】
請求項5から12までのいずれか1項に記載のサーバ証明書発行システムにおいて、前記サーバは、インストールされたテスト用証明書を消去する手段を有し、登録サーバから受付完了通知又はエラー処理の通知を受取った際、インストールされているテスト用証明書を消去することを特徴とするサーバ証明書発行システム。
【請求項14】
請求項5から13までのいずれか1項に記載のサーバ証明書発行システムにおいて、前記サーバは、登録サーバに対して証明書の発行状況を問い合わせるステータス照会手段を有し、登録サーバにより付与された申込IDをキーとして登録サーバに対してステータス照会を周期的に実行することを特徴とするサーバ証明書発行システム。
【請求項15】
請求項14に記載のサーバ証明書発行システムにおいて、前記登録サーバは、さらに、証明書発行サーバから送られてきたサーバ証明書を受信する手段と、受信したサーバ証明書をダウンロード領域に格納する手段と、前記サーバから送られてきた証明書ステータス照会に対して応答する手段と、ダウンロード領域に格納されているサーバ証明書を対応するサーバにダウンロードするダウンロード手段とを有し、
前記登録サーバは、前記申込IDをキーとするサーバからの証明書ステータス照会を受信した際、対応するサーバ証明書がダウンロード領域に格納されているか否かを確認し、サーバ証明書が格納されている場合、当該ステータス照会に対する応答として、ダウンロード領域に格納されているサーバ証明書を対応するサーバにダウンロードし、サーバ証明書の発行申込から発行されたサーバ証明書をサーバにダウンロードするまでの処理を、一連の処理として自動的に実行することを特徴とするサーバ証明書発行システム。
【請求項16】
請求項5又は10に記載のサーバ証明書発行システムにおいて、前記サーバの管理者は、端末及びネットワークを介して自己が管理するサーバにアクセスし、サーバ証明書の発行申込情報を入力するための入力画面を呼出し、入力画面に必要な申込事項を入力することを特徴とするサーバ証明書発行システム。
【請求項17】
請求項5又は10に記載のサーバ証明書発行システムにおいて、前記サーバの管理がホスティング事業者に委託されており、ホスティング事業者がユーザからサーバ証明書の申込を依頼された場合、委託を受けたホスティング事業者の管理者は、対応するサーバにアクセスし、サーバ証明書の申込事項を入力することを特徴とするサーバ証明書発行システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2010−56717(P2010−56717A)
【公開日】平成22年3月11日(2010.3.11)
【国際特許分類】
【出願番号】特願2008−217732(P2008−217732)
【出願日】平成20年8月27日(2008.8.27)
【特許番号】特許第4252620号(P4252620)
【特許公報発行日】平成21年4月8日(2009.4.8)
【出願人】(504030163)GMOグローバルサイン株式会社 (3)
【Fターム(参考)】