(57)【要約】【課題】階層関係にある複数の電子証明書を用いた認証処理を迅速に行う。【解決手段】揮発性メモリ１３と、複数の電子証明書ファイル５を記憶した不揮発性メモリ１１と、起動時に不揮発性メモリ１１を参照して、それぞれの電子証明書ファイル５の階層関係を揮発性メモリに格納する構造体生成部１５と、揮発性メモリ１３上の電子証明書ファイルの階層関係に基づいて、所望の電子証明書ファイル５を検索し、検索した電子証明書ファイルを用いて認証を行う認証処理部１７とを備える。【選択図】図１
2008177949.tif 000002
【特許請求の範囲】
【請求項１】
揮発性メモリと、
複数の電子証明書ファイルを記憶した不揮発性メモリと、
起動時に前記不揮発性メモリを参照して、それぞれの電子証明書ファイルの階層関係を前記揮発性メモリに格納する手段と、
前記揮発性メモリ上の前記電子証明書ファイルの階層関係に基づいて、所望の電子証明書ファイルを検索する手段と、
前記検索手段が検索した電子証明書ファイルを用いて認証を行う認証手段とを備える認証装置。
【請求項２】
前記電子証明書ファイルの階層関係は、電子証明書ファイルを発行したＣＡ（Ｃｅｒｔｉｆｉｃａｔｅ  Ａｕｔｈｏｒｉｔｙ）がルートＣＡに認証された中間ＣＡである場合における、当該中間ＣＡから前記ルートＣＡまでの階層関係であることを特徴とする請求項１記載の認証装置。
【請求項３】
前記中間ＣＡが認証するサーバから所定のデータをダウンロードしたとき、前記ダウンロードデータとともにダウンロードされた前記中間ＣＡが発行した電子証明書ファイルを、前記不揮発性メモリへ格納する自動インストール手段をさらに備え、
前記構造体生成手段は、自動インストール手段により取得された電子証明書ファイルを、前記揮発性メモリ上のリスト構造体へ追加することを特徴とする請求項２記載の認証装置。
【請求項４】
前記自動インストール手段によりインストールされた電子証明書ファイルには、ユーザによって明示的にインストールされた電子証明書ファイルと識別するための識別情報が付加されていることを特徴とする請求項３記載の認証装置。
【請求項５】
揮発性メモリ、及び複数の電子証明書ファイルを記憶した不揮発性メモリを備えた認証装置が行う認証方法であって、
前記認証装置の起動時に前記不揮発性メモリを参照して、それぞれの電子証明書ファイルの階層関係を前記揮発性記憶部に格納するステップと、
前記揮発性メモリ上の前記電子証明書ファイルの階層関係を参照して、所望の電子証明書ファイルを検索するステップと、
前記検索した電子証明書ファイルを用いて認証を行うステップとを有する認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル署名を用いた認証技術に関し、特に、中間ＣＡが発行した電子証明書を利用して認証するときの処理速度を向上させるための技術に関する。
【背景技術】
【０００２】
電子証明書を発行する認証局（以下、ＣＡ（Ｃｅｒｔｉｆｉｃａｔｅ  Ａｕｔｈｏｒｉｔｙ）と称する）には、信頼できるＣＡとして扱われるルートＣＡと、ルートＣＡから認証される中間ＣＡとがある。このとき、中間ＣＡは、それ単独では信頼できるＣＡとはみなされず、ルートＣＡによって証明されることによって、信用できるＣＡとして扱われる。つまり、ルートＣＡと中間ＣＡの間には、階層関係（親子関係）が成り立つ。
【０００３】
また、中間ＣＡは、さらに別の中間ＣＡに対して認証を与えることができる。この場合、ルートＣＡから見ると、中間ＣＡが複数階層を構成する。
【０００４】
そして、例えば図５に示すように、中間ＣＡが発行した電子証明書２００には、ルートＣＡにより署名された署名データ２１０が付されている。従って、例えば、中間ＣＡの署名データ３１０が付されているダウンロードデータ３００の認証を行うときは、まず、ルートＣＡの電子証明書１００で中間ＣＡの電子証明書２００の署名データ２１０の認証を行い、その後、中間ＣＡの電子証明書２００でダウンロードデータ３００の署名データ３１０を認証する必要がある。
【特許文献１】特開２００５−１２４６９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このように、中間ＣＡによって署名されたダウンロードデータを認証し、その正当性を確認するためには中間ＣＡの電子証明書と、その親の電子証明書（この例ではルートＣＡ）が必要になる。つまり、複数の電子証明書が必要となる。
【０００６】
ここで、電子証明書が必要になる都度、電子証明書ファイルをダウンロードすると、このダウンロードに要する時間の分だけ認証処理に時間がかかる。このため、電子証明書ファイルは、ユーザが使用するパソコンなどの認証装置の不揮発性メモリに予め保持しておくことが一般的である。そこで、不揮発性メモリには多数の電子証明書ファイルが存在することになる。従って、中間ＣＡによって署名されたダウンロードデータを認証する場合、必要となる電子証明書ファイルを迅速に検索する必要がある。
【０００７】
そこで、本発明の目的は、階層関係にある複数の電子証明書を用いた認証処理を迅速に行うことである。
【課題を解決するための手段】
【０００８】
本発明の一実施態様に従う認証装置は、揮発性メモリと、複数の電子証明書ファイルを記憶した不揮発性メモリと、起動時に前記不揮発性メモリを参照して、それぞれの電子証明書ファイルの階層関係を前記揮発性メモリに格納する手段と、前記揮発性メモリ上の前記電子証明書ファイルの階層関係に基づいて、所望の電子証明書ファイルを検索する手段と、前記検索手段が検索した電子証明書ファイルを用いて認証を行う認証手段とを備える。
【０００９】
これにより、階層関係を有する電子証明書ファイルへ迅速にアクセスできるようになり、中間ＣＡにより証明されるデータの認証を高速に行うことができるようになる。
【００１０】
好適な実施形態では、前記電子証明書ファイルの階層関係は、電子証明書ファイルを発行したＣＡ（Ｃｅｒｔｉｆｉｃａｔｅ  Ａｕｔｈｏｒｉｔｙ）がルートＣＡに認証された中間ＣＡである場合における、当該中間ＣＡから前記ルートＣＡまでの階層関係であってもよい。
【００１１】
好適な実施形態では、前記中間ＣＡが認証するサーバから所定のデータをダウンロードしたとき、前記ダウンロードデータとともにダウンロードされた前記中間ＣＡが発行した電子証明書ファイルを、前記不揮発性メモリへ格納する自動インストール手段をさらに備え、前記構造体生成手段は、自動インストール手段により取得された電子証明書ファイルを、前記揮発性メモリ上のリスト構造体へ追加するようにしてもよい。
【００１２】
好適な実施形態では、前記自動インストール手段によりインストールされた電子証明書ファイルには、ユーザによって明示的にインストールされた電子証明書ファイルと識別するための識別情報が付加されていてもよい。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の一実施形態に係る認証システムについて、図面を参照して説明する。
【００１４】
図１は、本実施形態に係る認証システムの構成図である。
【００１５】
本システムは、デジタル署名を電子証明書を用いて認証する認証装置１を有する。認証装置１は、ネットワークを介してサーバ３に接続されている。
【００１６】
認証装置１は、汎用的なコンピュータシステムにより構成され、以下に説明する認証装置１の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【００１７】
認証装置１は、不揮発性メモリ１１と、揮発性メモリ１３と、構造体生成部１５と、認証処理部１７と、インストール処理部１９とを備える。
【００１８】
不揮発性メモリ１１には、複数の電子証明書ファイル５が記憶されている。電子証明書ファイル５のインストールは、インストール処理部１９により行われる。
【００１９】
インストール処理部１９は、不揮発性メモリ１１に電子証明書ファイル５をインストールする。このインストールには、ユーザ自らが行うインストール、つまりユーザの明示的な承認によって行われるインストールと、サーバ３から取得して自動的に行われるインストール、つまりユーザの明示的な承認なしで行われるインストールとがある。
【００２０】
例えば、中間ＣＡにより認証されるサーバ３から所定のデータをダウンロードしたとき、このデータとともに、中間ＣＡが発行した電子証明書ファイルがダウンロードされることがある。インストール処理部１９は、この電子証明書ファイルを不揮発性メモリ１１へ自動インストールする。
【００２１】
インストール処理部１９が自動インストールを行ったときは、ユーザがインストールした電子証明書ファイルと区別するための識別情報を付加するようにしてもよい。これにより、自動インストールされた電子証明書ファイルを削除することが可能となる。
【００２２】
揮発性メモリ１３には、不揮発性メモリ１１に記憶されている電子証明書５に関する証明書情報をリスト構造で保持するリスト構造体６が記憶される。揮発性メモリ１３の記憶内容は、認証装置１の電源がオフになり、揮発性メモリ１３への電流の供給がなくなれば消滅する。従って、リスト構造体６は、認証装置１が起動されるごとに生成される。
【００２３】
構造体生成部１５は、不揮発性メモリ１１に記憶されている電子証明書５の情報を取得して、揮発性メモリ１３上にリスト構造体６を生成する。構造体生成部１５は、認証装置１の起動時にリスト構造体６を生成する。さらに、構造体生成部１５は、新たな電子証明書ファイル５が不揮発性メモリ１１に追加されたときに、その追加された電子証明書に関する証明書情報をリスト構造体６に追加する。
【００２４】
ここで、図２を参照して、リスト構造体６について説明する。
【００２５】
リスト構造体６は、双方向リストにより、不揮発性メモリ１１に記憶されている各電子証明書についての証明書情報６０を記憶する。
【００２６】
各証明書情報６０のデータ構造を図３に示す。
【００２７】
証明書情報６０は、前の証明書情報への前ポインタ６１と、後ろの証明書情報への後ポインタ６２と、電子証明書ファイル５のファイル名６３と、電子証明書の有効期限６４と、電子証明書が証明する対象を示すＳｕｂｊｅｃｔ６５と、電子証明書の発行主体を示すＩｓｓｕｅｒ６６と、Ｉｓｓｕｅｒ６６が中間ＣＡの場合の親ＣＡの証明書情報６０への親ポインタ６７とを有する。
【００２８】
有効期限６４、Ｓｕｂｊｅｃｔ６５、及びＩｓｓｕｅｒ６６は、いずれも、電子証明書ファイル５内に記述されているものが設定される。
【００２９】
なお、ルートＣＡの電子証明書の場合、Ｓｕｂｊｅｃｔ６５およびＩｓｓｕｅｒ６６のいずれにも“ルートＣＡ”が設定される。また、ルートＣＡを親に持つ中間ＣＡ１の電子証明書の場合、Ｓｕｂｊｅｃｔ６５には“中間ＣＡ１”、Ｉｓｓｕｅｒ６６には“ルートＣＡ”が設定される。
【００３０】
ここで図２に戻ると、各証明書情報６０は、それぞれ、前ポインタ６１と後ポインタ６２により、双方向にリンクしているとともに、中間ＣＡ１の証明書情報６０ｂからルートＣＡの証明書情報６０ａへは、親ポインタ６７が張られている。つまり、親ポインタ６７は、電子証明書間の階層関係（親子関係）が表されている。
【００３１】
さらに、中間ＣＡ１が証明する中間ＣＡ２（つまり、中間ＣＡ１の子）があれば、中間ＣＡ２の証明書情報６０ｃから中間ＣＡ１の証明書情報６０ｂへ、親ポインタ６７が張られている。
【００３２】
これにより、前ポインタ６１または後ポインタ６２を用いてリストを辿らなくても、中間ＣＡの証明書情報６０ｂ、ｃからルートＣＡの証明書情報６０ａへ、親ポインタ６７により容易にアクセスできる。
【００３３】
再び図１を参照すると、認証処理部１７は、不揮発性メモリ１１に記憶されている電子証明書ファイル５を用いて、デジタル署名の認証を行う。その際、認証処理部１７は、まず、上述した揮発性メモリ１３のリスト構造体６を参照して、所望の電子証明書の証明書情報６０を検索する。特に、中間ＣＡのように「親」が存在する場合は、親ポインタ６７を辿って、親の電子証明書の証明書情報６０も、併せて検索する。そして、検索して取得した証明書情報６０の証明書ファイル名６３に基づいて電子証明書ファイル５を取得して、認証処理を行う。
【００３４】
次に、図４のフローチャートを用いて、揮発性メモリ１３上にリスト構造体６を生成する処理手順について説明する。
【００３５】
認証装置１が起動されたとき、あるいは、新たな証明書ファイルがインストールされたときに、以下の処理が行われる。
【００３６】
まず、構造体生成部１５が、不揮発性メモリ１１を参照して、ここに記憶されている電子証明書ファイルのファイル情報を生成し、揮発性メモリ１３のリストに追加する（Ｓ１１）。なお、このとき、有効期限が既に経過している電子証明書ファイルがあるときは、それについては証明書情報をリストに追加しない。
【００３７】
構造体生成部１５は、さらに、ステップＳ１１でリストに追加した証明書情報６０がルートＣＡのものであるか否かを判定する（Ｓ１２）。例えば、Ｓｕｂｊｅｃｔ６５及びＩｓｓｕｅｒ６６のいずれもが“ルートＣＡ”であれば、その証明書情報６０はルートＣＡのものであるので、ステップＳ１２ではこれを用いて判定する。
【００３８】
証明書情報６０がルートＣＡのものでないときは（Ｓ１２：Ｎｏ）、ステップＳ１１でリストに追加した証明書情報６０が中間ＣＡのものであるか否かを判定する（Ｓ１３）。例えば、Ｓｕｂｊｅｃｔ６５とＩｓｓｕｅｒ６６とが異なる場合、その証明書情報６０は中間ＣＡのものであるので、ステップＳ１３ではこれを用いて判定する。
【００３９】
証明書情報６０が中間ＣＡのものであれば（Ｓ１３：Ｙｅｓ）、親ポインタ６７を設定する（Ｓ１４）。例えば、対象となっている証明書情報６０のＩｓｓｕｅｒ６６に設定されているＣＡが、Ｓｕｂｊｅｃｔ６５に設定されている証明書情報６０に対してポインタを張る。
【００４０】
ステップＳ１２で証明書情報６０がルートＣＡのものであるときは（Ｓ１２：Ｙｅｓ）、ステップＳ１３，Ｓ１４をスキップする。ステップＳ１３で証明書情報６０が中間ＣＡのものでないときは（Ｓ１３：Ｎｏ）、ステップＳ１４をスキップする。
【００４１】
そして、不揮発性メモリ１１に記憶されているすべての証明書ファイルについて、証明書情報６０をリスト構造体６へ追加するまで、上記処理を繰り返し行う（Ｓ１５）。
【００４２】
これにより、認証装置１が起動しているときは、揮発性メモリ１３にリスト構造体６が保持されるので、認証処理部１７は、これを参照して所望の電子証明書ファイル５に容易にアクセスできるようになる。
【００４３】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【図面の簡単な説明】
【００４４】
【図１】本発明の一実施形態に係る認証システムの構成図である。
【図２】リスト構造体６の一例を示す。
【図３】証明書情報６０のデータ構造を示す。
【図４】揮発性メモリ１３上にリスト構造体６を生成する処理手順のフローチャートである。
【図５】ルートＣＡにより証明される中間ＣＡによって証明されるダウンロードデータを示す。
【符号の説明】
【００４５】
１…認証装置、３…サーバ、５…電子証明書ファイル、６…リスト構造体、１１…不揮発性メモリ、１３…揮発性メモリ、１５…構造体生成部、１７…認証処理部、１９…インストール処理部、６０…証明書情報。
【図１】
2008177949.tif 000003
【図２】
2008177949.tif 000004
【図３】
2008177949.tif 000005
【図４】
2008177949.tif 000006
【図５】
2008177949.tif 000007