説明

認証システム、認証装置、およびこれらの制御方法、ならびに制御プログラム

【課題】認証システムにおいて、他の機器が提供するサービスの利用等のために電子証明書の検証を行なう必要があるクライアント装置において当該電子証明書の検証ができない場合に、当該クライアント装置に、当該電子証明書の検証が成功したのと同様の効果を与えることができるようにする。
【解決手段】MFP(1)からCA(1)によってオンライン発行されたMFP(1)証明書を受信すると、MFP(2)は、当該電子証明書の検証に必要な処理の一部を、PC(1)に依頼する。PC(1)は、依頼を受けた処理を実行し、その結果をMFP(2)に送信する。なお、MFP(2)は、継続検証として、MFP(1)証明書の検証に必要な処理であって、自機でできない処理についてのみ、PC(1)に処理を依頼する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、認証システム、認証装置、およびこれらの制御方法、ならびに制御プログラムに関し、特に、オンラインで発行される電子証明書の認証を行なう、認証システム、認証装置、およびこれらの制御方法、ならびに制御プログラムに関する。
【背景技術】
【0002】
従来から、安全な通信環境を確保するために、通信相手を公開鍵電子証明書を利用して認証するための技術が種々開示されている。
【0003】
たとえば、特許文献1(特開2004−171274号公報)では、認証システムにおいて、複数のサービス機器で認証処理を分散する技術が開示されている。当該技術では、あるサービス機器が他のサービス機器によって提供されるサービスを利用する場合、当該あるサービス機器と接続を確立した認証装置が、上記他のサービス機器に代わって認証を行なう認証装置を検索し、検索結果として得られた認証装置に対して上記他のサービス機器へのアクセス要求を送信する。これに応じて、当該検索結果として得られた認証装置は、上記あるサービス機器が上記他のサービス機器にアクセス権限を有する場合に、上記他のサービス機器にアクセス要求を送信する。これに基づき、上記他のサービス機器は、有効期限等の制限を規定したトークンを発行する。上記あるサービス機器は、当該トークンを利用して、上記他のサービス機器が提供するサービスを利用する。
【0004】
また、特許文献2(特表2009-510978号公報)では、ホストデバイスとクライアントデバイスとの間で通信リンクが設定されている場合に、ホストデバイスとクライアントデバイスに既知の共有秘密キー等を用いて生成された代理キーにより、当該クライアントデバイスに代理デバイスを認証させる技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2004−171274号公報
【特許文献2】特表2009-510978号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、認証局(認証サーバ装置)に階層関係がある場合、下位の認証局によって発行された電子証明書を検証するためには、当該下位の認証局に対してセキュリティポリシーで定められた上位の認証局から順に電子証明書の検証を行ない、当該下位の認証局の電子証明書を検証し、そして、当該下位の公開鍵を用いて当該電子証明書の検証を行なう必要がある。
【0007】
そして、従来の技術では、電子証明書発行後、認証局の階層関係やセキュリティポリシーが事後的に変更された場合、セキュリティレベルが変更されることにより、それまで通信相手の電子証明書を検証できていたデバイスが、同じ通信相手の電子証明書の検証をできなくなる可能性があった。
【0008】
具体的には、たとえば、認証局の階層関係やセキュリティポリシーの変更により、デバイスにおける通信のセキュリティレベルが上がり、通信相手の電子証明書の検証のために検証を必要とされる上位の認証局の数が増えた場合、当該デバイスが当該電子証明書の検証のために記憶していることを必要とされる証明書が増えることになり、当該デバイスにおけるストレージの容量が不足する事態が想定されるからである。
【0009】
これにより、デバイスにおいて、通信相手との通信ができなくなったり、また、新たなソリューションの導入の際に、当該ソリューションの導入に対して満たすべきセキュリティレベルを満たすことができず、当該ソリューションを利用できない事態が想定された。
【0010】
上記した特許文献1に記載の技術では、上記他のサービス機器(特許文献1中の「サービスPeer・1」)に代わって上記あるサービス機器(特許文献1中の「サービスPeer・2」)の認証を行なうとされる認証装置(特許文献1中の「認証Peer・A」)は、上記あるサービス機器が上記他のサービス機器に対してアクセスする権限を有しているか否かを判断するのであって、電子証明書の検証をするものではなく、上記事態を解決することはできないと考えられる。
【0011】
また、上記した特許文献2に記載の技術は、クライアントデバイスが、ホストデバイスとの接続が確立している状態から、その通信相手を代理デバイスに変更するために、ホストデバイスにおいて生成された第1の代理キーと、クライアントデバイスにおいて生成された第2の代理キーとを使用して、代理デバイスを認証するものである。よって、他のデバイスの代わりに電子証明書の検証を行なうデバイスに関する技術を開示するものではなく、単に特許文献2に記載の技術を採用しても、上記事態を回避することはできないと考えられる。
【0012】
そして、特に、オンライン電子証明書が発行される場合、上記したようなセキュリティレベルが容易に変更される事態が想定されるため、上記事態の回避策が切望されていると考えられる。
【0013】
本発明は、係る実情に鑑み考え出されたものであり、その目的は、他の機器が提供するサービスの利用等のために電子証明書の検証を行なう必要があるクライアント装置において当該電子証明書の検証ができない場合に、当該クライアント装置に、当該電子証明書の検証が成功したのと同様の効果を与えることができる、認証システム、認証装置、およびこれらの制御方法、ならびに制御プログラムを提供することである。
【課題を解決するための手段】
【0014】
本発明に従った認証システムの制御方法は、第1のクライアント装置と、第2のクライアント装置と、認証サーバ装置とを備えた認証システムの制御方法であって、第1のクライアント装置が、認証サーバ装置によってオンライン発行された第1の電子証明書を記憶するステップと、第2のクライアント装置に対して、第1の電子証明書の検証に必要な処理を依頼するステップとを備え、第2のクライアント装置が、第1のクライアント装置から依頼された処理を実行するステップと、第1のクライアント装置から依頼された処理の結果を第1のクライアント装置に送信するステップとを備える。
【0015】
また、本発明に従った認証システムの制御方法は、第1のクライアント装置が、第1の電子証明書の検証に必要な処理の範囲を取得するステップと、取得した範囲の処理を第1のクライアント装置が実行できるか否かを判断するステップとをさらに備え、第1のクライアント装置が処理を依頼するステップは、取得した範囲が第1のクライアント装置の実行できない範囲を含むと判断した場合に、第2のクライアント装置に対して実行できない範囲の処理を依頼するステップを含む。
【0016】
また、本発明に従った認証システムの制御方法は、第1のクライアント装置が、取得した範囲の中の実行できる範囲の処理を実行するステップをさらに備え、実行できない範囲の処理を依頼するステップは、実行できる範囲の処理の結果を送信するステップを含む。
【0017】
また、本発明に従った認証システムの制御方法では、認証システムは、階層構造を有する複数の認証サーバ装置を含み、第1の電子証明書は、複数の認証サーバ装置のいずれかによって発行され、第1のクライアント装置が範囲を取得するステップは、第1の電子証明書の検証のために電子証明書の検証が必要な認証サーバ装置の範囲を取得するステップを含み、第1のクライアント装置が取得した範囲の処理を実行できるか否かを判断するステップは、検証が必要な電子証明書が、第1のクライアント装置が検証できる電子証明書よりも上位の認証サーバ装置が発行した電子証明書を含むか否かを判断するステップを含み、第1のクライアント装置が実行できる範囲の処理を実行するステップは、検証が必要な電子証明書の中の検証できる範囲の電子証明書を検証するステップを含み、第1のクライアント装置が実行できる範囲の処理の実行の結果を送信するステップは、検証できる範囲の電子証明書の検証結果を送信するステップを含み、第1のクライアント装置が処理を依頼するステップは、検証が必要とされる電子証明書の中の、検証できる電子証明書よりも上位の認証サーバ装置が発行した電子証明書の検証を依頼するステップを含む。
【0018】
また、本発明に従った認証システムの制御方法は、第2のクライアント装置が、第1のクライアント装置による検証結果と、第2のクライアント装置による検証結果とに基づいて、第1の電子証明書の検証が成功したか否かを判断するステップと、第1の電子証明書の検証が成功したか否かの判断の結果を第1のクライアント装置へ送信するステップとをさらに備える。
【0019】
また、本発明に従った認証システムの制御方法では、第2のクライアント装置は、判断の結果を、第2のクライアント装置の電子署名を施して、第1のクライアント装置へ送信する。
【0020】
また、本発明に従った認証システムの制御方法では、第1のクライアント装置は、検証できる電子証明書の検証結果に第1のクライアント装置の電子署名を施して、第2のクライアント装置に送信する。
【0021】
また、本発明に従った認証システムの制御方法では、第1の電子証明書は、当該第1の電子証明書の検証に必要とされる認証サーバ装置の階層についての記述を含み、第1のクライアント装置は、第1の電子証明書の階層についての記述に基づいて、認証サーバ装置の範囲を取得する。
【0022】
また、本発明に従った認証システムの制御方法では、第1のクライアント装置と第2のクライアント装置は、共通で有する電子証明書を利用して通信する。
【0023】
また、本発明に従った認証システムの制御方法では、第1の電子証明書は、当該第1の電子証明書の検証に必要な処理を依頼する装置を特定する情報の記述を含み、第1のクライアント装置は、第1の電子証明書における装置を特定する情報の記述に基づいて、第1の電子証明書の検証に必要な処理を依頼する装置を決定する。
【0024】
また、本発明に従った認証システムの制御方法は、認証サーバ装置によってオンライン発行された電子証明書を記憶するステップと、他の装置に対して、電子証明書の検証に必要な処理を依頼するステップと、他の装置から、当該他の装置において依頼に応じて実行された処理の結果を受信するステップとを備える。
【0025】
本発明に従った認証システムの制御プログラムは、第1のクライアント装置と、第2のクライアント装置と、認証サーバ装置とを備えた認証システムの制御プログラムであって、第1のクライアント装置に、認証サーバ装置によってオンライン発行された電子証明書を記憶するステップと、第2のクライアント装置に対して、電子証明書の検証に必要な処理を依頼するステップとを実行させ、第2のクライアント装置に、第1のクライアント装置から依頼された電子証明書の検証に必要な処理を実行するステップと、第1のクライアント装置から依頼された処理の結果を第1のクライアント装置に送信するステップとを実行させる。
【0026】
本発明に従った認証装置の制御プログラムは、認証サーバ装置によってオンライン発行された電子証明書を記憶するステップと、他の装置に対して、電子証明書の検証に必要な処理を依頼するステップと、他の装置から、当該他の装置において依頼に応じて実行された処理の結果を受信するステップとを備える。
【0027】
本発明に従った認証システムは、第1のクライアント装置と、第2のクライアント装置と、認証サーバ装置とを備え、第1のクライアント装置は、認証サーバ装置によってオンライン発行された電子証明書を記憶する記憶部と、第2のクライアント装置に対して、第電子証明書の検証に必要な処理を依頼する依頼部とを含み、第2のクライアント装置は、依頼部から受信した電子証明書の検証に必要な処理を実行する検証部と、検証部が実行した処理の結果を第1のクライアント装置に送信する送信部とを含む。
【0028】
本発明に従った認証装置は、ネットワークを介して他の装置および認証サーバ装置に接続する認証装置であって、認証サーバ装置によってオンライン発行された電子証明書を記憶する記憶部と、他の装置に対して、電子証明書の検証に必要な処理を依頼する依頼部と、他の装置から、当該他の装置において依頼に応じて実行された処理の結果を受信する受信部とを備える。
【発明の効果】
【0029】
クライアント装置(第1のクライアント装置又は認証装置)は、認証システムにおける通信のセキュリティレベルの変更等によって、ストレージや処理能力の不足により、(第1の)電子証明書の検証ができなくなった場合であっても、他のクライアント装置に当該(第1の)電子証明書の検証を依頼し、当該検証の結果を取得することができる。
【0030】
これにより、上記クライアント装置を利用するユーザは、当該クライアント装置自身が持つ電子証明書の検証能力よりも高い検証能力を必要とされる電子証明書の検証を行なうことにより得られる通信やソリューションの利用が可能となる。これにより、認証システムにおけるセキュリティレベルの変更等にも、上記クライアント装置は、その電子証明書の検証能力の変更を必要とされることなく、上記電子証明書の検証による効果を得ることができる。
【図面の簡単な説明】
【0031】
【図1】本発明の認証システムの第1の実施の形態の構成を模式的に示す図である。
【図2】図1の認証システムに含まれるネットワークの構成を模式的に示す図である。
【図3】図1のクライアント装置のハードウェア構成を模式的に示す図である。
【図4】図1の認証サーバ装置のハードウェア構成を模式的に示す図である。
【図5】図1のクライアント装置の機能ブロックを模式的に示す図である。
【図6】図1の認証サーバ装置の機能ブロックを模式的に示す図である。
【図7】図1の認証システムにおいて利用される電子証明書の構成を模式的に示す図である。
【図8】本発明の認証システムの第2の実施の形態の構成を模式的に示す図である。
【発明を実施するための形態】
【0032】
以下、本発明に係る認証システムの実施の形態について、図面を参照して説明する。各図において、同じ構成要素には同じ符号を付し、共通する特徴については詳細な説明を繰返さない。
【0033】
[第1の実施の形態]
図1は、認証システムの第1の実施の形態の構成を模式的に示す図である。
【0034】
本実施の形態の認証システムは、階層構造をなす複数の認証サーバ装置7A〜7Cと、複数のクライアント装置2A〜2Cを含む。
【0035】
以下の説明では、認証サーバ装置を、適宜、CA(Certificate Authority)と呼び、クライアント装置を、適宜、MFP(Multi Function Peripheral)またはPC(Personal Computer)と呼ぶ。具体的には、適宜、クライアント装置2AをMFP(1)と呼び、クライアント装置2BをMFP(2)と呼び、クライアント装置2CをPC(1)と呼ぶ。
【0036】
本認証システムでは、認証サーバ装置7A〜7Cは、階層構造を有している。認証サーバ装置7Bは、認証サーバ装置7Aの上位の認証サーバ装置である。認証サーバ装置7Cは、認証サーバ装置7Bの上位の認証サーバ装置であり、本実施の形態の認証システムの最上位の認証サーバ装置(ルートCA)である。以下、適宜、認証サーバ装置7Aを「CA(2)」と呼び、認証サーバ装置7Bを「CA(1)」と呼び、認証サーバ装置7Cを「ルートCA」と呼ぶ。
【0037】
本実施の形態では、クライアント装置2A〜2Cは、認証サーバ装置7Aから、オンラインで、電子証明書を発行されている。
【0038】
図1において、「MFP(1)証明書」は、認証サーバ装置7Aによって発行されたMFP(1)の電子証明書である。「MFP(2)証明書」は、認証サーバ装置7Aによって発行されたクライアント装置2Bの電子証明書である。「PC(1)証明書」は、認証サーバ装置7Aによって発行されたクライアント装置2Cの電子証明書である。
【0039】
「CA(2)証明書」は、認証サーバ装置7Aの電子証明書であり、認証サーバ装置7Aの公開鍵と認証サーバ装置7Bの電子署名を含む。
【0040】
「CA(1)証明書」は、認証サーバ装置7Bの電子証明書であり、認証サーバ装置7Bの公開鍵と認証サーバ装置7Cの電子署名を含む。
【0041】
「Root証明書」は、認証サーバ装置7Cの電子証明書であり、認証サーバ装置7Cの公開鍵と認証サーバ装置7Cの電子署名を含む。本実施の形態では、「Root証明書」は、ルート証明書となる。
【0042】
クライアント装置2Aには、「MFP(1)証明書」と「CA(2)証明書」が記憶されている。クライアント装置2Aは、クライアント装置2Bから「MFP(2)証明書」を送信されると、「CA(2)証明書」に含まれる認証サーバ装置7B(CA(1))の公開鍵を利用した当該電子証明書の検証を試みる。
【0043】
(ネットワークの構成)
図2は、クライアント装置2A〜2Cを含むネットワーク(以下、適宜「ネットワーク6」と呼ぶ)の構成を模式的に示す図である。
【0044】
ネットワークには、複数のクライアント装置2(適宜、クライアント装置2A〜2Cを総称して「クライアント装置2」と呼ぶ)が複数含まれている。各クライアント装置2は、モニタ21を備え、ネットワークケーブル3を通じてハブ4と接続され、ハブ4およびルータ5を介して、図示しない別のネットワークに接続された端末や認証サーバ装置(認証サーバ装置7A等)と接続する。
【0045】
(クライアント装置のハードウェア構成)
図3は、クライアント装置2を構成するPC(1)のハードウェア構成を模式的に示す図である。
【0046】
図3を参照して、クライアント装置2は、当該クライアント装置2の動作を全体的に制御するCPU(Central Processing Unit)250、CPU250のワークエリアとして機能するRAM(Random Access Memory)254、プログラムやデータなどを記憶するROM(Read Only Memory)256、クライアント装置2に対して情報を入力するためのキーボードなどの入力装置260、他のクライアント装置2や認証サーバ装置、モニタ21と通信するための通信装置262、プログラムやファイルを記憶するハードディスクを備えるハードディスク装置(HDD)264、およびクライアント装置2に対して着脱可能なCD−ROM(Compact Disk Read Only Memory)等の記録媒体252Aにアクセスするメディアドライブ252とを備えている。つまり、クライアント装置2は、入力装置260に入力された情報の入力を受付け、通信装置262を介して他の端末やネットワークと通信し、また、モニタ21に当該クライアント装置2において処理される情報を表示させる。
【0047】
クライアント装置2は、上記のHDD264や記録媒体252Aに記憶されたプログラムが読込まれて実行されることによるデータの演算や加工により、電子証明書の発行の要求や、電子証明書の検証、および他の装置に対する電子証明書の検証を依頼する情報を送信する、クライアント装置として機能する。
【0048】
(認証サーバ装置のハードウェア構成)
図4は、認証サーバ装置7を構成するコンピュータのハードウェア構成を模式的に示す図である。
【0049】
図4を参照して、認証サーバ装置7は、当該認証サーバ装置7の動作を全体的に制御するCPU750、CPU750のワークエリアとして機能するRAM754、プログラムやデータなどを記憶するROM756、認証サーバ装置7に対して情報を入力するためのキーボードなどの入力装置760、クライアント装置2や認証サーバ装置7等の他の端末(デバイス)との通信を行なう通信装置762、プログラムやファイルを記憶するハードディスクを備えるHDD764、および認証サーバ装置7の本体に対して着脱可能なCD−ROM等の記録媒体752Aとアクセスするメディアドライブ752とを備えている。つまり、認証サーバ装置7は、入力装置760に入力された情報の入力を受付け、通信装置762を介して他の端末やネットワークと通信する。
【0050】
認証サーバ装置7は、上記のHDD764や記録媒体752Aに記憶されたプログラムが読込まれて実行されることによるデータの演算や加工により、本実施の形態において説明される各種の情報処理を行なう、認証サーバ装置として機能する。
【0051】
(クライアント装置の機能構成)
図5は、クライアント装置2の機能ブロックを模式的に示す。
【0052】
図5を参照して、ハブ4(図2を参照)を介してクライアント装置2へ送信されるデータは、データ受信部202において受信される。
【0053】
データ受信部202は、受信したデータ(パケット)が、自機宛のデータであるか否かを判断し、自機宛のデータであると判断すると、当該データをデータ解析部203に送る。
【0054】
データ解析部203は、受信されたパケットからデータを抽出し、抽出されたデータの中に処理命令が含まれていれば、証明書処理部204、継続検証部205、その他処理部207のいずれかにて処理させる。
【0055】
証明書処理部204は、認証サーバ装置7Aに対し、電子証明書の発行を依頼し、また、通信相手から送信されてきた電子証明書の検証、および検証に必要なセキュリティポリシーのチェックを行なう。
【0056】
セキュリティポリシーは、送信されてきた電子証明書の検証に必要とされるCAの階層、つまり、認証サーバ装置7A〜7Cのどの認証サーバ装置の電子証明書の検証までが必要かを特定するための情報(階層情報)を含む。
【0057】
証明書処理部204は、送信されてきた電子証明書を検証する際に、セキュリティポリシーをチェックすることにより、当該電子証明書の検証についての階層情報を取得し、当該階層情報で特定されるすべての認証サーバ装置の電子証明書の検証が自機で可能か否かを判断する。
【0058】
すべて可能であると判断すると、証明書処理部204は、当該電子証明書を検証し、その検証結果を、電子証明書の送信元に送信する。一方、階層情報で規定されるすべての認証サーバ装置の電子証明書を自機では検証できないと判断すると、証明書処理部204は、継続検証部205に、他のデバイスに、継続検証を依頼させる。
【0059】
継続検証部205は、送信されてきた電子証明書内の記述等に基づいて、継続検証を依頼する他のデバイスを検索する。そして、検索結果として得られた「他のデバイス」に対し、上記電子証明書の継続検証を依頼する情報を送信する。
【0060】
継続検証とは、受信した電子証明書の検証に必要とされるすべての階層のCAの中の一部のCAの電子証明書をクライアント装置2が検証した場合の、残りのCAの電子証明書の検証を実行することをいう。
【0061】
一方、クライアント装置2は、他のデバイスから継続検証を依頼する情報を受信すると、当該情報に従って電子証明書の検証を実行し、当該検証の結果を依頼情報の送信元に返信する。
【0062】
データ保持部206は、電子証明書およびセキュリティポリシーデータを含む種々の情報を記憶する。上記した階層情報は、セキュリティポリシーデータの一部として、データ保持部206に記憶されていてもよいし、電子証明書に含まれていてもよいし、電子証明書やセキュリティポリシーデータとは別にデータ保持部206に記憶されていてもよい。
【0063】
また、階層情報は、クライアント装置2における電子証明書の検証の目的となるアプリケーションのセキュリティポリシーに含まれていても良い。この場合、クライアント装置2は、アプリケーションの実行に他のクライアント装置2の認証を必要とし、当該認証に当該他のクライアント装置2の電子証明書の検証を必要とする場合、クライアント装置2は、当該アプリケーションのセキュリティポリシーから階層情報を取得し、取得した階層情報に基づいて、どの階層のCAまでの電子証明書の検証が必要かを認識する。
【0064】
クライアント装置2において、電子証明書の検証や他のデバイスへの電子証明書の検証の依頼以外の処理は、その他処理部207にて行なわれる。
【0065】
データ送信部212は、他のデバイスに情報を送信するためのものである。
他のデバイスに送信されるデータは、データ作成部211によってネットワークパケットの形に成形され、データ送信部212によって上記のように決定された送信先に送信される。
【0066】
(認証サーバ装置の機能構成)
図6は、認証サーバ装置7(以下、認証サーバ装置7A〜7Cを総称して、適宜「認証サーバ装置7」と呼ぶ)の機能ブロックを模式的に示す。
【0067】
図6を参照して、データ受信部702は、ネットワーク6上を流れるパケットが自機宛のパケットであるか否かを判断し、自機宛のデータであると判断すると、当該データをデータ解析部703に送る。
【0068】
データ解析部703は、受信されたパケットからデータを抽出し、抽出されたデータの中に処理命令が含まれていれば、証明書発行部704、証明書管理部705、その他処理部707のいずれかで処理させる。
【0069】
証明書発行部704は、クライアント装置2に対して、オンラインで電子証明書を発行する。電子証明書の発行は、たとえば、クライアント装置2から電子証明書の発行を要求する情報を認証サーバ装置7が受信したことに応じて、行なわれる。
【0070】
証明書管理部705は、電子証明書の失効やCRL(Certificate Revocation List)の管理を行なう。CRLの管理は、CRLを一定期間ごとに最新のものに更新する処理を含む。
【0071】
認証サーバ装置7において、上記した電子証明書の発行や電子証明書の管理以外の処理は、その他処理部707にて行なわれる。
【0072】
データ送信部712は、情報を送信するためのものである。
他のデバイスに送信されるデータは、データ作成部711によって、ネットワークパケットの形に成形され、データ送信部712によって、適宜設定された送信元へと送信される。
【0073】
データ保持部706は、電子証明書の発行記録やCRLを含むデータを記憶する。
(クライアント装置における電子証明書の検証)
以下、クライアント装置2Bにおける、クライアント装置2Aの認証のための、クライアント装置2Aの電子証明書の検証について説明する。
【0074】
クライアント装置2Aの電子証明書の検証についての階層情報において、CA(2)(認証サーバ装置7A)の電子証明書の検証までが必要とされていれば、クライアント装置2Bは、自機に記憶されているCA(2)(認証サーバ装置7A)の公開鍵を利用して、クライアント装置2Aの電子証明書に含まれるCA(2)の電子署名を検証する。検証に成功すれば、クライアント装置2Bでは、クライアント装置2Aの認証に成功したとして、その後の処理が実行される。
【0075】
一方、クライアント装置2Aの電子証明書の検証についての階層情報において、ルートCA(認証サーバ装置7C)の電子証明書であるルート証明書の検証までが必要とされていれば、クライアント装置2Bは、クライアント装置2Aの電子証明書の検証ができない。クライアント装置2Bでは、CA(1)の電子証明書およびルート証明書が記憶されておらず(CA(1)の公開鍵およびルートCAの公開鍵が記憶されておらず)、CA(1)およびルートCAの電子署名が検証できないからである。
【0076】
以下、本明細書では、クライアント装置2Bにおいてクライアント装置2Aの認証が必要とされる場合であって、クライアント装置2Aの電子証明書の検証についての階層情報においてルート証明書の検証までが必要とされる場合に、クライアント装置2A〜2Cにおいて実行される処理について、主に図1を参照して説明する。
【0077】
<手順[1.]>
まず、クライアント装置2Aとクライアント装置2Bとの間での通信開始時に、シェイクハンドで、お互いの電子証明書が通信相手に送信される。これにより、クライアント装置2Bは、クライアント装置2Aの電子証明書(MFP(1)証明書)を受信する。
【0078】
<手順[2.]>
次に、クライアント装置2Bの証明書処理部204は、MFP(1)証明書に含まれるCA(2)の電子署名を、CA(2)証明書に含まれるCA(2)の公開鍵を利用して検証する。
【0079】
<手順[3.]>
次に、クライアント装置2Bの証明書処理部204は、MFP(1)証明書の検証に関するセキュリティポリシーをチェックする。上記の通り、セキュリティポリシーでは、当該証明書の検証には、手順[2.]で実行したMFP(1)証明書の検証の他に、CA(2)証明書、CA(1)証明書およびルート証明書の検証が必要とされる。証明書処理部204は、当該チェックにより、このことを認識すると、継続検証を依頼するデバイスを決定する。この場合の継続検証は、MFP(1)証明書の検証に必要な証明書の検証であって、クライアント装置2Bが可能なMFP(1)証明書の検証以外の証明書の検証である。つまり、CA(2)証明書、CA(1)証明書およびルート証明書の検証である。
【0080】
継続検証の依頼先のデバイスを特定する情報は、たとえば、図7に示されるように、MFP(1)証明書内に含まれていても良い。
【0081】
図7を参照して、MFP(1)証明書900は、一般的に証明書に含まれる情報の他に、代行情報901と、オプション情報902とを含む。代行情報901は、当該証明書の検証に必要なセキュリティレベルを満たす検証を行なうことができるデバイスを特定する情報を含む。当該証明書の検証を行なうことが必要とされたデバイスは、当該証明書の検証に必要とされる検証ができない場合、代行情報901を参照して、当該証明書の検証のための継続検証を依頼するデバイスを決定する。
【0082】
なお、オプション情報902としては、一般の証明書には記載されないような、証明書の発行元の特有の情報が挙げられる。当該証明書を検証するデバイスは、検証時にオプション情報902を参照して、通常よりも高いセキュリティを実現することができる。オプション情報902としては、たとえば、発行元独自のデジタルサインや、発行元が属する企業特有のシリアルコードや、当該証明書がデバイス証明書である場合の証明書発行を受けたデバイスの種類,機種,そのバージョン,製造年度などが挙げられる。
【0083】
また、証明書処理部204は、上記の階層情報(セキュリティポリシー)のチェックにより、MFP(1)証明書の検証に必要な証明書であって、MFP(2)では検証できない証明書を特定できる。よって、証明書処理部204は、自機が検証できない証明書の検証が可能なデバイスをネットワーク6上で検索することができる。この検索結果により、証明書処理部204は、継続検証の依頼先のデバイスを特定しても良い。
【0084】
また、本実施の形態では、証明書が正当なものであると判断されるために、オプション情報902の内容が適切であることを必要としても良い。つまり、証明書の検証に、オプション情報902の内容のチェックが含まれても良い。そして、証明書の検証の際に参照することを必要とされるオプション情報902内の情報の範囲が、上記の階層情報に記述されていてもよい。証明書処理部204は、上記階層情報における記述を参照することにより、検証に必要な範囲を取得し、当該取得した範囲の情報のチェックが可能か否かにより、当該証明書が、MFP(2)では検証ができない証明書かどうかを特定できる。
【0085】
そして、証明書処理部204は、継続検証部205に、上記のように特定したデバイスに対して継続検証を依頼させるための命令を送信する。
【0086】
ここでは、上記のように特定されたデバイスが、クライアント装置2Cであるとする。
継続検証を依頼する情報は、たとえば、MFP(1)証明書と、当該MFP(1)証明書の検証がどこまで上位の階層のCAの証明書の検証が必要かを特定する情報を含む。
【0087】
なお、どこまで上位の階層のCAの証明書の検証が必要かを特定する情報は、継続検証の依頼を受けたデバイスにおいて、上記した階層情報のチェックと同様の処理が実行されることにより取得されてもよい。
【0088】
少なくとも、本実施の形態では、MFP(2)は、階層情報をチェックすることによりMFP(1)証明書の検証のために証明書の検証を必要とされる認証サーバの範囲を特定し、当該範囲に、MFP(2)で証明書を検証できない認証サーバが含まれる場合には、他のデバイスに継続検証を依頼する。
【0089】
ここで、継続検証の依頼の要否を決定する範囲とは、認証サーバの階層に限られない。オプション情報902に含まれる情報の中で、MFP(1)証明書の検証のためにチェックすることを要する情報についての範囲が、MFP(2)でチェックすることができない情報を含むか否かを判断し、含む場合に、他のデバイスに継続検証を依頼しても良い。つまり、当該範囲は、オプション情報902中のチェック項目であっても良い。
【0090】
証明書処理部204による当該デバイスの決定では、その時点でネットワーク6(たとえば、クライアント装置2Bが接続しているLAN(Local Area Network)に接続しているデバイスを優先的に選択してもよいし、また、ネットワーク6に接続しているデバイスに対して証明書処理部204が継続検証の依頼情報を送信したときに当該依頼情報に対するレスポンスが最も早いデバイスが選択されてもよい。ここでいうレスポンスとは、依頼情報を受信したデバイスが、自機で継続検証に必要とされる証明書の検証が可能か否かを判断し、可能である場合に、その旨を継続検証の送信元に返信することをいう。
【0091】
証明書処理部204は、階層情報で特定されたデバイスにクライアント装置2Bが接続できない場合や上記したデバイスが決定できない場合には、クライアント装置2Aの認証に失敗した(エラー状態)と判断し、その旨をクライアント装置2Aに送信する。
【0092】
<手順[4.]>
次に、クライアント装置2Bの継続検証部205は、上記のように特定されたデバイスであるクライアント装置2Cに、上記デバイスに、手順[2.]の検証結果とともに、継続検証を依頼する情報を送信する。
【0093】
クライアント装置2Bは、クライアント装置2Cと、クライアント装置2Aと接続したセキュリティ方法とは別のセキュリティ方法で通信する。別のセキュリティ方法とは、たとえば、これらのクライアント装置が共通で有する電子証明書(共通鍵)などを利用した暗号化通信や、全く別の証明書を利用したSSL(Secure Socket Layer)通信や、VPN(Virtual Private Network)通信がある。また、クライアント装置2Bは、クライアント装置2Cに上記情報を送信した後、一定時間ごとにポーリングを行なう。
【0094】
ここで、継続検証部205は、クライアント装置2Cに送信する検証結果に、クライアント装置2Bの電子署名を施してもよい。
【0095】
<手順[5.]>
クライアント装置2Cでは、手順[4.]によってクライアント装置2Bから受信した継続検証を依頼する情報が、当該クライアント装置2Cの継続検証部205に送られる。
【0096】
なお、認証システムが、手順[4.]で検証結果にクライアント装置2Bの電子署名が施されて送信されるように構築されている場合には、クライアント装置2Cでは、クライアント装置2Bの公開鍵を用いて当該クライアント装置2Bの電子署名の検証が行なわれ、当該電子署名の検証が成功したことを条件として、継続検証の依頼情報が継続検証部205に送られてもよい。
【0097】
<手順[6.]>
継続検証の依頼を受けた当該クライアント装置2Cの継続検証部205は、継続検証を実行する。具体的には、CA(2)証明書、CA(1)証明書およびルート証明書の検証を実行する。
【0098】
<手順[7.]>
クライアント装置2Cの継続検証部205は、手順[6.]の検証の結果を、クライアント装置2Bへ送信する。
【0099】
ここで、継続検証部205は、クライアント装置2Bに送信する検証結果に、クライアント装置2Cの電子署名を施してもよい。
【0100】
<手順[8.]>
クライアント装置2Bでは、クライアント装置2Cから検証結果を受信すると、証明書処理部204は、手順[2.]での検証結果と合わせて、クライアント装置2Aの認証に成功したか、つまり、CA(2)、CA(2)およびルートCAの電子署名の検証が成功したか否かを判断する。
【0101】
なお、認証システムが、手順[7.]で検証結果にクライアント装置2Cの電子署名が施されて送信されるように構築されている場合には、クライアント装置2Bでは、クライアント装置2Cの公開鍵を用いて当該クライアント装置2Cの電子署名の検証が行なわれ、当該電子署名の検証が成功したことを条件として、クライアント装置2Cから検証結果が証明書処理部204に送られてもよい。
【0102】
<手順[9.]>
クライアント装置2Bの証明書処理部204は、手順[8.]の認証結果、つまり、クライアント装置2Bがクライアント装置2Aと通信ができるか否かの情報を、クライアント装置2Aに送信する。
【0103】
(まとめ)
以上説明した本実施の形態では、MFP(1)からCA(1)(認証サーバ装置)によってオンライン発行されたMFP(1)証明書(第1の電子証明書)を受信すると、MFP(2)(第1のクライアント装置,認証装置)は、当該電子証明書の検証に必要な処理の一部を、PC(1)(第2のクライアント装置)に依頼する。PC(1)は、依頼を受けた処理を実行し、その結果をMFP(2)に送信する。
【0104】
本実施の形態では、MFP(2)は、継続検証として、MFP(1)証明書の検証に必要な処理であって、自機でできない処理についてのみ、PC(1)に処理を依頼したが、MFP(2)は、自機でできない処理がMFP(1)証明書の検証に必要な一部の処理であっても、当該証明書の検証に必要なすべての処理(CA(2)の電子署名の検証、CA(1)の電子署名の検証およびルートCAの電子署名の検証)をPC(1)に依頼してもよい。
【0105】
なお、上記手順[7.]では、クライアント装置2Cの継続検証部205は、手順[6.]の検証の結果をクライアント装置2Bに送信したが、当該継続検証部205は、クライアント装置2Bから送信された情報に基づいて、クライアント装置2Aの認証の可否を判断し、その結果をクライアント装置2Bに送信しても良い。具体的には、本実施の形態では、MFP(1)証明書の検証に必要な処理の一部が手順[2.]としてクライアント装置2Bで実行され、そして、残りの処理が手順[6.]として、クライアント装置2Cで実行されている。つまり、クライアント装置2Cは、MFP(1)証明書の検証に必要なすべての証明書の検証結果を取得できる。よって、継続検証部205は、MFP(1)証明書の検証に必要なすべての証明書の検証結果に基づいて、MFP(1)証明書の検証の最終的な成否、および当該成否に基づくMFP(1)の認証の可否まで判断し、当該判断の結果をクライアント装置2Bに送信しても良い。これにより、クライアント装置2Bが、クライアント装置2Aの認証の際に必要とされる処理内容を、より軽減させることができる。
【0106】
[第2の実施の形態]
図8は、認証システムの第2の実施の形態の構成を模式的に示す図である。
【0107】
図8を参照して、本認証システムは、認証サーバ装置7A〜7Dの4つの認証サーバ装置を含む。本認証システムでは、CA(2)(認証サーバ装置7A)、CA(1)(認証サーバ装置7B)、CA(0)(認証サーバ装置7D)、ルートCA(認証サーバ装置7C)の順に階層関係を有し、ルートCA(認証サーバ装置7C)が最上位の認証局として機能する。つまり、第1の実施の形態の認証システムに対して、認証局の階層が一段階多くなっている。
【0108】
本実施の形態では、MFP(1)証明書の検証に、CA(2)、CA(1)、CA(0)およびルートCAの証明書(電子署名)の検証が必要とされるものとする。
【0109】
MFP(2)は、MFP(1)証明書を受信すると(手順[1.])、MFP(1)証明書の検証のためにCA(2)証明書を検証し(手順[2.])、継続検証を依頼するPC(1)に依頼するための情報と手順[2.]の検証結果を送信する(手順[3.][4.])。
【0110】
これに応じて、PC(1)は、CA(1)、CA(0)およびルートCAの証明書(電子署名)を検証し(手順[5.][6.])、その結果をMFP(2)に送信する(手順[7.])。
【0111】
MFP(2)は、自機での検証結果とPC(1)から受信した検証結果に基づいて、MFP(1)証明書を検証する(手順[8.])。
【0112】
そして、手順[8.]の認証結果、つまり、クライアント装置2Bがクライアント装置2Aと通信ができるか否かの情報を、クライアント装置2Aに送信する(手順[9.])。
【0113】
本実施の形態では、認証システムにおける認証局の階層が4段階であっても、第1の実施の形態と同様に、MFP(2)とPC(1)で分担して、MFP(1)証明書を検証できる。
【0114】
[第3の実施の形態]
第1および第2の実施の形態において、PC(1)がルートCAの証明書(電子署名)の検証ができない場合、PC(1)がさらに他のデバイスにルートCAの証明書の検証を依頼してもよい。つまり、継続検証は、複数のデバイスにおいて実行されてもよい。
【0115】
以下、本実施の形態におけるMFP(1)証明書の検証態様を、より詳細に説明する。第1および第2の実施の形態では、MFP(2)は、MFP(1)証明書の検証に際して、MFP(1)証明書の検証に必要な処理の中の自機でできない処理(CA(2)証明書の検証以外の証明書の検証)のすべてを実行できるデバイスに継続検証を依頼していたが、継続検証は、自機でできない処理の少なくとも一部を実行できるデバイスに依頼されてもよい。
【0116】
このような状況下で継続検証を依頼されたデバイスは、MFP(1)証明書の検証に必要な処理であって、MFP(2)が実行できない処理の一部を実行した後、さらに他のデバイスに、MFP(1)証明書の検証に必要な残りの処理を依頼する。
【0117】
具体的には、たとえば第1の実施の形態において、MFP(1)証明書の検証には、CA(2)証明書の検証、CA(1)証明書の検証、ルート証明書の検証が必要とされる。MFP(2)は、CA(2)証明書を検証し、他の証明書の検証を、少なくともCA(1)証明書の検証ができるPC(1)に依頼する。PC(1)は、CA(1)証明書を検証し、残りの処理(ルート証明書の検証)を、さらに他のデバイスに依頼する。
【0118】
さらに他のデバイスからPC(1)に、ルート証明書の検証結果が送信される。
PC(1)は、受信したルート証明書の検証結果と、自機でのCA(1)証明書の検証結果を、MFP(2)に送信する。
【0119】
MFP(2)は、PC(1)から受信したルート証明書の検証結果およびCA(1)証明書の検証結果と、自機におけるCA(2)証明書の検証結果に基づいて、MFP(1)証明書を検証する。そして、MFP(1)証明書の検証結果に基づいて、MFP(1)との通信の可否を決定し、その決定の結果をMFP(1)に送信する。
【0120】
なお、MFP(1)証明書の検証に関するセキュリティポリシー(または階層情報)において、本実施の形態において実現されるような、複数のデバイスによる継続検証の可否を特定する情報が含まれていてもよい。当該情報において、継続検証が不可とされていれば、MFP(2)は、継続検証の依頼先として、MFP(1)証明書の検証のための処理の中で、自機で実行できる検証以外のすべての処理を実行できるデバイスを取得できない場合、MFP(1)証明書の検証に失敗した(エラーが発生した)として、その旨をMFP(1)に返信する。
【0121】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0122】
2,2A〜2C クライアント装置、3 ネットワークケーブル、4 ハブ、5 ルータ、7,7A〜7D 認証サーバ装置、250,750 CPU、252,752 メディアドライブ、252A,752A 記憶媒体、202,702 データ受信部、203,703 データ解析部、204 証明書処理部、205 継続検証部、206 データ保持部、207 その他処理部、211,711 データ作成部、212,712 データ送信部、704 証明書発行部、705 証明書管理部、706 データ保持部、707 その他処理部、900 証明書、901 代行情報、902 オプション情報。

【特許請求の範囲】
【請求項1】
第1のクライアント装置と、第2のクライアント装置と、認証サーバ装置とを備えた認証システムの制御方法であって、
前記第1のクライアント装置が、
前記認証サーバ装置によってオンライン発行された第1の電子証明書を記憶するステップと、
前記第2のクライアント装置に対して、前記第1の電子証明書の検証に必要な処理を依頼するステップとを備え、
前記第2のクライアント装置が、
前記第1のクライアント装置から依頼された処理を実行するステップと、
前記第1のクライアント装置から依頼された処理の結果を前記第1のクライアント装置に送信するステップとを備える、認証システムの制御方法。
【請求項2】
前記第1のクライアント装置が、
前記第1の電子証明書の検証に必要な処理の範囲を取得するステップと、
前記取得した範囲の処理を前記第1のクライアント装置が実行できるか否かを判断するステップとをさらに備え、
前記第1のクライアント装置が前記処理を依頼するステップは、前記取得した範囲が前記第1のクライアント装置の実行できない範囲を含むと判断した場合に、前記第2のクライアント装置に対して前記実行できない範囲の処理を依頼するステップを含む、請求項1に記載の認証システムの制御方法。
【請求項3】
前記第1のクライアント装置が、前記取得した範囲の中の実行できる範囲の処理を実行するステップをさらに備え、
前記実行できない範囲の処理を依頼するステップは、前記実行できる範囲の処理の結果を送信するステップを含む、請求項2に記載の認証システムの制御方法。
【請求項4】
前記認証システムは、階層構造を有する複数の認証サーバ装置を含み、
前記第1の電子証明書は、前記複数の認証サーバ装置のいずれかによって発行され、
前記第1のクライアント装置が前記範囲を取得するステップは、前記第1の電子証明書の検証のために電子証明書の検証が必要な認証サーバ装置の範囲を取得するステップを含み、
前記第1のクライアント装置が前記取得した範囲の処理を実行できるか否かを判断するステップは、前記検証が必要な電子証明書が、前記第1のクライアント装置が検証できる電子証明書よりも上位の前記認証サーバ装置が発行した電子証明書を含むか否かを判断するステップを含み、
前記第1のクライアント装置が前記実行できる範囲の処理を実行するステップは、前記検証が必要な電子証明書の中の検証できる範囲の電子証明書を検証するステップを含み、
前記第1のクライアント装置が前記実行できる範囲の処理の実行の結果を送信するステップは、前記検証できる範囲の電子証明書の検証結果を送信するステップを含み、
前記第1のクライアント装置が前記処理を依頼するステップは、前記検証が必要とされる電子証明書の中の、前記検証できる電子証明書よりも上位の認証サーバ装置が発行した電子証明書の検証を依頼するステップを含む、請求項3に記載の認証システムの制御方法。
【請求項5】
前記第2のクライアント装置が、
前記第1のクライアント装置による検証結果と、前記第2のクライアント装置による検証結果とに基づいて、前記第1の電子証明書の検証が成功したか否かを判断するステップと、
前記第1の電子証明書の検証が成功したか否かの判断の結果を前記第1のクライアント装置へ送信するステップとをさらに備える、請求項4に記載の認証システムの制御方法。
【請求項6】
前記第2のクライアント装置は、前記判断の結果を、前記第2のクライアント装置の電子署名を施して、前記第1のクライアント装置へ送信する、請求項5に記載の認証システムの制御方法。
【請求項7】
前記第1のクライアント装置は、前記検証できる電子証明書の検証結果に前記第1のクライアント装置の電子署名を施して、前記第2のクライアント装置に送信する、請求項6に記載の認証システムの制御方法。
【請求項8】
前記第1の電子証明書は、当該第1の電子証明書の検証に必要とされる認証サーバ装置の階層についての記述を含み、
前記第1のクライアント装置は、前記第1の電子証明書の前記階層についての記述に基づいて、前記認証サーバ装置の範囲を取得する、請求項7に記載の認証システムの制御方法。
【請求項9】
前記第1のクライアント装置と前記第2のクライアント装置は、共通で有する電子証明書を利用して通信する、請求項1〜請求項8のいずれかに記載の認証システムの制御方法。
【請求項10】
前記第1の電子証明書は、当該第1の電子証明書の検証に必要な処理を依頼する装置を特定する情報の記述を含み、
前記第1のクライアント装置は、前記第1の電子証明書における前記装置を特定する情報の記述に基づいて、前記第1の電子証明書の検証に必要な処理を依頼する装置を決定する、請求項1〜請求項9のいずれかに記載の認証システムの制御方法。
【請求項11】
認証サーバ装置によってオンライン発行された電子証明書を記憶するステップと、
他の装置に対して、前記電子証明書の検証に必要な処理を依頼するステップと、
前記他の装置から、当該他の装置において前記依頼に応じて実行された処理の結果を受信するステップとを備える、認証装置の制御方法。
【請求項12】
第1のクライアント装置と、第2のクライアント装置と、認証サーバ装置とを備えた認証システムの制御プログラムであって、
前記第1のクライアント装置に、
前記認証サーバ装置によってオンライン発行された電子証明書を記憶するステップと、
前記第2のクライアント装置に対して、前記電子証明書の検証に必要な処理を依頼するステップとを実行させ、
前記第2のクライアント装置に、
前記第1のクライアント装置から依頼された前記電子証明書の検証に必要な処理を実行するステップと、
前記第1のクライアント装置から依頼された処理の結果を前記第1のクライアント装置に送信するステップとを実行させる、認証システムの制御プログラム。
【請求項13】
前記認証サーバ装置によってオンライン発行された電子証明書を記憶するステップと、
前記他の装置に対して、前記電子証明書の検証に必要な処理を依頼するステップと、
前記他の装置から、当該他の装置において前記依頼に応じて実行された処理の結果を受信するステップとを備える、認証装置の制御プログラム。
【請求項14】
第1のクライアント装置と、第2のクライアント装置と、認証サーバ装置とを備え、
前記第1のクライアント装置は、
前記認証サーバ装置によってオンライン発行された電子証明書を記憶する記憶部と、
前記第2のクライアント装置に対して、前記第電子証明書の検証に必要な処理を依頼する依頼部とを含み、
前記第2のクライアント装置は、
前記依頼部から受信した電子証明書の検証に必要な処理を実行する検証部と、
前記検証部が実行した処理の結果を前記第1のクライアント装置に送信する送信部とを含む、認証システム。
【請求項15】
ネットワークを介して他の装置および認証サーバ装置に接続する認証装置であって、
前記認証サーバ装置によってオンライン発行された電子証明書を記憶する記憶部と、
前記他の装置に対して、前記電子証明書の検証に必要な処理を依頼する依頼部と、
前記他の装置から、当該他の装置において前記依頼に応じて実行された処理の結果を受信する受信部とを備える、認証装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate