(57)【要約】【課題】アプリケーションプログラムの構造を簡易化することができる電子署名検証システムを提供する。【解決手段】本発明は、電子署名検証処理に必要される要素を組み合わせて構成されるサービスコンポーネント１１−１〜１１−３をアプリケーションプログラム９−１〜９−３に対して共通のインターフェイスとして用意する。アプリケーションプログラム９−１〜９−３からの署名検証処理要求に含まれるサービスコンポーネントの識別情報に基づいて、当該サービスコンポーネントを実行し、その処理結果をアプリケーションプログラム９−１〜９−３に返す。【選択図】図１
2007324994.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションプログラムが要求するＰＫＩ(Public Key Infrastructure)技術を利用した電子署名検証に関する処理を行なうサービスコンポーネントの識別情報と、識別情報に対応する複数のサービスコンポーネントとを互いに関連付けて記憶するデータベースと、
アプリケーションプログラムからの処理要求に含まれるサービスコンポーネントの識別情報を条件に、前記データベースを検索して、対応するサービスコンポーネントを決定し、この決定されたサービスコンポーネントにより、アプリケーションプログラムが要求するＰＫＩ技術を利用した電子署名検証に関する処理を実行する手段と
を具備することを特徴とする電子署名検証システム。
【請求項２】
前記複数のサービスコンポーネントは、電子署名有効性確認コンポーネント、過去の電子署名の有効性検証コンポーネント、ＳＳＬ(Secure Socket Layer)クライアント認証を用いたシステムへのログイン処理コンポーネントを含み、
前記各複数のサービスコンポーネントは、エンドユーザの署名検証処理、証明書の有効期限チェック処理、証明書のチェイン検証処理及び証明書の有効性検証処理のうちの少なくとも１つを含むことを特徴とする請求項１記載の電子署名検証システム。
【請求項３】
前記電子署名有効性確認コンポーネントは、前記エンドユーザの署名検証処理、証明書の有効期限チェック処理、証明書のチェイン検証処理及び証明書の有効性検証処理を実行し、
前記過去の電子署名の有効性検証コンポーネントは、前記エンドユーザの署名検証処理、証明書のチェイン検証処理及び証明書の有効性検証処理を実行し、
前記ＳＳＬクライアント認証を用いたシステムへのログイン処理コンポーネントは、前記証明書の有効期限チェック処理、証明書のチェイン検証処理及び証明書の有効性検証処理を実行することを特徴とする請求項２記載の電子署名検証システム。
【請求項４】
前記アプリケーションプログラムは第１のサーバで実行され、
前記電子署名検証システムは、前記第１のサーバとネットワークを介して接続されていることを特徴とする請求項１記載の電子署名検証システム。
【請求項５】
アプリケーションプログラムが要求するＰＫＩ(Public Key Infrastructure)技術を利用した電子署名検証に関する処理を行なうサービスコンポーネントの識別情報と、識別情報に対応する複数のサービスコンポーネントとを互いに関連付けて記憶するデータベースを具備する電子署名検証システムにおける電子署名検証方法において、
アプリケーションプログラムからの処理要求に含まれるサービスコンポーネントの識別情報を条件に、前記データベースを検索して、対応するサービスコンポーネントを決定し、
この決定されたサービスコンポーネントにより、アプリケーションプログラムが要求するＰＫＩ技術を利用した電子署名検証に関する処理を実行することを特徴とする電子署名検証方法。
【請求項６】
アプリケーションプログラムが要求するＰＫＩ(Public Key Infrastructure)技術を利用した電子署名検証に関する処理を行なうサービスコンポーネントの識別情報と、識別情報に対応する複数のサービスコンポーネントとを互いに関連付けて記憶するデータベースを具備する電子署名検証システムにおける電子署名検証プログラムにおいて、
前記電子署名検証プログラムは、
アプリケーションプログラムからの処理要求に含まれるサービスコンポーネントの識別情報を条件に、前記データベースを検索して、対応するサービスコンポーネントを決定し、
この決定されたサービスコンポーネントにより、アプリケーションプログラムが要求するＰＫＩ技術を利用した電子署名検証に関する処理を実行することを特徴とする電子署名検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子署名検証システムに関し、特に、金融機関の業務において行なわれる電子署名検証を行なう際に使用される電子署名検証システムに関する。
【背景技術】
【０００２】
従来より、セキュリティが要求される場面においては、ＰＫＩ(Public Key Infrastructure)技術を使用した電子署名の検証を行なうことが広く知られている（非特許文献１参照。）。
【０００３】
電子署名の検証を行なうには、業務要件に応じて以下の４つの機能（ＰＫＩ技術）を組み合わせて実行することが必要であり、これら機能を業務要件に応じて組み合わせてアプリケーションプログラムに組み込んだシステムは良く知られている。
【０００４】
（Ａ）  エンドユーザの署名検証（ハッシュ値の比較）
（Ｂ）  公開鍵証明書の有効期限チェック
（Ｃ）  公開鍵証明書のチェイン検証（上位認証機関との関連性確認）
（Ｄ）  公開鍵証明書の有効性検証（失効リストの確認）
【非特許文献１】ＰＫＩハンドブック、小松文子他、株式会社ソフトリサーチ・リサーチ・センター発行、２０００年１１月２５日発行
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、業務要件に応じて、上記（Ａ）〜（Ｄ）の機能を組み合わせてシステムを設計すると、電子署名検証システムのシステム設計が複雑になり、その結果、処理速度の遅延を招き易い。
【０００６】
本発明は、上記実情に鑑みてなされたものであり、システム設計を簡素化することができ、その結果、処理速度の向上を図ることができる電子署名検証システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
第１の発明は、アプリケーションプログラムが要求するＰＫＩ(Public Key Infrastructure)技術を利用した電子署名検証に関する処理を行なうサービスコンポーネントの識別情報と、識別情報に対応する複数のサービスコンポーネントとを互いに関連付けて記憶するデータベースと、アプリケーションプログラムからの処理要求に含まれるサービスコンポーネントの識別情報を条件に、前記データベースを検索して、対応するサービスコンポーネントを決定し、この決定されたサービスコンポーネントにより、アプリケーションプログラムが要求するＰＫＩ技術を利用した電子署名検証に関する処理を実行する手段とを具備することを特徴とする電子署名検証システム、である。
【０００８】
第２の発明は、第１の発明において、前記複数のサービスコンポーネントは、電子署名有効性確認コンポーネント、過去の電子署名の有効性検証コンポーネント、ＳＳＬ(Secure Socket Layer)クライアント認証を用いたシステムへのログイン処理コンポーネントを含み、前記各複数のサービスコンポーネントは、エンドユーザの署名検証処理、証明書の有効期限チェック処理、証明書のチェイン検証処理及び証明書の有効性検証処理のうちの少なくとも１つを含むことを特徴とする電子署名検証システム、である。
【０００９】
第３の発明は、第２の発明において、前記電子署名有効性確認コンポーネントは、前記エンドユーザの署名検証処理、証明書の有効期限チェック処理、証明書のチェイン検証処理及び証明書の有効性検証処理を実行し、前記過去の電子署名の有効性検証コンポーネントは、前記エンドユーザの署名検証処理、証明書のチェイン検証処理及び証明書の有効性検証処理を実行し、前記ＳＳＬクライアント認証を用いたシステムへのログイン処理コンポーネントは、前記証明書の有効期限チェック処理、証明書のチェイン検証処理及び証明書の有効性検証処理を実行することを特徴とする電子署名検証システム、である。
【発明の効果】
【００１０】
システム設計を簡素化することができ、その結果、処理速度の向上を図ることができる電子署名検証システムを提供する。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して、本発明の実施の形態に係る電子署名検証システムについて説明する。
【００１２】
図１は、本発明の実施の形態に係る電子署名検証システムの使用環境を説明するための図である。
【００１３】
同図に示すように、インターネットなどのネットワーク１には、電子署名検証を行なうユーザの電子署名などを読み取るための端末２（例えば、ＡＴＭ）、認証局７、業務サーバ８及びＰＫＩサーバ１０が接続されている。
【００１４】
端末２はユーザのカード３から公開鍵証明書４、電子署名５、署名データ６などを読み取り、ネットワーク１を介して業務サーバ８に送信する。公開鍵証明書４は、証明書シリアル番号、証明書所有者、公開鍵、有効期間、証明書発行者の秘密鍵による署名などの情報を含んでいる。電子署名５は、ＰＫＩ方式の秘密鍵で署名データ６に対して暗号化したものである。
【００１５】
認証局７は、公開鍵証明書、秘密鍵、公開鍵などを提供する公知の認証局である。
【００１６】
業務サーバ８は、ＰＫＩ(Public Key Infrastructure)技術を利用する電子署名検証処理の処理要求を出力する複数の業務アプリケーションプログラム９−１〜９−３を実行する。この電子署名検証処理が必要となるケースは、下記の３通りである。
【００１７】
（１）  電子署名を受け取った際に、電子署名が有効かを確認する処理
（２）  過去に行なわれた電子署名の有効性を検証する処理
（３）  ＳＳＬクライアント認証を用いてシステムへのログインを許可する処理
各業務アプリケーションプログラム９−１〜９−３は、上記（１）〜（３）のうち少なくとも１つの処理を行なう必要があるプログラムであり、上記（１）〜（３）の処理を実行するサービスコンポーネントの識別情報を含む処理要求をＰＫＩサーバ１０に出力する。業務アプリケーションプログラム９−１〜９−３は、例えば、電子契約サービスプログラムなどである。
【００１８】
また、各業務アプリケーションプログラム９−１〜９−３は、カード３から公開鍵証明書３、電子署名５及び署名データ６などを受信するとネットワーク１を介してＰＫＩサーバ１０に送信する。
【００１９】
なお、本実施の形態においては、業務サーバ８及びＰＫＩサーバ１０を別個のサーバとしているが、これらは１つのサーバで実現してもよい。
【００２０】
ＰＫＩサーバ１０は、電子署名を受け取った際に、電子署名が有効かを確認する電子署名有効確認コンポーネント１１−１、過去に行なわれた電子署名の有効性検証を行なう過去電子署名有効性検証コンポーネント１１−２、ＳＳＬクライアント認証を用いてシステムへのログイン許可を行なうＳＳＬクライアント認証コンポーネント１１−３を具備する。
【００２１】
図２は、ＰＫＩサーバの構成を示す図である。
【００２２】
同図に示すように、バス２１には入出力Ｉ／Ｆ２２、メモリ２３、ＣＰＵ２４及び記憶装置２５が接続されている。
【００２３】
入出力Ｉ／Ｆ２２は、ＰＫＩサーバ１０外部とのネットワーク１を介した通信制御を司る。
【００２４】
メモリ２３は、ＣＰＵ２４によって実行される検証プログラム３１のワークエリアなどに使用される。
【００２５】
ＣＰＵ２４は、ＰＫＩサーバ１０における本実施の形態に係る電子署名検証処理を行なう検証プログラム３１を実行し、ＰＫＩサーバ１０全体の動作の制御を司る。
【００２６】
記憶装置２５は、本実施の形態に係る電子署名検証処理を行なう検証プログラム３１、テーブル３２を記憶する。検証プログラム３１は、また、電子署名が有効かを確認する電子署名有効確認コンポーネント１１−１、過去に行なわれた電子署名の有効性検証を行なう過去電子署名有効性検証コンポーネント１１−２、ＳＳＬクライアント認証を用いてシステムへのログイン許可を行なうＳＳＬクライアント認証コンポーネント１１−３を具備する。テーブル３２は、サービスコンポーネントの識別情報（ＩＤ）とサービスコンポーネント名とが互いに関連付けられている。
【００２７】
上述のように、業務要件に応じて行なう電子署名検証処理に必要とされる要素機能は、以下の４つである（図３参照）。なお、これら各機能は、公知の技術であるので、ここでは詳述しない。
【００２８】
（Ａ）  エンドユーザの署名検証（ハッシュ値の比較）
（Ｂ）  公開鍵証明書の有効期限チェック
（Ｃ）  公開鍵証明書のチェイン検証（上位認証機関との関連性確認）
（Ｄ）  公開鍵証明書の有効性検証（失効リストの確認）
各サービスコンポーネント１１−１〜１１−３は、上記（Ａ）〜（Ｄ）の要素機能を組み合わせて実現されている。具体的には、以下のようになる。
【００２９】
電子署名有効確認コンポーネント１１−１  ＝  （Ａ）、（Ｂ）、（Ｃ）、（Ｄ）の組み合わせ
過去電子署名有効性検証コンポーネント１１−２  ＝  （Ａ）、（Ｃ）、（Ｄ）の組み合わせ
ＳＳＬクライアント認証コンポーネント１１−３  ＝  （Ｂ）、（Ｃ）、（Ｄ）の組み合わせ
次に、本発明の実施の形態に係る電子署名検証処理の動作について、図４及び図５のフローチャートを参照して説明する。
【００３０】
図４は、業務サーバ８の実行中の業務アプリケーションプログラムにおいて電子署名検証処理要求が生じた場合の処理を説明するためのフローチャートである。
【００３１】
端末２は、カード３から公開鍵証明書４、電子署名５及び署名データ６を読み込み、ネットワーク１を介して業務サーバ８に送信する。業務サーバ８の実行中の業務アプリケーションプログラム９は、端末２から公開証明書４などを受信し、ＰＫＩサーバ１０に転送する（Ｓ１）。
【００３２】
次に、実行中の業務アプリケーションプログラムにおいて、電子署名検証処理の要求が発生すると（Ｓ２）、要求される電子署名検証処理を実行するサービスコンポーネント名の識別情報を含む電子署名検証処理要求をＰＫＩサーバ１０に送信する（Ｓ３）。
【００３３】
サービスコンポーネント名の識別情報は、図２に示すように、電子署名有効確認サービスコンポーネントはＩＤ＝１、過去電子署名有効性検証コンポーネントはＩＤ＝２、ＳＳＬクライアント認証コンポーネントはＩＤ＝３である。
【００３４】
その後、ＰＫＩサーバ１０から電子署名検証処理結果を受信して（Ｓ４）、電子署名検証処理要求に対する結果を得る。
【００３５】
図５は、ＰＫＩサーバ１０の電子署名検証処理を説明するためのフローチャートである。
【００３６】
同図に示すように、業務サーバ８から公開鍵証明書などを受信し（Ｓ１１）、その後、電子署名検証処理要求を受信すると（Ｓ１２）、この電子署名検証処理要求に含まれるサービスコンポーネントのＩＤを条件にテーブル３２を検索してサービスコンポーネントを決定する（Ｓ１３）。
【００３７】
次に、決定されたサービスコンポーネントにより要求された電子署名検証処理を実行する（Ｓ１４）。例えば、電子署名検証処理要求に含まれるＩＤが「１」の場合には、電子署名有効確認コンポーネント１１−１が決定され、この電子署名有効確認コンポーネント１１−１により、（Ａ）エンドユーザの署名検証、（Ｂ）  公開鍵証明書の有効期限チェック、（Ｃ）  公開鍵証明書のチェイン検証、（Ｄ）  公開鍵証明書の有効性検証が行なわれる。
【００３８】
電子署名検証処理要求に含まれるＩＤが「２」の場合には、過去電子署名有効性検証コンポーネント１１−２が決定され、この過去電子署名有効性検証コンポーネント１１−２により、（Ａ）エンドユーザの署名検証、（Ｃ）  公開鍵証明書のチェイン検証、（Ｄ）  公開鍵証明書の有効性検証が行なわれる。
【００３９】
電子署名検証処理要求に含まれるＩＤが「３」の場合には、ＳＳＬクライアント認証コンポーネント１１−３が決定され、このＳＳＬクライアント認証コンポーネント１１−３により、（Ｂ）  公開鍵証明書の有効期限チェック、（Ｃ）  公開鍵証明書のチェイン検証、（Ｄ）  公開鍵証明書の有効性検証が行なわれる。
【００４０】
上記各コンポーネント１１−１〜１１−３における処理はＳ１１において受信した公開鍵証明書などに基づいて行なわれるが、これら各要素の処理は公知の技術であるので、ここでは詳述しない。
【００４１】
その後、処理結果を署名検証処理を要求した業務サーバ８の実行中の業務アプリケーションプログラムに送信する（Ｓ１５）。
【００４２】
したがって、本発明の実施の形態によれば、電子署名の検証を必要とするパターン毎に技術要素を一括りにし（サービスコンポーネント化）、アプリケーションプログラムに対するインターフェイスを提供することにより、アプリケーションプログラム側では専門性の高いＰＫＩ技術を考慮することなく、コンポーネント化されたサービスを呼び出すことにより業務ニーズに応じた電子署名の検証を簡易に行なうことができる。
【００４３】
また、アプリケーションプログラムの設計を簡易化することができるため、複数のアプリケーションプログラムが存在する場合に、システム全体として処理の高速化を図ることができる。
【００４４】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【００４５】
また、実施形態に記載した手法は、計算機（コンピュータ）に実行させることができるプログラム（ソフトウエア手段）として、例えば磁気ディスク（ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ、ＭＯ等）、半導体メモリ（ＲＯＭ、ＲＡＭ、フラッシュメモリ等）等の記録媒体に格納し、また通信媒体により伝送して頒布することもできる。なお、媒体側に格納されるプログラムには、計算機に実行させるソフトウエア手段（実行プログラムのみならずテーブルやデータ構造も含む）を計算機内に構成させる設定プログラムをも含む。本装置を実現する計算機は、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウエア手段を構築し、このソフトウエア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、計算機内部あるいはネットワークを介して接続される機器に設けられた磁気ディスクや半導体メモリ等の記憶媒体を含むものである。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施の形態に係る電子署名検証システムの使用環境を説明するための図である。
【図２】ＰＫＩサーバの構成を示す図である。
【図３】電子署名検証処理に必要とされる要素機能を示す図である。
【図４】業務サーバの実行中の業務アプリケーションプログラムの電子署名検証処理要求が生じた場合の処理を説明するためのフローチャートである。
【図５】ＰＫＩサーバの電子署名検証処理を説明するためのフローチャートである。
【符号の説明】
【００４７】
１…ネットワーク、８…業務サーバ、１０…ＰＫＩサーバ、９−１〜９−３…業務アプリケーションプログラム、１１−１…電子署名有効確認サービスコンポーネント、１１−２…過去電子署名有効性検証サービスコンポーネント、１１−３…ＳＳＬクライアント認証サービスコンポーネント、３２…テーブル。
【図１】
2007324994.tif 000003
【図２】
2007324994.tif 000004
【図３】
2007324994.tif 000005
【図４】
2007324994.tif 000006
【図５】
2007324994.tif 000007