(57)【要約】【課題】  多数発行された電子証明書を外部記憶装置であるＵＳＢトークンに格納する作業を簡易にでき、エンドユーザ自身での作業を支援して、且つ、セキュリティを向上させることができる電子証明書格納システムを提供する。【解決手段】  認証機関システム４から多数発行された暗号化された電子証明書（ＰＫＣＳ＃１２データ）を配信サーバ５に一旦格納し、各ユーザのユーザＰＣ９にＵＳＢトークン１０へ電子証明書を格納するためのプログラムをインストールし、ＵＳＢトークン１０がユーザＰＣ９のＵＳＢコネクタに押し込まれた状態で、当該プログラムの動作によって配信サーバ５にアクセスし、トークン用シリアル番号を送信すると、配信サーバ５からＰＫＣＳ＃１２データがユーザＰＣ９のオンメモリ又はハードディスク２７の特定ディレクトリにダウンロードされ、キーボード入力のＰＩＮ情報で復号化し、ＵＳＢトークン１０にインポートする。【選択図】        図１
2005341519.tif 000002
【特許請求の範囲】
【請求項１】
認証機関から多数発行された暗号化された電子証明書を各ユーザの所持するＵＳＢトークンに格納する電子証明書格納システムであって、
前記認証機関から多数発行された暗号化された電子証明書、ユーザ情報と前記ＵＳＢトークンに付与されたシリアル番号とをユーザ毎に配信データベースに格納し、暗号化された電子証明書のダウンロード要求に対してＵＳＢトークンのシリアル番号によって認証を行い、暗号化された電子証明書をダウンロードする配信サーバと、
暗号化された電子証明書をダウンロードしてＵＳＢトークンに格納するプログラムの動作によって、ＵＳＢコネクタに挿入されたＵＳＢトークンに格納されたシリアル番号を用いて前記配信サーバに暗号化された電子証明書のダウンロード要求を送信し、当該要求が認証されると前記配信サーバから暗号化された電子証明書のダウンロードを受け、当該ダウンロードされた暗号化された電子証明書を、ユーザ入力の当該電子証明書を復号化するためのＰＩＮ情報で復号化して前記挿入されたＵＳＢトークンに格納するユーザコンピュータとを有することを特徴とする電子証明書格納システム。
【請求項２】
認証機関から多数発行された暗号化された電子証明書を各ユーザの所持するＵＳＢトークンに格納する電子証明書格納システムであって、
前記認証機関から多数発行された暗号化された電子証明書、ユーザ情報と前記ＵＳＢトークンに付与されたシリアル番号とをユーザ毎に配信データベースに格納し、前記ＵＳＢトークンがＵＳＢコネクタに挿入されたユーザコンピュータからのＵＳＢトークンのシリアル番号を用いた暗号化された電子証明書のダウンロード要求に対して前記ＵＳＢトークンのシリアル番号によって認証を行い、ＰＩＮ情報によって復号化され前記ＵＳＢトークンに格納可能となる暗号化された電子証明書を前記ユーザコンピュータにダウンロードする配信サーバを有することを特徴とする電子証明書格納システム。
【請求項３】
ＵＳＢトークンに付与されたシリアル番号と暗号化された電子証明書、ユーザ情報との対応関係を配信サーバを介して配信データベースに格納させるコンピュータを備えたことを特徴とする請求項１又は２記載の電子証明書格納システム。
【請求項４】
ユーザコンピュータは、暗号化された電子証明書ダウンロード要求に際して、ＵＳＢトークンに格納されたシリアル番号を配信サーバに送信して当該シリアル番号に対応するユーザ情報を受信して表示し、ユーザ情報の確認情報を前記配信サーバに送信するものであり、
前記配信サーバは、前記ユーザコンピュータからシリアル番号を受信すると、配信データベースを参照して前記シリアル番号に対応するユーザ情報を取得して前記ユーザコンピュータに送信し、前記ユーザコンピュータからユーザ情報の確認情報を受信すると、当該ユーザに対応する暗号化された電子証明書をダウンロードすることを特徴とする請求項１又は３記載の電子証明書格納システム。
【請求項５】
ユーザコンピュータは、インストールしたプログラムの動作によって、配信サーバからダウンロードした暗号化された電子証明書をオンメモリに一時格納し、キーボードから入力されたＰＩＮ情報で前記暗号化された電子証明書を復号化することを特徴とする請求項１，３又は４記載の電子証明書格納システム。
【請求項６】
電子証明書格納システムにおけるユーザコンピュータで電子証明書に関する情報を格納するために動作するコンピュータプログラムは、当該コンピュータのＵＳＢコネクタにＵＳＢトークンを挿入するよう表示部に表示する処理と、前記ＵＳＢコネクタに前記ＵＳＢトークンの挿入を検出すると、前記ＵＳＢトークンからシリアル番号を読み取り、配信サーバに送信する処理と、前記配信サーバから受信したユーザ情報を前記表示部に表示する処理と、前記ユーザ情報の確認情報を前記配信サーバに送信する処理と、前記配信サーバから暗号化された電子証明書をダウンロードすると、オンメモリに一時的に格納する処理と、キーボードからＰＩＮ情報を入力するよう前記表示部に表示し、前記キーボードからＰＩＮ情報の入力があると、前記格納した暗号化された電子証明書を当該入力されたＰＩＮ情報で復号化し、前記ＵＳＢトークンに格納する処理とを有することを特徴とするプログラム。
【請求項７】
コンピュータプログラムをドライバにて実現することを特徴とする請求項５記載のプログラム。
【請求項８】
配信サーバとユーザコンピュータとの間で送信されるデータにプログラムの属性を持たせ、
当該プログラムが、記録媒体への入出力を行う入出力デバイスのドライバが動作すると、当該ドライバに対して特定のパラメータを強制的に変更し、前記入出力デバイスのドライバでの処理を制限又は不能とすることを特徴とする請求項１乃至５のいずれか記載の電子証明書格納システム。
【請求項９】
配信サーバとユーザコンピュータとの間で送信されるデータにプログラムの属性を持たせ、
当該プログラムが、表示を行う表示デバイスのドライバが動作すると、当該ドライバに対して特定のパラメータを強制的に変更し、前記表示デバイスのドライバでの処理を制限又は不能とすることを特徴とする請求項１乃至５のいずれか記載の電子証明書格納システム。
【請求項１０】
ユーザコンピュータは、インストールしたプログラムの動作によって、配信サーバからダウンロードした暗号化された電子証明書をハードディスクの特定ディレクトリに格納し、キーボードから入力されたＰＩＮ情報で前記暗号化された電子証明書を復号化してＵＳＢトークンに格納すると共に、前記特定ディレクトリからダウンロードした暗号化された電子証明書を削除することを特徴とする請求項１，３又は４記載の電子証明書格納システム。
【請求項１１】
ユーザコンピュータは、インストールしたプログラムの動作によらなければ、ハードディスクの特定ディレクトリへのアクセスを制限することを特徴とする請求項１０記載の電子証明書格納システム。
【請求項１２】
電子証明書格納システムにおけるユーザコンピュータで電子証明書に関する情報を格納するために動作するコンピュータプログラムは、当該コンピュータのＵＳＢコネクタにＵＳＢトークンを挿入するよう表示部に表示する処理と、前記ＵＳＢコネクタに前記ＵＳＢトークンの挿入を検出すると、前記ＵＳＢトークンからシリアル番号を読み取り、配信サーバに送信する処理と、前記配信サーバから受信したユーザ情報を前記表示部に表示する処理と、前記ユーザ情報の確認情報を前記配信サーバに送信する処理と、前記配信サーバから暗号化された電子証明書をダウンロードすると、ハードディスクの特定ディレクトリに格納する処理と、キーボードからＰＩＮ情報を入力するよう前記表示部に表示し、前記キーボードからＰＩＮ情報の入力があると、前記格納した暗号化された電子証明書を当該入力されたＰＩＮ情報で復号化し、前記ＵＳＢトークンに格納する処理と、前記特定ディレクトリから前記暗号化された電子証明書を削除する処理とを有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証局から発行された電子証明書を外部記憶装置であるＵＳＢ（Universal Serial Bus）トークンに格納するための電子証明書格納システムに係り、特に、電子証明書の一括発行に対する格納を自動化すると共に、その格納処理のセキュリティを向上させることができる電子証明書格納システムに関する。
【背景技術】
【０００２】
認証機関を利用した電子証明書の利用は、電子文書の送信者（Ａ）が認証局に公開鍵を届け出て電子証明書の発行を請求し、認証機関では、送信者（Ａ）からの請求であることを確認すると、送信者（Ａ）に対して公開鍵を含んだ電子証明書を発行する。
【０００３】
送信者（Ａ）は、自己の秘密鍵で電子文書を暗号化し、その暗号化文書と電子証明書を電子文書の受信者（Ｂ）に送信する。受信者（Ｂ）は、暗号化文書と電子証明書を受信し、その電子証明書から送信者（Ａ）の公開鍵を取り出し、その公開鍵で暗号化文書を復号することにより、発信元が間違いなく送信者（Ａ）であること、暗号化文書が伝送途中で改竄されていないことを確認できる。また、受信者（Ｂ）は、必要に応じて電子証明書が有効なものであるか否かを認証機関に確認することもできるようになっている。
【０００４】
尚、認証機関によっては、送信者（Ａ）に秘密鍵、公開鍵、電子証明書をセットで発行するところもあり、更に、複数の電子証明書を一括発行することもある。そして、発行された電子証明書は、コンピュータ本体のハードディスクに格納するのではなく、ネットワークから切り離すことができる外部記憶装置に格納するのが最良とされている。
【０００５】
尚、従来の先行技術として、平成１３年（２００１年）１１月１６日公開の特開２００１−３１９００３「電子証明書発行システム、電子証明書発行方法および電子証明書発行用プログラムを記録した記録媒体」（出願人：日本電気株式会社、発明者山賀宏之）がある（特許文献１参照）。
【０００６】
【特許文献１】特開２００１−３１９００３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記従来のように、複数の電子証明書を一括発行する場合には、その複数の電子証明書を外部記憶装置としてのＵＳＢトークンに格納する作業が面倒であるという問題点があった。
何故なら、ＵＳＢトークンは、パソコンに標準装備されているＵＳＢインターフェイスに挿せば使える利便性の高い外部記憶装置であるが、その利便性とはうらはらに情報の読み取り以外の登録・変更・追加・削除を行う場合も、必ずＵＳＢインターフェイスへの装着することが必須とされている。
【０００８】
よって、多数のＵＳＢインターフェイスを備えたパーソナルコンピュータ（ＰＣ）は存在せず、また、インターフェイスを増やすためのＨＵＢ（スター型ＬＡＮの集線装置）の開発も現実的ではなく、ハードウェア的な実現が困難であるため、多数のＵＳＢトークンに一括で電子証明書を発行し、格納することは自動化できず、全て手作業となっていた。つまり、ＵＳＢトークンは、１つ、１つ情報の登録作業を実施するしかない宿命を併せ持つ外部記憶装置である。
【０００９】
本発明は上記実状に鑑みて為されたもので、一括発行された電子証明書を外部記憶装置であるＵＳＢトークンに格納する作業を簡易にでき、それにより、エンドユーザ自身での作業を支援して、且つ、セキュリティを向上させることができる電子証明書格納システムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記従来例の問題点を解決するための本発明は、認証機関から多数発行された暗号化された電子証明書を各ユーザの所持するＵＳＢトークンに格納する電子証明書格納システムであって、認証機関から多数発行された暗号化された電子証明書、ユーザ情報と前記ＵＳＢトークンに付与されたシリアル番号とをユーザ毎に配信データベースに格納し、暗号化された電子証明書ダウンロード要求に対してＵＳＢトークンのシリアル番号によって認証を行い、暗号化された電子証明書をダウンロードする配信サーバと、暗号化された電子証明書をダウンロードしてＵＳＢトークンに格納するプログラムの動作によって、ＵＳＢコネクタに挿入されたＵＳＢトークンに格納されたシリアル番号を用いて配信サーバに暗号化された電子証明書ダウンロード要求を送信し、当該要求が認証されると配信サーバから暗号化された電子証明書のダウンロードを受け、当該ダウンロードされた暗号化された電子証明書を、ユーザ入力の当該電子証明書を復号化するためのＰＩＮ情報で復号化して挿入されたＵＳＢトークンに格納するユーザコンピュータとを有することを特徴としている。
【００１１】
本発明は、認証機関から多数発行された暗号化された電子証明書を各ユーザの所持するＵＳＢトークンに格納する電子証明書格納システムであって、認証機関から多数発行された暗号化された電子証明書、ユーザ情報とＵＳＢトークンに付与されたシリアル番号とをユーザ毎に配信データベースに格納し、ＵＳＢトークンがＵＳＢコネクタに挿入されたユーザコンピュータからのＵＳＢトークンのシリアル番号を用いた暗号化された電子証明書のダウンロード要求に対してＵＳＢトークンのシリアル番号によって認証を行い、ＰＩＮ情報によって復号化されＵＳＢトークンに格納可能となる暗号化された電子証明書をユーザコンピュータにダウンロードする配信サーバを有することを特徴とする。
【００１２】
また、本発明は、上記電子証明書格納システムにおいて、ユーザコンピュータが、インストールしたプログラムの動作によって、配信サーバからダウンロードした暗号化された電子証明書をハードディスクの特定ディレクトリに格納し、キーボードから入力されたＰＩＮ情報で暗号化された電子証明書を復号化してＵＳＢトークンに格納すると共に、特定ディレクトリから当該暗号化された電子証明書を削除することを特徴としている。
【００１３】
また、本発明は、上記電子証明書格納システムにおいて、ユーザコンピュータが、インストールしたプログラムの動作によらなければ、ハードディスクの特定ディレクトリへのアクセスを制限することを特徴としている。
【００１４】
本発明は、電子証明書格納システムにおけるユーザコンピュータで電子証明書を格納するために動作するコンピュータプログラムが、当該コンピュータのＵＳＢコネクタにＵＳＢトークンを挿入するよう表示部に表示する処理と、ＵＳＢコネクタにＵＳＢトークンの挿入を検出すると、ＵＳＢトークンからシリアル番号を読み取り、配信サーバに送信する処理と、配信サーバから受信したユーザ情報を表示部に表示する処理と、ユーザ情報の確認情報を配信サーバに送信する処理と、配信サーバから暗号化された電子証明書をダウンロードすると、オンメモリに一時的に格納する処理と、キーボードからＰＩＮ情報を入力するよう表示部に表示し、キーボードからＰＩＮ情報の入力があると、格納した暗号化された電子証明書を当該入力されたＰＩＮ情報で復号化し、ＵＳＢトークンに格納する処理とを有することを特徴としている。
【００１５】
本発明は、上記コンピュータプログラムをドライバにて実現することを特徴としている。
【００１６】
本発明は、電子証明書格納システムにおけるユーザコンピュータで電子証明書を格納するために動作するコンピュータプログラムが、当該コンピュータのＵＳＢコネクタにＵＳＢトークンを挿入するよう表示部に表示する処理と、ＵＳＢコネクタにＵＳＢトークンの挿入を検出すると、ＵＳＢトークンからシリアル番号を読み取り、配信サーバに送信する処理と、配信サーバから受信したユーザ情報を表示部に表示する処理と、ユーザ情報の確認情報を配信サーバに送信する処理と、配信サーバから暗号化された電子証明書をダウンロードすると、ハードディスクの特定ディレクトリに格納する処理と、キーボードからＰＩＮ情報を入力するよう表示部に表示し、キーボードからＰＩＮ情報の入力があると、格納した暗号化された電子証明書を当該入力されたＰＩＮ情報で復号化し、ＵＳＢトークンに格納する処理と、特定ディレクトリから当該暗号化された電子証明書を削除する処理とを有することを特徴としている。
【発明の効果】
【００１７】
本発明によれば、認証機関から多数発行された暗号化された電子証明書を各ユーザの所持するＵＳＢトークンに格納する電子証明書格納システムであって、認証機関から多数発行された暗号化された電子証明書、ユーザ情報と前記ＵＳＢトークンに付与されたシリアル番号とをユーザ毎に配信データベースに格納し、暗号化された電子証明書ダウンロード要求に対してＵＳＢトークンのシリアル番号によって認証を行い、暗号化された電子証明書をダウンロードする配信サーバと、暗号化された電子証明書をダウンロードしてＵＳＢトークンに格納するプログラムの動作によって、ＵＳＢコネクタに挿入されたＵＳＢトークンに格納されたシリアル番号を用いて配信サーバに暗号化された電子証明書ダウンロード要求を送信し、当該要求が認証されると配信サーバから暗号化された電子証明書のダウンロードを受け、当該ダウンロードされた暗号化された電子証明書を、ユーザ入力の当該電子証明書を復号化するためのＰＩＮ情報で復号化して挿入されたＵＳＢトークンに格納するユーザコンピュータとを有するものとしているので、多数発行された電子証明書をＵＳＢトークンに格納する作業を簡易にでき、それにより、エンドユーザ自身での作業を支援して、且つ、セキュリティを向上させることができる効果がある。
【００１８】
本発明によれば、認証機関から多数発行された暗号化された電子証明書を各ユーザの所持するＵＳＢトークンに格納する電子証明書格納システムであって、認証機関から多数発行された暗号化された電子証明書、ユーザ情報とＵＳＢトークンに付与されたシリアル番号とをユーザ毎に配信データベースに格納し、ＵＳＢトークンがＵＳＢコネクタに挿入されたユーザコンピュータからのＵＳＢトークンのシリアル番号を用いた暗号化された電子証明書のダウンロード要求に対してＵＳＢトークンのシリアル番号によって認証を行い、ＰＩＮ情報によって復号化されＵＳＢトークンに格納可能となる暗号化された電子証明書をユーザコンピュータにダウンロードする配信サーバを有するものとしているので、多数発行された電子証明書をＵＳＢトークンに格納する作業を簡易にでき、それにより、エンドユーザ自身での作業を支援して、且つ、セキュリティを向上させることができる効果がある。
【００１９】
本発明によれば、ユーザコンピュータは、インストールしたプログラムの動作によって、配信サーバからダウンロードした暗号化された電子証明書をハードディスクの特定ディレクトリに格納し、キーボードから入力されたＰＩＮ情報で暗号化された電子証明書を復号化してＵＳＢトークンに格納すると共に、特定ディレクトリから当該暗号化された電子証明書を削除する上記電子証明書格納システムとしているので、多数発行された電子証明書をＵＳＢトークンに格納する作業を簡易にでき、更にその作業のセキュリティを向上させることができる効果がある。
【００２０】
本発明によれば、ユーザコンピュータは、インストールしたプログラムの動作によらなければ、ハードディスクの特定ディレクトリへのアクセスを制限する上記電子証明書格納システムとしているので、一括発行された電子証明書をＵＳＢトークンに格納する作業についてセキュリティを向上させることができる効果がある。
【００２１】
本発明によれば、電子証明書格納システムにおけるユーザコンピュータで電子証明書を格納するために動作するコンピュータプログラムは、当該コンピュータのＵＳＢコネクタにＵＳＢトークンを挿入するよう表示部に表示する処理と、ＵＳＢコネクタにＵＳＢトークンの挿入を検出すると、ＵＳＢトークンからシリアル番号を読み取り、配信サーバに送信する処理と、配信サーバから受信したユーザ情報を表示部に表示する処理と、ユーザ情報の確認情報を配信サーバに送信する処理と、配信サーバから暗号化された電子証明書をダウンロードすると、オンメモリに一時的に格納する処理と、キーボードからＰＩＮ情報を入力するよう表示部に表示し、キーボードからＰＩＮ情報の入力があると、格納した暗号化された電子証明書を当該入力されたＰＩＮ情報で復号化し、ＵＳＢトークンに格納する処理とを有するプログラムとしているので、多数発行された電子証明書を容易にＵＳＢトークンに格納できる効果がある。
【００２２】
本発明によれば、上記コンピュータプログラムをドライバにて実現するようにしているので、セキュリティを向上させることができる効果がある。
【００２３】
本発明によれば、電子証明書格納システムにおけるユーザコンピュータで電子証明書を格納するために動作するコンピュータプログラムは、当該コンピュータのＵＳＢコネクタにＵＳＢトークンを挿入するよう表示部に表示する処理と、ＵＳＢコネクタにＵＳＢトークンの挿入を検出すると、ＵＳＢトークンからシリアル番号を読み取り、配信サーバに送信する処理と、配信サーバから受信したユーザ情報を表示部に表示する処理と、ユーザ情報の確認情報を配信サーバに送信する処理と、配信サーバから暗号化された電子証明書をダウンロードすると、ハードディスクの特定ディレクトリに格納する処理と、キーボードからＰＩＮ情報を入力するよう表示部に表示し、キーボードからＰＩＮ情報の入力があると、格納した暗号化された電子証明書を当該入力されたＰＩＮ情報で復号化し、ＵＳＢトークンに格納する処理と、特定ディレクトリから当該暗号化された電子証明書を削除する処理とを有するプログラムとしているので、多数発行された電子証明書を容易にＵＳＢトークンに格納できる効果がある。
【発明を実施するための最良の形態】
【００２４】
本発明の実施の形態について図面を参照しながら説明する。
本発明の実施の形態に係る電子証明書格納システムは、認証機関から一括発行された電子証明書及びＵＳＢトークンに発行されたシリアル番号等の情報を配信サーバに一旦格納し、各ユーザのコンピュータにＵＳＢトークンへ電子証明書を格納するためのプログラムをインストールし、ＵＳＢトークンがコンピュータのＵＳＢコネクタに押し込まれた状態で、当該プログラムの動作によって配信サーバにアクセスし、ＵＳＢトークンのシリアル番号を送信すると、配信サーバから電子証明書がコンピュータのワークメモリ又はハードディスクにダウンロードされ、ユーザ入力によるＰＩＮ情報で電子証明書を復号化し、ＵＳＢトークンにインポートされるものであり、ＵＳＢトークンへの電子証明書を容易に格納することができる。
尚、電子証明書に関する情報をＵＳＢトークンに格納する処理は、１年に１度の割合で行われるものである。
【００２５】
本発明の実施の形態に係る電子証明書格納システム（本システム）の構成について図１、図２を参照しながら説明する。図１は、本発明の実施の形態に係る電子証明書格納システムにおける配信サーバへのデータインポートを行うシステムの構成概略図であり、図２は、本発明の実施の形態に係る電子証明書格納システムにおける電子証明書ダウンロード・インポートを行うシステムの構成概略図である。
本システムにおける配信サーバへのデータインポートを行う部分のシステムは、図１に示すように、管理者コンピュータ（管理者ＰＣ）３と、認証機関システム４と、一括発行された電子証明書をユーザに対してダウンロードする配信サーバ５と、一括配信された電子証明書等の情報を格納する配信データベース（配信ＤＢ）６と、ＵＳＢトークンにシリアル番号を付与する出荷サービスコンピュータ（出荷サービスＰＣ）７とを基本的に有している。
【００２６】
データインポートを行うシステムの各部を具体的に説明する。
管理者ＰＣ３は、入力データの登録及び指示に従い、鍵を生成し、証明書署名（発行）要求（CSR : Certificate Signing Request）を生成して認証機関システム４に証明書申請を行うものである。証明書申請は、必要事項を記入した用紙を提出することで行うこともできる。
また、管理者ＰＣ３は、認証機関システム４から配布された電子媒体に記録された情報を読み込み、多数発行された証明書を公開鍵暗号基準（PKCS : Public Key CryptoSystem Standards）＃１２によって暗号化された電子証明書（ＰＫＣＳ＃１２データとする）、復号用ＰＩＮ情報（電子証明書に関する情報の暗証番号：PIN : Personal Identification Number）、証明書用シリアル番号、ユーザ情報としてユーザ名、メールアドレス）等の情報を配信サーバ４に出力する。認証機関システム４から発行された情報は、ＣＤ−ＲＯＭ等の電子媒体で配布される。
【００２７】
暗号化された電子証明書の情報とは、暗号化された公開鍵・秘密鍵を含む電子証明書データのことであり、このデータをＰＫＣＳ＃１２データとしている。尚、本実施の形態では、ＰＫＣＳ＃１２で暗号化されたデータを対象としているが、これ以外の暗号化方式によって暗号化されたデータであってもよい。
また、配信サーバ５は、管理者ＰＣ３から入力された多数のＰＫＣＳ＃１２データとこれに対応する復号用ＰＩＮ情報、証明書用シリアル番号、ユーザ情報（ユーザ名、ユーザのメールアドレス）を配信ＤＢ６に格納する。この復号用ＰＩＮ情報は、秘密鍵を復号化するのに用いられるものである。
また、ＰＩＮ情報は、管理者ＰＣ３からの指示によりユーザ毎に紙媒体に印刷されて該当するユーザに配布されるようになっている。
【００２８】
管理者ＰＣ３において、管理者が電子証明書発行用のデータを入力し、管理者はＰＫポリシーを予め設定することが可能である。
認証機関システム４において、多数の電子証明書発行に関する証明書申請を受け付けると、多数の暗号化された電子証明書（ＰＳＣＫ＃１２データ）、復号用ＰＩＮ情報、証明書用シリアル番号、ユーザ情報（ユーザ名＋ユーザメールアドレス）をＣＤ−ＲＯＭ等の電子媒体で発行する。
尚、暗号化された電子証明書等を電子媒体で発行しているが、オンラインで発行するようにしてもよい。
【００２９】
出荷サービスＰＣ７は、顧客企業内で使用されるＵＳＢトークン内のメモリに対してトークン用シリアル番号を付与すると共に、そのシリアル番号をＣＤ−ＲＯＭ等の電子媒体で発行するコンピュータである。
尚、トークン用シリアル番号の発行を電子媒体で行っているが、オンラインで発行するようにしてもよい。
【００３０】
配信サーバ５は、一括発行された多数のＰＫＳＣ＃１２データ、復号用ＰＩＮ情報、証明書用シリアル番号、ユーザ情報を入力し、出荷サービスＰＣ７で発行されたＵＳＢトークンのシリアル番号（トークン用シリアル番号）を入力し、管理者ＰＣ３での操作によってユーザ毎に、ＰＫＣＳ＃１２データ、復号用ＰＩＮ情報、証明書用シリアル番号、ユーザ情報とトークン用シリアル番号とを対応付けて配信ＤＢ６に格納する。このユーザ毎にＰＫＣＳ＃１２データ等とトークン用シリアル番号との対応付けは、手作業ではなく、配信サーバ５に格納された処理プログラムによって実行することができる。つまり、ユーザ情報、例えばメールアドレスをキーにＰＫＣＳ＃１２データ等とトークン用シリアル番号との対応付けて組で配信ＤＢ６に記憶するようにしてもよい。
【００３１】
配信ＤＢ６は、ユーザ毎に、ＰＫＣＳ＃１２データ、復号用ＰＩＮ情報、証明書用シリアル番号、ユーザ情報、トークン用シリアル番号を記憶するものである。
また、配信サーバ５に、入力装置、表示装置、記録媒体読み取り装置を備え、管理者ＰＣ３で行う作業を、配信サーバ５で直接行うようにしてもよい。
【００３２】
次に、データインポートを行うシステムの動作について説明する。
出荷サービスＰＣ７は、顧客企業内のユーザが使用するＵＳＢトークン全てについてトークン用シリアル番号を発行する作業を行う。具体的には、ＵＳＢトークン１０内のメモリに発行したトークン用シリアル番号を記憶させ、更に発行されたる。この段階で、どのＵＳＢトークンにはどのトークン用シリアル番号が記憶されたのかを識別できるように、トークン用シリアル番号のシール又はタグを付け、更にそのシリアル番号に対応するユーザ名のシール又はタグを付けるようにする。
また、出荷サービスＰＣ７では、発行したトークン用シリアル番号をＣＤ−ＲＯＭ等の電子媒体に格納する処理を行う。この電子媒体は管理者ＰＣ３で読み込まれて、配信サーバ５に入力される。
【００３３】
そして、出荷サービスＰＣ７が発行したトークン用シリアル番号を配信サーバ５は、ユーザ情報（例えばユーザ名）と関連付けてＰＫＣＳ＃１２データ、復号用ＰＩＮ情報、証明書用シリアル番号と共に配信ＤＢ６に記憶しておく。
【００３４】
また、管理者ＰＣ３から顧客企業のユーザ情報（ユーザ名、ユーザＩＤ、ユーザメールアドレス等の情報）が予め登録されている。そして、管理者ＰＣ３からＰＫポリシーを設定する入力が為され、電子証明書発行の依頼書を作成し、認証機関システム４に対して証明書申請を行う。電子証明書発行依頼の手続は、認証機関システム４に対してオンラインで行うようにしてもよい。
【００３５】
認証機関システム４は、証明書申請に対して一括発行した多数の暗号化された電子証明書（ＰＫＣＳ＃１２データ）、復号用ＰＩＮ情報、証明書用シリアル番号、ユーザ情報をＣＤ−ＲＯＭ等の電子媒体に格納して配布する。尚、暗号化された電子証明書等のデータを認証機関システム４が配信サーバ５にオンライン発行するようにしてもよい。
ＰＫＣＳ＃１２データは、存在するユーザに向けて発行されるものであるから、ユーザとの対応関係が得られたものとなっている。具体的には、ＰＫＣＳ＃１２データのファイル名とユーザ名とが対応付けられて配信ＤＢ６に格納されるものである。
【００３６】
配信サーバ５は、発行されたトークン用シリアル番号と一括発行された多数のＰＫＣＳ＃１２データ等の情報について配信ＤＢ６にユーザ情報と対応付けて格納する。
これにより、配信ＤＢ６は、ユーザ情報に対応付けてトークン用シリアル番号、ＰＫＣＳ＃１２データ、復号用ＰＩＮ情報、証明書用シリアル番号を格納している。
【００３７】
次に、本システムにおける電子証明書ダウンロード・インポートを行う部分のシステムは、図２に示すように、配信サーバ５と、配信ＤＢ６と、ユーザのコンピュータ（ユーザＰＣ）９と、電子証明書が格納されるＵＳＢトークン１０とを基本的に有している。
図２では、説明を簡単にするために、ユーザＰＣ９と対応するＵＳＢトークン１０を１組しか図示していないが、実際には複数のユーザＰＣ９と対応するＵＳＢトークン１０が存在している。
【００３８】
電子証明書ダウンロード・インポートを行うシステムの各部を説明する。
配信サーバ５は、ユーザＰＣ９からの電子証明書ダウンロードアクセスに対して、ＵＳＢトークン１０に格納されたトークン用シリアル番号を用いて認証を行い、認証が適性であれば当該ユーザＰＣ９に対して電子証明書をダウンロードする。電子証明書のダウンロードの際は、配信サーバ５はＳＳＬ（Secure Socket Layer）暗号化を行う。
【００３９】
ＵＳＢトークン１０に電子証明書を格納するための格納プログラム、格納ドライバ、トークンユーティリティはＣＤ−ＲＯＭ等の電子媒体で提供され、ユーザＰＣ９にインストールされる。また、格納プログラム等をＵＳＢトークン内の記憶部に格納して提供することも考えられる。更に、格納プログラム等を特定のサーバ（プログラム提供サーバ）からダウンロードしてユーザＰＣ９に格納するようにしてもよい。
【００４０】
ユーザＰＣ９は、ＣＤ−ＲＯＭ等の電子媒体から読み込んだインストレーションプログラムを起動し、格納プログラム、格納ドライバ、トークンユーティリティをインストールする。その後、ユーザＰＣ９にＵＳＢトークン１０を装着し、電子証明書のダウンロード処理を行う。尚、格納プログラムには、配信サーバ５のＵＲＬ（Uniform Resource Locator）が記憶されており、配信サーバ５のサイトアクセスを自動化している。
【００４１】
ユーザＰＣ９は、各プログラム等のインストールが終了すると、電子証明書格納プログラムが起動し、ＵＳＢトークン１０がＵＳＢコネクタに挿入されるよう表示部に指示を出力し、ＵＳＢトークン１０の挿入を判断すると、当該格納プログラムに記述された配信サーバ５のＵＲＬにアクセスし、ＵＳＢトークン１０に格納されたトークン用シリアル番号を読み取って配信サーバ５に送信する。
【００４２】
ユーザＰＣ９は、送信したトークン用シリアル番号に対応して配信サーバ５からユーザ名を受信すると、表示部にユーザ名を表示して、ユーザに目検の確認を行わせる。確認動作は、画面上に表示されたユーザ名の下に設けられた「確認」のボタンをクリックすることにより為される。
その目検の確認が為されると、ユーザＰＣ９は、確認情報を再度配信サーバ５に送信する。
【００４３】
ユーザＰＣ９は、トークン用シリアル番号に基づいて配信サーバ５で認証が為されると、配信サーバ５から当該ユーザに対応する暗号化された電子証明書をダウンロードしてワークメモリ（オンメモリ）に一時的に格納する。
そして、ユーザＰＣ９は、オンメモリに一時記憶した暗号化された電子証明書をユーザ入力によるＰＩＮ情報で復号化してＵＳＢトークン１０に格納する。
【００４４】
ＵＳＢトークン１０は、出荷サービスＰＣ７でトークン用シリアル番号がメモリに格納され、格納プログラム、トークンユーティリティ、格納ドライバの処理によって復号化された電子証明書が書き込まれる。
【００４５】
次に、電子証明書ダウンロード・インポートを行うシステムの動作について図３を参照しながら説明する。図３は、電子証明書ダウンロード・インポートの処理を示すフローチャートである。
図３に示すように、ユーザＰＣ９は、ＣＤ−ＲＯＭ等の記録媒体又はＵＳＢトークンから、それら記録媒体に記憶された格納プログラム等をインストールするインストレーションプログラムを読み込む。
【００４６】
尚、ユーザＰＣ９は、記録媒体から格納プログラム等をインストールするようにしているが、ネットワークを経由してこれらプログラム等を提供するサーバから格納プログラム等のダウンロードを行うようにしてもよい。
そして、ユーザＰＣ９は、インストレーションプログラムを起動して、格納プログラム、トークンユーティリティ、格納ドライバをインストールする（Ｓ２）。
【００４７】
次に、ユーザＰＣ９は、格納プログラムの動作により、電子証明書のダウンロード処理（Ｓ３）を開始する。電子証明書のダウンロードを行う前に、ＵＳＢトークン１０をユーザＰＣ９のＵＳＢコネクタに挿入するようダイアログ表示を行い、ユーザにＵＳＢトークン１０の挿入を行わせる。
【００４８】
そして、ユーザＰＣ９は、ＵＳＢトークン１０の挿入を検知すると、ＵＳＢトークン１０からトークン用シリアル番号を読み取り、配信サーバ５に通知する。
配信サーバ５では、通知されたトークン用シリアル番号に対応するユーザが存在するか否かの認証を行い（Ｓ４）、対応するユーザが存在しなければ（Ｎｏの場合）認証ＮＧを認証結果としてユーザＰＣ９に通知し、対応するユーザが存在すれば（Ｙｅｓの場合）ユーザ名をユーザＰＣ９に通知する。
【００４９】
ユーザＰＣ９は、配信サーバ５から認証ＮＧを受信すると、異常終了のメッセージを表示部に表示して処理を終了する。また、ユーザＰＣ９は、配信サーバ５からユーザ名を受信すると、表示部にトークン用シリアル番号とユーザ名を表示して、ユーザ目検による確認を行う。
【００５０】
ユーザの目検による確認処理は、表示部にトークン用シリアル番号とユーザ名を表示した画面の中に、「確認」ボタンと「終了」ボタンを設け、その「確認」ボタン又は「終了」ボタンのいずれかがクリックされたかを判断する（Ｓ５）。
「終了」ボタンがクリックされると（Ｎｏの場合）、処理を終了し、「確認」ボタンがクリックされると（Ｙｅｓの場合）、ユーザＰＣ９は、確認通知を配信サーバ５に送信する。
【００５１】
配信サーバ５は、確認通知を受信すると、暗号化された電子証明書のＰＫＣＳ＃１２データをユーザＰＣ９にダウンロードする。
【００５２】
配信サーバ５からダウンロードされたＰＫＣＳ＃１２データを、ユーザＰＣ９は、ＵＳＢトークン１０に格納する処理を行う（Ｓ６）。具体的には、ユーザＰＣ９は、ダウンロードしてオンメモリに一時的に記憶したＰＫＣＳ＃１２データを、ユーザが管理者から印刷書面として通知を受けたＰＩＮ情報で復号化し、ＵＳＢトークン１０に格納する。
ＰＫＣＳ＃１２データの格納後に、ユーザＰＣ９は、配信サーバ５に格納終了を通知する。
【００５３】
次に、ユーザＰＣ９内のダウンロード・インポート処理を行うための構成について図４を参照しながら説明する。図４は、ユーザＰＣ９におけるダウンロード・インポート処理を行う構成概略図である。
ユーザＰＣ９の構成として、ハードウェア、ドライバ、オペレーティングシステム、アプリケーションソフトウェアから構成される。但し、ハードウェア以外の構成はソフトウェアによって実現されるものであり、ドライバは、オペレーションシステムを介さずにハードウェア間の処理を実現するものであり、アプリケーションソフトウェアは、オペレーションシステム上で動作するものとなっている。
【００５４】
ユーザＰＣ９のハードウェア構成としては、ネットワークカード（NIC : Network Interface Card）２１、ワークメモリとしてのオンメモリ２２、キーボード２３、それにＵＳＢトークン１０が含まれる。
尚、図４には図示していないが、ユーザＰＣ９のハードウェア構成として中央処理装置（CPU : Central Processing Unit）、ハードディスク等の記憶装置、表示装置等も当然に備えるものであり、ＵＳＢトークン１０を挿入するためのＵＳＢコネクタも設けられている。
【００５５】
また、ユーザＰＣ９のドライバ部分では、電子証明書を格納するための格納ドライバ２４が動作するようになっており、更に、アプリケーションソフトウェア部分では、電子証明書を格納するための格納プログラム２５とトークンユーティリティ２６が動作するようになっている。
【００５６】
格納ドライバ２４は、ＵＳＢトークン１０内のメモリから記憶されているトークン用シリアル番号（以下、単に「シリアル番号」という）を読み取って、トークンユーティリティ２６に出力し、また、トークンユーティリティ２６から出力された復号化されたＰＫＣＳ＃１２データをＵＳＢトークン１０内のメモリに格納して電子証明書をインポートする。
【００５７】
トークンユーティリティ２６は、格納ドライバ２４からＵＳＢトークン１０のシリアル番号を入力し、当該シリアル番号を格納プログラム２５に出力する。
また、トークンユーティリティ２６は、オンメモリ２２にＰＫＣＳ＃１２データが格納されると、オンメモリ２２から暗号化されたＰＫＣＳ＃１２データを読み取り、キーボード２３から入力されたＰＩＮ情報（秘密鍵を復号するためのパスワード）で復号し、格納ドライバ２４に出力する。
【００５８】
格納プログラム２５は、記憶するＵＲＬに接続することで、配信サーバ５にＮＩＣ２１を介して電子証明書発行のアクセスを行い、ＵＳＢトークン１０内のメモリから取得したシリアル番号を配信サーバ５にアップロードする。
格納プログラム２５は、配信サーバ１で認証されると、ＮＩＣ２１を介してシリアル番号に対応するＰＫＣＳ＃１２データを受信する（ダウンロードされる）。ダウンロードされたＰＫＣＳ＃１２データは、オンメモリ２２に一時的に格納される。
【００５９】
尚、ＵＳＢトークン１０から得られたシリアル番号とキーボード２３から入力されたＰＩＮ情報は、格納プログラム２５に一時的に記憶し、格納プログラム２５は、配信サーバ５からＰＫＣＳ＃１２データのダウンロードを受けると、トークンユーティリティ２６に一時記憶したＰＩＮ情報を引き渡す。そのＰＩＮ情報はトークンユーティリティ２６でのＰＫＣＳ＃１２データの復号化に用いられる。
【００６０】
次に、ユーザＰＣ９内での電子証明書ダウンロード・インポート処理を説明する。
ユーザＰＣ９において、格納プログラム等のインストールが終了すると、格納プログラム２５は、起動してＵＳＢコネクタにＵＳＢトークン１０を挿入するよう表示部に指示を出力する。
【００６１】
ユーザＰＣ９のＵＳＢコネクタにＵＳＢトークン１０が挿入されると、格納プログラムは、トークンユーティリティ２６に対してＵＳＢトークン１０に格納されたシリアル番号を取得する指示を出力すると、トークンユーティリティ２６は更に格納ドライバ２４を動作させてＵＳＢトークン１０からシリアル番号を読み取り、格納ドライバ２４からトークンユーティリティ２６にシリアル番号が出力され、更にトークンユーティリティ２６から格納プログラム２５に出力される。
【００６２】
格納プログラム２５では、シリアル番号を一時的に記憶し、プログラム内部に記憶する配信サーバ５のＵＲＬに接続して、当該シリアル番号を送信すると、配信サーバ５は、当該シリアル番号に相当するユーザが存在するか否かをチェックし、ユーザが存在すればユーザ名をユーザＰＣ９に返信し、表示部に表示させ、ユーザの目検による確認を行う。
【００６３】
次に、格納プログラム２５は、表示部にシリアル番号及び受信したユーザ名を表示し、ユーザが当該ユーザ名でよければ「確認」を、よくなければ「終了」を入力（クリック）させ、「確認」がクリックされると、配信サーバ５に確認通知を送信し、「終了」がクリックされると、処理を終了する。
【００６４】
確認通知を受信した配信サーバ５は、確認されたユーザ名に対応するＰＫＣＳ＃１２データをＳＳＬ暗号化してダウンロードする。ダウンロードされたＰＫＣＳ＃１２データは、ＮＩＣ２１を介してユーザＰＣ９のオンメモリ２２に一時的に記憶される。
【００６５】
格納プログラム２５は、配信サーバ５からメモリ２２へのＰＫＣＳ＃１２データの格納終了を認識すると、キーボード２３からＰＩＮ情報を入力するよう指示を表示部に表示し、キーボード２３から入力されたＰＩＮ情報をトークンユーティリティ２６に出力する。ＰＩＮ情報の入力は、管理者から配布された紙の媒体等に記載された暗証番号（パスワード）を入力することになる。
トークンユーティリティ２６は、メモリ２２からＰＫＣＳ＃１２データを読み込み、格納プログラム２５から入力されたＰＩＮ情報で復号化する。復号化されたＰＫＣＳ＃１２データは、トークンユーティリティ２６から格納ドライバ２４に出力され、格納ドライバ２４が、ＵＳＢトークン１０内のメモリに格納する。
【００６６】
ＵＳＢトークン１０への電子証明書の格納処理が終了すると、格納プログラム２５は、電子証明書の格納が正常終了した旨を配信サーバ５に送信し、ユーザＰＣ９の表示部には正常終了を表示して、処理を終了する。
【００６７】
尚、電子証明書に関する情報をダウンロードしてＵＳＢトークン１０にインポートする処理の途中で、ＵＳＢトークン１０が抜き出された場合は、格納プログラム２５は処理を終了し、ＵＳＢトークン１０がＵＳＢコネクタに接続された状態となって最初から処理が開始されるようになっている。
【００６８】
上記実施の形態では、オペレーティングシステム上で動作するアプリケーションソフトウェアで格納プログラムとトークンユーティリティを実行させ、シリアル番号及びＰＫＣＳ＃１２データの受け渡しを行っていたが、全ての処理をドライバにおける格納ドライバ２４で実現するようにすれば、更にセキュリティを向上させることができる。
【００６９】
その概略構成を図５に示す。図５は、ユーザＰＣ内での全ての処理を格納ドライバで実現した構成概略図である。
つまり、ＵＳＢトークン１０からシリアル番号を読み取って配信サーバ５に送信する送信処理、ダウンロードしたＰＫＣＳ＃１２データをキーボード２３から入力されたＰＩＮ情報により復号化する復号化処理、復号化されたＰＫＣＳ＃１２データをＵＳＢトークン１０に格納する格納処理を格納ドライバで実行するものである。
【００７０】
また、配信サーバ５から電子証明書に関する情報（ＰＫＣＳ＃１２データ）をダウンロードする際に、ＳＳＬ暗号化を行っているが、更にセキュリティを向上させるために、ダウンロードされるデータに属性を持たせ、当該属性の機能によって当該データのコピー等を制限（不可）とすることができる。また、その属性の機能によって、特定の格納場所以外にデータを格納することを禁止することも可能である。
【００７１】
具体的には、データに付加される属性は、プログラムであって、データの記録媒体に対する入出力デバイスのドライバ、表示デバイスのドライバに予め対応しており、当該データを対象にデバイスのドライバが動作すると、属性のプログラムが動作して必要なパラメータを無効な値に強制的に変更するか、また特定のパラメータを強制的に別の値に変更してドライバでの処理を不能又は制限するものである。
【００７２】
例えば、ダウンロードされるＰＫＣＳ＃１２データを伝送途中で不正に取得した場合に、当該データを他の記録媒体に格納しようと入出力デバイスのドライバが動作すると、当該ドライバに対して予め設定した記憶エリア（設定されたパス）しかデータを格納することができないようデータ格納先のパスを強制的に変更してしまう。
これにより、不正に取得したＰＫＣＳ＃１２データを他の記録媒体に記録させようとしても、属性のプログラムがドライバでの処理を制限又は不能とすることで、データの保護が図られる。よって、ユーザＰＣ９内であっても、予め設定された記憶エリアにしかデータを格納できないことになる。
【００７３】
また、不正に取得したＰＫＣＳ＃１２データを表示させようとしても、表示デバイスのドライバにおける表示先のパスを属性プログラムが強制的に変更することで、ドライバの処理を制限又は不能とすることができ、データの保護が図られる。
【００７４】
また、ダウンロード途中にＰＫＣＳ＃１２データが不正に取得される場合に対応して、ダウンロード前にＰＫＣＳ＃１２データを図４の格納プログラム２５又は図５の格納ドライバ２４でしか解読できないよう専用の暗号化を行い、更にＳＳＬ暗号化してダウンロードし、ユーザＰＣ９内で、ＳＳＬ暗号化されたデータを復号化し、更に図４の格納プログラム２５又は図５の格納ドライバ２４による専用の復号化を行うようにしてもよい。
【００７５】
暗号化のほかに配信サーバ５にデータベースインポートする時点にて、ユーザＰＣ９にて動作する格納プログラムでしか取り扱えないバイナリ化するという手法も選択肢のうちに含まれる。バイナリデータからＵＳＢトークン１０に格納するためのＰＫＣＳ＃１２データを取り出せることができるのは格納プログラムのみとなる。
【００７６】
図４でユーザＰＣ９内のダウンロード・インポート処理を行うための構成及び処理を説明したが、次に、それとは別の構成について図６を参照しながら説明する。図６は、ユーザＰＣ９におけるダウンロード・インポート処理を行う別の構成概略図である。
ユーザＰＣ９の構成として、ハードウェア、ドライバ、オペレーティングシステム、アプリケーションソフトウェアから構成される。但し、ハードウェア以外の構成はソフトウェアによって実現されるものであり、ドライバは、オペレーションシステムを介さずにハードウェア間の処理を実現するものであり、アプリケーションソフトウェアは、オペレーションシステム上で動作するものとなっている。
【００７７】
ユーザＰＣ９のハードウェア構成としては、ネットワークカード（NIC : Network Interface Card）２１、ワークメモリとしてのオンメモリ２２、キーボード２３、ハードディスク２７，それにＵＳＢトークン１０が含まれる。
尚、図６には図示していないが、ユーザＰＣ９のハードウェア構成として中央処理装置（CPU : Central Processing Unit）、表示装置等も当然に備えるものであり、ＵＳＢトークン１０を挿入するためのＵＳＢコネクタも設けられている。
【００７８】
また、ユーザＰＣ９のドライバ部分では、電子証明書を格納するための格納ドライバ２４、ＮＩＣ２１を制御するネットワークドライバ２９、キーボード２３を制御するキーボードドライバ３１、ハードディスク２７を制御するハードディスクドライバ３０、ハードディスク２７の特定ディレクトリへのアクセスを制限するファイルガードドライバ２８が動作するようになっており、更に、アプリケーションソフトウェア部分では、電子証明書を格納するための格納プログラム２５とトークンユーティリティ２６が動作するようになっている。
【００７９】
格納ドライバ２４は、ユーザＰＣ９のＣＰＵで動作されるものであって、ＵＳＢトークン１０内のメモリから記憶されているシリアル番号を読み取り、トークンユーティリティ２６に出力し、また、ハードディスクドライバ３０から出力された復号化されたＰＫＣＳ＃１２データをＵＳＢトークン１０内のメモリに格納して電子証明書をインポートする。
【００８０】
トークンユーティリティ２６は、ユーザＰＣ９のＣＰＵで動作されるものであって、格納プログラム２５の処理によって起動し、格納ドライバ２４にＵＳＢトークン１０のシリアル番号を取得するよう要求し、格納ドライバ２４からＵＳＢトークン１０のシリアル番号を入力されると、当該シリアル番号を格納プログラム２５に出力する。
【００８１】
尚、格納プログラム２５に出力されたシリアル番号は、一時的に記憶され、配信サーバ５にＰＫＣＳ＃１２データのダウンロードを要求する際に送信される。
【００８２】
格納プログラム２５は、ユーザＰＣ９のＣＰＵで動作されるものであって、記憶されているＵＲＬに接続することで、配信サーバ５にＮＩＣ２１を介して電子証明書発行のアクセスを行い、ＵＳＢトークン１０内のメモリから取得したシリアル番号を配信サーバ５にアップロードする。
格納プログラム２５は、配信サーバ１で認証されると、ＮＩＣ２１を介してシリアル番号に対応するＰＫＣＳ＃１２データを受信（ダウンロード）する。
【００８３】
また、格納プログラム２５は、キーボード２３で入力されたＰＩＮ情報（秘密鍵を復号するためのパスワード）がキーボードドライバ３１から入力されると、ハードディスク２７の特定ディレクトリから暗号化されたＰＫＣＳ＃１２データを読み取り、そのＰＩＮ情報で復号する。
【００８４】
ファイルガードドライバ２８は、ユーザＰＣ９のＣＰＵで動作されるものであって、暗号化されたＰＫＣＳ＃１２データをＮＩＣ２１で受信したことをネットワークドライバ２９から通知を受けると、オンメモリ２２にそのＰＫＣＳ＃１２データを一時的に格納させる。
更に、ファイルガードドライバ２８は、ハードディスクドライバ３０を動作させ、オンメモリ２２のＰＫＣＳ＃１２データをハードディスク２７の特定ディレクトリに格納させる。
ファイルガードドライバ２８の役割は、ハードディスク２７の特定ディレクトリにアクセスできることができるのは格納プログラム２５のみという制御を施すしくみであり、その他一切のプログラムはアクセスできないというガードをドライバとオペレーティングシステムとの間で施す。
【００８５】
尚、ファイルガードドライバ２８は、ハードディスク２７の特定ディレクトリからＰＫＣＳ＃１２データを読み込んで復号処理を行って格納ドライバ２４に出力し、ハードディスク２７の特定ディレクトリへのアクセスを制限する。具体的には、特定ディレクトリの存在は表示装置には表示されず、格納プログラム２５による以外はアクセス不能として特定ディレクトリのファイルをガードしている。
【００８６】
次に、ユーザＰＣ９内での電子証明書ダウンロード・インポート処理を説明する。
ユーザＰＣ９において、格納プログラム等のインストールが終了すると、格納プログラム２５が起動され、ＵＳＢコネクタにＵＳＢトークン１０を挿入するよう表示部に指示を出力する。
【００８７】
ユーザＰＣ９のＵＳＢコネクタにＵＳＢトークン１０が挿入されると、格納プログラム２５によりトークンユーティリティ２６に対してＵＳＢトークン１０に格納されたシリアル番号を取得する指示が出力され、更にトークンユーティリティ２６により格納ドライバ２４が起動され、ＵＳＢトークン１０からシリアル番号が読み取られ、格納ドライバ２４からトークンユーティリティ２６にシリアル番号が出力され、更にトークンユーティリティ２６から格納プログラム２５に出力される。
【００８８】
格納プログラム２５では、シリアル番号が一時的に記憶され、記憶する配信サーバ５のＵＲＬに接続して、当該シリアル番号が送信されると、配信サーバ５は、当該シリアル番号に相当するユーザが存在するか否かをチェックし、ユーザが存在すればユーザ名をユーザＰＣ９に返信し、表示部に表示させ、ユーザの目検による確認を行う。
【００８９】
次に、格納プログラム２５により、表示部にシリアル番号及び受信したユーザ名が表示され、当該ユーザ名でよければ「確認」を、よくなければ「終了」をユーザに入力（クリック）させ、「確認」がクリックされると、配信サーバ５に確認通知が送信され、「終了」がクリックされると、処理を終了する。
【００９０】
確認通知を受信した配信サーバ５は、確認されたユーザ名に対応するＰＫＣＳ＃１２データをＳＳＬ暗号化してダウンロードする。ダウンロードされたＰＫＣＳ＃１２データは、ＮＩＣ２１を介してユーザＰＣ９のオンメモリ２２に一時的に記憶される。
【００９１】
ファイルガードドライバ２８は、ネットワークドライバ２９を介して配信サーバ５からメモリ２２へのＰＫＣＳ＃１２データの格納終了を認識すると、ハードディスクドライバ３０を起動してオンメモリ２２のＰＫＣＳ＃１２データをハードディスク２７の特定ディレクトリに格納する処理を行う。
【００９２】
そして、ファイルガードドライバ２８は、ハードディスク２７の特定ディレクトリにＰＫＣＳ＃１２データを格納すると、格納プログラム２５にその格納を通知する。
格納プログラム２５の処理により、キーボード２３からＰＩＮ情報を入力するよう指示が表示装置に表示される。
【００９３】
キーボード２３からＰＩＮ情報が入力されると、格納プログラム２５は、キーボードドライバ３１を介してＰＩＮ情報を入力し、ファイルガードドライバ２８を動作させて、ハードディスクドライバ３０を介してハードディスク２７の特定ディレクトリからＰＫＣＳ＃１２データを読み込み、ＰＫＣＳ＃１２データをＰＩＮ情報で復号して、復号化されたＰＫＣＳ＃１２データを格納ドライバ２４に出力する。
【００９４】
そして、ファイルガードドライバ２８は、ハードディスク２７の特定ディレクトリからＰＫＣＳ＃１２データを削除し、ハードディスク２７にＰＫＣＳ＃１２データを残さないようにする。
ＰＫＣＳ＃１２データは復号化した秘密鍵を残さずＵＳＢトークン１０にインポートするプログラムが正常に終了すれば何も残らないが、当データをネットワークにて配信するしくみを採用する都合上、バイナリデータ化しているため、正常終了後にもＰＫＣＳ＃１２データが取り出せる元を削除する必要があり、ファイルガードドライバ２８はそこに何も残さない機能を提供する。異常終了時も同様に一時ファイルを残さない。
【００９５】
ＰＩＮ情報の入力は、管理者から配布された紙の媒体等に記載された暗証番号（パスワード）を入力することになる。ＰＩＮ情報が誤っていれば、ＰＫＣＳ＃１２データの復号は為されず、ＰＩＮ情報の再入力を促すか、処理を終了する。
復号化されたＰＫＣＳ＃１２データは、格納ドライバ２４により、ＵＳＢトークン１０内のメモリに格納する。
上記インポートの際に、インポート用のＰＩＮ情報を入力するようになっているが、それに加えてＵＳＢトークン１０を通常利用可能とするためのＰＩＮ情報を更に入力するようにして、セキュリティを向上させるようにしてもよい。
【００９６】
ＵＳＢトークン１０への電子証明書の格納処理が終了すると、格納ドライバ２４は、トークンユーティリティ２６を介して格納プログラム２５に電子証明書の格納が正常終了した旨を通知し、更に格納プログラム２５は、配信サーバ５に電子証明書の格納が正常終了した旨を送信し、ユーザＰＣ９の表示装置には正常終了を表示して、処理を終了する。
【００９７】
尚、電子証明書に関する情報をダウンロードしてＵＳＢトークン１０にインポートする処理の途中で、ＵＳＢトークン１０が抜き出された場合は、格納プログラム２５は処理を終了し、ＵＳＢトークン１０がＵＳＢコネクタに接続された状態となって最初から処理が開始されるようになっている。よって、ハードディスク２７の特定ディレクトリにＰＫＣＳ＃１２データが格納された状態で、ＵＳＢトークン１０が抜き出された場合は、格納プログラム２５によりそのＰＫＣＳ＃１２データは削除されることになる。
【００９８】
図６に示したユーザＰＣ９におけるダウンロード・インポート処理を行う別の構成では、ダウンロードしたＰＫＣＳ＃１２データをハードディスク２７の特定ディレクトリに格納し、ファイルガードドライバ２８でその特定ディレクトリへのアクセスを制限し、復号のためにだけ特定ディレクトリから読み出されて削除され、復号されたＰＫＣＳ＃１２データはファイルガードドライバ２８から格納ドライバ２４に直接出力されるようになっているので、ＰＫＣＳ＃１２データの保護が図られる。
【産業上の利用可能性】
【００９９】
本発明に係る電子証明書格納システムは、一括発行された電子証明書を外部記憶装置であるＵＳＢトークンに格納する作業を簡易にでき、且つ、セキュリティを向上させるのに好適である。
【図面の簡単な説明】
【０１００】
【図１】本発明の実施の形態に係る電子証明書格納システムにおける配信サーバへのデータインポートを行うシステムの構成概略図である。
【図２】本発明の実施の形態に係る電子証明書格納システムにおける電子証明書ダウンロード・インポートを行うシステムの構成概略図である。
【図３】電子証明書ダウンロード・インポートの処理を示すフローチャートである。
【図４】ユーザＰＣ９におけるダウンロード・インポート処理を行う構成概略図である。
【図５】ユーザＰＣ内での全ての処理を格納ドライバで実現した構成概略図である。
【図６】ユーザＰＣ９におけるダウンロード・インポート処理を行う別の構成概略図である。
【符号の説明】
【０１０１】
３…管理者ＰＣ、  ４…認証機関システム、  ５…配信サーバ、  ６…配信ＤＢ、  ７…出荷サービスＰＣ、  ９…ユーザＰＣ、  １０…ＵＳＢトークン、  ２１…ＮＩＣ、  ２２…メモリ、  ２３…キーボード、  ２４…格納ドライバ、  ２５…格納プログラム、  ２６…トークンユーティリティ、  ２７…ハードディスク、  ２８…ファイルガードドライバ、  ２９…ネットワークドライバ、  ３０…ハードディスクドライバ、  ３１…キーボードドライバ
【図１】
2005341519.tif 000003
【図２】
2005341519.tif 000004
【図３】
2005341519.tif 000005
【図４】
2005341519.tif 000006
【図５】
2005341519.tif 000007
【図６】
2005341519.tif 000008