JP4270219B2 - 通信システム、サーバ装置、及び、プログラム - Google Patents

通信システム、サーバ装置、及び、プログラム Download PDF

Info

Publication number
JP4270219B2
JP4270219B2 JP2006098710A JP2006098710A JP4270219B2 JP 4270219 B2 JP4270219 B2 JP 4270219B2 JP 2006098710 A JP2006098710 A JP 2006098710A JP 2006098710 A JP2006098710 A JP 2006098710A JP 4270219 B2 JP4270219 B2 JP 4270219B2
Authority
JP
Japan
Prior art keywords
certificate
client device
communication
electronic
server
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
JP2006098710A
Other languages
English (en)
Other versions
JP2007274435A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2006098710A priority Critical patent/JP4270219B2/ja
Publication of JP2007274435A publication Critical patent/JP2007274435A/ja
Application granted granted Critical
Publication of JP4270219B2 publication Critical patent/JP4270219B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、クライアント装置との通信に際し、サーバ装置が、認証局にてディジタル署名された自己の電子証明書を、クライアント装置に送信する通信システム、及び、この通信システムを構成するサーバ装置、及び、サーバ装置に用いられるプログラムに関する。
従来より、SSL通信に用いられる電子証明書の認証に関しては、多くの信頼(信用)モデルが考えられ、その一つとして、階層型の認証システムが採用されている(例えば、特許文献1参照)。
ここで、階層型の認証システムとは、下位認証局がディジタル署名に用いる秘密鍵に対応する公開鍵の電子証明書であるCA証明書を、上位認証局が自己の秘密鍵にてディジタル署名して生成するシステムをいい、サーバ装置の電子証明書の正当性を、最下位認証局から最上位認証局までの一連の認証局が階層的に証明するものである。
特開2005−311818号公報
しかしながら、従来、階層型の認証システムで発行された電子証明書を、サーバ装置に組み込む場合には、次のような問題があった。即ち、サーバ装置がクライアント装置に対して提示する電子証明書の検証には、複数のCA証明書が必要となるため、サーバ装置の電子証明書を発行した最下位認証局から最上位認証局までの一連のCA証明書がクライアント装置にないと、サーバ装置−クライアント装置間の通信が行えないといった問題があった。
尚、CA証明書は、通常、ネットワークを通じて認証局から取得することができ、認証局がシステムダウンしていなければ、クライアント装置は、SSL通信時に、認証局から検証に必要なCA証明書を取得することができる。しかしながら、認証局がシステムダウン等をしている場合、クライアント装置は、必要なCA証明書を取得することができず、サーバ装置から提示された電子証明書を検証することができない可能性があった。そして、この場合には、サーバ装置と通信を行うことが、セキュリティ上できないため、従来では、階層型認証システムを利用するほど、認証局のシステムダウン等に弱い通信システムが構築されてしまうといった問題があった。
本発明は、こうした問題に鑑みなされたものであり、階層型認証システムの最下位認証局にて発行された電子証明書をサーバ装置に組み込む場合でも、認証局のシステムダウンに強い通信システムを構築できるようにすることを目的とする。
かかる目的を達成するためになされた請求項1記載の発明は、CA証明書の正当性が上位認証局によって証明される階層型の認証システム、の最下位認証局でディジタル署名された電子証明書をクライアント装置に提示し、クライアント装置と通信を行うサーバ装置であって、次の証明書記憶手段及び証明書送信手段を備えるものである。
証明書記憶手段は、自装置に対し発行された電子証明書であって、上記認証システムの最下位認証局でディジタル署名された電子証明書を記憶するものであるが、本発明において、証明書記憶手段は、上記電子証明書として、電子証明書の正当性検証時にクライアン
ト装置側で必要なCA証明書の組が異なる複数種類の電子証明書を記憶する。
一方、証明書送信手段は、クライアント装置との通信にあたり、証明書記憶手段が記憶する電子証明書を、クライアント装置に提示するために、クライアント装置に送信するものであるが、本発明において、証明書送信手段は、証明書記憶手段が記憶する上記複数種類の電子証明書を、クライアント装置に送信し、これら複数種類の電子証明書を、クライアント装置に提示する。
このように、本発明では、クライアント装置と通信する際に、正当性検証時に必要なCA証明書の組が異なる複数種類の電子証明書を、クライアント装置に送信する。従って、クライアント装置では、サーバ装置から受信した電子証明書を検証する際、上記複数種類の電子証明書の内、ある電子証明書の正当性を検証するために必要なCA証明書を、認証局から入手することができなくても、他の電子証明書の正当性を検証するために必要なCA証明書があれば、それらのCA証明書によって、サーバ装置から提示された電子証明書の正当性を検証することができる。そして、この電子証明書が正当なものであれば、この電子証明書の公開鍵を用いて、サーバ装置と暗号通信することができる。
従って、上記のようにサーバ装置を構成すれば、階層型認証システムの最下位認証局で発行された電子証明書をサーバ装置に組み込んでも、認証局のシステムダウンに強い通信システムを構築することができる。
尚、上述した「正当性検証時に必要なCA証明書の組が異なる電子証明書」としては、証明書チェインの最上位のCA証明書(ルートCA証明書)は同一であるが、下位のCA証明書が異なる電子証明書を挙げることができる。即ち、CA証明書の正当性を証明する最上位の認証局は同一であるが、下位の認証局については異なる電子証明書を挙げることができる。
また、請求項2記載の発明は、サーバ装置及びクライアント装置を備え、サーバ装置とクライアント装置との間で通信を行うにあたっては、階層型の認証システムの最下位認証局でディジタル署名されたサーバ装置の電子証明書を、サーバ装置がクライアント装置に提示する通信システムであって、サーバ装置が、上述の証明書記憶手段及び証明書送信手段を備える構成にされたものである。
この通信システムにおいて、クライアント装置は、サーバ装置から受信した複数種類の電子証明書の夫々についての正当性を、電子証明書を発行した最下位認証局から最上位認証局までの一連の認証局の各CA証明書を用いて、検証手段で検証する。また、この通信システムは、検証手段による検証結果が、予め定められた条件を満足する場合、許可禁止手段によって、サーバ装置とクライアント装置との間の通信を許可し、検証手段による検証結果が上記条件を満足しない場合、サーバ装置とクライアント装置との間の通信を禁止する。
このように、本発明では、サーバ装置が、検証に必要なCA証明書の組の異なる複数種類の電子証明書を、クライアント装置に提示するが、クライアント装置が、CA証明書の不足により、サーバ装置から送信されてきた複数種類の電子証明書の全てを検証することができない場合であっても、検証手段による検証結果が、予め定められた条件を満足する場合、サーバ装置−クライアント装置間の通信を許可する。従って、本発明のように通信システムを構成すれば、階層型認証システムの最下位認証局にて発行された電子証明書をサーバ装置に組み込んでも、認証局のシステムダウンに強い通信システムを構築することができる。
尚、上述の許可禁止手段は、クライアント装置に設けることができる。また、許可禁止手段は、具体的に、請求項3記載のように構成することができる。即ち、許可禁止手段は、クライアント装置がサーバ装置から受信した複数種類の電子証明書の内、検証手段で正当性が肯定された電子証明書の数が、所定数以上である場合、サーバ装置とクライアント装置との間の通信を許可し、検証手段で正当性が肯定された電子証明書の数が、所定数未満である場合、サーバ装置とクライアント装置との間の通信を禁止する構成にすることができる。
このように構成された通信システム(請求項3)によれば、クライアント装置で、CA証明書の不足により、サーバ装置から送信されてきた複数種類の電子証明書の全てを検証することができない場合であっても、所定数の電子証明書の正当性を検証するだけのCA証明書があれば、通信を継続して、サーバ装置−クライアント装置間で暗号通信(SSL通信)を行うことができる。
また、許可禁止手段は、請求項4記載のように構成することができる。即ち、許可禁止手段は、クライアント装置がサーバ装置から受信した複数種類の電子証明書の夫々についての検証手段による検証結果を点数化し、各電子証明書に対応する点数の合算が予め定められた基準を満たす場合、サーバ装置とクライアント装置との間の通信を許可し、各電子証明書に対応する点数の合算が基準を満たさない場合、サーバ装置とクライアント装置との間の通信を禁止する構成にすることができる。
このように構成された通信システム(請求項4)によれば、各電子証明書の確度を数値化することができる。従って、各電子証明書に対応する点数の合算に従って、通信の許可/禁止を切り替えるようにすれば、適切に、通信を許可/禁止することができ、認証局のシステムダウンに強く、且つ、セキュリティ性の高い通信システムを構築することができる。
また、本発明の通信システムにおけるサーバ装置及びクライアント装置の各手段は、プログラムにより、コンピュータに実現させることができる。
請求項5記載のプログラムは、クライアント装置との通信に際してクライアント装置に電子証明書を提示するために、自装置に対して発行された電子証明書を記憶する記憶媒体を備えたサーバ装置のコンピュータに、クライアント装置との通信にあたり、CA証明書の正当性が上位認証局によって証明される階層型の認証システムの最下位認証局でディジタル署名された電子証明書であって、電子証明書の正当性検証時にクライアント装置側で必要なCA証明書の組が異なる複数種類の電子証明書を、上記記憶媒体から読み出し、読み出した上記複数種類の電子証明書を、クライアント装置に提示するために、クライアント装置に送信する機能を実現させるためのプログラムである。このプログラムによれば、上述した請求項1記載のサーバ装置の処理動作を、コンピュータに実現させることができる。
以下、本発明の実施例について、図面と共に説明する。
図1は、本実施例の通信システム1の構成を表すブロック図である。本実施例の通信システム1は、ディジタル複合機10と、パーソナルコンピュータ(以下、単に「PC」とする。)30と、電子証明書を発行する認証局50と、がTCP/IPネットワークNTに接続されてなるものである。
複合機10は、CPU11と、作業用メモリとしてのRAM12と、各種プログラムや
データを記憶するフラッシュメモリ13と、ネットワークNTに接続された通信インタフェース15と、レーザ方式又はインクジェット方式にて用紙に画像を形成する印刷部17と、原稿載置台に載置された原稿を光学的に読み取り画像データを生成する読取部19と、ユーザが操作可能な各種キー及び表示部を備える表示操作部21と、USBデバイス接続用のインタフェースであるUSBコネクタ23と、を備える。この複合機10は、CPU11にて各種プログラムを実行し、TCP/IP通信機能、プリンタ機能、スキャナ機能、コピー機能等を実現する。
詳述すると、本実施例の複合機10は、フラッシュメモリ13に記録された通信プログラムをCPU11にて実行することにより、ネットワークNT内の他の装置と通信を行う。また、複合機10は、表示操作部21に対するユーザの操作により、読取指令が入力されると、読取部19を制御して、原稿載置台に載置された原稿についての読取画像を表す画像データを生成し、これを一時記憶する(スキャナ機能)。そして、PC30からの要求に応じ、通信インタフェース15を介して、要求元のPC30に、上記生成した画像データを、送信する。
また、複合機10は、プリントサーバ機能を有し、ネットワークNTを通じて、PC30からのアクセスがあると、ハンドシェイクの後、PC30から送信されてくる印刷データを受信し、これを印刷部17により印刷出力して、用紙に、印刷データに基づく画像を形成する。
特に、この複合機10は、暗号通信機能を有し、暗号通信用のポートへのアクセスがあると、暗号通信に係るハンドシェイクを実行し、暗号化用の公開鍵を記した自装置のサーバ証明書(電子証明書)を、アクセス元のPC30に提示する。そして、この後、アクセス元のPC30と暗号通信を行い、この暗号通信により、印刷データを機密にPC30から受信して、これを印刷出力する。
尚、本実施例においては、管理者の作業により、予め、上記サーバ証明書が、複合機10のフラッシュメモリ13にインストールされる。
例えば、管理者は、認証局を運営する団体に、サーバ証明書及びこれに対応する秘密鍵の発行を、事務的な手続きにより要求する。そして、上記団体から、自己の複合機10に対して発行された秘密鍵及びサーバ証明書のペアを、例えばUSBメモリを媒体として取得する。そして、このサーバ証明書及び秘密鍵のペアが記録されたUSBメモリを、USBコネクタ23に接続し、この状態で、表示操作部21を操作して、インストール指令を入力することにより、複合機10に、USBメモリに記録されたサーバ証明書及び秘密鍵のペアを、フラッシュメモリ13にインストールさせる。
また、別の方法として、管理者は、表示操作部21の操作により、複合機10を通じて認証局50にネットワークNT経由でアクセスし、認証局50に、サーバ証明書及びこれに対応する秘密鍵の発行を要求することにより、認証局50から、複合機10に対して発行されたサーバ証明書及び秘密鍵のペアを、SSL通信等にて、ネットワークNT経由で取得する。そして、これを、複合機10のフラッシュメモリ13にインストールする。
尚、このような手法により、複合機10にインストールされる電子証明書は、図2に示す構成されている。図2は、本実施例の通信システム1で用いられる電子証明書の構成を表す説明図である。
本実施例で用いられる電子証明書は、周知の電子証明書と同様の構成にされており、証明書のバージョンを表すバージョン情報と、証明書のシリアル番号と、アルゴリズム識別
子と、ディジタル署名した証明書発行者(認証局)を表す署名者情報と、証明書の有効期間を表す有効期間情報と、証明書の所有者(証明書発行先装置)を表す所有者情報と、公開鍵を表す公開鍵情報と、ディジタル署名値を表すディジタル署名情報と、を有する。
この電子証明書に記される公開鍵は、電子証明書とペアの秘密鍵に対応する公開鍵であり、ディジタル署名情報は、電子証明書内の他の情報から算出されたハッシュ値が、証明書発行者(認証局50)の秘密鍵にて暗号化されてなるものである。また、電子証明書には、所有者情報として、証明書発行先(複合機10)のノードID(IPアドレスやドメインネーム)等が記載される。
ところで、本実施例では、複合機10に、予め、当該複合機10に対し発行されたサーバ証明書及び秘密鍵として、複数種類のサーバ証明書及び秘密鍵のペアをインストールするようにしている。図3は、複合機10にインストールされるサーバ証明書の証明書チェインに関する説明図であり、認証システムの構成を示した図である。
図3に示すように、本実施例では、CA証明書の正当性が上位認証局によって証明される階層型の認証システムの最下位認証局で、複合機10のサーバ証明書及び秘密鍵を発行してもらい、この最下位認証局でディジタル署名されたサーバ証明書であって、証明書チェインの異なる複数種類のサーバ証明書を、複合機10にインストールする。
具体的に、本実施例では、証明書の正当性検証時にクライアント装置(PC30)側で必要なCA証明書の組として、最上位認証局AのCA証明書と、中間認証局BのCA証明書と、最下位認証局DのCA証明書と、が必要な認証局Dで発行された認証局Dのディジタル署名付きのサーバ証明書を、第一に複合機10にインストールする。
また、この複合機10には、証明書の正当性検証時にクライアント装置(PC30)側で必要なCA証明書の組として、最上位認証局AのCA証明書と、中間認証局BのCA証明書と、中間認証局EのCA証明書と、最下位認証局FのCA証明書と、が必要な認証局Fで発行された認証局Fのディジタル署名付きのサーバ証明書を、第二にインストールする。
その他、この複合機10には、証明書の正当性検証時にクライアント装置(PC30)側で必要なCA証明書の組として、最上位認証局AのCA証明書と、最下位認証局CのCA証明書と、が必要な認証局Cで発行された認証局Cのディジタル署名付きのサーバ証明書を、第三にインストールする。
また、本実施例では、独自の通信プログラムにより、PC30から、暗号通信のハンドシェイクに係る初期信号が送信されてきた場合、複合機10にて、これら証明書チェインの異なる複数種類のサーバ証明書を、初期信号送信元のPC30に送信するようにしている。
即ち、PC30から、暗号通信のハンドシェイクに係る初期信号が送信されてきた場合、複合機10は、上記通信プログラムに従って、認証局Cで発行された認証局Cのディジタル署名付きのサーバ証明書と、認証局Dで発行された認証局Dのディジタル署名付きのサーバ証明書と、認証局Fで発行された認証局Fのディジタル署名付きのサーバ証明書と、を初期信号送信元のPC30に送信する。
尚、図4は、PC30から、暗号通信のハンドシェイクに係る初期信号が送信されてきた場合の複合機10の処理動作を概念的に示した図であり、図5は、複合機10のCPU11が、通信インタフェース15を通じて、クライアント装置(PC30)から暗号通信
のハンドシェイクに係る初期信号を受信すると、実行するサーバ側通信処理を表すフローチャートである。
サーバ側通信処理を開始すると、複合機10のCPU11は、まずS110にて、フラッシュメモリ13に記録されたクライアント装置提示用のサーバ証明書の数を、初期信号の送信元クライアント装置(PC30)に通知する。即ち、フラッシュメモリ13に記録された送信対象のサーバ証明書の数を記したサーバ証明書数の通知信号を、サーバ証明書の送信に先駆けて、クライアント装置(PC30)に、通信インタフェース15を介して送信する。
また、この処理を終えると、CPU11は、S120に移行し、フラッシュメモリ13に記録されたクライアント装置提示用のサーバ証明書(上記複数種類のサーバ証明書)の全てを、初期信号送信元のクライアント装置(PC30)に、通信インタフェース15を介して送信する(S120)。そして、S120での処理を終えると、CPU11は、S130に移行し、上記初期信号送信元のクライアント装置からサーバ証明書の検証結果に基づき送信される通信許可又は通信拒否を表す通知信号を受信するまで待機し、この通知信号を、通信インタフェース15を介して受信すると、S140に移行する。
また、S140に移行すると、CPU11は、受信した上記通知信号が、通信許可を表す通信許可通知信号であるか否かを判断し、受信した通知信号が、通信許可通知信号であると判断すると(S140でYes)、S150に移行する。尚、通信許可通知信号には、クライアント装置側で選択されたサーバ証明書の識別情報が記されており、S150に移行すると、CPU11は、暗号通信モードに移行し、選択されたサーバ証明書に対応する秘密鍵を用いて、クライアント装置(PC30)と暗号通信する。その後、当該サーバ側通信処理を終了する。
これに対し、CPU11は、受信した上記通知信号が、通信拒否を表す通信拒否通知信号であると判断すると(S140でNo)、S160に移行し、通信中断に必要な所定の処理(終了処理)を実行した後、当該サーバ側通信処理を終了する。
続いて、PC30の構成及び処理動作について説明する。
図1に示すように、本実施例の通信システム1を構成するPC30は、周知のパーソナルコンピュータと同様、CPU31と、作業用メモリとしてのRAM32と、ブートプログラム等を記憶するROM33と、ハードディスク装置(HDD)34と、ネットワークNTに接続された通信インタフェース35と、キーボードやポインティングデバイス等からなる操作部37と、液晶モニタ等からなる表示部39と、を備える。
これら各PC30には、複合機10と通信するための通信プログラムがインストールされており、PC30は、操作部37を通じてユーザから通信先を指定した暗号通信指令が入力されると、この通信プログラムに従い、CPU31にてクライアント側通信処理を実行し、ネットワークNTを通じて、通信先の複合機10と暗号通信する。尚、図6及び図7は、CPU31が実行するクライアント側通信処理を表すフローチャートである。
クライアント側通信処理を開始すると、CPU31は、指定された通信先の複合機10に、暗号通信に係るハンドシェイクの初期信号を、通信インタフェース35を介して送信する(S210)。また、この処理を終えると、通信先の複合機10から送信される上述したサーバ証明書数の通知信号を受信し(S220)、これに続いて複合機10から送信されてくる複数種類のサーバ証明書を、通知された数、全て受信する(S230)。また、S230での処理を終えると、受信したサーバ証明書の数を、パラメータNに設定する
と共に(S240)、パラメータkを値1に設定し(S250)、パラメータZを値0に設定する(S260)。
また、この処理を終えると、CPU31は、S270に移行し、今回、複合機10から受信した複数種類のサーバ証明書の中から、サーバ証明書を一つ選択し、S280に移行する。S280に移行すると、CPU31は、S270で選択したサーバ証明書が示す証明書発行者(最下位認証局)から、この証明書発行者の正当性を階層的に証明する最上位認証局まで、の一連のCA証明書を、ハードディスク装置34内で検索し、ハードディスク装置34内に、一連のCA証明書の全てがインストールされているか否かを判断する(S290)。そして、一連のCA証明書が全てインストールされていないと判断すると(S290でNo)、ネットワークNTを通じて、上記インストールされていないCA証明書を、取得する動作を試みる(S300)。
そして、ネットワークNT経由で上記インストールされていないCA証明書を全て取得することができた場合には(S310でYes)、S320に移行し、ネットワークNT経由で上記インストールされていないCA証明書を全て取得することができなかった場合には(S310でNo)、上記選択したサーバ証明書が正当なサーバ証明書ではないとして、S350に移行する。
一方、CPU31は、S290において、ハードディスク装置34内に、上記選択したサーバ証明書が示す証明書発行者(最下位認証局)から、この証明書発行者の正当性を階層的に証明する最上位認証局までの一連のCA証明書がインストールされていると判断すると(S290でYes)、S300からS310までの処理を実行することなく、S320に移行する。
また、S320に移行すると、CPU31は、上記選択したサーバ証明書についての正当性を、サーバ証明書を発行した最下位認証局から最上位認証局までの一連の認証局50の各CA証明書を用いて、判断する。
具体的には、まず、サーバ証明書が示す証明書発行者(最下位認証局)のCA証明書の正当性を、上位認証局の各CA証明書を用いて判断する。また、最下位認証局のCA証明書を用いて、サーバ証明書のディジタル署名を解読し、ディジタル署名が示すハッシュ値と、サーバ証明書の他の情報から得られたハッシュ値とが一致するか否かを判断する。また、サーバ証明書の所有者が、通信先の複合機10であるか否かを判断し、更に、サーバ証明書の有効期限が切れていないか否かを判断する。そして、これらの判断結果に基づき、サーバ証明書が正当なサーバ証明書であるか否かを総合的に判断する(S320)。
尚、最下位認証局のCA証明書が正当なものであり、このCA証明書を用いて解読したディジタル署名が示すハッシュ値が、サーバ証明書の他の情報から得たハッシュ値と一致し、更に、サーバ証明書の所有者が、通信先の複合機10であり、サーバ証明書の有効期限が切れていない場合、CPU31は、上記選択したサーバ証明書が正当なサーバ証明書であると判断し、それ以外の場合には、上記選択したサーバ証明書が正当なサーバ証明書ではないと判断する。
また、ここで、上記選択したサーバ証明書が正当なものであると判断すると(S320でYes)、CPU31は、S330に移行し、パラメータZの値を、1カウントアップする(Z←Z+1)。その後、S350に移行する。一方、S320で、上記選択したサーバ証明書が正当なものではないと判断すると(S320でNo)、S330の処理を実行せずに、S350に移行する。即ち、本実施例では、サーバ証明書が正当なものである場合に限り、パラメータZの値を、1カウントアップすることにより、正当なサーバ証明
書であると判断されたサーバ証明書の数をカウントする。
また、S350に移行すると、CPU31は、パラメータkの値が、受信したサーバ証明書の数N以上であるか否かを判断し、パラメータkの値がN未満であると判断すると(S350でNo)、S360に移行して、パラメータkの値を、1カウントアップする(k←k+1)。また、この処理を終えると、CPU31は、S270に移行し、複合機10から受信したサーバ証明書の中から、今回の通信処理にて未選択のサーバ証明書を一つ選択し、選択したサーバ証明書について、S280以降の処理を実行する。
そして、S350で、パラメータkが値N以上であると判断すると(S350でYes)、CPU31は、S370に移行し、パラメータZが、予め定められた閾値Zth以上であるか否かを判断する。尚、本実施例では、閾値Zthとして、例えば、値2(Zth=2)が設定されるものとする。
そして、パラメータZが閾値Zth以上であると判断すると(S370でYes)、CPU31は、通信先の複合機10に対し、通信を許可する旨の通知信号である通信許可通知信号を、通信インタフェース35を介して送信する(S380)。
尚、通信許可通知信号は、暗号通信に使用する公開鍵の識別情報(例えば、サーバ証明書のシリアル番号)を記載してなるものである。即ち、本実施例では、複合機10からサーバ証明書を複数種類受信するため、この中から確度の高いサーバ証明書を一つ選択して、この公開鍵を、暗号通信に使用する公開鍵に選択し、この公開鍵の識別情報を記した通信許可通知信号を送信する。具体的に、上記暗号通信に使用する公開鍵は、正当であると判断されたサーバ証明書の公開鍵の中から、ランダムに選択されてもよいが、好ましくは、正当性検証時に使用したCA証明書の数の最も多かったサーバ証明書(例えば、図3に示す認証局Fにて発行されたサーバ証明書)の公開鍵を、暗号通信に使用する公開鍵に選択されるとよい。
また、S380での処理を終えると、CPU31は、暗号通信モードに移行し、上記選択した公開鍵を用いて、複合機10と暗号通信する(S390)。その後、当該クライアント側通信処理を終了する。S390では、例えば、公開鍵を用いて、印刷データを暗号化し、これを複合機10に送信する処理を実行する。その他、別例として、S390では、公開鍵を用いて、セッション鍵を取り決めるための暗号通信を複合機10と行い、その後に、セッション鍵を用いて、印刷データを暗号化し、これを複合機10に送信する処理を実行する。
これに対し、S370で、パラメータZが閾値Zth未満であると判断すると、CPU31は、S400に移行し、通信先の複合機10に、通信を拒否する旨の通知信号である通信拒否通知信号を送信し、その後、通信中断に必要な所定の処理(終了処理)を実行した後(S410)、当該クライアント側通知処理を終了する。
以上、本実施例の通信システム1について説明したが、この通信システム1では、複合機10が、クライアント装置(PC30)と通信する際、正当性検証時に必要なCA証明書の組が異なる複数種類のサーバ証明書を、クライアント装置に送信する。一方、クライアント装置(PC30)では、CA証明書の不足により、複合機10から送信されてきた複数種類のサーバ証明書の全てについての正当性を検証することができない場合であっても、正当なサーバ証明書であると認められるサーバ証明書が閾値Zth以上ある場合、複合機10から提示されたサーバ証明書を信頼して、通信を継続し、この公開鍵を用いて、複合機10と暗号通信をする。
従来のSSL通信では、ハンドシェイク時、サーバ証明書を一つしかクライアント装置に提示しないため、クライアント装置では、このサーバ証明書の正当性の検証に必要なCA証明書が手元にない場合、通信を継続することができなかった。
しかしながら、本実施例では、上述したように、複合機10が、正当性の検証に必要なCA証明書の組が異なるサーバ証明書の複数を、クライアント装置に送信するため、クライアント装置(PC30)において一部CA証明書が不足していても、クライアント装置(PC3O)に、不足しているCA証明書が不要なサーバ証明書を提示することができ、これによりクライアント装置(PC30)と暗号通信することができる。
従って、本実施例のように通信システム1を構築すれば、認証局50のシステムダウンに強い通信システムを構築することができる。
例えば、本実施例において、Zth=2に設定されていることを前提とすれば、認証局C、認証局D、認証局E、認証局Fのいずれか一つがシステムダウンしていても、PC30は、認証局Dで発行されたサーバ証明書、認証局Fで発行されたサーバ証明書、及び、認証局Cで発行されたサーバ証明書の少なくとも2つについて、必要なCA証明書を、サーバ証明書の検証時に、自己のハードディスク装置34から、又は、ネットワークNT経由で取得することができる。従って、これらの認証局がシステムダウンしていても、本実施例の通信システム1では、安全に暗号通信を行うのに十分に、サーバ証明書を検証することができて、安全に、暗号通信を行うことができる。
ところで、上記の通信システム1では、正当なものであると認められたサーバ証明書の数Zが閾値Zth以上である場合、通信継続を許可し、正当なものであると認められたサーバ証明書の数Zが閾値Zth未満である場合には、通信継続を禁止するようにしたが、このように通信の許可/禁止を切り替える場合には、サーバ証明書を証明する認証局50の階層を考慮して、これを切り替えることができない。
従って、上記通信システム1においては、クライアント側通信処理の内容を、図8に示すように変更すると、一層好ましい(変形例)。
図8は、変形例の通信システム1におけるPC30がCPU31にて実行するクライアント側通信処理を表すフローチャートである。以下には、変形例の通信システム1について説明するが、変形例の通信システム1は、PC30のCPU31が実行するクライアント側通信処理におけるS330の処理内容を、上記実施例に対し、変更した程度のものである。従って、以下では、変形例の説明として、クライアント側通信処理の内容についてのみ説明する。
変形例におけるPC30のCPU31は、クライアント側通信処理を開始すると、S330の処理を除いて、基本的に上記実施例と同内容の処理を実行する。但し、S320にて、S270で選択したサーバ証明書が正当なサーバ証明書であると判断すると(S320でYes)、CPU31は、S430に移行し、上記サーバ証明書の判断結果の確度を評価して、これを点数化する。点数化の手法としては、様々なものが考えられるが、本実施例では、正当なものと判断した上記サーバ証明書に対し、検証に用いたCA証明書の数に対応した評価点Z0を付与する。
例えば、図9に示すように、検証に用いたCA証明書の数が1つであるならば、対応するサーバ証明書に対し、評価点0を付与する。また、検証に用いたCA証明書の数が2つであるならば、対応するサーバ証明書に対し、評価点1を付与する。その他、検証に用いたCA証明書の数が3つであるならば、サーバ証明書に対して評価点2を付与し、検証に
用いたCA証明書の数が4つであるならば、サーバ証明書に対して評価点3を付与する。このような評価点の付与に係る処理は、図9に示すような構成の基準テーブルを、ハードディスク装置34にインストールしておき、CPU31がこれを参照することにより実現することができる。
S430において、上述の手法で評価点Z0を決定すると、CPU31は、S440に移行し、決定した評価点Z0を、パラメータZに加算して、各サーバ証明書についての評価点Z0の合算値を求める(Z←Z+Z0)。また、この処理を終えると、CPU31は、S350に移行して、パラメータkが値N以上であるか否かを判断し、パラメータkが値N未満であると判断すると(S350でNo)、パラメータkを1カウントアップした後(S360)、S270に移行する。
この他、パラメータkが値N以上であると判断すると(S350でYes)、CPU31は、S370(図7参照)に移行し、評価点の合算値を表すパラメータZが、閾値Zth以上であるか否かを判断する。そして、パラメータZが、閾値Zth以上である場合には、S380〜S390の処理を実行して、後続の通信を継続し、パラメータZが閾値Zth未満である場合には、S400〜S410の処理を実行して、通信を中断する。
以上、変形例の通信システム1について説明したが、この通信システム1によれば、PC30が、複合機10から提示された各サーバ証明書に対して、サーバ証明書の正当性検証結果に対応する評価点を付与する。具体的に、検証結果が、サーバ証明書が正当なものであるとの検証結果である場合、即ち、S320でYesと判断した場合には、このサーバ証明書に対して、検証に用いたCA証明書の数に対応する評価点を付与する。一方、検証結果が、サーバ証明書が正当なものではないとの検証結果である場合、即ち、S320でNo又はS310でNoと判断した場合には、このサーバ証明書に対して評価点ゼロを付与する。
従って、この通信システム1によれば、サーバ証明書の検証結果についての確度を、総合的に数値化することができて、合算Zが所定の基準Zthを満たしているか否かにより、適切に、通信を許可/禁止することができる。よって、この変形例によれば、認証局50のシステムダウンに強く、且つ、セキュリティ性の高い通信システムを構築することができる。
尚、「特許請求の範囲」に記載の証明書記憶手段は、上記実施例において、フラッシュメモリ13に相当する。また、証明書送信手段は、S120の処理にて実現され、検証手段は、S280からS320までの処理にて実現され、許可禁止手段は、S370の処理、又は、S430,S440及びS370の処理により実現されている。
また、本発明は、上記実施例に限定されるものではなく、種々の態様を採ることができる。例えば、上記実施例では、図3に示す構成の認証システムにて発行された各サーバ証明書が、複合機10にインストールされた通信システム1について説明したが、図3に示す認証システムの構成は一具体例であり、本発明は、このような認証システムの構成に限定されるものではない。
本実施例の通信システム1の構成を表すブロック図である。 通信システム1で用いられる電子証明書の構成を表す説明図である。 複合機10のサーバ証明書を発行する認証システムに関する説明図である。 複合機10の処理動作を概念的に示した説明図である。 複合機10のCPU11が実行するサーバ側通信処理を表すフローチャートである。 PC30のCPU31が実行するクライアント側通信処理を表すフローチャートである。 PC30のCPU31が実行するクライアント側通信処理を表すフローチャートである。 PC30のCPU31が実行する変形例のクライアント側通信処理を表すフローチャートである。 評価点を規定する基準テーブルの構成を表す説明図である。
符号の説明
1…通信システム、10…ディジタル複合機、11,31…CPU、12,32…RAM、13…フラッシュメモリ、15,35…通信インタフェース、17…印刷部、19…読取部、21…表示操作部、23…USBコネクタ、30…PC、33…ROM、34…ハードディスク装置、37…操作部、39…表示部、50…認証局、NT…ネットワーク

Claims (5)

  1. CA証明書の正当性が上位認証局によって証明される階層型の認証システム、の最下位認証局でディジタル署名された電子証明書をクライアント装置に提示し、クライアント装置と通信を行うサーバ装置であって、
    自装置に対し発行された電子証明書であって、前記認証システムの最下位認証局でディジタル署名された電子証明書を記憶する証明書記憶手段と、
    クライアント装置との通信にあたり、前記証明書記憶手段が記憶する電子証明書を、クライアント装置に提示するために、前記クライアント装置に送信する証明書送信手段と、
    を備え、
    前記証明書記憶手段は、前記電子証明書として、電子証明書の正当性検証時にクライアント装置側で必要なCA証明書の組が異なる複数種類の電子証明書を記憶し、
    前記証明書送信手段は、前記証明書記憶手段が記憶する複数種類の電子証明書を、クライアント装置に提示するために、前記クライアント装置に送信することを特徴とするサーバ装置。
  2. サーバ装置及びクライアント装置を備え、サーバ装置とクライアント装置との間で通信を行うにあたっては、CA証明書の正当性が上位認証局によって証明される階層型の認証システムの最下位認証局でディジタル署名されたサーバ装置の電子証明書を、前記サーバ装置がクライアント装置に提示する通信システムであって、
    前記サーバ装置は、
    自装置に対し発行された電子証明書であって、前記認証システムの最下位認証局でディジタル署名された電子証明書を記憶する証明書記憶手段と、
    クライアント装置との通信にあたり、前記証明書記憶手段が記憶する電子証明書を、クライアント装置に提示するために、前記クライアント装置に送信する証明書送信手段と、
    を備え、
    前記証明書記憶手段は、前記電子証明書として、電子証明書の正当性検証時にクライアント装置側で必要なCA証明書の組が異なる複数種類の電子証明書を記憶し、
    前記証明書送信手段は、前記証明書記憶手段が記憶する複数種類の電子証明書を、クライアント装置に提示するために、前記クライアント装置に送信する構成にされ、
    前記クライアント装置は、
    前記サーバ装置から受信した複数種類の電子証明書の夫々についての正当性を、電子証明書を発行した最下位認証局から最上位認証局までの一連の認証局の各CA証明書を用いて検証する検証手段
    を備え、
    当該通信システムは、更に、
    前記検証手段による検証結果が、予め定められた条件を満足する場合、サーバ装置とクライアント装置との間の通信を許可し、前記検証手段による検証結果が前記条件を満足しない場合、サーバ装置とクライアント装置との間の通信を禁止する許可禁止手段
    を備えることを特徴とする通信システム。
  3. 前記許可禁止手段は、前記クライアント装置が前記サーバ装置から受信した複数種類の電子証明書の内、前記検証手段で正当性が肯定された電子証明書の数が、所定数以上である場合、サーバ装置とクライアント装置との間の通信を許可し、前記検証手段で正当性が肯定された電子証明書の数が、所定数未満である場合、サーバ装置とクライアント装置との間の通信を禁止することを特徴とする請求項2記載の通信システム。
  4. 前記許可禁止手段は、前記クライアント装置が前記サーバ装置から受信した複数種類の電子証明書の夫々についての前記検証手段による検証結果を点数化し、各電子証明書に対応する点数の合算が予め定められた基準を満たす場合、サーバ装置とクライアント装置と
    の間の通信を許可し、前記各電子証明書に対応する点数の合算が前記基準を満たさない場合、サーバ装置とクライアント装置との間の通信を禁止することを特徴とする請求項2記載の通信システム。
  5. クライアント装置との通信に際して前記クライアント装置に電子証明書を提示するために、自装置に対して発行された電子証明書を記憶する記憶媒体を備えたサーバ装置のコンピュータに、
    クライアント装置との通信にあたり、CA証明書の正当性が上位認証局によって証明される階層型の認証システムの最下位認証局でディジタル署名された電子証明書であって、電子証明書の正当性検証時にクライアント装置側で必要なCA証明書の組が異なる複数種類の電子証明書を、前記記憶媒体から読み出し、読み出した前記複数種類の電子証明書を、クライアント装置に提示するために、前記クライアント装置に送信する機能
    を実現させるためのプログラム。
JP2006098710A 2006-03-31 2006-03-31 通信システム、サーバ装置、及び、プログラム Expired - Fee Related JP4270219B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006098710A JP4270219B2 (ja) 2006-03-31 2006-03-31 通信システム、サーバ装置、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006098710A JP4270219B2 (ja) 2006-03-31 2006-03-31 通信システム、サーバ装置、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2007274435A JP2007274435A (ja) 2007-10-18
JP4270219B2 true JP4270219B2 (ja) 2009-05-27

Family

ID=38676756

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006098710A Expired - Fee Related JP4270219B2 (ja) 2006-03-31 2006-03-31 通信システム、サーバ装置、及び、プログラム

Country Status (1)

Country Link
JP (1) JP4270219B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8904169B2 (en) * 2009-09-15 2014-12-02 Symantec Corporation Just in time trust establishment and propagation
JP5569201B2 (ja) * 2010-07-12 2014-08-13 株式会社リコー 画像処理装置、電子証明書設定方法及び電子証明書設定プログラム
JP2012100188A (ja) * 2010-11-05 2012-05-24 Tokai Rika Co Ltd 認証システム
CA2824696A1 (en) * 2011-01-28 2012-08-02 Royal Canadian Mint/Monnaie Royale Canadienne Controlled security domains
US9160543B2 (en) * 2013-05-07 2015-10-13 The Boeing Company Verification of aircraft information in response to compromised digital certificate

Also Published As

Publication number Publication date
JP2007274435A (ja) 2007-10-18

Similar Documents

Publication Publication Date Title
KR100613156B1 (ko) 정보 처리 장치에 있어서의 데이터 보안
US7797533B2 (en) Communication system and method in public key infrastructure
JP4345796B2 (ja) 通信方法、通信システムならびに通信システムを構成するサーバ、クライアントおよびコンピュータプログラム
JP4124230B2 (ja) 印刷装置及びプログラム
JP4449935B2 (ja) 通信システム、印刷装置、及び、プログラム
JP2007274060A (ja) 通信装置および通信プログラム
JP4973300B2 (ja) 印刷プログラムおよび印刷装置
US20070079125A1 (en) Interface protocol method and system
JP4270219B2 (ja) 通信システム、サーバ装置、及び、プログラム
JP6940812B2 (ja) 情報処理装置、および、コンピュータプログラム
JP4513272B2 (ja) 処理サービス提供装置
JP2010204722A (ja) 画像形成装置、ジョブ制御方法、及び記録媒体
JP2010074431A (ja) 外部認証を用いた認証機能連携機器、認証機能連携システム及び認証機能連携プログラム
JP2007329916A (ja) ドキュメント処理装置のユーザ認証システムおよび方法
JP2006251996A (ja) クライアント装置、画像処理システム、クライアント装置の制御方法、プログラム及び記録媒体
JP4572324B2 (ja) デバイス識別情報管理システムおよびデバイス識別情報管理方法
JP4396377B2 (ja) 印刷制御システム、サーバ装置
US20080304660A1 (en) Image forming apparatus allowing easy management relating to user's usage
JP2006270646A (ja) 電子証明書管理装置
US8447972B2 (en) Information processing apparatus, information processing method, and control program
JP2007274388A (ja) ネットワークシステム、通信装置、及び、プログラム
JP2006164042A (ja) 情報処理装置、画像形成装置、印刷システム、画像形成装置制御プログラム、画像形成装置プログラム及び記録媒体
JP2009093578A (ja) 画像処理システム、画像処理装置及び画像処理プログラム
JP4575652B2 (ja) 印刷システム、印刷方法、プログラム及び記録媒体
JP2007141021A (ja) 画像処理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090114

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: 20090203

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: 20090216

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

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4270219

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140306

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees