(57)【特許請求の範囲】
【請求項１】
定められたプロファイルに基づいて行われる長期署名に用いられる電子証明書を取得する電子証明書取得部と、
前記電子証明書取得部が取得した前記電子証明書に含まれる複数の要素のうち、予め定められた要素に対応付けられた要素値を読み出す要素値読み出し部と、
前記要素値読み出し部が読み出した前記要素値に基づいて、長期署名に用いる複数のプロファイルのうち、生成するプロファイルと生成しないプロファイルとを判定する判定部と、
前記判定部による判定結果に基づいて、前記プロファイルを生成するプロファイル生成部と、
を備えることを特徴とするプロファイル生成装置。
【請求項２】
前記電子証明書の発行局を識別する識別情報と、当該電子証明書に対する検証情報を提供する検証情報サーバに接続するための宛先情報とが対応付けられた宛先情報テーブルが記憶される宛先情報テーブル記憶部を備え、
前記要素値読み出し部は、前記電子証明書に含まれる、当該電子証明書の発行局を識別する要素値を読み出し、
前記判定部は、前記要素値読み出し部によって読み出された前記要素値によって識別される前記発行局に対応付けられた前記宛先情報を前記宛先情報テーブル記憶部から読み出し、読み出した当該宛先情報を宛先として接続要求を送信し、当該接続要求を送信した宛先から送信される応答を受信し、当該応答がエラーを示す場合、ＥＳ−Ｃプロファイルを生成しないと判定し、当該応答がエラーを示さない場合、ＥＳ−Ｃプロファイルを生成すると判定する
ことを特徴とする請求項１に記載のプロファイル生成装置。
【請求項３】
前記長期署名を行う業務が開始してから完了するまでの期間を示す業務期間情報が予め記憶される業務期間情報記憶部を備え、
前記電子証明書取得部は、複数の電子証明書を取得し、
前記要素値読み出し部は、前記複数の電子証明書に含まれる、当該電子証明書に基づく電子署名の有効期限を示す要素値を読み出し、
前記判定部は、前記業務期間情報記憶部に記憶されている前記業務期間情報を読み出し、当該業務期間情報が示す期間が、前記要素値読み出し部によって読み出された前記電子署名の有効期限より大きければ、ＥＳ−Ｘプロファイルを生成しないと判定し、当該業務期間情報が示す期間が、前記電子署名の有効期限より大きくなければ、ＥＳ−Ｘプロファイルを生成すると判定する
ことを特徴とする請求項１または請求項２に記載のプロファイル生成装置。
【請求項４】
前記電子証明書取得部は、複数の電子証明書を取得し、
前記要素値読み出し部は、前記複数の電子証明書に含まれる、当該電子証明書の発行局を識別する要素値を読み出し、
前記プロファイル生成部は、前記要素値読み出し部によって読み出された複数の前記要素値が、予め定められた行政機関等認証局であるものと、当該行政機関等認証局でないものとの双方を含むか否かを判定し、双方を含むと判定した場合、電子証明書に含まれる失効情報配布点が示すプロトコルに基づいて、全失効情報参照情報群の値を定めた前記プロファイルを生成する
ことを特徴とする請求項１から請求項３までのいずれか１項に記載のプロファイル生成装置。
【請求項５】
複数署名と任意署名削除との双方を行うか否かを示す情報の入力を受付ける入力部を備え、
前記プロファイル生成部は、前記入力部に、複数署名と任意署名削除との双方を行うことを示す情報が入力されると、カウンタ署名の要素を含まないプロファイルを生成し、複数署名と任意署名削除との双方を行わないことを示す情報が入力されると、カウンタ署名の要素を含むプロファイルを生成する
ことを特徴とする請求項１から請求項４までのいずれか１項に記載のプロファイル生成装置。
【請求項６】
プロファイル生成装置が、
定められたプロファイルに基づいて行われる長期署名に用いられる電子証明書を取得し、取得した電子証明書を自装置が備える記憶部に記憶させるステップと、
前記記憶部に記憶させた前記電子証明書に含まれる複数の要素のうち、予め定められた要素に対応付けられた要素値を読み出すステップと、
読み出した前記要素値に基づいて、長期署名に用いる複数のプロファイルのうち、生成するプロファイルと生成しないプロファイルとを判定するステップと、
判定結果に基づいて、前記プロファイルを生成するステップと、
を含むことを特徴とするプロファイル生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子署名を長期にわたって検証可能にする技術に関する。
【背景技術】
【０００２】
電子署名のための電子証明書には、鍵の危殆化やアルゴリズムの弱体化等の観点から有効期限が設けられており、この期限を越える場合には電子証明書を無効化している。このため、有効期限を越えた後に、有効期限内に生成された電子署名の検証処理を行っても、その電子署名は無効であると判定される。このような有効期限を越えた長期間有効な検証を行うために、長期署名の技術が研究されている。長期署名では、長期署名のフォーマットに基づいて生成された電子署名およびタイムスタンプと、これらの検証を行うための電子証明書や失効情報等の検証情報とに対して、その有効期限内に新たなアーカイブタイムスタンプを付加することで、検証可能な期間を延長している。非特許文献１、２には、このような長期署名のフォーマットを定めるプロファイルが示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】「ＸＭＬ  Ａｄｖａｎｃｅｄ  Ｅｌｅｃｔｒｏｎｉｃ  Ｓｉｇｎａｔｕｒｅ（ＸＡｄＥＳ）ｖ．１．３．２」、ＴＳ  １０１  ９０３、欧州電気通信標準化機構、２００６年３月
【非特許文献２】「ＪＩＳ  Ｘ  ５０９３  ＸＭＬ署名利用電子署名（ＸＡｄＥＳ）の長期署名プロファイル」、財団法人  日本規格協会、平成２０年３月２０日
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、長期署名においては、電子署名に対して検証情報やアーカイブタイムスタンプ等の多量の情報を付加しており、付加する情報の要素には任意に選択することが可能なものも多く存在する。このため、長期署名に基づく電子署名を扱う業務アプリケーションを開発する際には、業務要件に応じて、業務毎に異なるプロファイルを生成することが必要である。このような業務要件に応じた適切な要素を定めたプロファイルを策定することは、長期署名の複雑なフォーマットを熟知した技術者でないと困難である。そこで、業務要件に応じた適切なプロファイルを効率良く生成することが望ましい。
【０００５】
本発明は、このような状況に鑑みてなされたもので、業務要件に応じた適切なプロファイルを生成するプロファイル生成装置、プロファイル生成方法を提供する。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために、本発明は、定められたプロファイルに基づいて行われる長期署名に用いられる電子証明書を取得する電子証明書取得部と、電子証明書取得部が取得した電子証明書に含まれる複数の要素のうち、予め定められた要素に対応付けられた要素値を読み出す要素値読み出し部と、要素値読み出し部が読み出した要素値に基づいて、長期署名に用いる複数のプロファイルのうち、生成するプロファイルと生成しないプロファイルとを判定する判定部と、判定部による判定結果に基づいて、プロファイルを生成するプロファイル生成部と、を備えることを特徴とするプロファイル生成装置である。
【０００７】
また、本発明は、電子証明書の発行局を識別する識別情報と、電子証明書に対する検証情報を提供する検証情報サーバに接続するための宛先情報とが対応付けられた宛先情報テーブルが記憶される宛先情報テーブル記憶部を備え、要素値読み出し部は、電子証明書に含まれる、電子証明書の発行局を識別する要素値を読み出し、判定部は、要素値読み出し部によって読み出された要素値によって識別される発行局に対応付けられた宛先情報を宛先情報テーブル記憶部から読み出し、読み出した宛先情報を宛先として接続要求を送信し、接続要求を送信した宛先から送信される応答を受信し、応答がエラーを示す場合、ＥＳ−Ｃプロファイルを生成しないと判定し、応答がエラーを示さない場合、ＥＳ−Ｃプロファイルを生成すると判定することを特徴とする。
【０００８】
また、本発明は、長期署名を行う業務が開始してから完了するまでの期間を示す業務期間情報が予め記憶される業務期間情報記憶部を備え、電子証明書取得部は、複数の電子証明書を取得し、要素値読み出し部は、複数の電子証明書に含まれる、電子証明書に基づく電子署名の有効期限を示す要素値を読み出し、判定部は、業務期間情報記憶部に記憶されている業務期間情報を読み出し、業務期間情報が示す期間が、要素値読み出し部によって読み出された電子署名の有効期限より大きければ、ＥＳ−Ｘプロファイルを生成しないと判定し、業務期間情報が示す期間が、電子署名の有効期限より大きくなければ、ＥＳ−Ｘプロファイルを生成すると判定することを特徴とする。
【０００９】
また、本発明は、電子証明書取得部は、複数の電子証明書を取得し、要素値読み出し部は、複数の電子証明書に含まれる、電子証明書の発行局を識別する要素値を読み出し、プロファイル生成部は、要素値読み出し部によって読み出された複数の要素値が、予め定められた行政機関等認証局であるものと、行政機関等認証局でないものとの双方を含むか否かを判定し、双方を含むと判定した場合、電子証明書に含まれる失効情報配布点が示すプロトコルに基づいて、全失効情報参照情報群の値を定めたプロファイルを生成することを特徴とする。
【００１０】
また、本発明は、複数署名と任意署名削除との双方を行うか否かを示す情報の入力を受付ける入力部を備え、プロファイル生成部は、入力部に、複数署名と任意署名削除との双方を行うことを示す情報が入力されると、カウンタ署名の要素を含まないプロファイルを生成し、複数署名と任意署名削除との双方を行わないことを示す情報が入力されると、カウンタ署名の要素を含むプロファイルを生成することを特徴とする。
【００１１】
また、本発明は、プロファイル生成装置が、定められたプロファイルに基づいて行われる長期署名に用いられる電子証明書を取得するステップと、取得した電子証明書に含まれる複数の要素のうち、予め定められた要素に対応付けられた要素値を読み出すステップと、読み出した要素値に基づいて、長期署名に用いる複数のプロファイルのうち、生成するプロファイルと生成しないプロファイルとを判定するステップと、判定結果に基づいて、プロファイルを生成するステップと、を備えることを特徴とするプロファイル生成方法である。
【発明の効果】
【００１２】
以上説明したように、本発明によれば、プロファイル生成装置が、定められたプロファイルに基づいて行われる長期署名に用いられる電子証明書を取得し、取得した電子証明書に含まれる複数の要素のうち、予め定められた要素に対応付けられた要素値を読み出し、要素値読み出し部が読み出した要素値に基づいて、長期署名に用いる複数のプロファイルのうち、生成するプロファイルと生成しないプロファイルとを判定し、判定結果に基づいて、プロファイルを生成するようにしたので、業務要件に応じた適切なプロファイルを生成することができる。
【図面の簡単な説明】
【００１３】
【図１】長期署名のフォーマットの例を示す図である。
【図２】本発明の一実施形態による長期署名システムの構成例を示すブロック図である。
【図３】本発明の一実施形態による宛先情報テーブルのデータ例を示す図である。
【図４】本発明の一実施形態によるプロファイル生成装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の一実施形態について、図面を参照して説明する。
まず、本実施形態の長期署名システム１が扱う長期署名について説明する。図１は、規約に定められた長期署名フォーマットの例を示す図である。この例では、ＰＫＩ（Public Key Infrastructure）基盤に基づくＸＡｄＥＳ（XML Advenced Electronic Signatures）の例を説明するが、ＣＡｄＥＳ（CMS Advenced Electronic Signatures）であっても同様のフォーマットであり、本実施形態の長期署名システム１を同様に適用できる。
【００１５】
長期署名に基づく電子署名においては、符号ａに示すＥＳ（Electronic Signature）を基本フォーマットとして、用途や業務要件に応じて、符号ｂに示すＥＳ−Ｔ（Electronic Signature with time）、符号ｃに示すＥＳ−Ｃ（Electronic signature with complete validation data reference）、符号ｄに示すＥＳ−Ｘ（Electronic signatures with time forms）、符号ｅに示すＥＳ−ＸＬｏｎｇ（Extended long electronic signatures with time）、符号ｆに示すＥＳ−Ａ（Archival electronic signatures）等の階層毎に情報の要素を付加していく。ＥＳ−Ａにおいてアーカイブタイムスタンプｆ１を付加した後に、さらに有効期限を延長する場合には、ＥＳ−Ａにさらにアーカイブタイムスタンプｇ１を付加する（符号ｇに示すＥＳ−Ａ´）。以降、必要に応じてさらにアーカイブタイムスタンプを付加し、ＥＳ−Ａ´´、ＥＳ−Ａ´´´、・・・を生成していくことでＥＳの有効期限を延長することができる。
【００１６】
符号ａに示すＥＳには、電子文書ａ１と、署名属性ａ２と、署名値ａ３とが含まれる。電子文書ａ１は、電子署名による検証対象の情報である。署名属性ａ２は、電子文書ａ１に対して付加する署名値ａ３の属性を示す情報である。例えば、署名属性ａ２は、電子署名に用いる署名鍵の所有者の役職や資格等の属性を示す。署名値ａ３は、電子署名ａ１と署名属性ａ２と、電子署名を行う署名鍵とに基づいて生成された情報である。
【００１７】
符号ｂに示すＥＳ−Ｔは、電子署名ａ１の存在時刻を証明するために、署名値ａ３に対して、タイムスタンプｂ１を付加した構成である。署名値ａ３は電子署名ａ１のハッシュ値に基づいて算出されているため、署名値ａ３に対して付加したタイムスタンプｂ１により、電子署名ａ１の存在時刻を証明できる。
【００１８】
符号ｃに示すＥＳ−Ｃは、ＥＳ−Ｔに対して電子署名の検証の際に利用する認証パス上における電子証明書や失効情報（ＣＲＬ（Certificate Revocation List）やＯＣＳＰ（Online Certificate Status Protocol）レスポンス）等である検証情報に対するリファレンス情報である検証情報リファレンスｃ１を付加した構成である。
符号ｄに示すＥＳ−Ｘは、ＥＳ−Ｃ全体に対して検証情報を保護するタイムスタンプを付加した構成である。これによりＥＳ−Ｃフォーマット電子署名の存在時刻を証明できる。ここで、ＥＳ−Ｘフォーマットでは、このようにＥＳ−Ｃ全体に検証情報を保護するタイムスタンプを付加する場合の他に、ＥＳ−Ｃにおける検証情報リファレンスｃ１にのみタイムスタンプを付加することも可能である。
符号ｅに示すＥＳ−ＸＬｏｎｇは、ＥＳに対して検証情報自体を付加した構成である。検証情報リファレンスｃ１のみでは、そのリファレンスの宛先である検証情報の消失等があった場合に検証ができないからである。
符号ｆに示すＥＳ−Ａは、ＥＳ−ＸＬｏｎｇ全体に対するタイムスタンプであるアーカイブタイムスタンプｆ１を付加した構成である。これにより、署名値ａ３を生成した際に利用した署名鍵に対応する公開鍵の電子証明書の有効期限が経過した場合でも、アーカイブタイムスタンプｆ１を検証することで、アーカイブタイムスタンプｆ１が付加された時点における署名値ａ３を検証できる。以降、アーカイブタイムスタンプｆ１の有効期限が切れる前に新たなアーカイブタイムスタンプｇ１を付加してＥＳ−Ａ´を生成することで、さらに検証期間を延長できる。
【００１９】
このように、長期署名のフォーマットは、基本フォーマットであるＥＳに対して複数階層の情報を付加して構成され、業務要件に応じて階層毎に様々な要素を選択して付加できる。このような階層毎に付加する要素を定める情報をプロファイルという。ここでは、ＥＳに含む要素を定めるプロファイルをＥＳプロファイルといい、ＥＳ−Ｔに含む要素を定めるプロファイルをＥＳ−Ｔプロファイルといい、ＥＳ−Ｃに含む要素を定めるプロファイルをＥＳ−Ｃプロファイルといい、ＥＳ−Ｘに含む要素を定めるプロファイルをＥＳ−Ｘプロファイルといい、ＥＳ−ＸＬｏｎｇに含む要素を定めるプロファイルをＥＳ−ＸＬｏｎｇプロファイルといい、ＥＳ−Ａに含む要素を定めるプロファイルをＥＳ−Ａプロファイルという。
【００２０】
このような複数のプロファイルのうちいずれのプロファイルを生成するか、またはプロファイルにどのような要素を含めるかは、従来、長期署名に基づく電子署名を扱う業務アプリケーションを開発する際に、業務要件に応じて、長期署名の複雑なフォーマットを熟知した技術者により策定され、生成されていた。また、このようなプロファイルは業務アプリケーションが開発される際に業務アプリケーションのプログラム内にハードコーディングされることが一般的であった。しかし、これでは、ある業務アプリケーションにおける電子署名に使用するプロファイルと、他の業務アプリケーションにおける電子署名に使用するプロファイルとが少しの要素しか変わらない場合にも、業務アプリケーションを作成しなおす必要がある。また、長期署名の複雑なフォーマットを熟知した技術者でなければ業務アプリケーションを作成することができなかった。
【００２１】
そこで、本実施形態のプロファイル生成装置２０は、電子署名に用いる電子証明書の内容に基づいて、プロファイルを自動的に生成する。この際、プロファイル生成装置２０は、複数のプロファイルのうちいずれのプロファイルを生成し、いずれのプロファイルを生成しないかを判定するとともに、プロファイルに含ませる複数の要素のうちいずれの要素を設定し、いずれの要素を設定しないかを判定して、プロファイルを生成する。具体的には、後述するように、ＥＳ−Ｃプロファイルを生成するか否かを判定する処理（判定処理Ａ）と、ＥＳ−Ｘプロファイルを生成するか否かを判定する処理（判定処理Ｂ）と、ＥＳ−Ｃプロファイルに設定する要素を判定する処理（判定処理Ｃ）と、ＥＳ−Ｔプロファイルに設定する要素を判定する処理（判定処理Ｄ）との、４種類の判定処理を行い、判定結果に基づいてプロファイルを生成する。
【００２２】
図２は、本実施形態による長期署名システム１の構成を示すブロック図である。長期署名システム１は、ＩＣカード１０と、プロファイル生成装置２０と、複数の認証局３０（認証局３０−１、認証局３０−２、・・・）と、業務アプリケーション装置４０とを備えている。複数の認証局３０は同様の構成であるため、特に区別する必要がない場合には「−１」、「−２」等の記載を省略して認証局３０として説明する。ここでは、２台の認証局３０を示して説明するが、１台または３台以上の任意の台数の認証局３０が接続されていてよい。
【００２３】
ＩＣカード１０は、業務アプリケーション装置４０において動作する業務アプリケーションを利用するユーザの電子証明書を管理する情報媒体であり、電子証明書記憶部１１と、署名鍵記憶部１２と、制御部１３とを備えている。
電子証明書記憶部１１には、上述したような定められたプロファイルに基づいて行われる長期署名に用いられる電子証明書であって、業務アプリケーションを利用するユーザの電子証明書が予め記憶される。電子証明書は、ＰＫＩ基盤に基づく公開鍵証明書であり、複数の要素に対応付けられた要素値が含まれる。電子証明書に含まれる要素には、例えば、電子証明書の発行局を識別する発行局ＩＤ（例えば、ｃｅｒｔＰｏｌｉｃｙＩＤ）や、電子証明書の有効期間の開始時期と終了時期、この電子証明書に対応する署名鍵に基づいて生成される電子署名の有効期限、ユーザを識別するユーザＩＤ、公開鍵のアルゴリズム、公開鍵自体、これらに対する発行局の電子署名等の情報が含まれる。
【００２４】
署名鍵記憶部１２には、電子証明書記憶部１１に記憶されている電子証明書に含まれる公開鍵に対応する秘密鍵である署名鍵が予め記憶される。
制御部１３は、プロファイル生成装置２０や業務アプリケーション装置４０との通信や、電子証明書記憶部１１や署名鍵記憶部１２に記憶されている情報に基づく電子署名処理を行う。
【００２５】
プロファイル生成装置２０は、ＩＣカード１０に記憶されている電子証明書を読み出し、上述したような判定処理を行ってプロファイルを生成するコンピュータ装置である。２０は、電子証明書取得部２１と、要素値読み出し部２２と、業務期間情報記憶部２３と、宛先情報テーブル記憶部２４と、判定部２５と、入力部２６と、プロファイル生成部２７とを備えている。
【００２６】
電子証明書取得部２１は、業務アプリケーション装置４０の業務アプリケーションを利用するユーザの電子証明書を取得する。例えば、電子証明書取得部２１は、ＩＣカードリーダの機能を備えており、ＩＣカード１０に記憶されている電子証明書を読み出す。ここで、電子証明書取得部２１は、発行局や有効期限の異なる電子証明書を有する複数のユーザが業務アプリケーション装置４０の業務アプリケーションを利用する場合には、それらの複数の電子証明書を取得する。ここでは、電子証明書取得部２１はＩＣカード１０から電子証明書を読み出すこととするが、例えばネットワークを介して電子証明書の発行局に接続し、電子証明書を取得してもよい。
【００２７】
要素値読み出し部２２は、電子証明書取得部２１が取得した電子証明書に含まれる複数の要素のうち、予め定められた要素に対応付けられた要素値を読み出す。例えば、要素値読み出し部２２は、電子証明書取得部２１が複数のＩＣカード１０のそれぞれから読み出した電子証明書から、発行局ＩＤや、電子署名の有効期限等の要素値を読み出す。
【００２８】
業務期間情報記憶部２３には、業務アプリケーション装置４０の業務アプリケーションによって行われる電子署名を行う業務が開始してから完了するまでの期間を示す業務期間情報が予め記憶される。業務期間情報が示す期間は、例えば、ある組織内において、ある電子文書に対して、ユーザＡと、ユーザＢと、ユーザＣと、ユーザＤとのそれぞれに対応する署名鍵に基づく電子署名を付加することにより完了する業務が存在する場合、ユーザＡからユーザＤまでの全ての電子署名が付加されるまでの期間である。業務期間情報は、例えばその業務について規約等により定められた期間であってもよいし、過去の実績等から推定される期間であってもよい。
【００２９】
宛先情報テーブル記憶部２４には、電子証明書の発行局を識別する発行局ＩＤと、その電子証明書に対する検証情報を提供する検証情報サーバに接続するための宛先情報とが対応付けられた宛先情報テーブルが記憶される。図３は、宛先情報テーブル記憶部２４に記憶される宛先情報テーブルのデータ例を示す図である。ここでは、発行局ＩＤ毎に、その発行局に対応する検証情報サーバに接続するためのＵＲＬ（Uniform Resource Locator）が対応付けられて記憶されている。
【００３０】
判定部２５は、要素値読み出し部２２が読み出した要素値に基づいて、長期署名に用いる複数のプロファイルのうち、生成するプロファイルと生成しないプロファイルとを判定する。
まず、判定部２５による、ＥＳ−Ｃプロファイルを生成するか否かを判定する処理である判定処理Ａについて説明する。判定部２５は、要素値読み出し部２２によって読み出された発行局ＩＤに対応付けられた宛先情報を宛先情報テーブル記憶部２４から読み出し、読み出した宛先情報を宛先として接続要求を送信し、接続要求を送信した宛先から送信される応答を受信し、受信した応答がエラーを示す場合（例えば、エラーコード４０４が応答された場合）、ＥＳ−Ｃプロファイルを生成しないと判定し、当該応答がエラーを示さない場合、ＥＳ−Ｃプロファイルを生成すると判定する。
【００３１】
ここで、ＥＳ−Ｃプロファイルには、上述したように、検証情報リファレンスが含まれる。このため、ＥＳ−Ｃプロファイルが生成されると判定されると、電子署名の際にＥＳ−Ｃの構成が生成されるが、このようなＥＳ−Ｃに基づいて検証を行う際、検証情報リファレンスの接続先がエラーを応答すれば、検証が失敗する。よって、予めＥＳ−Ｃプロファイルを生成しないでおくことにより、このようなエラーにより検証が失敗することを防ぐことができる。例えば、発行局には、ＧＰＫＩ（Government PKI）に基づく官職証明書を発行する認証局や、ＬＧＰＫＩ（Local Government PKI）に基づく職責証明書を発行する認証局、民間企業による認証局が存在する。このうち、一般的に、ＧＰＫＩに基づく認証局や、ＬＧＰＫＩに基づく認証局に対応する検証情報サーバは、外部から遮断された閉域ＬＡＮ（Local Area Network）に設けられており、いわゆるインターネットからは接続できない。このため、業務アプリケーション装置４０が、ＧＰＫＩに基づく認証局やＬＧＰＫＩに基づく認証局に対応する検証情報サーバに接続されていないネットワークに設置されている場合、これらの検証情報サーバに対する接続要求はエラーとなる。そこで、このような場合にＥＳ−Ｃを生成しないことにより、検証の際にエラーとなることを防ぐことができる。このような判定処理Ａにより、検証情報サーバに接続できるか否かに応じた適切なプロファイルを生成することができる。
【００３２】
次に、判定部２５による、ＥＳ−Ｘプロファイルを生成するか否かを判定する処理である判定処理Ｂについて説明する。判定部２５は、業務期間情報記憶部２３に記憶されている業務期間情報を読み出して、読み出した業務期間情報が示す期間と、要素値読み出し部２２によって複数のＩＣカード１０から読み出された電子署名の有効期限とを比較し、業務期間情報が示す期間が、電子署名の有効期限より大きければ、ＥＳ−Ｘプロファイルを生成しないと判定し、業務期間情報が示す期間が、電子署名の有効期限より大きくなければ、ＥＳ−Ｘプロファイルを生成すると判定する。このとき、判定部２５は、電子証明書取得部２１が複数のＩＣカード１０から読み込んだ複数の電子証明書に含まれる電子署名の有効期限のうち、最も期間が小さい電子署名の有効期限と、業務期間情報とを比較する。あるいは、業務アプリケーション装置４０が行う業務アプリケーションにおいて、複数ユーザの直列署名である複数署名が行われる場合、その複数のユーザのうち、最後の１ユーザを除いたユーザに対応する電子署名の有効期限のうち、最も期間が小さい電子署名の有効期限と、業務期間情報とを比較する。
【００３３】
ここで、ＥＳ−Ｘの構成には検証情報を保護するタイムスタンプが含まれる。すなわち、ＥＳに複数の電子署名が含まれることが業務要件として定められている場合、業務期間より期間の小さい有効期限が定められた電子署名が付加されても、その電子署名の有効期限内に業務が完了しないと考えられる。ＥＳ−Ｘにおいて付加されるタイムスタンプは、ＥＳに含まれる署名値の有効期限内に付加されなければ、その署名値の検証期間を保証することはできないため、署名値の有効期限が経過した後にタイムスタンプを付加しても意味がない。そこで、このような場合には、ＥＳ−Ｘプロファイルを生成しない。このような判定処理Ｂにより、業務期間と電子署名の有効期限とに応じた適切なプロファイルを生成することができる。
【００３４】
入力部２６は、キーボードやマウス等の入力デバイスを備えており、プロファイル生成装置２０を操作する管理者からの操作入力を受付ける。例えば、入力部２６は、業務アプリケーション装置４０が実行する業務アプリケーションに利用する電子署名において、複数署名と任意署名削除との双方を行うか否かを示す情報の入力を受付ける。
【００３５】
プロファイル生成部２７は、判定部２５による判定結果に基づいて、プロファイルを生成し、生成したプロファイルを業務アプリケーション装置４０のプロファイル記憶部４１に記憶させる。例えば、プロファイル生成部２７は、判定部２５がＥＳ−Ｃプロファイルを生成しないと判定した場合、ＥＳ−Ｃプロファイルを生成せず、ＥＳ−Ｃプロファイルを生成すると判定した場合、ＥＳ−Ｃプロファイルを生成する。また、プロファイル生成部２７は、判定部２５がＥＳ−Ｘプロファイルを生成しないと判定した場合、ＥＳ−Ｘプロファイルを生成せず、ＥＳ−Ｘプロファイルを生成すると判定した場合、ＥＳ−Ｘプロファイルを生成する。
【００３６】
ここで、プロファイル生成部２７による、ＥＳ−Ｃプロファイルに設定する要素を判定する処理である判定処理Ｃについて説明する。プロファイル生成部２７は、要素値読み出し部２２によって読み出された複数の発行局ＩＤが、予め定められた行政機関等認証局であるものと、行政機関等認証局でないものとの双方を含むか否かを判定し、双方を含むと判定した場合、電子証明書に含まれる失効情報配布点（cRLDistributionPoints）が示すプロトコルに基づいて、全失効情報参照情報群（completeRevocationRefs）の値を定めたプロファイルを生成する。例えば、プロファイル生成部２７は、行政機関等認証局を示すものとして予め定められた発行局ＩＤを予め自身の記憶領域に記憶しておき、要素値読み出し部２２によって読み出された複数の発行局ＩＤが、予め記憶していた行政機関等認証局を示す発行局ＩＤに一致するか否かを判定する。ここで、行政機関等認証局であるものと、行政機関等認証局でないものとの双方を含む場合、認証はブリッジモデルであり、行政機関等認証局でないものとの双方を含まない場合、認証はブリッジモデルでない。行政機関等認証局とは、ＧＰＫＩやＬＧＰＫＩに基づく認証局である。
【００３７】
認証がブリッジモデルでない場合、業務アプリケーション装置４０の業務アプリケーションが検証情報を取得し、検証を行うことができる。そこで、プロファイル生成部２７は、電子証明書に含まれる失効情報配布点（cRLDistributionPoints）に示されるプロトコルに応じて、ＥＳ−Ｃプロファイルにおける全失効情報参照情報群（completeRevocationRefs）の値を設定する。例えば、失効情報配布点にｌｄａｐ（Lightweight Directory Access Protocol）またはｈｔｔｐ（HyperText Transfer Protocol）のプロトコルが定められていれば、全失効情報参照情報群（completeRevocationRefs）にＣＲＬ形式の失効情報参照情報（CRLRefs）を設定し、ＥＳ−ＸＬｏｎｇプロファイルのRevocationValues要素に失効情報群（CRLValues）を設定する。あるいは、失効情報配布点にｏｃｓｐのプロトコルが定められていれば、全失効情報参照情報群（completeRevocationRefs）にＯＣＳＰ形式の失効情報参照情報（OCSPRefs）を設定し、ＥＳ−ＸＬｏｎｇプロファイルのRevocationValues要素にＯＣＳＰレスポンス（OCSPValues）を設定する。一方、認証がブリッジモデルである場合、業務アプリケーション装置４０の業務アプリケーションは検証情報を取得できないため、プロファイル生成部２７は、ＥＳ−Ｃプロファイルを生成しない。このような判定処理Ｃにより、認証がブリッジモデルであるか否かに応じた適切なプロファイルを生成することができる。
【００３８】
次に、プロファイル生成部２７による、ＥＳ−Ｔプロファイルに設定する要素を判定する処理である判定処理Ｄについて説明する。プロファイル生成部２７は、入力部２６に、複数署名と任意署名削除との双方を行うことを示す情報が入力されると、カウンタ署名（CounterSignature）の要素を含まないプロファイルを生成し、複数署名と任意署名削除との双方を行わないことを示す情報が入力されると、カウンタ署名の要素を含むプロファイルを生成する。
【００３９】
ここで、ＥＳ−Ｔプロファイルにカウンタ署名の要素が含まれる場合、複数署名は直列署名として扱われ、カウンタ署名の要素が含まれない場合、複数署名は並列署名として扱われる。直列署名においては、複数のユーザに対応する電子署名により順番に電子署名が付加されるため、既に付加された任意の電子署名を削除することはできない。よって、複数署名における任意署名削除を行う場合、カウンタ署名の要素を含まないＥＳ−Ｔプロファイルを生成することにより、複数署名を並列署名とする。一方、複数署名における任意署名削除を行わない場合、カウンタ署名の要素を含むＥＳ−Ｔプロファイルを生成することにより、複数署名を直列署名とする。このような判定処理Ｄにより、複数署名と任意署名削除との双方を行うか否かに応じた適切なプロファイルを生成することができる。
【００４０】
認証局３０は、ＩＣカード１０に記憶されている電子証明書を発行した発行局に対応する認証局のコンピュータ装置である。例えば、認証局３０は、レポジトリを備えており、レポジトリには、証明書ポリシー（ＣＰ：Certificate Policy）、認証局運用規定（ＣＰＳ：Certification Practice Statement）、認証局３０が発行した電子証明書等の情報が記憶されており、ネットワークを介した取得要求に応じてこれらの情報を送信する。
【００４１】
業務アプリケーション装置４０は、業務に応じた長期署名に基づく電子署名を行うコンピュータ装置である。業務アプリケーション装置４０は、プロファイル記憶部４１と、業務アプリケーション部４２と、署名エンジン４３とを備えている。
プロファイル記憶部４１には、業務アプリケーション部４２によって提供される業務アプリケーションの種別毎に、プロファイル生成装置２０によって生成された複数のプロファイルが記憶される。例えば、業務αについてのプロファイルαと、業務βについてのプロファイルβが記憶される。
【００４２】
業務アプリケーション部４２は、業務要件に基づいて長期署名に基づく電子署名を行う業務アプリケーションを提供する。ここで、業務アプリケーション部４２は、プロファイルの異なる複数の業務アプリケーションを提供する。例えば、業務αと業務βとの業務アプリケーションを提供する。業務アプリケーション部４２は、業務αにおいて署名エンジン４３に電子署名処理を行わせる場合には、署名エンジン４３にプロファイル記憶部４１からプロファイルαを読み出すように命令し、業務βにおいて署名エンジン４３に電子署名処理を行わせる場合には、署名エンジン４３にプロファイル記憶部４１からプロファイルβを読み出すように命令する。
署名エンジン４３は、業務アプリケーション部４２からの命令に応じたプロファイルをプロファイル記憶部４１から読み出し、長期署名に定められたアルゴリズムに基づいて電子署名処理を行う。このようにすれば、業務アプリケーション部４２に対してプロファイルを仮想化することができ、ひとつの業務アプリケーション部４２によって複数のプロファイルを扱うようにすることができる。
【００４３】
次に、図面を参照して、本実施形態による長期署名システム１の動作例を説明する。図４は、本実施形態によるプロファイル生成装置２０の動作例を示すフローチャートである。この例では、ステップＳ２からステップＳ５までが判定処理Ａであり、ステップＳ６からステップＳ８までが判定処理Ｃであり、ステップＳ９からステップＳ１１までが判定処理Ｄであり、ステップＳ１２からステップＳ１４までが判定処理Ｂである。例えば、ＥＳ−Ｃプロファイルを生成するか否か、ＥＳ−Ｘプロファイルを生成するか否かを判定した際に、それぞれのプロファイルを生成するか否かを示すフラグに生成可否を示す情報を記憶させておき、全ての判定処理を行った後に、プロファイルを生成する。ここでは、このように４種類の判定処理を連続して行う例を説明するが、それぞれの判定処理を並列に行うこともできるし、これらの判定処理のうちから選択した任意の１または複数の判定処理のみを行うようにすることもできる。
【００４４】
業務アプリケーション装置４０によって行われる業務に対応するプロファイルを管理するユーザは、その業務において利用される１または複数の種別のＩＣカード１０を用意し、プロファイル生成装置２０の電子証明書取得部２１に読み込ませる。プロファイル生成装置２０の電子証明書取得部２１は、ＩＣカード１０に記憶された電子証明書を読み出す（ステップＳ１）。
【００４５】
要素値読み出し部２２は、電子証明書取得部２１が取得した電子証明書から、発行局ＩＤを読み出す。判定部２５は、要素値読み出し部２２が読み出した発行局ＩＤに対応する宛先情報を宛先情報テーブル記憶部２４から読み出し、読み出した宛先情報が示す検証情報サーバＵＲＬに接続要求を送信する（ステップＳ２）。判定部２５は、検証情報サーバＵＲＬに送信した接続要求に対する応答を受信する。受信した応答がエラーを示す場合（ステップＳ３：ＮＯ）、ＥＳ−Ｃプロファイルを生成しないと判定し（ステップＳ４）、ステップＳ９に進む。受信した応答がエラーを示さない場合（ステップＳ３：ＹＥＳ）、ＥＳ−Ｃプロファイルを生成すると判定する（ステップＳ５）。
【００４６】
プロファイル生成部２７は、要素値読み出し部２２によって読み出された複数の電子証明書の発行局ＩＤが、行政機関等認証局であるか否かを判定することにより、電子証明書の種別を判定する。そして、行政機関等認証局が発行した官職証明書または職責証明書（官）と、認定認証業務が発行した証明書（民）との双方が混在するか否かを判定する（ステップＳ６）。官と民とが混在すると判定すれば（ステップＳ６：ＹＥＳ）、ＥＳ−Ｃプロファイルを生成しないと判定する（ステップＳ７）。官と民とが混在しないと判定すれば（ステップＳ６：ＮＯ）、ＥＳ−Ｃプロファイルを生成すると判定し、電子証明書に含まれる失効情報配布点が示すプロトコルに基づいて、ＥＳ−Ｃプロファイルにおける全失効情報参照情報群の値と、ＥＳ−ＸＬｏｎｇプロファイルのRevocationValues要素の値とを設定すると判定する（ステップＳ８）。
【００４７】
業務アプリケーション装置４０によって行われる業務に対応するプロファイルを管理するユーザは、入力部２６に、業務において複数署名と任意署名削除との双方を行うか否かを示す情報を入力する。プロファイル生成部２７は、入力部２６に、複数署名を行い、かつ任意署名削除を行うことを示す情報が入力されると（ステップＳ９：ＹＥＳ）、カウンタ署名の要素を含まないＥＳ−Ｔプロファイルを生成すると判定する（ステップＳ１０）。一方、複数署名と任意署名削除との双方を行わないことを示す情報が入力されると（ステップＳ９：ＮＯ）、カウンタ署名の要素を含むＥＳ−Ｔプロファイルを生成すると判定する（ステップＳ１１）。
【００４８】
要素値読み出し部２２は、ステップＳ１において電子証明書取得部２１が読み込んだ電子証明書から、電子署名の有効期限の要素値を読み出す。判定部２５は、業務期間情報記憶部２３に記憶されている業務期間情報を読み出して、読み出した業務期間情報が示す期間と、要素値読み出し部２２によって複数の電子証明書から読み出された電子署名の有効期限とを比較する（ステップＳ１２）。判定部２５は、業務期間情報が示す期間が、電子署名の有効期限より大きければ（ステップＳ１２：ＹＥＳ）、ＥＳ−Ｘプロファイルを生成しないと判定する（ステップＳ１３）。一方、業務期間情報が示す期間が、電子署名の有効期限より大きくなければ（ステップＳ１２：ＮＯ）、ＥＳ−Ｘプロファイルを生成すると判定する（ステップＳ１４）。
【００４９】
プロファイル生成部２７は、ステップＳ２からステップＳ１４までの判定結果に応じてプロファイルを生成し、業務に対応付けてプロファイル生成部２７に記憶させる。これにより、業務アプリケーション装置４０のユーザが、業務アプリケーション部４２によって提供される業務アプリケーションを利用する際に、署名エンジン４３が、業務に応じたプロファイルをプロファイル記憶部４１から読み出して電子署名処理を行うことができる。このようにすれば、業務に応じた適切なプロファイルを生成できるとともに、ひとつの業務アプリケーション部４２により、複数のプロファイルを用いた署名処理を行うことが可能となる。
【００５０】
以上説明したように、本実施形態によれば、判定処理Ａ、判定処理Ｂ、判定処理Ｃ、判定処理Ｄにより、業務要件に応じた適切なプロファイルを生成することができるため、署名エンジン４３を業務アプリケーション装置４０に搭載する際、適切なプロファイルを生成することができる。さらに、業務アプリケーション部４２や署名エンジン４３からプロファイルを切り出して、複数のプロファイルをプロファイル記憶部４１に記憶させておくことができるため、業務アプリケーション部４２に対してプロファイルを仮想化することができる。すなわち、プロファイルの異なる署名処理を行う際に、業務アプリケーション部４２や署名エンジン４３の改修を行なうことなく、プロファイルを変更、追加することが可能となる。
【００５１】
なお、本実施形態においては、判定処理Ａ、判定処理Ｂ、判定処理Ｃ、判定処理Ｄにより、プロファイルの生成可否や要素を設定することとしたが、これ以外の判定処理を行ってもよいし、上記判定処理により例えばＥＳ−Ｃプロファイルを生成すると判定された場合でも、個別の業務要件に応じてＥＳ−Ｃプロファイルを生成しないようにすることもできる。
【００５２】
なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりプロファイル生成を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００５３】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【００５４】
１  長期署名システム
１０  ＩＣカード
１１  電子証明書記憶部
１２  署名鍵記憶部
１３  制御部
２０  プロファイル生成装置
２１  電子証明書取得部
２２  要素値読み出し部
２３  業務期間情報記憶部
２４  宛先情報テーブル記憶部
２５  判定部
２６  入力部
２７  プロファイル生成部
３０  認証局
４０  業務アプリケーション装置
４１  プロファイル記憶部
４２  業務アプリケーション部
４３  署名エンジン
【図１】
0005490157.tif 000002
【図２】
0005490157.tif 000003
【図３】
0005490157.tif 000004
【図４】
0005490157.tif 000005