(57)【要約】  【課題】シンクライアントシステムに好適な文書データの署名技術を提供する。  【解決手段】ローカルマシン１、リモートマシン２、文書管理サーバ７、および署名サーバ８を有する。リモーマシン２がローカルマシン１のターミナルサービスを利用して文書管理サーバ７にアクセスし、文書データを当該文書データの識別情報である文書ＩＤに対応付けて文書管理サーバ７に登録する。同様に、署名サーバ８にアクセスし、署名サーバ８に対の署名鍵および検証鍵を生成させ、これらを生体情報読取装置で読み取った生体情報に対応付けて署名サーバ８に登録する。また、署名サーバ８に、生体情報読取装置で読み取った生体情報に対応付けられて署名サーバ８に登録されている署名鍵を用いて、ユーザより受付けた文書ＩＤに対応付けられて文書管理サーバ７に登録されている文書データに対する署名データを生成させる。【選択図】図１
2007306365.tif 000002
【特許請求の範囲】
【請求項１】
文書データへの署名を支援する署名支援システムであって、
リモートマシンと、前記リモートマシンにターミナルサービスを提供するローカルマシンと、前記ローカルマシンに文書管理サービスを提供する文書管理サーバと、前記ローカルマシンに鍵サービスおよび署名サービスを提供する署名サーバと、を有し、
前記文書管理サーバは、
文書データを記憶する文書データ記憶手段と、
文書管理サーバ用認証情報を用いて前記ローカルマシンを認証する文書管理認証手段と、
前記文書管理認証手段により認証された前記ローカルマシンの指示に従い、文書データを当該文書データの識別情報である文書ＩＤに対応付けて前記文書データ記憶手段に記憶すると共に、前記署名サーバよりの指示に従い、前記署名サーバより受付けた文書ＩＤに対応付けられて前記文書データ記憶手段に記憶されている文書データを前記署名サーバに送信して、前記署名サーバより当該文書データに対する署名データの識別情報である署名ＩＤを受付け、当該署名ＩＤを当該文書データに対応付けて前記文書データ記憶手段に記憶する文書管理制御手段と、を有し、
前記署名サーバは、
署名データを記憶する署名データ記憶手段と、
署名鍵および検証鍵を記憶する鍵記憶手段と、
署名サーバ用認証情報を用いて前記ローカルマシンを認証する署名認証手段と、
前記署名認証手段により認証された前記ローカルマシンの指示に従い、対の署名鍵および検証鍵を生成し、これらを前記ローカルマシンより受付けた生体情報に対応付けて前記鍵記憶手段に記憶する鍵制御手段と、
前記署名認証手段により認証された前記ローカルマシンの指示に従い、前記文書管理サーバにアクセスして前記ローカルマシンより受付けた文書ＩＤを持つ文書データを前記文書管理サーバから読み出すと共に、前記ローカルマシンより受付けた生体情報に対応付けられて前記鍵記憶手段に記憶されている署名鍵を前記鍵記憶手段から読み出し、当該署名鍵を用いて当該文書データに対する署名データを生成して、これを当該署名データの署名ＩＤに対応付けて前記署名データ記憶手段に記憶し、且つ当該署名ＩＤを前記文書管理サーバに通知する署名制御手段と、を有し、
前記ローカルマシンは、
ローカルマシン用認証情報を用いて前記リモートマシンを認証するローカル認証手段と、
前記ローカル認証手段により認証された前記リモートマシンにターミナルサービスを提供するターミナルサービス提供手段と、
前記ターミナルサービスを利用する前記リモートマシンの指示に従い、予め登録されている文書管理サーバ用認証情報を用いて前記文書管理サーバにアクセスする文書管理サーバアクセス制御手段と、
前記ターミナルサービスを利用する前記ローカルマシンの指示に従い、予め登録されている署名サーバ用認証情報を用いて前記署名サーバにアクセスする署名サーバアクセス制御手段と、を有し、
前記リモートマシンは、
ローカルマシン用認証情報の入力を受付けるローカルマシン用認証情報入力手段と、
生体情報を読み取る生体情報読取手段と、
前記ローカルマシン用認証情報入力手段により受付けたローカルマシン用認証情報を用いて前記ローカルマシンにアクセスし、前記ローカルマシンのターミナルサービスを受けるローカルマシンアクセス制御手段と、を有し、
前記文書管理サーバアクセス制御手段は、
前記ターミナルサービスを介して前記リモートマシンより受付けた指示に従い、文書データを当該文書データの文書ＩＤと共に前記文書管理サーバに登録する処理を行い、
前記署名サーバアクセス制御手段は、
前記ターミナルサービスを介して前記リモートマシンより受付けた指示に従い、前記署名サーバに対の署名鍵および検証鍵を生成させ、これらを前記リモートマシンより受付けた生体情報に対応付けて前記署名サーバに登録する処理、および
前記ターミナルサービスを介して前記リモートマシンより受付けた指示に従い、前記署名サーバに、前記リモートマシンより受付けた生体情報に対応付けられて前記鍵記憶手段に記憶されている署名鍵を用いて、前記リモートマシンより受付けた文書ＩＤに対応付けられて前記文書管理サーバに登録されている文書データに対する署名データを生成させる処理を行うこと
を特徴とする署名支援システム。
【請求項２】
請求項１に記載の署名支援システムであって、
前記生体情報は、指静脈情報であること
を特徴とする署名支援システム。
【請求項３】
請求項１又は２に記載の署名支援システムであって、
前記ローカルマシン用認証情報入力手段は、所定の記憶媒体からローカルマシン用認証情報を読み取ること
を特徴とする署名支援システム。
【請求項４】
リモートマシンと、前記リモートマシンにターミナルサービスを提供するローカルマシンと、前記ローカルマシンに文書管理サービスを提供する文書管理サーバと、前記ローカルマシンに鍵サービスおよび署名サービスを提供する署名サーバと、を有する署名支援システムによる文書データへの署名支援方法であって、
前記リモーマシンが前記ローカルマシンのターミナルサービスを利用して前記文書管理サーバが提供する文書管理サービスを受ける文書管理ステップと、
前記リモートマシンが前記ローカルマシンのターミナルサービスを利用して前記署名サーバが提供する鍵サービスを受ける鍵生成ステップと、
前記リモートマシンが前記ローカルマシンのターミナルサービスを利用して前記署名サーバが提供する署名サービスを受ける署名生成ステップと、を有し、
前記文書管理ステップは、
前記リモートマシンが外部より入力されたローカルマシン用認証情報を用いて前記ローカルマシンにアクセスし、これを受けて前記ローカルマシンが前記リモートマシンにターミナルサービスの提供を開始するステップと、
前記ローカルマシンが予め登録されている文書管理サーバ用認証情報を用いて前記文書管理サーバにアクセスし、これを受けて前記文書管理サーバが前記ローカルマシンに文書管理サービスの提供を開始するステップと、
前記リモートマシンが、前記ローカルマシンのターミナルサービスを介して前記文書管理サーバの文書管理サービスを利用し、文書データを当該文書データの識別情報である文書ＩＤに対応付けて前記文書管理サーバに登録するステップと、を有し、
前記鍵生成ステップは、
前記リモートマシンが外部より入力されたローカルマシン用認証情報を用いて前記ローカルマシンにアクセスし、これを受けて前記ローカルマシンが前記リモートマシンにターミナルサービスの提供を開始するステップと、
前記ローカルマシンが予め登録されている署名サーバ用認証情報を用いて前記署名サーバにアクセスし、これを受けて前記署名サーバが前記ローカルマシンに鍵サービスの提供を開始するステップと、
前記リモートマシンが、前記ローカルマシンのターミナルサービスを介して前記署名サーバの鍵サービスを利用し、前記署名サーバに対の署名鍵および検証鍵を生成させ、生体情報読取装置により読み取った生体情報に対応付けて前記対の署名鍵および検証鍵を前記署名サーバに登録するステップと、を有し、
前記署名生成ステップは、
前記リモートマシンが外部より入力されたローカルマシン用認証情報を用いて前記ローカルマシンにアクセスし、これを受けて前記ローカルマシンが前記リモートマシンにターミナルサービスの提供を開始するステップと、
前記ローカルマシンが予め登録されている署名サーバ用認証情報を用いて前記署名サーバにアクセスし、これを受けて前記署名サーバが前記ローカルマシンに署名サービスの提供を開始するステップと、
前記リモートマシンが、前記ローカルマシンのターミナルサービスを介して前記署名サーバの署名サービスを利用し、前記署名サーバに、前記生体情報読取装置により読み取った生体情報に対応付けられて前記署名サーバに登録されている署名鍵を用いて、ユーザより受付けた文書ＩＤに対応付けられて前記文書管理サーバに登録されている文書データに対する署名データを生成させるステップと、を有すること
を特徴とする署名支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書データの署名技術に関し、特にシンクライアントタイプの情報処理システムに好適な文書データの署名技術に関する。
【背景技術】
【０００２】
近年、いわゆるシンクライアントタイプの情報処理システムが注目されている。シンクライアントタイプの情報処理システムでは、手元にあるリモートマシンから自宅や会社に置いてあるローカルマシンにアクセスし、ローカルマシンが提供するターミナルサービスを利用してローカルマシンのデスクトップをリモート操作することで、ローカルマシンに搭載されている各種アプリケーションプログラムおよびデータを利用する。ローカルマシンには、デスクトップＰＣ（Personal Computer）の他に、ローカル接続された入出力装置（キーボード、マウスおよびディスプレイ）を持たないブレードＰＣ（ブレードコンピュータ）などが用いられる（例えば特許文献１参照）。
【０００３】
【特許文献１】特開２００３-３３７６７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
シンクライアントタイプの情報処理システムにおいて、リモートマシンとして、プリンタ、外付けドライブ、外付けメモリ（但し、ローカルマシンのターミナルサービスを利用するための認証情報が記憶された記憶装置を除く）等を、リモートマシンにローカル接続およびネットワーク接続できないように構成された、いわゆるＨＤＤレスタイプのＰＣを用いることで、ローカルマシンにローカル接続あるいはネットワーク接続されたプリンタ、外付けドライブ、外付けメモリ等のみを使用できるようにしたものがある。この種の情報処理システムによれば、リモートマシンの盗難等による情報漏洩の可能性を低減することができる。
【０００５】
しかし、この種の情報処理システムを電子契約書システムに適用した場合、次のような問題が生じる。すなわち、保険外交員等のユーザが、自身に貸与されたリモートマシンを用いて、契約書データに対する被保険者の電子署名を生成する場合を考える。被保険者の電子署名を生成するためには、被保険者の署名鍵（秘密鍵）が必要である。しかし、リモートマシンは、プリンタ、外付けドライブ、外付けメモリ等をローカル接続およびネットワーク接続できないように構成されている。このため、ユーザは、例えば被保険者の外付けメモリから当該外付けメモリに格納されている被保険者の署名鍵をリモートマシンに取り込むことができない。
【０００６】
また、従来、署名鍵は、例えば外付けメモリに格納して署名鍵の持ち主に配布したり、あるいは、暗号通信により署名鍵の持ち主の端末に送信するなどして、鍵生成機関から持ち主へ移動させていた。このため、移動に伴うセキュリティのリスクが発生する。
【０００７】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、シンクライアントタイプの情報処理システムに好適な文書データの署名技術を提供することにある。具体的には、リモートマシンから署名鍵を取り込むことなく、文書データに対する電子署名を生成することにある。また、署名鍵の移動に伴うセキュリティのリスクを低減することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、リモートマシンと、前記リモートマシンにターミナルサービスを提供するローカルマシンと、ローカルマシンに文書管理サービスを提供する文書管理サーバと、ローカルマシンに鍵サービスおよび署名サービスを提供する署名サーバと、を有する署名支援システムを用いる。
【０００９】
リモーマシンがローカルマシンのターミナルサービスを利用して文書管理サーバにアクセスし、文書データを当該文書データの識別情報である文書ＩＤに対応付けて前記文書管理サーバに登録する。
【００１０】
また、リモートマシンがローカルマシンのターミナルサービスを利用して署名サーバにアクセスし、署名サーバに対の署名鍵および検証鍵を生成させ、これらを生体情報読取装置により読み取った生体情報に対応付けて署名サーバに登録する。
【００１１】
さらに、リモートマシンがローカルマシンのターミナルサービスを利用して署名サーバにアクセスし、署名サーバに、生体情報読取装置により読み取った生体情報に対応付けられて署名サーバに登録されている署名鍵を用いて、ユーザより受付けた文書ＩＤに対応付けられて文書管理サーバに登録されている文書データに対する署名データを生成させる。
【００１２】
例えば、本発明は、文書データへの署名を支援する署名支援システムであって、
リモートマシンと、前記リモートマシンにターミナルサービスを提供するローカルマシンと、前記ローカルマシンに文書管理サービスを提供する文書管理サーバと、前記ローカルマシンに鍵サービスおよび署名サービスを提供する署名サーバと、を有し、
前記文書管理サーバは、
文書データを記憶する文書データ記憶手段と、
文書管理サーバ用認証情報を用いて前記ローカルマシンを認証する文書管理認証手段と、
前記文書管理認証手段により認証された前記ローカルマシンの指示に従い、文書データを当該文書データの識別情報である文書ＩＤに対応付けて前記文書データ記憶手段に記憶すると共に、前記署名サーバよりの指示に従い、前記署名サーバより受付けた文書ＩＤに対応付けられて前記文書データ記憶手段に記憶されている文書データを前記署名サーバに送信して、前記署名サーバより当該文書データに対する署名データの識別情報である署名ＩＤを受付け、当該署名ＩＤを当該文書データに対応付けて前記文書データ記憶手段に記憶する文書管理制御手段と、を有し、
前記署名サーバは、
署名データを記憶する署名データ記憶手段と、
署名鍵および検証鍵を記憶する鍵記憶手段と、
署名サーバ用認証情報を用いて前記ローカルマシンを認証する署名認証手段と、
前記署名認証手段により認証された前記ローカルマシンの指示に従い、対の署名鍵および検証鍵を生成し、これらを前記ローカルマシンより受付けた生体情報に対応付けて前記鍵記憶手段に記憶する鍵制御手段と、
前記署名認証手段により認証された前記ローカルマシンの指示に従い、前記文書管理サーバにアクセスして前記ローカルマシンより受付けた文書ＩＤを持つ文書データを前記文書管理サーバから読み出すと共に、前記ローカルマシンより受付けた生体情報に対応付けられて前記鍵記憶手段に記憶されている署名鍵を前記鍵記憶手段から読み出し、当該署名鍵を用いて当該文書データに対する署名データを生成して、これを当該署名データの署名ＩＤに対応付けて前記署名データ記憶手段に記憶し、且つ当該署名ＩＤを前記文書管理サーバに通知する署名制御手段と、を有し、
前記ローカルマシンは、
ローカルマシン用認証情報を用いて前記リモートマシンを認証するローカル認証手段と、
前記ローカル認証手段により認証された前記リモートマシンにターミナルサービスを提供するターミナルサービス提供手段と、
前記ターミナルサービスを利用する前記リモートマシンの指示に従い、予め登録されている文書管理サーバ用認証情報を用いて前記文書管理サーバにアクセスする文書管理サーバアクセス制御手段と、
前記ターミナルサービスを利用する前記ローカルマシンの指示に従い、予め登録されている署名サーバ用認証情報を用いて前記署名サーバにアクセスする署名サーバアクセス制御手段と、を有し、
前記リモートマシンは、
ローカルマシン用認証情報の入力を受付けるローカルマシン用認証情報入力手段と、
生体情報を読み取る生体情報読取手段と、
前記ローカルマシン用認証情報入力手段により受付けたローカルマシン用認証情報を用いて前記ローカルマシンにアクセスし、前記ローカルマシンのターミナルサービスを受けるローカルマシンアクセス制御手段と、を有し、
前記文書管理サーバアクセス制御手段は、
前記ターミナルサービスを介して前記リモートマシンより受付けた指示に従い、文書データを当該文書データの文書ＩＤと共に前記文書管理サーバに登録する処理を行い、
前記署名サーバアクセス制御手段は、
前記ターミナルサービスを介して前記リモートマシンより受付けた指示に従い、前記署名サーバに対の署名鍵および検証鍵を生成させ、これらを前記リモートマシンより受付けた生体情報に対応付けて前記署名サーバに登録する処理、および
前記ターミナルサービスを介して前記リモートマシンより受付けた指示に従い、前記署名サーバに、前記リモートマシンより受付けた生体情報に対応付けられて前記鍵記憶手段に記憶されている署名鍵を用いて、前記リモートマシンより受付けた文書ＩＤに対応付けられて前記文書管理サーバに登録されている文書データに対する署名データを生成させる処理を行う。
【発明の効果】
【００１３】
本発明によれば、リモートマシンから署名鍵を取り込むことなく、文書データに対する電子署名を生成することができる。また、署名鍵の移動に伴うセキュリティのリスクを低減することができる。
【発明を実施するための最良の形態】
【００１４】
以下に本発明の一実施形態を説明する。
【００１５】
図１は本発明の一実施形態が適用された電子契約書システムの概略構成の一例を示す図である。
【００１６】
図示するように、本実施形態の電子契約書システムは、複数のローカルマシン１と、複数のリモートマシン２および認証デバイス６と、文書管理サーバ７と、署名サーバ８と、を有する。複数のローカルマシン１、文書管理サーバ７、および署名サーバ８は、保険会社等に構築された内部ネットワークであるＬＡＮ（Local Area Network）４Ａに接続されている。ＬＡＮ４Ａは、ルータ３Ａを介してＷＡＮ(Wide Area Network）５に接続される。認証デバイス６は、リモートマシン２に着脱可能である。リモートマシン２は、ホテル、駅、被保険者の自宅等の出先に構築された外部ネットワークであるＬＡＮ４Ｂに接続されている。ＬＡＮ４Ｂは、ルータ３Ｂを介してＷＡＮ５に接続される。
【００１７】
ローカルマシン１は、リモートマシン２との間にＶＰＮ（Virtual Private Network）を構築し、該ＶＰＮを介してリモートマシン２にターミナルサービスを提供する。すなわち、リモートマシン２から送られてきた入力情報（入力装置の操作内容）を受信し処理すると共に、処理結果を示す映像情報（表示装置のデスクトップ画面）をリモートマシン２に送信する。このローカルマシン１には、デスクトップＰＣ（Personal Computer）、およびローカル接続された入出力装置（キーボード、マウスおよびディスプレイ）を持たないブレードＰＣ（ブレードコンピュータ）などが用いられる。
【００１８】
図２はローカルマシン１の概略構成例を示す図である。
【００１９】
図示するように、ローカルマシン１は、ＣＰＵ（Central Processing Unit）１０１と、ＣＰＵ１０１のワークエリアとして機能するＲＡＭ（Random Access Memory）１０２と、ＬＡＮ４Ａに接続するためのＮＩＣ（Network Interface Card）１０３と、ＨＤＤ（Hard Disk Drive）１０４と、フラッシュＲＯＭ（Read Only Memory）１０５と、デスクトップの映像情報を生成するビデオカード１０６と、これらの各部１０１〜１０６と接続するバスＢＵＳなどの内部接続線を中継するブリッジ１０７と、電源１０８と、を有する。
【００２０】
フラッシュＲＯＭ１０５には、ＢＩＯＳ（Basic Input/Output System）１０５０が記憶されている。ＣＰＵ１０１は、電源１０８の投入後、先ずフラッシュＲＯＭ１０５にアクセスしてＢＩＯＳ１０５０を実行することにより、ローカルマシン１のシステム構成を認識する。
【００２１】
ＨＤＤ１０４には、ＯＳ（Operating System）１０４１、ＶＰＮ通信プログラム１０４２、リモートサーバプログラム１０４３、文書管理クライアントプログラム１０４４、署名クライアントプログラム１０４５、および認証情報管理テーブル１０４６が、少なくとも記憶されている。
【００２２】
ＯＳ１０４１は、ＣＰＵ１０１がローカルマシン１の各部１０２〜１０８を統括的に制御して、後述する各プログラム１０４２〜１０４５を実行するためのプログラムである。ＣＰＵ１０１は、ＢＩＯＳ１０５０に従い、ＨＤＤ１０４からＯＳ１０４１をＲＡＭ１０２にロードして実行する。これにより、ＣＰＵ１０１は、ローカルマシン１の各部１０２〜１０８を統括的に制御する。
【００２３】
ＶＰＮ通信プログラム１０４２は、リモートマシン２との間にＶＰＮを構築するための通信プログラムであり、例えばＩＰｓｅｃ（Security Architecture for the Internet Protocol）を用いた通信プログラムである。ＣＰＵ１０１は、ＯＳ１０４１に従い、ＨＤＤ１０４からＶＰＮ通信プログラム１０４２をＲＡＭ１０２にロードして実行する。これにより、ＣＰＵ１０１は、ＮＩＣ１０３を介してリモートマシン２から受付けた通信開始要求に従い、リモートマシン２との間にＶＰＮを構築し、このＶＰＮを介してリモートマシン２と通信を行なう。
【００２４】
リモートサーバプログラム１０４３は、ターミナルサービスを提供するため、すなわちローカルマシン１のデスクトップをリモートマシン２からリモート操作するためのプログラムであり、例えばＡＴ＆Ｔケンブリッジ研究所で開発されたＶＮＣ（Virtual Network Computing）のサーバプログラムである。ＣＰＵ１０１は、ＯＳ１０４１に従い、ＨＤＤ１０４からリモートサーバプログラム１０４３をＲＡＭ１０２にロードして実行する。これにより、ＣＰＵ１０１は、ＶＰＮを介してリモートマシン２から送られてきた入力情報（キーボードおよびマウスの操作内容）を受信し処理すると共に、処理結果を示す映像情報（ディスプレイのデスクトップ画面）を、ＶＰＮを介してリモートマシン２に送信する。
【００２５】
文書管理クライントプログラム１０４４は、文書管理サーバ７が提供するサービス（文書管理サービス）を受けるためのプログラムである。
【００２６】
署名クライアントプログラム１０４５は、署名サーバ８が提供するサービス（鍵生成サービス、署名生成サービス）を受けるためのプログラムである。
【００２７】
認証情報管理テーブル１０４６には、図３に示すように、リモートサーバプログラム１０４３がターミナルサービスの提供相手であるリモートマシン２を認証するためのローカルマシン用認証情報（ユーザＩＤ、パスワード）１０４６１、文書管理サーバ７が文書管理サービスの提供相手であるローカルマシン１を認証するための文章管理サーバ用認証情報（ユーザＩＤ、パスワード）１０４２、および署名サーバ８が鍵生成サービスおよび署名生成サービスの提供相手であるローカルマシン１を認証するための署名サーバ用認証情報（ユーザＩＤ、パスワード）１０４３が、登録されている。
【００２８】
図４はローカルマシン１の動作例を説明するためのフロー図である。
【００２９】
なお、このフローは、本来、ＣＰＵ１０１がプログラムに従って実行する。しかし、ここでは、説明を簡単にするために、プログラムを実行主体として、フローを説明する。
【００３０】
ＯＳ１０４１は、ＮＩＣ１０３を介して、リモートマシン２よりターミナルサービス要求を受信すると（Ｓ１０１でＹＥＳ）、これをリモートサーバプログラム１０４３に通知する。リモートサーバプログラム１０４３は、ターミナルサービス要求応答をリモートマシン２に送信して、リモートマシン２にローカルマシン用認証情報の送信を促す。そして、リモートマシン２からローカルマシン用認証情報を受信すると、この情報が認証情報管理テーブル１０４６に登録されているローカルマシン用認証情報と一致するか否かを判断することで、ユーザ認証を行う（Ｓ１０２）。ユーザ認証が不成立の場合（Ｓ１０３でＮＯ）、リモートサーバプログラム１０４３は、エラーメッセージをリモートマシン２に送信するなどの所定のエラー処理を行って（Ｓ１１３）、このフローを終了する。
【００３１】
一方、ユーザ認証が成立した場合（Ｓ１０３でＹＥＳ）、リモートサーバプログラム１０４３は、ＶＰＮ通信プログラム１０４２にＶＰＮ確立を要求する。これを受けて、ＶＰＮ通信プログラム１０４２は、ＯＳ１０４１およびＮＩＣ１０３を介して、ターミナルサービス要求送信元のリモートマシン２との間にＶＰＮを確立する（Ｓ１０４）。
【００３２】
ＶＰＮが確立されたならば、リモートサーバプログラム１０４３は、このＶＰＮを介して、リモートマシン２にターミナルサービスの提供を開始する（Ｓ１０５）。具体的には、ＮＩＣ１０３を介してリモートマシン２から入力情報を受信すると、この入力情報をアクティブとなっている所定のプログラム（文書管理クライアントプログラム１０４４、署名クライアントプログラム１０４５）に通知する。これを受けて、プログラムは、この入力情報が示す操作内容（キーボード操作およびマウス操作）に応じた処理を実行する。そして、処理結果を反映させたデスクトップ画面を表す映像情報（デスクトップ画面を描画するための色情報、描画コマンド情報、ビットマップ情報など）をＲＡＭ１０２に生成させる。リモートサーバプログラム１０４３は、この映像情報を、ＮＩＣ１０３を介してリモートマシン２へ送信する。
【００３３】
さて、文書管理クライアントプログラム１０４４は、リモートサーバプログラム１０４３を介してリモートマシン２から文書管理サービス要求を受信すると（Ｓ１０６でＹＥＳ）、後述する文書管理要求処理を行う（Ｓ１０７）。
【００３４】
また、署名クライアントプログラム１０４５は、リモートサーバプログラム１０４３を介してリモートマシン２から署名サービス要求を受信すると（Ｓ１０８でＹＥＳ）、後述する署名要求処理を行う（Ｓ１０９）。
【００３５】
また、リモートサーバプログラム１０４３は、リモートマシン２からターミナルサービス終了指示を受信すると（Ｓ１１０でＹＥＳ）、ターミナルサービスのリモートマシン２への提供を終了する（Ｓ１１１）。それから、リモートサーバプログラム１０４３は、ＶＰＮ通信プログラム１０４２にＶＰＮ切断を要求する。これを受けて、ＶＰＮ通信プログラム１０４２は、ＯＳ１０４１およびＮＩＣ１０３を介して、リモートマシン２との間に確立されているＶＰＮを切断する（Ｓ１１２）。
【００３６】
図５は図４に示す文書管理要求処理（Ｓ１０７）を説明するためのフロー図である。
【００３７】
まず、文書管理クライアントプログラム１０４４は、ＯＳ１０４１およびＮＩＣ１０３を介して、文書管理サーバ７に文書管理サービス要求を送信する（Ｓ１０７１）。そして、文書管理サーバ７から文書管理サービス応答を受信すると、認証情報管理テーブル１０４６から文書管理サーバ用認証情報１０４２を読み出し、これを文書管理サーバ７に送信して、文書管理サーバ７にユーザ認証を依頼する（Ｓ１０７２）。そして、文書管理サーバ７から認証結果が送られてくるのを待つ。
【００３８】
さて、文書管理サーバ７から受信した認証結果が認証不成立である場合（Ｓ１０７３でＮＯ）、文書管理クライアントプログラム１０４４は、デスクトップ画面（ターミナルサービスによりリモートマシン２に表示される）にエラーメッセージを表示するなどの所定のエラー処理を行って（Ｓ１０８５）、このフローを終了する。
【００３９】
一方、文書管理サーバ７から受信した認証結果が認証成立である場合（Ｓ１０７３でＹＥＳ）、文書管理クライアントプログラム１０４４は、契約書データを新規作成するか、それとも編集するかを確認するための入力画面をデスクトップ画面に表示し、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２のユーザから、契約書データを新規作成するか、それとも編集するかの指示を受付ける（Ｓ１０７４）。
【００４０】
Ｓ１０７４において、受付けた指示が契約書データの新規作成の場合、文書管理クライアントプログラム１０４４は、文書管理サーバ１０７５に契約タイプ雛型一覧データ要求を送信し、文書管理サーバ１０７５から契約タイプ雛型一覧データを受信して、これをデスクトップ画面に表示する（Ｓ１０７５）。ここで、契約タイプ雛型一覧データとは、予め用意された契約書の雛型データの諸情報（契約タイプ等）が記述されたデータである。
【００４１】
次に、文書管理クライアントプログラム１０４４は、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２のユーザから、契約タイプを受付ける（Ｓ１０７６）。それから、文書管理クライアントプログラム１０４４は、文書管理サーバ７に、この受付けた契約タイプを送信する。そして、文書管理サーバ７から雛型データを受信し、これをデスクトップ画面に表示する（Ｓ１０７７）。
【００４２】
それから、文書管理クライアントプログラム１０４４は、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２のユーザから、雛型データの編集を受付ける（Ｓ１０７８）。そして、このリモートマシン２のユーザの指示に従い、編集された雛型データを、当該ユーザの顧客である被保険者の契約書データ（署名なし）として文書管理サーバ７に送信し、文書管理サーバ７に対してこの契約書データの登録を要求する（Ｓ１０７９）。その後、文書管理クライアントプログラム１０４４は、文書管理サーバ７からこの契約書データに付与された文書ＩＤを受信したならば、これをデスクトップ画面に表示する（Ｓ１０８０）。その後、このフローを終了する。
【００４３】
Ｓ１０７４において、受付けた指示が契約書データの編集の場合、文書管理クライアントプログラム１０４４は、文書ＩＤの受付画面をデスクトップ画面に表示し、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２のユーザから、文書ＩＤを受付ける（Ｓ１０８１）。それから、文書管理クライアントプログラム１０４４は、文書管理サーバ７に、この受付けた文書ＩＤを送信する。そして、文書管理サーバ７から契約書データを受信し、これをデスクトップ画面に表示する（Ｓ１０８２）。
【００４４】
それから、文書管理クライアントプログラム１０４４は、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２のユーザから、契約書データの編集を受付ける（Ｓ１０８３）。そして、このリモートマシン２のユーザの指示に従い、編集された契約書データを文書管理サーバ７に送信し、文書管理サーバ７に対してこの契約書データの登録を要求する（Ｓ１０８４）。その後、このフローを終了する。
【００４５】
図６は図４に示す署名要求処理（Ｓ１０９）を説明するためのフロー図である。
【００４６】
まず、署名クライアントプログラム１０４５は、ＯＳ１０４１およびＮＩＣ１０３を介して、署名サーバ８に署名サービス要求を送信する（Ｓ１０９１）。そして、署名サーバ８から署名サービス応答を受信すると、認証情報管理テーブル１０４６から署名サーバ用認証情報１０４３を読み出し、これを署名サーバ８に送信して、署名サーバ８にユーザ認証を依頼する（Ｓ１０９２）。そして、署名サーバ８から認証結果が送られてくるのを待つ。
【００４７】
さて、署名サーバ８から受信した認証結果が認証不成立である場合（Ｓ１０９３でＮＯ）、署名クライアントプログラム１０４５は、デスクトップ画面（ターミナルサービスによりリモートマシン２に表示される）にエラーメッセージを表示するなどの所定のエラー処理を行って（Ｓ１１０１）、このフローを終了する。
【００４８】
一方、署名サーバ８から受信した認証結果が認証成立である場合（Ｓ１０９３でＹＥＳ）、署名クライアントプログラム１０４５は、契約書データに対する署名を生成するか、それとも署名および署名検証に用いる署名鍵（秘密鍵）、検証鍵（公開鍵）を生成するかを確認するための入力画面をデスクトップ画面に表示し、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２のユーザから、署名を生成するか、それとも鍵を生成するかの指示を受付ける（Ｓ１０９４）。
【００４９】
Ｓ１０９４において、受付けた指示が鍵生成の場合、署名クライアントプログラム１０４５は、リモートマシン２のユーザの顧客である被保険者の生体情報（例えば指静脈情報）を要求するメッセージをデスクトップ画面に表示し、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２から生体情報を受信する（Ｓ１０９５）。そして、この生体情報を含む鍵生成要求を生成し、これを署名サーバ８に送信する（Ｓ１０９６）。その後、このフローを終了する。
【００５０】
Ｓ１０９４において、受付けた指示が署名生成の場合、署名クライアントプログラム１０４５は、文書ＩＤの受付画面をデスクトップ画面に表示し、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２のユーザから、文書ＩＤを受付ける（Ｓ１０９７）。それから、署名クライアントプログラム１０４５は、リモートマシン２のユーザの顧客である被保険者の生体情報を要求するメッセージをデスクトップ画面に表示し、ターミナルサービスによりこのデスクトップ画面が表示されているリモートマシン２から生体情報を受信する（Ｓ１０９８）。そして、文書ＩＤおよび生体情報を含む署名生成要求を生成し、これを署名サーバ８に送信する（Ｓ１０９９）。その後、このフローを終了する。
【００５１】
図１に戻って説明を続ける。
【００５２】
リモートマシン２は、ローカルマシン１からターミナルサービスを受ける。すなわち、ローカルマシン１との間にＶＰＮを構築し、このＶＰＮを介して、自リモートマシン２に入力された入力情報（入力装置の操作内容）をローカルマシン１へ送信すると共に、ローカルマシン１から映像像情（表示装置のデスクトップ画面）を受信し、これを自リモートマシン２のディスプレイに表示する。
【００５３】
なお、リモートマシン２は、いわゆるＨＤＤレスタイプのＰＣであり、プリンタ、外付けドライブ、外付けメモリ（但し、認証デバイス６を除く）等をローカル接続およびネットワーク接続できないように構成されている。つまり、リモートマシン２は、ローカルマシン１にローカル接続あるいはネットワーク接続されているプリンタ、外付けドライブ、外付けメモリ等のみを使用できるように構成されている。このようにすることで、リモートマシン２の盗難等による情報漏えいの可能性を低減している。
【００５４】
図７はリモートマシン２の概略構成例を示す図である。
【００５５】
図示するように、リモートマシン２は、ＣＰＵ２０１と、ＣＰＵ２０１のワークエリアとして機能するＲＡＭ２０２と、ＬＡＮ４Ｂに接続するためのＮＩＣ２０３と、認証デバイス（ＵＳＢデバイス）６を接続するためのＵＳＢポート２０４と、フラッシュＲＯＭ２０５と、キーボードおよびマウスを接続するためのＩ/Ｏコネクタ２０６と、生体情報（例えば指静脈情報）を読み取る生体情報読取装置２０７と、ディスプレイを接続するためのビデオカード２０８と、これらの各部２０１〜２０８と接続するバスＢＵＳを中継するブリッジ２０９と、電源２１０と、を有する。
【００５６】
フラッシュＲＯＭ２０５には、ＢＩＯＳ２０５０、ＯＳ２０５１、ＶＰＮ通信プログラム２０５２、およびリモートクライアントプログラム２０５３が、少なくとも記憶されている。
【００５７】
ＣＰＵ２０１は、電源２１０の投入後、先ずフラッシュＲＯＭ２０５にアクセスしてＢＩＯＳ２０５０を実行することにより、リモートマシン２のシステム構成を認識する。
【００５８】
ＯＳ２０５１は、ＣＰＵ２０１がリモートマシン２の各部２０２〜２１０を統括的に制御して後述する各プログラム２０５２、２０５３を実行するためのプログラムである。ＣＰＵ２０１は、ＢＩＯＳ２０５０に従いフラッシュＲＯＭ２０５からＯＳ２０５１をＲＡＭ２０２にロードして実行する。これにより、ＣＰＵ２０１は、リモートマシン２の各部２０２〜２１０を統括的に制御する。なお、本実施形態のＯＳ２０５１には、組み込み型ＯＳ等のフラッシュＲＯＭ２０５に格納可能な比較的サイズの小さいものが利用される。
【００５９】
ＶＰＮ通信プログラム２０５２は、ローカルマシン１との間に、ＶＰＮを構築するための通信プログラムであり、例えばＩＰｓｅｃを用いた通信プログラムである。ＣＰＵ２０１は、ＯＳ２０５１に従い、フラッシュＲＯＭ２０５からＶＰＮ通信プログラム２０５２をＲＡＭ２０２にロードして実行する。これにより、ＣＰＵ２０１は、ＮＩＣ２０３を介して自リモートマシン２に割り当てられたローカルマシン１との間にＶＰＮを構築する。
【００６０】
リモートクライアントプログラム２０５３は、ターミナルサービスを受けるため、すなわちリモートマシン２が遠隔からローカルマシン１のデスクトップにアクセスするためのプログラムであり、例えばＶＮＣのクライアント（ビューワ）プログラムである。ＣＰＵ２０１は、ＯＳ２０５１に従い、フラッシュＲＯＭ２０５からリモートクライアントプログラム２０５３をＲＡＭ２０２にロードして実行する。これにより、ＣＰＵ２０１は、Ｉ/Ｏコネクタ２０６の入力情報（キーボードおよびマウスの操作内容）を、ＶＰＮを介してローカルマシン１に送信すると共に、ＶＰＮを介してローカルマシン１から送られてきた映像情報（ディスプレイのデスクトップ画面）をビデオカード２０８に接続されたディスプレイ（不図示）に出力する。
【００６１】
図８はリモートマシン２の動作例を説明するための図である。
【００６２】
なお、このフローは、本来、ＣＰＵ２０１がプログラムに従って実行する。しかし、ここでは、説明を簡単にするために、プログラムを実行主体として、フローを説明する。
【００６３】
先ず、ＯＳ２０５１は、リモートクライアントプログラム２０５３を起動する。これを受けて、リモートクライアントプログラム２０５３は、ビデオカード２０８に接続されたディスプレイにリモートマシン用認証情報（ユーザＩＤおよびパスワード）の入力フォームを表示させ、Ｉ/Ｏコネクタ２０６に接続されたキーボードおよびマウスを介してユーザからリモートマシン用認証情報の入力を受付ける。そして、受付けたリモートマシン用認証情報をＵＳＢポート２０４に接続されている認証デバイス６に送信して、ユーザ認証を依頼する（Ｓ２０１）。認証デバイス６でのユーザ認証が成立し、認証デバイス６からローカルサーバ１のアドレス情報を取得したならば、リモートクライアントプログラム２０５３は、ＮＩＣ２０３を介して、このアドレス情報により特定されるローカルマシン１にターミナルサービス要求を送信する（Ｓ２０２）。その後、リモートクライアントプログラム２０５３は、ローカルマシン１よりターミナルサービス要求応答を受信したならば、認証デバイス６からローカルマシン用認証情報を読み出し、これをローカルマシン１に送信して、ローカルマシン１にユーザ認証を依頼する（Ｓ２０３）。そして、ローカルマシン１から認証結果が送られてくるのを待つ。
【００６４】
さて、ローカルマシン１から受信した認証結果が認証不成立である場合（Ｓ２０４でＮＯ）、リモートクライアントプログラム２０５３は、表示画面にエラーメッセージを表示するなどの所定のエラー処理を行って（Ｓ２１０）、このフローを終了する。
【００６５】
一方、ローカルサーバ１から受信した認証結果が認証成立である場合（Ｓ２０４でＹＥＳ）、リモートクライアントプログラム２０５３は、ＶＰＮ通信プログラム２０５２にＶＰＮ確立を要求する。これを受けて、ＶＰＮ通信プログラム２０５２は、ＯＳ２０５１およびＮＩＣ２０３を介して、ターミナルサービス提供元のローカルマシン１との間にＶＰＮを確立させる（Ｓ２０５）。
【００６６】
ＶＰＮが確立されたならば、リモートクライアントプログラム２０５３は、このＶＰＮを介して、ローカルマシン１が提供するターミナルサービスの利用を開始する（Ｓ２０６）。具体的には、Ｉ/Ｏコネクタ２０６を介して入力装置から入力情報を受信すると、ＮＩＣ２０３を介してローカルマシン１にこの入力情報を送信する。また、ＮＩＣ２０３を介してローカルマシン１からローカルマシン１のデスクトップ画面を描画するための映像情報を受信し、これを処理してビデオカード２０８に接続された表示装置に表示する。
【００６７】
さて、リモートクライアントプログラム２０５３は、Ｉ/Ｏコネクタ２０６を介して入力装置からターミナルサービス終了指示を受付けると（Ｓ２０７でＹＥＳ）、ローカルマシン１にターミナルサービス終了指示を送信して、ターミナルサービスの利用を終了する（Ｓ２０８）。それから、リモートクライアントプログラム２０５３は、ＶＰＮ通信プログラム２０５２にＶＰＮ切断を要求する。これを受けて、ＶＰＮ通信プログラム２０５２は、ＯＳ２０５１およびＮＩＣ２０３を介して、リモートマシン２との間に確立されているＶＰＮを切断する（Ｓ２０９）。
【００６８】
図１に戻って説明を続ける。
【００６９】
認証デバイス６は、リモートマシン２から受け取ったリモートマシン用認証情報の認証を行い、その検証結果をリモートマシン２へ通知する。ここで、認証結果が認証成立の場合、認証デバイス６は、この認証結果と共に、認証デバイス６に登録されているローカルサーバ１のアドレスをリモートマシン２へ通知する。また、認証デバイス６は、認証成立したリモートマシン２からの指示に従い、ローカルマシン用認証情報を読み出してリモートマシン２に通知する。
【００７０】
図９は認証デバイス６の概略図である。図示するように、認証デバイス６は、リモートマシン２のＵＳＢポート２０４に接続するためのＵＳＢアダプタ６０１と、ＩＣチップ６０２と、を有する。
【００７１】
ＩＣチップ６０２には、リモートマシン用認証情報６０２１と、ローカルマシン用認証情報６０２２と、ローカルマシンのアドレス情報６０２３と、認証プログラム６０２４と、が記憶されている。なお、認証デバイス６に、フラッシュメモリを外付けできるように構成し、ＩＣチップ６０２内の一部のデータをこのフラッシュメモリに記憶するようにしてもかまわない。
【００７２】
認証プログラム６０２４は、自認証デバイス６が接続されたリモートマシン２に入力されたユーザのＩＤおよびパスワードと、リモートマシン用認証情報６０２１とを用いてユーザ認証を行うプログラムである。
【００７３】
認証デバイス６のＵＳＢアダプタ６０１がリモートマシン２のＵＳＢポート２０４に接続され、これにより、リモートマシン２から認証デバイス６へ電源が供給されると、ＩＣチップ６０２は、認証プログラム６０２４を実行する。
【００７４】
図１０は認証デバイス６の動作を説明するための図である。なお、このフローは、本来、ＩＣチップ６０２がプログラムに従って実行する。しかし、ここでは、説明を簡単にするために、プログラムを実行主体として、フローを説明する。
【００７５】
先ず、認証プログラム６０２４は、リモートマシン２からリモートマシン用認証情報を受信すると（Ｓ６０１）、このリモートマシン用認証情報をＩＣチップ６０２に格納されているリモートマシン用認証情報６０２１と比較することでユーザ認証を行う（Ｓ６０２）。両者が一致しない場合は（Ｓ６０３でＮＯ）、認証不成立を示す認証結果をリモートマシン２に出力するなどの所定のエラー通知を行って（Ｓ６０６）、このフローを終了する。
【００７６】
一方、両者が一致する場合（Ｓ６０３でＹＥＳ）、ＩＣチップ６０２に格納されているローカルマシン１のアドレス情報６０２３をリモートマシン２に出力する（Ｓ６０４）。それから、認証プログラム６０２４は、リモートマシン２の指示に従い、ＩＣチップ６０２からローカルマシン用認証情報６０２２を読み出して、リモートマシン２に出力する（Ｓ６０５）。
【００７７】
図１に戻って説明を続ける。
【００７８】
文書管理サーバ７は、リモートマシン１のユーザが作成した当該ユーザの顧客である被保険者の契約書データを管理する。
【００７９】
図１１は文書管理サーバ７の概略図である。図示するように、文書管理サーバ７は、ＣＰＵ７０１と、ＣＰＵ７０１のワークエリアとして機能するＲＡＭ７０２と、ＬＡＮ４Ａに接続するためのＮＩＣ７０３と、ＨＤＤ７０４と、フラッシュＲＯＭ７０５と、キーボードおよびマウスを接続するためのＩ/Ｏコネクタ７０６と、ディスプレイを接続するためのビデオカード７０７と、これらの各部７０１〜７０７と接続するバスＢＵＳを中継するブリッジ７０８と、電源７０９と、を有する。
【００８０】
フラッシュＲＯＭ７０５には、ＢＩＯＳ７０５０が記憶されている。ＣＰＵ７０１は、電源７０９の投入後、先ずフラッシュＲＯＭ７０５にアクセスしてＢＩＯＳ７０５０を実行することにより、文書管理サーバ７のシステム構成を認識する。
【００８１】
ＨＤＤ７０４には、ＯＳ７０４１、文書管理サーバプログラム７０４２、雛型データベース７０４３、契約書データベース７０４４、および認証情報管理テーブル７０４５が、少なくとも記憶されている。
【００８２】
ＯＳ７０４１は、ＣＰＵ７０１が文書管理サーバ７の各部７０２〜７０９を統括的に制御して、文書管理サーバプログラム７０４２を実行するためのプログラムである。ＣＰＵ７０１は、ＢＩＯＳ７０５０に従い、ＨＤＤ７０４からＯＳ７０４１をＲＡＭ７０２にロードして実行する。これにより、ＣＰＵ７０１は、文書管理サーバ７の各部７０２〜７０９を統括的に制御する。
【００８３】
文書管理サーバプログラム７０４２は、ローカルマシン１に文書管理サービスを提供するためのプログラムである。文書管理サーバプログラム７０４２は、雛型データベース７０４３を用いて、ローカルマシン１のターミナルサービスを受けるリモートマシン２のユーザによる契約書データの新規作成を支援する。また、文書管理サーバプログラム７０４２は、契約書データベース７０４４を用いて、ローカルマシン１のターミナルサービスを受けるリモートマシン２のユーザによる契約書データの更新を支援する。さらに、文書管理サーバプログラム７０４２は、署名対象の契約書データを契約書データベース７０４４から読み出して、署名サーバ８に送信する。
【００８４】
雛型データベース７０４３には、生命保険、障害保険等といった契約のタイプ毎に、当該タイプの契約書データの元となる雛型データが登録されている。図１２は雛型データベースの登録内容を模式的に表した図である。図示するように、契約のタイプ毎にレコード７０４３０が登録されている。レコード７０４３０は、契約のタイプを登録するフィールド７０４３１と、契約書の雛型データ（バイナリデータ）を登録するフィールド７０４３２と、を有する。
【００８５】
契約書データベース７０４４には、リモートマシン１のユーザが作成した契約書データが登録されている。図１３は契約書データベース７０４４の登録内容を模式的に表した図である。図示するように、契約書データ毎にレコード７０４４０が登録されている。レコード７０４４０は、文書ＩＤを登録するフィールド７０４４１と、契約書データ（バイナリデータ）を登録するフィールド７０４４２と、契約書データを作成したユーザのユーザＩＤ（文書管理サーバ用認証情報のユーザＩＤ）を登録するフィールド７０４４３と、契約書データに対する被保険者の署名データの識別情報（署名ＩＤ）を登録するフィールド７０４４４と、を有する。
【００８６】
認証情報管理テーブル７０４５には、文書管理サービスを利用可能なリモートマシン２の各ユーザの文書管理サーバ用認証情報（ユーザＩＤとパスワード）が登録されている。
【００８７】
図１４は文書管理サーバ７の動作を説明するための図である。なお、このフローは、本来、ＣＰＵ７０１がプログラムに従って実行する。しかし、ここでは、説明を簡単にするために、プログラムを実行主体として、フローを説明する。
【００８８】
文書管理サーバプログラム７０４２は、ＯＳ７０４１およびＮＩＣ７０３を介してローカルマシン１から文書管理サービス要求を受信すると（Ｓ７０１でＹＥＳ）、文書管理サービス応答をローカルマシン１に送信し、ローカルマシン１から文書管理サーバ用認証情報が送られてくるのを待つ。そして、ローカルマシン１から受信した文書管理サーバ用認証情報が認証情報管理テーブル７０４５に登録されているか否かを調べることで、ユーザ認証を行う（Ｓ７０２）。
【００８９】
ユーザ認証不成立の場合（Ｓ７０３でＮＯ）、文書管理サーバプログラム７０４２は、認証不成立を示す認証結果をローカルマシン１に送信するなどの所定のエラー通知を行って（Ｓ７１５）、このフローを終了する。一方、ユーザ認証成立の場合（Ｓ７０３でＹＥＳ）、文書管理サーバプログラム７０４２は、認証成立を示す認証結果をローカルマシン１に送信する。そして、ローカルマシン１からの要求を待つ。
【００９０】
さて、文書管理サーバプログラム７０４２は、ユーザ認証が成立したローカルマシン１から契約タイプの一覧要求を受信したならば（Ｓ７０４でＹＥＳ）、雛型データベース６０４３の各レコード７０４３０のフィールド７０４３１に登録されている契約タイプの一覧表示データを生成し、これをローカルマシン１に送信する（Ｓ７０５）。そして、ローカルマシン１から契約タイプの指定を受信したならば、この契約タイプがフィールド７０４３１に登録されているレコード７０４３０を雛型データベース７０４３から検索し、検索したレコード７０４３０のフィールド７０４３２に登録されている雛型データを、ローカルマシン１に送信する（Ｓ７０６）。その後、文書管理サーバプログラム７０４２は、この雛型データから新規作成された契約書データの登録要求をローカルマシン１から受信すると（Ｓ７０７）、ユニークな文書ＩＤ（例えば連番）を生成する（Ｓ７０８）。また、契約書データベース７０４４に新たなレコード７０４４０を追加し、このレコード７０４４０のフィールド７０４４１にこの生成した文書ＩＤを、フィールド７０４４２にローカルマシン１から受信から受信した契約書データを、フィールド７０４４３にローカルマシン１から受信した文書管理サーバ用認証情報（例えばユーザＩＤ）を、そして、フィールドＩＤ７０４４４に署名前であることを示すヌルデータを登録する（Ｓ７０９）。それから、文書管理サーバプログラム７０４２は、生成した文書ＩＤをローカルマシン１に送信する（Ｓ７１０）。
【００９１】
また、文書管理サーバプログラム７０４２は、ユーザ認証が成立したローカルマシン１から文書ＩＤを伴う契約書要求を受信したならば（Ｓ７１１でＹＥＳ）、この文書ＩＤがフィールド７０４４１に登録されているレコード７０４４０を契約書データベース７０４４から検索し、検索したレコード７０４４０のフィールド７０４４２に登録されている契約書データを、ローカルマシン１に送信する（Ｓ７１２）。その後、文書管理サーバプログラム７０４２は、この契約書データを編集することで作成された契約書データの登録要求をローカルマシン１から受信すると（Ｓ７１３）、Ｓ７１２で検索したレコード７０４４０のフィールド７０４４２に登録されている契約書データを、登録要求対象の契約書データに更新する（Ｓ７１４）。
【００９２】
また、文書管理サーバプログラム７０４２は、ＯＳ７０４１およびＮＩＣ７０３を介して署名サーバ８から文書ＩＤを伴う契約書要求を受信したならば（Ｓ７２０でＹＥＳ）、この文書ＩＤがフィールド７０４４１に登録されているレコード７０４４０を契約書データベース７０４４から検索し、検索したレコード７０４４０のフィールド７０４４２に登録されている契約書データを、署名サーバ８に送信する（Ｓ７２１）。その後、文書管理サーバプログラム７０４２は、この契約書データに対する署名データの署名ＩＤの登録要求を署名サーバ８から受信すると（Ｓ７２２）、Ｓ７２１で検索したレコード７０４４０のフィールド７０４４４に、登録要求対象の署名ＩＤを登録する（Ｓ７２３）。
【００９３】
図１に戻って説明を続ける。
【００９４】
署名サーバ８は、契約書データに対する署名の生成、および該署名に用いる鍵の生成を行う。
【００９５】
図１５は署名サーバ８の概略図である。図示するように、署名サーバ８は、ＣＰＵ８０１と、ＣＰＵ８０１のワークエリアとして機能するＲＡＭ８０２と、ＬＡＮ４Ａに接続するためのＮＩＣ８０３と、ＨＤＤ８０４と、フラッシュＲＯＭ８０５と、キーボードおよびマウスを接続するためのＩ/Ｏコネクタ８０６と、ディスプレイを接続するためのビデオカード８０７と、これらの各部８０１〜８０７と接続するバスＢＵＳを中継するブリッジ８０８と、電源８０９と、を有する。
【００９６】
フラッシュＲＯＭ８０５には、ＢＩＯＳ８０５０が記憶されている。ＣＰＵ８０１は、電源８０９の投入後、先ずフラッシュＲＯＭ８０５にアクセスしてＢＩＯＳ８０５０を実行することにより、署名サーバ８のシステム構成を認識する。
【００９７】
ＨＤＤ８０４には、ＯＳ８０４１、署名サーバプログラム８０４２、鍵データベース８０４３、署名データベース８０４４、および認証情報管理テーブル８０４５が、少なくとも記憶されている。
【００９８】
ＯＳ８０４１は、ＣＰＵ８０１が署名サーバ８の各部８０２〜８０９を統括的に制御して、署名サーバプログラム８０４２を実行するためのプログラムである。ＣＰＵ８０１は、ＢＩＯＳ８０５０に従い、ＨＤＤ８０４からＯＳ８０４１をＲＡＭ８０２にロードして実行する。これにより、ＣＰＵ８０１は、署名サーバ８の各部８０２〜８０９を統括的に制御する。
【００９９】
署名サーバプログラム８０４２は、ローカルマシン１に鍵生成サービスおよび署名生成サービスを提供するためのプログラムであり、鍵生成プログラム８０４２１と、署名生成プログラム８０４２２とを有する。鍵生成プログラム８０４２１は、対の署名鍵（秘密鍵）および検証鍵（公開鍵）を生成する。署名生成プログラム８０４２２は、署名鍵を用いて契約書データに対する署名データ（電子署名）を生成する。
【０１００】
鍵データベース８０４３には、リモートマシン２のユーザの顧客である各被保険者の鍵データが登録される。図１６は鍵データベースの登録内容を模式的に表した図である。図示するように、被保険者毎にレコード８０４３０が登録されている。レコード８０４３０は、被保険者の生体情報（例えば指静脈情報（バイナリデータ））を登録するフィールド８０４３１と、署名鍵の識別情報（署名鍵ＩＤ）を登録するフィールド８０４３２と、署名鍵を登録するフィールド８０４３３と、検証鍵の識別情報（検証鍵ＩＤ）を登録するフィールド８０４３４と、検証鍵を登録するフィールド８０４３５と、を有する。
【０１０１】
署名データベース８０４４には、契約書データに対する署名データが登録されている。図１７は署名データベース８０４４の登録内容を模式的に表した図である。図示するように、署名データ毎にレコード８０４４０が登録されている。レコード８０４４０は、署名ＩＤを登録するフィールド８０４４１と、署名データ（バイナリデータ）を登録するフィールド８０４４２と、署名データの生成に用いた署名鍵の署名鍵ＩＤを登録するフィールド８０４４３と、署名データの検証に用いる検証鍵の検証鍵ＩＤを登録するフィールド８０４４４と、を有する。
【０１０２】
認証情報管理テーブル８０４５には、署名サービス（鍵生成サービス、署名生成サービス）を利用可能なリモートマシン２の各ユーザの署名サーバ用認証情報（ユーザＩＤとパスワード）が登録されている。
【０１０３】
図１８は署名サーバ８の動作を説明するための図である。なお、このフローは、本来、ＣＰＵ７０１がプログラムに従って実行する。しかし、ここでは、説明を簡単にするために、プログラムを実行主体として、フローを説明する。
【０１０４】
署名サーバプログラム８０４２は、ＯＳ８０４１およびＮＩＣ８０３を介してローカルマシン１から署名サービス要求を受信すると（Ｓ８０１でＹＥＳ）、署名サービス応答をローカルマシン１に送信し、ローカルマシン１から署名サーバ用認証情報が送られてくるのを待つ。そして、ローカルマシン１から受信した署名サーバ用認証情報が認証情報管理テーブル８０４５に登録されているか否かを調べることでユーザ認証を行う（Ｓ８０２）。
【０１０５】
ユーザ認証不成立の場合（Ｓ８０３でＮＯ）、署名サーバプログラム８０４２は、認証不成立を示す認証結果をローカルマシン１に送信するなどの所定のエラー通知を行って（Ｓ８１３）、このフローを終了する。一方、ユーザ認証成立の場合（Ｓ８０３でＹＥＳ）、著名サーバプログラム８０４２は、認証成立を示す認証結果をローカルマシン１に送信する。そして、ローカルマシン１からの要求を待つ。
【０１０６】
さて、署名サーバプログラム８０４２は、ユーザ認証が成立したローカルマシン１から鍵生成要求を受信したならば（Ｓ８０４でＹＥＳ）、鍵生成プログラム８０４２１を起動する。鍵生成プログラム８０４２１は、対の署名鍵と検証鍵とを生成する（Ｓ８０５）。署名サーバプログラム８０４２は、鍵生成プログラム８０４２１が生成した署名鍵および検証鍵のそれぞれに固有の識別情報である署名鍵ＩＤ、検証鍵ＩＤを生成する。また、鍵データベース８０４３に新たなレコード８０４３０を生成する。そして、このレコード８０４３０のフィールド８０４３１に鍵生成要求に含まれている生体情報を、フィールド８０４３２に署名鍵ＩＤを、フィールド８０４３３に署名鍵を、フィールド８０４３４に検証鍵ＩＤを、そして、フィールド８０４３５に検証鍵を登録する（Ｓ８０６）。
【０１０７】
また、署名サーバプログラム８０４２は、ユーザ認証が成立したローカルマシン１から署名生成要求を受信したならば（Ｓ８０７でＹＥＳ）、署名生成プログラム８０４２２を起動する。署名生成プログラム８０４２２は、署名生成要求に含まれている文書ＩＤを含む契約書要求を生成し、これを文書管理サーバ７に送信して、文書管理サーバ７から署名対象の契約書データを取得する（Ｓ８０８）。また、署名生成プログラム８０４２２は、署名生成要求に含まれている生体情報がフィールド８０４３１に登録されているレコード８０４３０を鍵データベース８０４３から検索し、このレコード８０４３０のフィールド８０４３３に登録されている署名鍵を読み出す（Ｓ８０９）。そして、読み出した署名鍵を用いて、文書管理サーバ７から取得した契約書データに対する署名データ（電子署名）を生成する（Ｓ８１０）。署名サーバプログラム８０４２は、署名生成プログラム８０４２２が生成した署名データに固有の識別情報である署名ＩＤを生成する。また、署名データベース８０４４に新たなレコード８０４４０を生成する。そして、このレコード８０４４０のフィールド８０４４１に署名ＩＤを、フィールド８０４４２に署名情報を、そして、フィールド８０４４３、８０４４４に、Ｓ８０９で検索したレコード８０４３０のフィールド８０４３２、８０４３４に登録されている署名鍵ＩＤ、検証鍵ＩＤを、それぞれ登録する（Ｓ８１１）。それから、署名サーバプログラム８０４２は、署名ＩＤをローカルマシン１に送信する（Ｓ８１２）。
【０１０８】
ここで、署名サーバプログラム８０４２は、契約書データ、署名データ、および検証鍵を、例えば署名サーバ８に接続された図示していないＩＣカード等の記憶媒体に書き込むようにしてもよい。そして、この記憶媒体を、郵送等の移動手段により被保険者に送るようにしてもよい。
【０１０９】
次に、上記構成の電子契約書システムの概略動作を説明する。
【０１１０】
図１９は本発明の一実施形態が適用された電子契約書システムにおいて、契約書データを作成する場合の概略動作例を示す図である。
【０１１１】
リモートマシン２は、ユーザからリモートマシン用認証情報を受付け、これを認証デバイス６に送信する。認証デバイス６は、リモートマシン２から受付けたリモートマシン用認証情報と、認証デバイス６内に予め登録されているリモートマシン用認証情報とを用いて、ユーザ認証を行う（Ｓ１１）。そして、ユーザ認証が成立したならば、認証デバイス６内に予め登録されているローカルマシン１のアドレスをリモートマシン２に送信する（Ｓ１２）。
【０１１２】
これを受けて、リモートマシン２は、認証デバイス６より通知されたアドレスにより特定されるローカルマシン１にターミナルサービス要求を送信する（Ｓ１３）。また、認証デバイス６に予め登録されているローカルマシン用認証情報をローカルマシン１に送信する。ローカルマシン１は、リモートマシン２から受付けたローカルマシン用認証情報と、ローカルマシン１内に予め登録されているローカルマシン用認証情報とを用いて、ユーザ認証を行う（Ｓ１４）。そして、ユーザ認証が成立したならば、リモートマシン２との間にＶＰＮを確立し（Ｓ１５）、このＶＰＮを介して、リモートマシン２にターミナルサービスの提供を開始する（Ｓ１６）。
【０１１３】
次に、ローカルマシン１は、ターミナルサービスを利用したデスクトップ操作により、リモートマシン２のユーザから文書管理クライアントプログラム１０４４の起動を指示されたならば、文書管理サービス要求を文書管理サーバ７に送信する（Ｓ１７）。また、文書管理サーバ７に、ローカルマシン１に予め登録されている文書管理サーバ用認証情報を送信する。文書管理サーバ７は、ローカルマシン１から受付けた文書管理サーバ用認証情報と、文書管理サーバ７内に予め登録されている文書管理サーバ用認証情報とを用いて、ユーザ認証を行う（Ｓ１８）。そして、ユーザ認証が成立したならば、ローカルマシン１への文書管理サービスの提供を開始する。
【０１１４】
さて、ローカルマシン１は、ターミナルサービスを利用したリモートマシン２のユーザによるデスクトップ操作により、文書管理サーバ７からの雛型データあるいは契約書データを読出して編集することで、契約書データを作成する（Ｓ１９）。そして、作成した契約書データに文書ＩＤを付与して、文書管理サーバ７に登録する（Ｓ２０）。
【０１１５】
図２０は本発明の一実施形態が適用された電子契約書システムにおいて、鍵データを作成する場合の概略動作例を示す図である。
【０１１６】
ローカルマシン１がリモートマシン２に対してターミナルサービスを開始するまでの動作Ｓ３１〜Ｓ３６は、図１９に示す場合Ｓ１１〜Ｓ１６と同様である。その後、ローカルマシン１は、ターミナルサービスを利用したデスクトップ操作により、リモートマシン２のユーザから署名クライアントプログラム１０４５の起動を指示されたならば、署名サービス要求を署名サーバ８に送信する（Ｓ３７）。また、署名サーバ８に、ローカルマシン１に予め登録されている署名サーバ用認証情報を送信する。署名サーバ８は、ローカルマシン１から受付けた署名サーバ用認証情報と、署名サーバ８内に予め登録されている署名サーバ用認証情報とを用いて、ユーザ認証を行う（Ｓ３８）。そして、ユーザ認証が成立したならば、ローカルマシン１への署名サービスの提供を開始する。
【０１１７】
さて、ローカルマシン１は、ターミナルサービスを利用したリモートマシン２のユーザによるデスクトップ操作により、リモートマシン２に接続された生体情報読取装置２０７を介して、リモートマシン２のユーザの顧客である被保険者の生体情報を取得する。そして、取得した生体情報を含む鍵生成要求を生成し、これを署名サーバ８に送信する（Ｓ３９）。これを受けて、署名サーバ８は、対の署名鍵および検証鍵を生成する。そして、生成した署名鍵、検証鍵を、鍵生成要求に含まれている被保険者の生体情報に対応付けて登録する（Ｓ４０）。
【０１１８】
図２１は本発明の一実施形態が適用された電子契約書システムにおいて、署名データを作成する場合の概略動作例を示す図である。
【０１１９】
ローカルマシン１がリモートマシン２に対してターミナルサービスを開始するまでの動作Ｓ５１〜Ｓ５６は、図１９に示す場合Ｓ１１〜Ｓ１６と同様である。また、署名サーバ８がローカルマシン１に対して署名サービスを開始するまでの動作Ｓ５７〜Ｓ５８は、図２０に示すＳ３７〜Ｓ３８と同様である。
【０１２０】
さて、ローカルマシン１は、ターミナルサービスを利用したリモートマシン２のユーザによるデスクトップ操作により、リモートマシン２のユーザから文書ＩＤを取得すると共に、リモートマシン２に接続された生体情報読取装置２０７を介して、リモートマシン２のユーザの顧客である被保険者の生体情報を取得する。そして、取得した文書ＩＤおよび生体情報を含む署名生成要求を生成し、これを署名サーバ８に送信する（Ｓ５９）。これを受けて、署名サーバ８は、署名生成要求に含まれている文書ＩＤに対応する契約書データを文書管理サーバ７から取得し、署名生成要求に含まれている生体情報に対応付けられて登録されている署名鍵を用いて、この契約書データに対する署名データを生成する。そして、署名データに署名ＩＤを対応付けて登録すると共に、署名ＩＤをローカルマシン１に送信する（Ｓ６０）。
【０１２１】
なお、署名に先立って、図１９に示す文書管理サービスＳ１７〜Ｓ２０を実施して、リモートマシン２のユーザおよび当該ユーザの顧客である被保険者が契約書データの内容を確認できるようにしてもよい。
【０１２２】
以上、本発明の一実施形態を説明した。
【０１２３】
本実施形態によれば、リモートマシンから署名鍵を取り込むことなく、文書データに対する電子署名を生成することができる。また、署名鍵の移動に伴うセキュリティのリスクを低減することができる。
【０１２４】
なお、本実施形態の上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
【０１２５】
例えば、上記の実施形態において、鍵生成サービスおよび署名生成サービスを一つの署名サーバ８で実現する場合を例にとり説明した。しかし、鍵生成サービスおよび署名生成サービスをそれぞれ別個の情報処理装置で実現するようにしてもよい。
【０１２６】
また、上記の実施形態では、ローカルマシン１がリモートマシン２にターミナルサービスを提供するリモートデスクトップシステムを例にとり説明したが、本発明はこれに限定されない。本発明は、通常のクライアントサーバシステム（ローカルマシン１がサーバに対応し、リモートマシン２がクライアントに対応する）にも同様に適用できる。
【０１２７】
また、上記の実施形態では、契約書データに対して被保険者等の署名データを生成する電子契約書システムを例にとり説明したが、本発明はこれに限定されない。本発明は、文書データに対する署名データを生成するシステムに広く適用できる。
【０１２８】
また、上記の実施形態において、各プログラムは、ＣＤ-ＲＯＭ、ＤＶＤ-ＲＯＭ等の可搬型記憶媒体からコンピュータ（ローカルマシン１、リモートマシン２、文書管理サーバ７、署名サーバ８）にインストールされるものでもよい。あるいは、ディジタル信号、搬送波、ネットワーク等の通信媒体を介してコンピュータにダウンロードされてインストールされるものでもよい。
【図面の簡単な説明】
【０１２９】
【図１】図１は本発明の一１実施形態が適用された電子契約書システムの概略構成の一例を示す図である。
【図２】図２はローカルマシン１の概略構成例を示す図である。
【図３】図３は認証情報管理テーブル１０４６を模式的に表した図である。
【図４】図４はローカルマシン１の動作例を説明するためのフロー図である。
【図５】図５は図４に示すＳ１０７（文書管理要求処理）を説明するためのフロー図である。
【図６】図６は図４に示すＳ１０９（署名要求処理）を説明するためのフロー図である。
【図７】図７はリモートマシン２の概略構成例を示す図である。
【図８】図８はリモートマシン２の動作例を説明するためのフロー図である。
【図９】図９は認証デバイス６の概略構成例を示す図である。
【図１０】図１０は認証デバイス６の動作例を説明するためのフロー図である。
【図１１】図１１は文書管理サーバ７の概略構成例を示す図である。
【図１２】図１２は雛型データベース７０４３を模式的に表した図である。
【図１３】図１３契約書データベース７０４４を模式的に表した図である。
【図１４】図１４は文書管理サーバ７の動作例を説明するためのフロー図である。
【図１５】図１５は署名サーバ８の概略構成例を示す図である。
【図１６】図１６は鍵データベース８０４３を模式的に表した図である。
【図１７】図１７は署名データベース８０４４を模式的に表した図である。
【図１８】図１８は署名サーバ８の動作例を説明するためのフロー図である。
【図１９】図１９は本発明の一実施形態が適用された電子契約書システムにおいて、契約書データを作成する場合の概略動作例を示す図である。
【図２０】図２０は本発明の一実施形態が適用された電子契約書システムにおいて、鍵データを作成する場合の概略動作例を示す図である。
【図２１】図２１は本発明の一実施形態が適用された電子契約書システムにおいて、署名データを作成する場合の概略動作例を示す図である。
【符号の説明】
【０１３０】
１：ローカルマシン、２：リモートマシン、３Ａ、３Ｂ：ルータ、４Ａ、４Ｂ：ＬＡＮ、５：ＷＡＮ、６：認証デバイス、７：文書管理サーバ、８：署名サーバ
【図１】
2007306365.tif 000003
【図２】
2007306365.tif 000004
【図３】
2007306365.tif 000005
【図４】
2007306365.tif 000006
【図５】
2007306365.tif 000007
【図６】
2007306365.tif 000008
【図７】
2007306365.tif 000009
【図８】
2007306365.tif 000010
【図９】
2007306365.tif 000011
【図１０】
2007306365.tif 000012
【図１１】
2007306365.tif 000013
【図１２】
2007306365.tif 000014
【図１３】
2007306365.tif 000015
【図１４】
2007306365.tif 000016
【図１５】
2007306365.tif 000017
【図１６】
2007306365.tif 000018
【図１７】
2007306365.tif 000019
【図１８】
2007306365.tif 000020
【図１９】
2007306365.tif 000021
【図２０】
2007306365.tif 000022
【図２１】
2007306365.tif 000023