JP4858027B2 - 電子証明書管理装置 - Google Patents

電子証明書管理装置 Download PDF

Info

Publication number
JP4858027B2
JP4858027B2 JP2006245226A JP2006245226A JP4858027B2 JP 4858027 B2 JP4858027 B2 JP 4858027B2 JP 2006245226 A JP2006245226 A JP 2006245226A JP 2006245226 A JP2006245226 A JP 2006245226A JP 4858027 B2 JP4858027 B2 JP 4858027B2
Authority
JP
Japan
Prior art keywords
electronic
electronic certificate
crl
time
certificate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006245226A
Other languages
English (en)
Other versions
JP2008067264A (ja
JP2008067264A5 (ja
Inventor
洋平 串戸
郁夫 北島
ゆかり 松澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2006245226A priority Critical patent/JP4858027B2/ja
Publication of JP2008067264A publication Critical patent/JP2008067264A/ja
Publication of JP2008067264A5 publication Critical patent/JP2008067264A5/ja
Application granted granted Critical
Publication of JP4858027B2 publication Critical patent/JP4858027B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ある時刻において電子証明書を用いて電子署名や暗号化通信の際の認証等といった電子処理が行われていたとして、電子処理に使用された電子証明書がその電子処理時刻において有効であったかどうかを後の時刻において検証可能とするために複数の電子証明書失効リスト(CRL:Certificate Revocation List。失効した電子証明書の情報が記述される。以降、CRLと称する)を取得する際に、CRLの取得回数を軽減させることで装置に要求されるリソースや装置を開発する際の労力や時間的コストを減少させるための電子証明書管理装置に関するものである。
従来、電子証明書は電子署名や暗号化通信の際の認証などの電子処理に用いられてきた。そして、電子処理時における電子証明書の有効性を検証するために、電子証明書を発行した認証局(CA:Certificate Authority。以降CAと称する。)が管理する失効した電子証明書の識別情報が記されるCRLが一般的に用いられる。
しかし、CRLはCAが定めるCRL発行期間を経て配布されるため、電子処理時と同じ時刻で取得可能なCRLでは電子処理時の電子証明書の有効性を検証することができない。なぜなら、図1において、CAが時刻T1から時刻T5のタイミングにおいてCRLを発行すると仮定すると、時刻T2と時刻T3の間の時刻Taにおいて電子署名等の電子処理を行なった場合に、時刻Taにおいて取得可能なCRL_aは時刻T2において発行されたCRLであり、時刻T2まで(時間領域A)に失効した電子証明書の識別情報しか記されていない。そのため、時刻T2から時刻Taまでに電子証明書が失効している可能性があるため、CRL_aでは時刻Taにおける電子証明書の有効性を検証するのに十分ではない。時刻Taにおける電子証明書の有効性は、時刻Taにおける電子証明書の失効情報を含む、時刻T3以降(時間領域B)のCRLが必要となる。
従来手法では、電子処理が行なわれた時刻TaにおいてCRLを取得し電子証明書の有効性を仮に検証しておき、取得したCRLから導き出される時刻T3において、Taにおける失効した電子証明書の識別情報を含む新たなCRLを取得し、時刻Taにおける電子証明書の有効性を真に検証するという方式が用いられている(例えば特許文献1参照)。この従来方式では、一つの電子処理に対して仮の有効性検証のためと真の有効性検証のために二つのCRLを取得することにより、電子処理時における電子証明書の有効性を検証する。
特開2002−23627号公報
しかしながら、上記従来の方式のように一つの電子処理に対して仮の有効性検証と真の有効性検証のために二つのCRLを取得する方法には課題が存在する。図2に示すように、時刻Taにおいて電子証明書を用いた電子処理Aを行なったとすると、従来手法では、時刻TaにおいてCRL_aを取得し電子証明書の仮の有効性検証を行ない、時刻Taにおける電子証明書の真の有効性の検証のために、時刻T2で更にCRL_a‘を取得する。そのため、電子処理Aを行なった時刻Taとは異なる時刻T2でCRLを取得するためだけに装置を起動させる事となる。
よって、本来の電子証明書の使用目的である電子処理Aを行なった時刻Taとは異なる別の時刻T2において装置を起動させるために、時刻Taから時刻T2の間装置を起動し続けるか、時刻T2になれば装置が起動するような仕組みが必要となる。装置を起動し続ければ電力消費量は増大してしまうため、装置の電力を供給するバッテリー容量が限られる小型携帯機器では稼働時間の短縮につながる。図2における時刻T2のように、CRLが発行されるタイミングのある時刻をトリガーとして装置が起動する仕組みだった場合は、装置が自律的にネットワークを介してCRL_a’を取得することとなるが、予期せぬネットワーク障害に対する対策や、装置が正しく自律的に動作する様に装置を設計及び構築することになり、装置開発の労力と時間的コストの増大につながる。もちろん、自律的にではなく人の手による手動による装置の起動も考えられるが、その場合は人的コストが増大する。
また、従来手法では、図2に示すように電子処理A、電子処理B、電子処理Cと電子処理を仮にn回行なったとすると、2n回のCRL取得が必要となる。CRLの電子データサイズは、有効期限内の電子証明書で失効している電子証明書の数に比例するため、電子証明書を多数発行するCAもしくは電子証明書の有効期限が長期間であるCAではCRLのデータサイズが大きくなることが考えられ、30kバイトに近い電子データサイズのCRLも存在する。そのため、一つの電子処理時刻における電子証明書の有効性の検証のために、仮の有効性検証のためと真の有効性検証のために二つのCRLを取得することは、記憶領域のリソースが限られるような機器にとっては致命的となる。
つまり、一つの電子処理毎に仮の有効性検証のためと真の有効性検証のための二つのCRLを取得する従来手法では、二つ目のCRLを取得するために装置に要求するリソースや装置を開発する労力や時間的コストが余計に生じていると考えられる。
本発明は、このような従来の一つの電子処理時刻における電子証明書の有効性の検証のために仮の有効性検証のためと真の有効性検証のための二つのCRLを取得することによって生じる、装置に要求されるリソースや装置を開発する際の労力や時間的コストの増大を解決するものであり、ある電子処理時刻における電子証明書の有効性を検証することを可能にするという機能はそのままに、しかし、CRLの取得回数を軽減させることで上記装置に要求されるリソースや装置を開発する際の労力や時間的コストを減少させることを目的とする。
本発明は上記目的を達成するために、電子署名や暗号化通信の際の認証に用いられる電子証明書を発行するとともに失効した電子証明書の情報を記述した電子証明書失効リストを配布する認証局とネットワークを介して通信する通信手段と、前記認証局から発行された電子証明書を記憶する電子証明書保持手段と、前記電子証明書を用いた電子処理を実行する電子処理実行手段と、前記電子処理実行時に前記通信手段により前記認証局から電子証明書失効リストを取得して記憶するCRL保持手段と、第一の電子処理の後に行われる第二の電子処理時に取得した電子証明書失効リストによって前記第一の電子処理に用いられた電子証明書の有効性を検証する電子証明書有効性検証手段とを備えた構成をとる
この構成により、電子処理毎にCRLを取得し保持しておくことで、ある時刻における電子処理に用いられた電子証明書の検証を、そのある時刻以降に行なわれた電子処理時において取得されたCRLを用いて行なうことができる。そして、電子処理時にのみCRLを取得するため、CRLの取得回数が軽減されかつCRLを保持するためのリソースが減少される。また、電子処理時にのみCRLを取得するため、電子処理時にのみ装置を起動させるだけでよく、電力消費量が軽減される。
本発明の、電子処理毎にCRLを取得し保持しておき、ある時刻における電子処理に用いられた電子証明書の検証を、そのある時刻以降に行なわれた電子処理時において取得されたCRLを用いて行なうことにより、電子処理時のみ装置を起動させるだけである電子処理時刻の電子証明書の有効性の検証が可能となり、電力消費量が軽減される。また、電子処理時にのみCRLを取得するためにCRLを取得する回数が軽減され、CRLを保持するためのリソースも軽減される。さらには、従来手法のように一つの電子処理に対して二つ目のCRLを取得するための機構が装置に必要ではなくなるため、装置開発の労力や時間的コストも軽減される。
本発明に係る第一の発明は、電子署名や暗号化通信の際の認証に用いられる電子証明書を発行するとともに失効した電子証明書の情報を記述した電子証明書失効リストを配布する認証局とネットワークを介して通信する通信手段と、前記認証局から発行された電子証明書を記憶する電子証明書保持手段と、前記電子証明書を用いた電子処理を実行する電子処理実行手段と、前記電子処理実行時に前記通信手段により前記認証局から電子証明書失効リストを取得して記憶するCRL保持手段と、第一の電子処理の後に行われる第二の電子処理時に取得した電子証明書失効リストによって前記第一の電子処理に用いられた電子証明書の有効性を検証する電子証明書有効性検証手段とを備える
この構成によれば、電子処理毎にCRLを取得し保持しておき、ある時刻における電子処理に用いられた電子証明書の検証を、そのある時刻以降に行なわれた電子処理時において取得されたCRLを用いて行なうことにより、電子処理時のみ装置を起動させるだけである電子処理時刻の電子証明書の有効性の検証が可能となり、電力消費量は軽減される。また、電子処理時にのみCRLを取得するためにCRLを取得する回数が軽減され、CRLを保持するためのリソースも軽減される。さらには、従来手法のように一つの電子処理に対して二つ目のCRLを取得するための機構が装置に必要ではなくなるため、装置開発の労力や時間的コストも軽減される。
本発明に係る第二の発明は、前記第一の発明において、電子証明書を用いて電子処理を行った時刻である電子処理時刻とその電子証明書の識別情報と当該電子処理時に取得して記憶した電子証明書失効リストの識別情報とを電子処理毎に記憶する状態管理テーブルを有し、前記状態管理テーブルに前記第一の電子処理に用いられた電子証明書が記憶されていて、かつ、前記第一の電子処理に対応する電子証明書失効リストと前記第一の電子処理の電子処理時刻よりも後の時刻に行われた前記第二の電子処理に対応する電子証明書失効リストとが異なる場合に、前記電子証明書有効性検証手段は、前記第二の電子処理時に取得した電子証明書失効リストによって前記第一の電子処理に用いられた電子証明書の有効性を検証するものとする
この構成によれば、状態管理テーブルに記される電子証明書の識別情報から電子処理を行った時刻やこの時に取得されたCRLを管理することができ、ある時刻における電子処理に用いられた電子証明書の検証を、そのある時刻以降に行なわれた電子処理時において取得されたCRLを用いて行なうことにより、電子処理時のみ装置を起動させるだけである電子処理時刻の電子証明書の有効性の検証が可能となり、電力消費量は軽減される
本発明に係る第三の発明は、前記第一または第二の発明において、前記第一の電子処理に用いられた電子証明書が、当該電子証明書内に記される電子証明書の有効期限内であるとき、前記電子証明書有効性検証手段による有効性の検証を行なうものとする
この構成によれば、電子証明書の有効性の検証は、電子証明書が有効期限内であるときだけ行なうので、正確な検証を行なうことができる。なぜなら、CRLに記される失効された電子証明書情報は、対象となる失効した電子証明書の有効期限が過ぎてしまうとCRLに記載されなくなってしまうからである。
本発明に係る第四の発明は、前記第一から第三の発明のいずれかにおいて、前記電子証明書有効性検証手段は、前記第二の電子処理時に取得した電子証明書失効リストに前記第一の電子処理時に用いられた電子証明書の識別情報が記されているかどうかを判断し、記されていない場合に前記第一の電子処理時に用いられた電子証明書が有効であるとする。
この構成によれば、電子処理毎にCRLを取得し保持しておき、ある時刻における電子処理に用いられた電子証明書の検証を、そのある時刻以降に行なわれた電子処理時において取得されたCRLを用いて行なうことにより、電子処理時のみ装置を起動させるだけである電子処理時刻の電子証明書の有効性の検証が可能となり、電力消費量は軽減される。
図3は本発明の動作概念図である。本発明は、図3に示すように電子証明書を用いた電子処理毎にCRLが保存される。そのため、時刻Taにおいて行なわれた電子処理Aに用いられた電子証明書の有効性の検証は、図2に示す従来手法のように電子処理Aのために時刻T2でCRLを取得し電子証明書の有効性を検証するのではなく、時刻Tbにおいて行なわれた電子処理B時に取得されたCRL_bを用いて行なうことができる。また、時刻Tbにおいて行なわれた電子処理Bに用いられた電子証明書の有効性の検証も、時刻Tcにおいて行なわれた電子処理C時に取得されたCRL_cを用いて行なうことができる。時刻Tcにおいて行なわれた電子処理Cに用いられた電子証明書の有効性の検証は、時刻T5以降に行なわれた電子処理時に取得されたCRLを用いて行なうことができる。
以下、本発明の具体的な内容について実施例を用いて説明する。
(実施例1)
図4から図10を用いて実施例1を説明する。図4は本発明を適用した実施例1の全体構成を説明する図であり、図5はRFC3280に基づく電子証明書の構造において実施例1に関連が深い項目を記述した図であり、図6はRFC3280に基づくCRLの構造において実施例1に関連が深い項目を記述した図であり、図7は実施例1における状態管理テーブルの構造を説明する図であり、図8は実施例1における電子署名処理のフローチャートであり、図9は実施例1において複数の電子署名処理が行なわれた場合に、ある時刻における電子署名処理に用いられた電子証明書の有効性を検証する処理のフローチャートであり、図10は実施例1において電子署名に用いられた電子証明書管理装置内の記憶装置に保持される各電子証明書に対して有効期限までの期間を検出する処理のフローチャートである。以下、図面に沿って説明する。
図4は、本発明に関わる電子証明書管理装置を適用した全体構成を説明する図である。電子証明書管理装置401はネットワーク402を通してCA403と通信が可能になっている。また、電子証明書管理装置401は、図4に示すように入力装置部404、出力装置部405、時刻情報部406、通信部407、プログラム制御部408、メモリ部409、記憶装置部410、演算装置部411を有している。
CA403は、電子証明書を発行する機関であり、同時に発行した電子証明書に関して、失効した電子証明書の識別情報をCRLに記し、ネットワーク402を通じてCRLを配布する機能を有している。
入力装置部404は、認証局403から発行された電子証明書を電子証明書管理装置401内の記憶装置部410内の一部の記憶領域である電子証明書保持部413に保持するための入力装置である。入力装置部404は請求項1記載の電子証明書保持手段に相当し、電子証明書を電子証明書管理装置401に入力する機能を有する。また、入力装置部404は、電子証明書管理装置401を利用するユーザが記憶装置部410内に記憶される1001から1013のプログラムを実行するように指示を入力する機能を有する。
出力装置部405は、記憶装置部410に記憶される1001から1013のプログラムがプログラム制御部408によって制御され実行された時に、メモリ部409に格納される情報を各プログラムが必要に応じて電子証明書管理装置401の外へ出力するための出力装置である。実施例1では、電子署名時に電子証明書の有効期限が過ぎてしまっていた場合に有効期限外であることの表示や、電子証明書をCRLに記載される情報から失効検証した際に電子証明書が失効していることの表示を行う。また、電子証明書が一定期間後(以降、猶予期間)に有効期限切れになってしまうような場合に、猶予期間後に有効期限切れになってしまうことを表示することを行う。
時刻情報部406は、電子証明書管理装置401内で利用される時刻情報を保持する装置である。
通信部407は、電子証明書管理装置401がネットワーク402を通してCA403と通信を行なう時に、情報の送受信を行なう装置である。
プログラム制御部408とメモリ部409と演算装置部411は、電子証明書管理装置401を動作させるためのプログラム1001から1013を実行するための装置である。記憶装置部410に記憶される1001から1013の各プログラムは、プログラム制御部408によってメモリ部409に読み込まれ、演算装置部411によって演算される。演算結果により、入力装置部404や出力装置部405等といった電子証明書管理装置401内に存在する装置が制御される。
記憶装置部410は、電子証明書管理装置401を動作させるためのプログラムが記憶されており、電子証明書取得プログラム1001、電子署名プログラム1002、CRL取得プログラム1003、電子証明書有効性検証プログラム1004、CRL検索プログラム1005、CRL有効性判断プログラム1006、CRL取得判断プログラム1007、状態管理テーブル管理プログラム1008、時刻管理プログラム1009、入出力装置制御プログラム1010、電子証明書有効期限期間検出プログラム1011、電子証明書有効期限切れ検出プログラム1012、電子データ識別情報作成プログラム1013が記憶されている。また、記憶装置部410には電子証明書管理装置401で管理する電子証明書とCRLと状態管理テーブルを保持する記憶領域を有し、電子証明書保持部412とCRL保持部413と状態管理テーブル保持部414を有している。それぞれ、請求項1記載の電子証明書保持手段と取得したCRLを保持するCRL保持手段と請求項3記載の電子証明書を用いた電子処理時刻とその電子証明書の識別情報を管理する状態管理テーブルを保持する装置に相当する。
上記電子証明書取得プログラム1001は請求項1記載の電子証明書保持手段に相当し、入力装置部404を制御して電子証明書を電子証明書保持部412に記憶する機能を有する。
上記電子署名プログラム1002は、請求項1記載の電子証明書を用いた電子処理を実行する電子処理実行手段に相当し、電子証明書保持部412において保持される電子証明書内に記憶される秘密鍵の項目を利用して電子署名を行う機能を有する。
上記CRL取得プログラム1003は、請求項1記載の電子証明書のCRLを取得するCRL取得手段と取得したCRLを保持するCRL保持手段に相当し、電子証明書内に記憶される電子証明書に対応するCRLの配布場所からCRLを取得し保持する機能を有する。
上記電子証明書有効性検証プログラム1004は、請求項1記載のCRLを用いて電子証明書の有効性を検証する電子証明書有効性検証手段に相当し、CRL保持部413において保持されるCRLを用いて電子証明書の有効性を検証する機能を有する。また、電子証明書保持部412に保持される電子証明書内の有効期間が開始する時刻の項目と有効期間が終了する時刻の項目の二つの項目と、時刻管理プログラム1009を用いて参照した時刻情報から、電子証明書が有効期間内であるかどうかを検証する機能を有する。
上記CRL検索プログラム1005は、請求項1記載の第一の電子処理に用いた電子証明書の有効性の検証を前記第一の電子処理後に行う第二の電子処理時に取得したCRLを用いて行う際の、第二の電子処理時に取得したCRLを検索する機能を有する。
上記CRL有効性判断プログラム1006は、請求項2記載のCRLの有効性を判断するCRL有効性判断手段に相当し、CRL内に記憶されるCRLの有効期間が開始する時刻の項目とCRLが次回に更新される時刻の項目の二つと、時刻情報部406に保持される時刻情報を比較して、CRLが無効であるかどうかを判断する機能を有する。
上記CRL取得判断プログラム1007は、請求項2記載の、CRL保持手段によって保持されるCRLが前記CRL有効性判断手段によって無効であると判断された場合にCRLを取得する動作に相当し、CRL保持部413に保持されるCRLが前記CRL有効性判断プログラム1006によって無効であると判断された場合にCRLを取得すると判断する機能を有する。
上記状態管理テーブル管理プログラム1008は、請求項3記載の電子証明書を用いた電子処理時刻とその電子証明書の識別情報を管理する状態管理テーブルに対して、電子処理時刻とその電子証明書の識別情報を状態管理テーブルに記憶し管理する機能を有する。
上記時刻管理プログラム1009は、時刻情報部406に保持される時刻情報を参照する機能を有する。
上記入出力装置制御プログラム1010は、電子証明書有効性検証プログラム1004や電子証明書有効期限切れ検出プログラム1012で検出した電子証明書の有効期限切れや失効したという情報を出力装置部405を制御して表示する機能を有する。また、請求項1記載の電子証明書保持手段にも相当し、入力装置部404を制御して電子証明書を電子証明書保持部412に保持する機能を有する。
上記電子証明書有効期限期間検出プログラム1011は、請求項3記載の状態管理テーブルを用いて前記電子証明書保持手段において保持される一つ以上の電子証明書に対して、一つ以上の電子証明書の有効期限までの期間を検出する電子証明書有効期限切れ検出手段に相当し、状態管理テーブル保持部414に記憶される状態管理テーブルを用いて、電子処理に用いられた電子証明書を検出し、検出された電子証明書の有効期間終了時刻503と時刻情報部406に記される時刻情報から有効期限までの期間を検出する機能を有する。
上記電子証明書有効期限切れ検出プログラム1012は、前記電子証明書有効期限期間検出プログラム1011によって検出された電子証明書の有効期限までの期間情報と、状態管理テーブル内に記される猶予期間情報を比較し、有効期限までの期間情報が猶予期間よりも時系列上で短くなった場合に、電子証明書が猶予期限後に有効期限が切れることを検出する機能を有する。
上記電子データ識別情報作成プログラム1013は、電子証明書もしくはCRLを構成する電子データから一方向性関数を用いて一意に生成されるハッシュと呼ばれる電子データを作成する機能を有する。
上記電子証明書について、図5を用いて電子証明書内に記憶される情報を説明する。実施例1における電子証明書とは、RFC3280において定義される電子証明書のことであり、電子証明書の有効期間が開始する時刻の項目502と、有効期間が終了する時刻の項目503と、電子証明書を発行した発行者の項目504と、電子証明書に与えられている識別番号の項目505と、電子証明書の発行先の項目506と、電子証明書に対応するCRLの配布場所が記される項目507と、電子証明書に関連づけられる公開鍵の項目508と、電子証明書を発行した発行者が電子証明書に対して行なった電子署名の項目509と、電子証明書に関連付けられる秘密鍵の項目510とが存在する。
上記CRLについて、図6を用いてCRL内に記憶される情報を説明する。実施例1におけるCRLとは、RFC3280において定義されるCRLのことであり、CRLの発行者の項目602と、CRLの有効期間が開始する時刻の項目603と、CRLが次回に更新される時刻の項目604と、失効した電子証明書の識別情報の項目(605〜607)が失効している電子証明書の数だけ存在する。
上記状態管理テーブルについて、図7を用いて状態管理テーブル内に記憶される情報を説明する。実施例1において状態管理テーブル701は、電子証明書管理装置401が保持する電子署名に用いた電子証明書の識別情報を記憶する電子証明書識別情報記憶領域(702と703)を有している。また、電子証明書識別情報記憶領域(702と703)に対応付けられて、電子署名処理毎に電子署名処理時刻を記憶する電子処理時刻記憶領域(704〜706と712)と、その電子署名処理時に電子証明書に対応した最新のCRLを記憶装置部410に保持する際の保持名を記憶するCRL識別情報記憶領域(707〜709と713)を有する。また、電子証明書に対応したCRLの有効期間から計算する猶予期間情報を記憶する猶予期間情報記憶領域(710及び711と714及び715)を有する。
次いで、図4から図10を用いて、本発明に係る電子証明書管理装置の作用について説明する。電子証明書は、CA403によってあらかじめ発行されているとする。電子証明書管理装置401は、入力装置404を通じて電子証明書保持部412に電子証明書を保持する。ユーザは、後述する電子証明書による電子署名処理動作を実行し、電子証明書保持部412に保持される電子証明書を用いて電子署名処理を行う。電子署名処理は、ユーザの指示により複数回行われる(仮にnとする(n:2,3,4,...)。)。ここで、n回行われた電子署名において、i番目(i:1,2,3,...,n−1)に行われた電子署名に用いられた電子証明書の有効性を確認することを考える。ユーザは後述する過去のある電子署名処理時刻における電子証明書の有効性を検証する方法を用いてi番目の電子署名の有効性を確認することができる。また、電子署名処理時には、後述する電子証明書有効期限期間チェック処理動作を行い、電子署名処理が終了した後に電子証明書管理装置内の電子証明書保持部412に保持される電子証明書の中で、電子署名処理時点までに電子署名を行っていた各電子証明書に関して有効期限までの期間を検出し、それぞれの電子証明書に対して猶予期間後に有効期限が過ぎてしまう電子証明書があれば出力装置部405を通して、猶予期間後に有効期限が過ぎてしまう電子証明書が存在することを表示する。
ここで、電子証明書管理装置401による電子署名処理時の動作について、図8に沿って詳細に説明する。図8は本発明に係る電子証明書管理装置を適用した電子証明書管理装置の電子署名処理時の動作を示すフローチャートである。電子証明書管理装置401はプログラム制御部408によって記憶装置部410内にある電子署名プログラム1002を動作させ、電子署名処理のステップを開始する。
電子署名処理のステップが開始すると、ステップ20101にて電子署名処理に用いる電子証明書の有効期限検証を行う。ステップ20101における電子署名処理に用いる電子証明書の有効期限検証は、電子証明書有効性検証プログラム1004を用いて、電子証明書内に記される電子証明書の有効期間が開始する時刻502と有効期間が終了する時刻503の二つの項目と時刻情報部406の時刻情報とを比較して、時刻情報部の時刻が時系列上において有効期間が開始する時刻よりも前もしくは有効期間が終了する時刻よりも後であった場合には有効期限外としてみなし、そうでない場合は電子証明書が有効期限内であると判断する。
ステップ20101において、電子証明書が有効期限外であると判断された場合は、ステップ20102に進む。ステップ20102では、入出力装置制御プログラム1011を用いて電子証明書が有効期限外であることを出力装置部405に表示して、電子署名処理のステップを終了する。
ステップ20101において、電子証明書が有効期限内であると判断された場合は、ステップ20103に進む。ステップ20103では、電子署名に用いる電子証明書を識別するために電子データ識別情報作成プログラム1013を用いて電子証明書のハッシュを計算する。ステップ20103で
電子証明書のハッシュを計算後、ステップ20104に進む。ステップ20104では、状態管理テーブル保持部414に状態管理テーブルが存在するかを調べる。
ステップ20104において、状態管理テーブル保持部414に状態管理テーブルが存在しない場合は、ステップ20105に進む。ステップ20105では、状態管理テーブル管理プログラム1008を用いて状態管理テーブルを作成する。ステップ20105で状態管理テーブルを作成後、ステップ20106に進む。ステップ20106では、電子署名に用いる電子証明書から電子証明書に対応するCRLの配布場所507を取得し、CRL取得プログラム1003を用いてCRLを取得する。ステップ20106でCRLを取得後、ステップ20107に進む。
ステップ20107では、電子証明書有効性検証プログラム1004を用いて、取得したCRLによる電子署名に用いる電子証明書の有効性検証を行う。ステップ20107におけるCRLを用いた電子証明書の有効性検証は、取得したCRLに記される失効した電子証明書の識別情報の項目(605〜607)の中に、電子署名に用いる電子証明書の識別情報505が記されている場合には電子証明書が失効していると判断し、そうでない場合は電子証明書が有効であると判断する。
ステップ20107において、電子署名に用いる電子証明書が失効していると判断された場合は、ステップ20108に進む。ステップ20108では、入出力装置制御プログラム1011を用いて電子証明書が失効している事を出力装置部405に表示して、電子署名処理のステップを終了する。
ステップ20112において、電子署名に用いた電子証明書が有効であると判断された場合は、ステップ20109へ進む。ステップ20109では、電子署名プログラム1002によって電子署名を行う。ステップ20109の電子証明書による電子署名が終了後、ステップ20110に進む。ステップ20110では、時刻管理プログラム1009を用いて時刻情報部406の時刻を電子署名時刻として取得する。ステップ20110で電子署名処理時刻を取得した後、ステップ20111に進む。
ステップ20111では、CAから取得したCRLを電子データ識別情報作成プログラム1013を用いてCRLの識別情報としてハッシュ計算し、ステップ20110で取得した電子署名処理時刻と組み合わせて、取得したCRLをCRL保持部413に保持する際のCRL保存名を作成する。CRL保存名はハッシュを文字列表記したものと電子署名処理時刻を文字列表記したものをアンダーバー(_)で連結して作成する(ハッシュ値:1A0B3C...9A、電子署名処理時刻:20XX/YY/ZZならば1A−0B−3C...−9A_20XX/YY/ZZ.crlという文字列を作成する)。ただし、後述するステップ20117において、CRLが最新であると判断され、記憶装置内のCRL保持部413からCRLを取得していた場合は、CRL保持部413に記憶されていた時のCRL保存名をCRL保存名として作成する。
ステップ20111でCRL保存名を作成後、ステップ20112に進む。ステップ20112では、状態管理テーブル管理プログラム1008を用いて、状態管理テーブルに電子証明書から計算したハッシュと電子署名処理時刻とCRL保存名を記憶する。例えば、電子証明書から計算したハッシュがAB−CD−EF・・・00−11であり、電子署名処理時刻が200X/7/30であり、CRL保存名が3F−5A・・・1C_200X_07_30.crlであるならば、図7に示すように電子証明書のハッシュは電子証明書識別情報記憶領域702に記憶され、電子署名処理時刻は電子署名処理時刻記憶領域704に記憶され、CRL保存名はCRL識別情報記憶領域707に記憶される。ここで、同じ電子証明書(つまり、電子証明書のハッシュがAB−CD−EF・・・00−11になる電子証明書)で既に電子署名が過去に行われていた場合には、電子署名処理時刻とCRL保存名は過去に記憶された電子署名処理時刻のフィールドとCRL保存名のフィールドの下に連続して記憶される。例えば、前述した例で200X/7/30において電子書名を行い、200X/8/4に同じ電子証明書を用いて電子署名処理を行った場合を考える。この場合、電子証明書のハッシュは電子証明書識別情報702が既に記憶されているので新たに記憶はしないが、電子署名処理時刻200X/8/4は記憶されている最後の電子署名処理時刻704のフィールドの下の電子署名処理時刻記憶領域705に記憶し、CRL保存名も記憶されている最後のCRL保存名707のフィールドの下のCRL識別情報記憶領域708に記憶する。以後同様にして、電子署名処理が行われる度に最後に行われた電子処理時に記憶されたフィールドの下に追記していく形式で電子署名処理時刻とCRL保存名を記憶する。状態管理テーブルに電子証明書のハッシュと電子署名処理時刻とCRL保存名を記憶した後は、取得したCRLをCRL保持部413にCRL保存名の名前で記憶する。ステップ20112で状態管理テーブルに情報を記憶及びCRL保持部413に取得したCRLを保持後、ステップ20113に進む。
ステップ20113では、後述する電子証明書有効期限期間チェック処理動作を行い、電子署名処理のステップを終了する。
ステップ20104において、状態管理テーブルが存在するか調べた際に、状態管理テーブルが存在した場合は、ステップ20114に進む。ステップ20114では、図7における状態管理テーブル701内の電子証明書識別情報記憶領域702において、電子署名に用いる電子証明書から計算されたハッシュに等しい項目が存在するかを調べる。例えば、電子証明書から計算されたハッシュがABCDEF・・・0011であった場合で、図7に示すように電子証明書識別情報記憶領域702にAB−CD−ED・・・00−11とあった場合には、ハッシュに等しい項目が存在すると判断する。もし、電子証明書から計算されたハッシュがBCDEF0・・・5678であった場合は、図7に示す状態管理テーブルの例ではAB−CD−EF・・・00−11の項目702と22−33−44・・・AA−CCの項目703しかないので、ハッシュに等しい項目は存在しないと判断する。
ステップ20114において、状態管理テーブル内に、電子署名に用いる電子証明書から計算されたハッシュに等しい項目が存在しなかった場合には、ステップ20106に進む。ステップ20106以降のステップは、上記ステップ20106以降のステップと等しい動作を行い、電子署名処理のステップを終了する。
ステップ20114において、状態管理テーブル内に、電子署名に用いた電子証明書から計算されたハッシュに等しい項目が存在した場合は、ステップ20115に進む。ステップ20115では、図7に示す状態管理テーブルにおいて、電子証明書のハッシュに対応する電子署名処理時刻において、一番下の電子署名処理時刻に対応付けて記憶されるCRL保存名を取得する(電子署名処理時刻は前回行った電子署名処理時刻の下に記憶していくので、一番下に記憶される電子署名処理時刻とは、最後に行った電子署名処理時刻のことをさす)。例えば、電子証明書から計算されたハッシュがABCDEF・・・0011であるならば、電子証明書識別情報702の電子署名処理時刻(704〜706)において一番下の電子署名処理時刻706に対応付けて記憶されるCRL保存名709を取得する。ステップ20115でCRL保存名706を取得後、ステップ20116に進む。
ステップ20116では、CRL保持部413から取得したCRL保存名706に対応するCRLを取得する。ステップ20116でCRLを取得後、ステップ20117に進む。ステップ20117では、CRL有効性判断プログラム1006を用いて、取得したCRLが最新のものであるかどうかを判断する。ステップ20117における判断は、CRLに記される次回に更新される時刻の項目604が時系列上において時刻情報部406にて保持される時刻情報よりも後であった場合は、CRLが最新であると判断し、そうでない場合はCRLが古いと判断する。
20117において、取得したCRLが古いと判断された場合は、ステップ20106に進む。ステップ20106以降のステップは、上記ステップ20106以降のステップと等しい動作を行い、電子署名処理のステップを終了する。
20117において、取得したCRLが最新であると判断された場合は、ステップ20107に進む。ステップ20107以降のステップは、上記ステップ20107以降のステップと等しい動作を行い、電子署名処理のステップを終了する。
ここで、電子証明書管理装置401の過去のある電子署名処理時刻における電子証明書の有効性を検証する方法について、図9を用いて詳細に説明する。図9は本発明に係る電子証明書管理装置を適用した電子証明書管理装置の過去の電子署名処理時の電子証明書の有効性検証の動作を示すフローチャートである。電子証明書管理装置401はプログラム制御部408によって記憶装置部410内に記憶される状態管理テーブル管理プログラム1008を動作させ、過去のある電子署名処理時刻における電子証明書の有効性を検証するステップを開始する。
過去のある電子署名処理時刻における電子証明書の有効性を検証するステップが開始すると、まずはステップ20201に進む。ステップ20201では、状態管理テーブル管理プログラム1008を用いて状態管理テーブル保持部414に状態管理テーブルが存在するかどうかを判断する。
ステップ20201において、状態管理テーブル保持部414に状態管理テーブルが存在しないと判断されればステップ20202に進む。ステップ20202では、過去のある電子署名処理時刻における電子証明書の有効性の検証は不可能としてステップを終了する。
ステップ20201において、状態管理テーブルが存在すればステップ20203へ進む。ステップ20203では、検証を行いたい電子証明書から電子データ識別情報作成プログラム1013を用いて電子証明書のハッシュを計算する。ステップ20203で電子証明書からハッシュを計算後、ステップ20204へ進む。ステップ20204では、CRL検索プログラム1005を用いて状態管理テーブルに記憶される電子証明書識別情報記憶領域702において電子証明書から計算されたハッシュと等しくなる項目を検索する。例えば、図7に示すように状態管理テーブルに電子証明書識別情報702と電子処理時刻(704〜706)とCRL識別情報(707〜709)が記憶されている場合に、検証を行いたい電子証明書のハッシュがABCDEF・・・0011と計算された場合は、電子証明書識別情報702と一致するので電子証明書から計算されたハッシュと等しくなる項目が存在し検索できたと判断する。仮に、検証を行いたい電子証明書のハッシュが543210・・・FEDCであったならば、図7に示される状態管理テーブルに記載される電子証明書識別情報は702と703であり、それぞれAB−CD−EF・・・00−11と22−33−44・・・AA−CCであり、543210・・・FEDCではないので、電子証明書から計算されたハッシュと等しくなる項目は存在せず、検索できなかったと判断する。
ステップ20204において、電子証明書から計算されたハッシュと等しくなる項目が状態管理テーブル内から検索できなかった場合はステップ20202へ進む。ステップ20202以降のステップは、上記ステップ20202以降のステップと等しい動作を行い、過去のある電子署名処理時刻における電子証明書の有効性の検証は失敗としてステップを終了する。
ステップ20204において、電子証明書から計算されたハッシュと等しくなる項目が状態管理テーブル内から検索できた場合は、ステップ20205へ進む。ステップ20205では、CRL検索プログラム1005を用いて電子証明書の有効性の検証を行いたい過去のある電子署名処理時刻よりも後に電子署名処理が行われているかどうかを調べる。例えば、電子証明書のハッシュがABCDEF・・・0011である電子証明書で、図7に示すような情報が記憶される状態管理テーブルであった場合を仮定する。この時、過去に行った電子署名処理として200X/7/30に行った電子署名処理時刻704における電子証明書の有効性検証を行いたかったとする。その場合は、200X/7/30の電子署名処理時刻704の後に、200X/8/4における電子署名処理時刻705と200X/8/29における電子署名処理時刻706が存在するので、検証したい電子署名処理時刻よりも後に電子署名処理が行われていると判断する。仮に、過去に行った電子署名処理として200X/8/29の電子署名処理時刻706における電子証明書の有効性検証を行いたかった場合は、状態管理テーブル内に200X/8/29以降の電子署名処理時刻情報が記載されていないので、検証したい電子署名処理時刻よりも後に電子署名処理が行われていないと判断する。
ステップ20205において、過去のある電子署名処理時刻よりも時系列上で後に電子署名処理が行われていた場合は、ステップ20206へ進む。ステップ20206では、CRL検索プログラム1005を用いて、CRL保持部413に保持されるCRLの中に過去のある電子署名処理時刻における電子証明書の有効性検証を行うことができるCRLがあるかどうかを検索する。具体的には、状態管理テーブルに記載される検証を行いたい過去のある電子署名処理時刻におけるCRL保存名と、その電子署名処理時刻より後で行われた電子署名処理時におけるCRL保存名が異なるかどうかを判断する(CRL保存名が異なれば、後の電子署名時に保持したCRLは、検証を行いたい電子署名処理時のCRLの後に更新されたものであるため)。例えば、電子証明書から計算されるハッシュがABCDEF・・・0011であり、図7に示すように状態管理テーブルが記憶されていたと仮定する。この時、200X/7/30における電子署名処理時における電子証明書の検証を行いたかった場合は、200X/7/30において取得しCRL保持部413に記憶したCRLのCRL保存名707は3F−5A−・・・−1C_200X_07_30.crlである。そして、200X/7/30より後に電子署名処理は200X/8/4と200X/8/29に行われており、そのどちらの電子署名処理時に取得され保存されたCRLのCRL保存名(708〜709)もAC−96−・・・−3D_200X_08_29.crlであり、3F−5A−・・・−1C_200X_07_30.crlとは異なる。そのため、この場合は検証したい電子署名処理時刻よりも後の電子署名処理時刻のCRL保存名においてCRL保存名が異なるCRLがあると判断する。仮に、検証したい電子署名処理時刻が200X/8/4であった場合は、200X/8/29に電子署名処理が行われてているものの、200X/8/4時点でのCRL保存名708と、200X/8/29時点でのCRL保存名が同じであるため、検証したい電子署名処理時刻よりも後の電子署名処理時刻のCRL保存名においてCRL保存名が異なるCRLは存在しないと判断する
ステップ20206において、CRL保存名が異ならない場合は、ステップ20207へ進む。
ステップ20207では、ステップS206において検証を行いたい電子署名処理時刻におけるCRL保存名707と異なると判断されたCRL保存名708を用いて、CRL取得プログラム1003を用いて記憶装置内のCRL保持部413から保持されていたCRLを取得する。ステップ20207で保持されていたCRLを取得したら、ステップ20208へ進む。
ステップ20208では、CRL有効性判断プログラム1006を用いて、保持されていたCRLが有効であるかどうかを判断する(CAが発行する最新のCRLであるかどうかを判断する)。CRLが有効であるかどうかは、図6に示すCRLに記載される各項目の中で、CRL次回更新時刻604と時刻情報部406の時刻情報を比較し、時刻情報部406の時刻情報がCRL次回更新時刻604よりも時系列上で過ぎていた場合はCRLが無効である(古いものである)と判断し、過ぎていなければCRLは有効である(最新のものである)と判断する。
ステップ20208において、CRLが有効であると判断された場合は、ステップ20202へ進む。ステップ20202以降のステップは、上記ステップ20202以降のステップと等しい動作を行い、過去のある電子署名処理時刻における電子証明書の有効性の検証は失敗としてステップを終了する。
ステップ20208において、CRL更新時刻が過ぎていてCRLが無効であると判断された場合は、ステップ20209へ進む。ステップ20209では、CRL取得プログラム1003を用いて、電子証明書に記載されるCRL配布場所507から最新のCRLを取得する。ステップ20209で最新のCRLを取得した後、ステップ20210へ進む。
ステップ20210では、CRLを電子証明書に記載されるCRL配布場所507から取得していた場合に、電子証明書の有効期限を電子証明書有効性検証プログラム1004を用いて検証する(ステップS213とステップ20209からの場合)。もし、CRLを記憶装置部のCRL保持部413から取得していた場合は、何もせずにステップ20211へ進む(ステップ20212からの場合)。ステップ20210における電子証明書の有効期限検証は、電子証明書有効性検証プログラム1004を用いて、電子証明書内に記される電子証明書の有効期間が開始する時刻502と有効期間が終了する時刻503の二つの項目と時刻情報部406の時刻情報とを比較して、時刻情報部の時刻が時系列上において有効期間が開始する時刻よりも前もしくは有効期間が終了する時刻よりも後であった場合には有効期限外としてみなし、そうでない場合は電子証明書が有効期限内であると判断する。
ステップ20210において、電子証明書が有効期限外であると判断された場合は、ステップ20202へ進む。ステップ20202以降のステップは、上記ステップ20202以降のステップと等しい動作を行い、過去のある電子署名処理時刻における電子証明書の有効性の検証は失敗としてステップを終了する。
ステップ20210において、電子証明書が有効期限内であると判断された場合は、ステップ20211へ進む。ステップ20211では、電子証明書有効性検証プログラム1004を用いて、取得したCRLによる過去のある電子署名処理時刻における電子証明書の有効性の検証を行う。ステップ20211における電子証明書の有効性の検証は、取得したCRLに記される失効した電子証明書の識別情報の項目(605~607)の中に、電子署名に用いた電子証明書の識別情報505が記されている場合には電子証明書が失効していると判断し、そうでない場合は電子証明書が有効であると判断する。電子証明書の有効性の検証が終了すれば、過去のある電子署名処理時刻における電子証明書の有効性の検証のステップを終了する。
ステップ20206において、CRL保存名が異なる場合は、ステップ20212に進む。ステップ20212では、CRL取得プログラム1003を用いて、CRL保持部413からステップ20206において異なると判断されたCRL保存名に一致するCRLを取得する。ステップ20212でCRL保持部413からCRLを取得した後、ステップ20210へ進む。ステップ20210以降のステップは、上記ステップ20210以降のステップと等しい動作を行い、過去のある電子署名処理時刻における電子証明書の有効性の検証のステップを終了する。
ステップ20205において、過去のある電子署名処理時刻よりも時系列上で後に電子署名処理が行われていなかった場合は、ステップ20213へ進む。ステップ20213では、CRL取得プログラム1003を用いて、電子証明書に記載されるCRL配布場所507から最新のCRLを取得する。ステップ20213で最新のCRLを取得した後、ステップ20210へ進む。ステップ20210以降のステップは、上記ステップ20210以降のステップと等しい動作を行い、過去のある電子署名処理時刻における電子証明書の有効性の検証のステップを終了する。
ここで、電子証明書管理装置401において保持される電子証明書がある一定期間後(猶予期間)に有効期限が過ぎてしまう場合に出力装置部405に猶予期間後に有効期限が切れることを表示する動作について、図10に沿って説明する。
図10は本発明に係る電子証明書管理装置を適用した電子証明書管理装置において、電子署名処理動作を行った後に、猶予期間後に有効期限が切れてしまうような電子証明書が存在した場合にそのことを検出し、出力装置部405を利用して表示する動作(以降、有効期限期間検出動作と称する)を行うフローチャートである。電子証明書管理装置401は前述した電子署名処理時のステップ20112のステップが終了した後に、有効期限期間検出動作のステップを開始する。
有効期限期間検出動作のステップが開始すると、ステップ20301に進む。ステップ20301では、状態管理テーブル管理プログラム1008を用いて、状態管理テーブル保持部414に状態管理テーブルが存在するかどうかを判断する。
ステップ20301において、状態管理テーブルが存在しないと判断された場合は、有効期限期間検出動作のステップを終了する。
ステップ20301において、状態管理テーブルが存在すると判断された場合は、ステップ20302へ進む。ステップ20302では、状態管理テーブル管理プログラム1008を用いて、状態管理テーブル内の電子証明書識別情報記憶領域に電子証明書識別情報の記載があるかどうかを判断する。例えば、図7のように状態管理テーブルに電子証明書識別情報としてAB−CD−EF・・・00−11の項目702と22−33−44・・・AA−CCの項目703が存在した場合は電子証明書識別情報の記載があると判断する。
ステップ20302において、電子証明書識別情報の記載がないと判断された場合は、有効期限期間検出動作のステップを終了する。
ステップ20302において、電子証明書識別情報の記載があると判断された場合は、ステップ20303へ進む。ステップ20303では、状態管理テーブル管理プログラム1003を用いて、状態管理テーブルの電子証明書識別情報に対応している猶予期間情報が存在するかどうかを判断する。例えば、図7に示す状態管理テーブルにおいて、電子証明書識別情報がAB−CD−EF・・・00−11である項目702に対応する猶予期間情報711は62であり、猶予期間情報が存在すると判断する。仮に電子証明書識別情報が22−33−44・・・AA−CCである項目703であった場合は、対応する猶予期間情報715は28となる。
ステップ20303において、電子証明書識別情報に対応する猶予期間情報が存在しないと判断された場合は、ステップ20304へ進む。ステップ20304では、電子証明書識別情報に対応する最後の電子署名処理時刻におけるCRL保存名から、CRL取得プログラム1003を用いてCRL保持部413に保持されるCRLを取得する。例えば、図7に示すように状態管理テーブルが記載されていた場合に、電子証明書識別情報AB−CD−EF・・・00−11における電子署名処理時刻(704〜706)は3つあるが、この場合最後の電子署名処理時刻とは一番下に記載される電子署名処理時刻706が最後に行われた電子署名処理時刻であり、最後に行われた電子署名処理時刻706におけるCRL保存名709からCRL保持部413に保持されるCRLを取得する。
ステップ20304において、記憶装置部413からCRLを取得した後、ステップ20305へ進む。ステップ20305では、電子証明書有効期限期間検出プログラム1011を用いて、取得したCRLに記される項目の中で、CRLの次回更新時刻604の時刻情報とCRLの有効期間開始時刻603の時刻情報の差をとり、CRL発行間隔を計算する。そして、計算されたCRL発行間隔に対して2倍の期間を猶予期間として計算する。例えば、図7の状態管理テーブルに記載されるCRL保存名711で示されるAC−96−・・・−3D_200X_08_29.crlに記されるCRLの有効期間開始時刻603が200X/8/1であり、CRLの次回更新時刻604が200X/9/1であったならば、時刻情報の差をとり31日がCRL発行間隔となる。そしてCRL発行間隔が31日なので、猶予期間はその期間を2倍して62日が猶予期間情報となる。ステップ20305において猶予期間の計算をした後、ステップ20306へ進む。
ステップ20306では、計算された猶予期間の時刻情報を状態管理テーブル管理プログラム1008を用いて状態管理テーブルの猶予期間情報記憶領域に記憶する。例えば、図7において、電子証明書識別情報がAB−CD−EF・・・00−11で示される電子証明書において、猶予期間情報が記憶されていなかったと仮定すると猶予期間情報記憶領域710の位置に猶予期間という文字列を記憶し、猶予期間情報記憶領域711の位置に計算された猶予期間62を記憶する。ステップ20306において猶予期間情報を状態管理テーブルに記憶した後、ステップ20307へ進む。
ステップ20307では、計算された猶予期間情報もしくは状態管理テーブルから取得した猶予期間情報を用いて、電子証明書有効期限期間検出プログラム1011を用いて電子証明書が猶予期間後に有効期限が過ぎてしまうかどうかを判断する。具体的には、猶予期間と時刻情報部406の時刻情報を加算した結果が、電子証明書に記載される証明書の有効期間終了時刻503の時刻情報を過ぎていれば猶予期間後に電子証明書の有効期限が過ぎてしまうと判断し、そうでない場合は有効期限が過ぎないと判断する。例えば、図7の状態管理テーブルにおいて電子証明書識別情報702がAB−CD−EF・・・00−11で表される電子証明書で200X/8/4に電子署名処理を行った場合に、電子証明書の有効期間終了時刻503が200X/9/1であった場合は、電子署名処理時刻200X/8/4に対して猶予期間の62日を加算して200X/10/5となるので、電子証明書の有効期間終了時刻503より過ぎてしまっているので、電子証明書の有効期限が過ぎてしまうと判断する。仮に、同様の条件で、電子証明書の有効期間終了時刻503のみが200X/12/31であった場合は、有効期間終了時刻503を過ぎないので、電子証明書の有効期限が過ぎないと判断する。
ステップ20307において、猶予期間後に電子証明書の有効期限が過ぎてしまうと判断された場合は、ステップ20308へ進む。ステップ20308では、入出力装置制御プログラム1010を用いて、出力装置部405に猶予期間後に電子証明書の有効期限が過ぎてしまうことを表示する。猶予期間後に有効期限が過ぎてしまうことを表示したらステップ20309へ進む。
ステップ20309では、状態管理テーブル管理プログラム1008を用いて、状態管理テーブルに記載される電子証明書識別情報の中で、有効期限期間検出動作を行っていないものが存在するかどうかを判断する。具体的には、有効期限期間検出動作を行った電子証明書識別情報の次の電子証明書識別情報が存在するかどうかを判断する。例えば、図7に示す状態管理テーブルのように記載されていると仮定すると、AB−CD−EF・・・00−11と記載される電子証明書識別情報702の有効期限検出動作をこれまでのステップで行っていれば、次の電子証明書識別情報として22−33−44・・・AA−CCと記載される電子証明書識別情報703があるかどうかを判断する。この場合は電子証明書識別情報703があるので、次の電子証明書識別情報が存在すると判断する。仮にこれまでのステップが22−33−44・・・AA−CCと記載される電子証明書識別情報703であった場合は、次の電子証明書識別情報703は存在しないので、次の電子証明書識別情報は存在しないと判断する。
ステップ20309において、次の電子証明書識別情報が存在しないと判断された場合は、有効期限期間検出動作のステップを終了する。
ステップ20309において、次の電子証明書識別情報が存在すると判断された場合は、ステップ20310を経由して、ステップ20303へ進む。ステップ20310は有効期限期間検出動作における繰り返し処理が開始するステップ点であり、状態管理テーブルに記載される電子証明書識別情報の数だけ繰り返し経由される。ステップ20303以降は、上記ステップ20303以降のステップと等しい動作を行う。
ステップ20307において、猶予期間後に電子証明書の有効期限が過ぎないと判断された場合は、ステップ20309へ進む。ステップ20309以降は、上記ステップ20309以降のステップと等しい動作を行う。
ステップ20303において、電子証明書識別情報に対応する猶予期間情報が存在すると判断された場合は、ステップ20311へ進む。ステップ0311では、状態管理テーブルに記載される電子証明書識別情報に対応した猶予期間を取得する。例えば、図7に示すような状態管理テーブルであったと仮定すると、AV−CD−EF・・・00−11で示される電子証明書識別情報702であった場合は、猶予期間情報711として62を取得する。22−33−44・・・AA−CCで示される電子証明書識別情報703であった場合は、猶予期間情報715として24を取得する。ステップ20311において、猶予期間情報を取得した後、ステップ20307へ進む。ステップ20307以降は、上記ステップ20307以降のステップと等しい動作を行う。
以上のように、本実施例1によれば、上記の構成により電子署名処理毎に電子証明書管理装置内に電子証明書に対応する最新のCRLが保存される。もし電子証明書管理装置内にすでに最新のCRLが存在すればCRLは取得されない。また、CRLを保存した際のCRL保存名を電子証明書毎及びCRLを保存した日時毎に状態管理テーブルに記憶する。そのため、電子証明書管理装置は電子署名処理毎の電子証明書に対応した最新のCRLを容易に検索可能な状態で保持することができる。
また、従来手法のように電子署名処理毎に第一のCRL及び第二のCRLを取得するのではなく、電子署名処理毎にその電子署名処理時刻における最新のCRLを取得もしくは最新のCRLと同等のCRLが何であるかを状態管理テーブルにより把握して、電子証明書管理装置内にCRLを保持しておく事により、後の時刻においてある電子署名処理時における電子証明書の有効性検証を行うためのCRLの取得回数を軽減する事ができる。取得されるCRLの回数が軽減されるため、CRL保持部に必要とされる記憶領域量は軽減される。さらには、電子署名処理毎にのみCRLを取得するので、装置を常時起動している必要はなく電力消費量の軽減にもつながる。さらには、実施例1では、従来手法のようにCRLが新しく更新される事を検出し装置が自発的にもしくは人的に装置を起動させる必要はないので、自発的に装置を起動させるもしくは人的に装置を起動させるためのコストが必要ではなくなる。
なお、実施例1では電子証明書に関する電子処理として電子署名処理を例にあげるが、電子証明書の情報を用いた電子処理ならば電子証明書内に記憶される情報の参照や、電子証明書内に記憶される項目を用いた電子処理、電子証明書を用いた暗号化処理でもよい。また、実施例1では電子証明書の識別情報の作成方法として電子証明書からハッシュを計算して電子証明書の識別情報として用いているが、電子証明書を特定する事ができれば、電子証明書内に記憶される項目を用いてもよいし、電子証明書管理装置内で生成されるただ一度のみ生成される乱数値でもよいし、電子証明書管理装置外で生成されるただ一度のみ生成される電子データの値でもよいし、電子証明書管理装置外で生成されるただ一度のみ生成される電子データから電子証明書管理装置内で演算を行って修正を加えた電子データでもよい。
また、実施例1ではCRL識別情報の作成方法としてCRLからハッシュを計算し、電子処理を行った日付とハッシュから作成した文字列を作成してCRLを保持する際のCRL保存名とし、CRL保存名をCRL識別情報として用いているが、CRLを特定する事ができればCRLの識別情報はCRL内に記憶される項目でもよいし、電子証明書管理装置内で生成されるただ一度のみ生成される乱数値でもよいし、電子証明書管理装置外で生成されるただ一度のみ生成される電子データの値でもよいし、電子証明書管理装置外で生成されるただ一度のみ生成される電子データから電子証明書管理装置内で演算を行って修正を加えた電子データでもよい。
また、電子証明書が失効しているかどうかを検証するために、実施例1ではCAから最新のCRLを取得しているが、そのCRLが入手可能な最新のCRLであれば、CRLの取得先は電子証明書管理装置に接続しているネットワークに接続されるデータベースでもよいし、電子証明書管理装置の入力装置部から直接CRLを入力してもよい。また、実施例1では、電子証明書管理装置内の記憶装置部に取得したCRLを記憶する領域、電子証明書を記憶する領域、状態管理テーブルを記憶する領域を有しているが、これらを記憶する領域は電子証明書管理装置の外、例えばネットワークを通じて外部のデータベースに記憶されてもよいし、電子証明書管理装置内の入力装置部によってそれら情報を入力する事が可能な外部記憶媒体でもよい。
また、実施例1では、時刻を時系列上において比較する際に、電子証明書管理装置内の時刻情報部にて保持される時刻情報を用いて比較しているが、電子証明書管理装置外において管理される時刻、例えばネットワークを通じて時刻配信局からの時刻情報を用いてもよいし、電子証明書管理装置内の入力装置部によってそれら情報を入力する事が可能な外部記憶媒体でもよいし、電子証明書管理装置内の記憶装置部に記憶される電子データに対して電子処理を行って導き出される時刻でもよい。
本発明にかかる電子証明書管理装置は、電子証明書を用いて電子書名や暗号化などの電子処理を複数回行っていた場合に、ある電子処理時における電子証明書の有効性を電子処理時刻以後に検証可能とするものであり、電子証明書管理装置を常時起動している必要はないため電力消費量が軽減されており、装置に必要とされる記憶領域の資源も軽減され、従来に比べてCRLの取得回数が軽減されるためネットワークへのアクセスが軽減されるという特徴をもっている。そのため、本発明は低消費電力が要求され、記憶領域の資源が限られ、ネットワークへのアクセスが少ない事が望ましい機器に有用であるといえる。たとえば、電子証明書を利用する携帯電話や組み込み機器などへの利用が可能である。
電子処理時の電子証明書とCRLの関係を説明する図 従来手法における電子証明書検証のためのCRL取得方法を説明する図 本発明における電子証明書検証のためのCRL取得方法を説明する図 実施例1の全体構成を説明する図 RFC3280に基づく電子証明書の構成を説明する図 RFC3280に基づくCRLの構成を説明する図 状態管理テーブルの構成を説明する図 電子署名処理のフローチャート 電子証明書の有効性検証処理のフローチャート 電子証明書有効期限期間検出処理のフローチャート
符号の説明
401 電子証明書管理装置
402 ネットワーク
403 認証局(CA)
404 入力装置部
405 出力装置部
406 時刻情報部
407 通信部
408 プログラム制御部
409 メモリ部
410 記憶装置部
411 演算装置部
412 電子証明書保持部
413 CRL保持部
414 状態管理テーブル保持部
501 電子証明書
501 電子証明書の有効期間開始時刻
501 電子証明書の有効期間終了時刻
501 電子証明書の発行者
501 電子証明書の識別番号
501 電子証明書の発行先
501 電子証明書CRL配布場所
501 電子証明書の公開鍵
501 電子証明書の発行者による署名
501 電子証明書の秘密鍵
601 CRL
601 CRLの発行者
601 CRLの有効期間開始時刻
601 CRLの次回更新時刻
601 CRLに記される失効した電子証明書識別情報1
601 CRLに記される失効した電子証明書識別情報2
601 CRLに記される失効した電子証明書識別情報3
701 状態管理テーブル
702 電子証明書識別情報記憶領域1
703 電子証明書識別情報記憶領域2
704 電子処理時刻記憶領域1
705 電子処理時刻記憶領域2
706 電子処理時刻記憶領域3
707 CRL識別情報記憶領域1
708 CRL識別情報記憶領域2
709 CRL識別情報記憶領域3
710 猶予期間情報記憶領域1
711 猶予期間情報記憶領域2
712 電子処理時刻記憶領域4
713 CRL識別情報記憶領域4
714 猶予期間情報記憶領域3
715 猶予期間情報記憶領域4

Claims (4)

  1. 電子署名や暗号化通信の際の認証に用いられる電子証明書を発行するとともに失効した電子証明書の情報を記述した電子証明書失効リストを配布する認証局とネットワークを介して通信する通信手段と、前記認証局から発行された電子証明書を記憶する電子証明書保持手段と、前記電子証明書を用いた電子処理を実行する電子処理実行手段と、前記電子処理実行時に前記通信手段により前記認証局から電子証明書失効リストを取得して記憶するCRL保持手段と、第一の電子処理の後に行なわれる第二の電子処理時に取得した電子証明書失効リストによって前記第一の電子処理に用いられた電子証明書の有効性を検証する電子証明書有効性検証手段とを備えたことを特徴とする電子証明書管理装置。
  2. 電子証明書を用いて電子処理を行った時刻である電子処理時刻とその電子証明書の識別情報と当該電子処理時に取得して記憶した電子証明書失効リストの識別情報とを電子処理毎に記憶する状態管理テーブルを有し、前記状態管理テーブルに前記第一の電子処理に用いられた電子証明書が記憶されていて、かつ、前記第一の電子処理に対応する電子証明書失効リストと前記第一の電子処理の電子処理時刻よりも後の時刻に行われた前記第二の電子処理に対応する電子証明書失効リストとが異なる場合に、前記電子証明書有効性検証手段は、前記第二の電子処理時に取得した電子証明書失効リストによって前記第一の電子処理に用いられた電子証明書の有効性を検証することを特徴とする請求項1記載の電子証明書管理装置
  3. 前記第一の電子処理に用いられた電子証明書が、当該電子証明書内に記される電子証明書の有効期限内であるとき、前記電子証明書有効性検証手段による有効性の検証を行なうことを特徴とする請求項1または請求項2記載の電子証明書管理装置
  4. 前記電子証明書有効性検証手段は、前記第二の電子処理時に取得した電子証明書失効リストに前記第一の電子処理時に用いられた電子証明書の識別情報が記されているかどうかを判断し、記されていない場合に前記第一の電子処理時に用いられた電子証明書が有効であるとすることを特徴とする請求項1から請求項3のいずれかに記載の電子証明書管理装置
JP2006245226A 2006-09-11 2006-09-11 電子証明書管理装置 Expired - Fee Related JP4858027B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006245226A JP4858027B2 (ja) 2006-09-11 2006-09-11 電子証明書管理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006245226A JP4858027B2 (ja) 2006-09-11 2006-09-11 電子証明書管理装置

Publications (3)

Publication Number Publication Date
JP2008067264A JP2008067264A (ja) 2008-03-21
JP2008067264A5 JP2008067264A5 (ja) 2009-04-16
JP4858027B2 true JP4858027B2 (ja) 2012-01-18

Family

ID=39289524

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006245226A Expired - Fee Related JP4858027B2 (ja) 2006-09-11 2006-09-11 電子証明書管理装置

Country Status (1)

Country Link
JP (1) JP4858027B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101782971B1 (ko) 2009-03-13 2017-09-28 김형운 여권보관 서비스 방법 및 서비스 서버
WO2016147568A1 (ja) * 2015-03-18 2016-09-22 パナソニックIpマネジメント株式会社 通信装置、相手方通信装置及び通信プログラム
US20230160591A1 (en) * 2021-11-19 2023-05-25 Johnson Controls Tyco IP Holdings LLP Building management system with expired operational certificate recovery

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3952121B2 (ja) * 2000-07-03 2007-08-01 日本電信電話株式会社 署名検証装置及び署名検証方法、プログラム記録媒体
JP2002342516A (ja) * 2001-05-18 2002-11-29 Nec System Technologies Ltd 証明書失効リスト管理方式、証明書失効リスト管理方法および証明書失効リスト管理プログラム
JP2003152715A (ja) * 2001-11-16 2003-05-23 Nippon Telegr & Teleph Corp <Ntt> 失効証明証情報取得方法及び装置及び失効証明証情報取得プログラム及び失効証明証情報取得プログラムを格納した記憶媒体
JP2005094365A (ja) * 2003-09-17 2005-04-07 Hitachi Ltd 証明書パス管理方法及び情報処理装置
JP3894181B2 (ja) * 2003-10-10 2007-03-14 株式会社日立製作所 公開鍵証明書検証の高速化方法、および装置
JP2006074425A (ja) * 2004-09-02 2006-03-16 Mitsubishi Electric Corp 公開鍵証明書検証装置及び公開鍵証明書検証方法及びプログラム

Also Published As

Publication number Publication date
JP2008067264A (ja) 2008-03-21

Similar Documents

Publication Publication Date Title
EP3639465B1 (en) Improved hardware security module management
EP3639466B1 (en) Expendable cryptographic key access
JP5411122B2 (ja) 情報処理装置
JP2016032247A (ja) 認証局装置、認証局プログラム、及び認証局運用方法
US8635449B2 (en) Method of validation public key certificate and validation server
US20070055881A1 (en) Method for securely exchanging public key certificates in an electronic device
JP5488596B2 (ja) 署名装置、署名検証装置、匿名認証システム、署名方法、署名認証方法およびそれらのプログラム
JP2006135465A (ja) 文書管理装置、および文書管理方法、並びにコンピュータ・プログラム
CN110942302A (zh) 一种区块链凭证撤销、验证方法、签发节点、验证节点
JP2007041678A (ja) ソフトウエア使用管理サーバ装置、ソフトウエア使用管理システム、ソフトウエア使用管理方法及びプログラム
JP4858027B2 (ja) 電子証明書管理装置
JP5414425B2 (ja) 電子署名検証装置
JP2011221999A (ja) コンテンツ管理方法、システム、装置、プログラム、記録媒体
JP2004248045A (ja) 電子署名システムおよび電子署名プログラム
JP2009232002A (ja) 電子署名システム、署名装置、検証装置、及びプログラム
WO2014038034A1 (ja) 情報処理システム,情報処理方法,プログラム
JP4655613B2 (ja) プログラム実行装置及びプログラム実行方法
JP4663292B2 (ja) 電子文書保存管理システム、電子文書保存管理方法、および電子文書保存管理プログラム
JP5473518B2 (ja) 電子署名検証装置
JP2008219787A (ja) 鍵管理システム、鍵管理プログラムおよびicカード
JP2014505419A (ja) トレースデバイスおよびトレース方法
JP2004320494A (ja) 電子署名付き文書検証装置、電子署名付き文書検証方法、電子署名付き文書検証プログラム及びプログラム記録媒体
CN113139209A (zh) 一种基于原子性签名的可验证凭据实现方法和系统
JP5832269B2 (ja) タイムスタンプ付与装置
JP6180355B2 (ja) 署名検証装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090302

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090302

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090414

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111004

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111017

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141111

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees