認証用プログラム、認証用装置および認証方法
【課題】通信ネットワークのセキュリティレベルを確保しつつ、情報処理装置における計算機資源の消費を極力抑える。
【解決手段】クライアント11は、サーバ10の認証の際に、当該クライアント11がネットワーク8内に存在することを確認できた場合には、サーバ10の電子証明書の検証をすることなくサーバ10の認証が成功したと決定する。一方、クライアント11Aとして示すようにネットワーク8外に存在する場合には、クライアント11Aは、サーバ10の電子証明書の検証に成功したことを条件として当該サーバ10の認証に成功したと決定する。
【解決手段】クライアント11は、サーバ10の認証の際に、当該クライアント11がネットワーク8内に存在することを確認できた場合には、サーバ10の電子証明書の検証をすることなくサーバ10の認証が成功したと決定する。一方、クライアント11Aとして示すようにネットワーク8外に存在する場合には、クライアント11Aは、サーバ10の電子証明書の検証に成功したことを条件として当該サーバ10の認証に成功したと決定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置における認証用プログラム、認証用装置および認証方法に関し、特に、通信ネットワークにおけるセキュリティレベルの確保とユーザの利便性の低下の回避との双方を実現できる認証用プログラム、認証用装置および認証方法に関する。
【背景技術】
【0002】
従来から、情報処理装置において他の情報処理装置との通信を行なう場合に、通信相手を認証する方法として認証局等により発行された証明書を用いる認証技術が利用されている。
【0003】
このような技術に関しては、特許文献1等の種々の文献に開示がなされている。
特許文献1には、証明書の署名の検証により多大な計算機資源が消費される事態を回避すべく、当該検証を行なうサーバにおいて、一旦有効性が確保できた証明書の情報を有効証明書リストに蓄積し、当該有効証明書リストをCRL(Certificate Revocation List:証明書失効リスト)によって更新し、そして、当該有効証明書リスト内の証明書が有効期間内にあれば、検証対象の証明書が当該有効証明書リストに蓄積されていることを条件に、当該証明書の署名の取得や、上位証明書の取得、上位証明書の公開鍵の取得、証明書の署名の検証等の処理をすることなく、当該証明書が有効であるものとして取扱う技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−179724号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の特許文献1に記載の技術においても、有効証明書リストに掲載されていない新規の証明書の検証を行なう場合には、証明書の署名の検証等の処理が必要とされる。
【0006】
なお、証明書の署名の検証等の処理は、計算機資源を消費し、コストが生じるとともに、処理時間が比較的長くユーザに不便な思いをさせる一方で、通信ネットワークのセキュリティを担保する上では容易には省略することはできない。
【0007】
本発明は、係る実情に鑑み考え出されたものであり、その目的は、通信ネットワークのセキュリティレベルを確保しつつ、情報処理装置における計算機資源の消費を極力抑えることのできる、認証用プログラム、認証用装置および認証方法を提供することである。
【課題を解決するための手段】
【0008】
本発明に従った認証用プログラムは、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なうコンピュータにおいて実行される、コンピュータ読取可能なプログラムであって、コンピュータに、当該コンピュータが、特定の範囲に属しているか否かを特定するための情報である特定用情報を取得するステップと、通信相手端末を認証の成否を決定するステップとを実行させ、通信相手端末の認証の成否を決定するステップでは、特定用情報が、コンピュータが特定の範囲に属している状態に対応する情報である場合には、コンピュータが特定の範囲に属していない状態に対応する情報である場合よりも、受信した電子証明書の検証の処理負荷を軽減させる。
【0009】
また、本発明の認証用プログラムでは、通信相手端末の認証の成否を決定するステップでは、特定用情報が、コンピュータが特定の範囲に属していない状態に対応する情報である場合には、受信した電子証明書の検証において、失効証明書リストの更新を実行し、特定用情報が、コンピュータが特定の範囲に属している状態に対応する情報である場合には、受信した電子証明書の検証において、失効証明書リストの更新を実行しない。
【0010】
また、本発明の認証用プログラムは、通信相手端末の認証の成否を決定するステップでは、特定用情報が、コンピュータが特定の範囲に属している状態に対応する情報である場合には、受信した電子証明書の検証を実行することなく、通信端末の認証に成功したと決定する。
【0011】
また、本発明の認証用プログラムでは、特定用情報は、当該コンピュータが、特定のネットワークに接続している状態であるか否かを示す情報である。
【0012】
また、本発明の認証用プログラムでは、特定用情報は、特定のネットワークに接続している通信装置との間で通信可能であるか否かを示す情報である。
【0013】
また、本発明の認証用プログラムでは、特定のネットワークは、ファイアウォールによって外部からの不正なアクセスを防止され、特定用情報は、特定のネットワークに対してファイアウォールによって隔たれている所定のネットワークに接続している通信装置との間で通信が可能であるか否かを示す情報である。
【0014】
また、本発明の認証用プログラムでは、特定用情報は、コンピュータを操作するユーザの属性である。
【0015】
また、本発明の認証用プログラムでは、特定用情報は、コンピュータが認証相手端末の認証を開始した時間帯である。
【0016】
また、本発明の認証用プログラムは、コンピュータに、受信した電子証明書の有効期限の満了から一定期間以上経過している場合には、通信相手端末に対して、その旨の警告する情報を出力するステップをさらに実行させる。
【0017】
本発明に従った認証用装置は、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なう認証用装置であって、認証用装置が特定の範囲に属しているか否かを特定するための情報である特定用情報を取得する特定用情報取得部と、通信相手端末を認証の成否を決定する認証部とを備え、認証部は、特定用情報が、認証用装置が特定の範囲に属している状態に対応する情報である場合には、認証用装置が特定の範囲に属していない状態に対応する情報である場合よりも、受信した電子証明書の検証の処理負荷を軽減させる。
【0018】
本発明に従った認証方法は、コンピュータに、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なう方法であって、当該コンピュータが、特定の範囲に属しているか否かを特定するための情報である特定用情報を取得するステップと、通信相手端末を認証の成否を決定するステップとを備え、通信相手端末の認証の成否を決定するステップは、特定用情報が、コンピュータが特定の範囲に属している状態に対応する情報である場合には、コンピュータが特定の範囲に属していない状態に対応する情報である場合よりも、受信した電子証明書の検証の処理負荷を軽減させる。
【発明の効果】
【0019】
本発明によれば、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手の認証を行なうコンピュータにおいて、当該コンピュータが属している範囲に基づいて、相手端末から受信した電子証明書の検証の、処理内容(処理の有無も含めて)が決定され、当該内容に基づいて、処理負荷が決定される。
【0020】
これにより、コンピュータが特定の範囲に属しないことにより、通信ネットワークのセキュリティが確保されていないと判断される状態にある場合には、当該コンピュータに、受信した電子証明書の検証を厳重に行なわせた上で、相手端末の認証の可否を決定させることができる。一方、当該コンピュータが特定の範囲に属することにより通信ネットワークのセキュリティが確保された状態にあると判断される場合には、当該コンピュータにおける、相手端末から受信した電子証明書の検証についての処理を軽減または省略させることができる。
【0021】
したがって、当該コンピュータが属する通信ネットワークのセキュリティレベルを確保しつつ、当該コンピュータにおける計算機資源の消費を極力抑えることができる。
【図面の簡単な説明】
【0022】
【図1】本発明の認証用装置の一実施の形態であるクライアントコンピュータを含む通信ネットワークの構成を模式的に示す図である。
【図2】図1のクライアント装置のハードウェア構成を模式的に示す図である。
【図3】図1のサーバ装置のハードウェア構成を模式的に示す図である。
【図4】図1クライアント装置においてサーバ装置の認証が行なわれるための、通信ネットワークにおけるデータのやり取りを、模式的に示す図である。
【図5】図1のクライアント装置の起動時等に実行される、通信機器との間の通信確認のための処理のフローチャートである。
【図6】図1のクライアント装置におけるサーバ装置の認証の際に実行される処理のフローチャートである。
【図7】図1のネットワーク構成の変形例を示す図である。
【図8】図1のクライアント装置において、ログインユーザが異なる状態を模式的に示す図である。
【図9】図2のクライアント装置のハードウェア構成の変形例を示す図である。
【図10】本発明の認証用装置の第2の実施の形態が存在するネットワークの構成を模式的に示す図である。
【図11】本発明の認証用装置の第3の実施の形態が存在するネットワークの構成を模式的に示す図である。
【発明を実施するための形態】
【0023】
以下、本発明の認証用装置の実施の形態について、図面を参照しつつ説明する。なお、以下の説明では、特記する場合を除き、同じ構成要素には同じ符号を付し、詳細な説明は繰返さない。
【0024】
[第1の実施の形態]
図1は、本発明の認証用装置の一実施の形態であるクライアントコンピュータ(以下、「クライアント装置」と呼ぶ)11を含む通信ネットワークの構成を模式的に示す図である。
【0025】
本実施の形態では、情報通信機器の通信環境として、ファイアウォール装置12等のシステムによりセキュリティの確保された社内のネットワーク8と、セキュリティの確保されていない社外のネットワーク9が存在するものとする。ネットワーク8は、ファイアウォール装置12によって、外部からの不正なアクセスを防止されている。ファイアウォール装置12は、通信内容や、通信先・通信元によって、通信の通過の可否を判断し、また、外部から内部へのアクセスを遮断する。
【0026】
クライアント装置11は、サーバ装置10との通信開始時に、当該サーバ装置10の認証を行なう。サーバ装置10の認証の成否は、基本的には、サーバ装置10の電子証明書の検証の成否に基づいて決定される。
【0027】
なお、本実施の形態では、クライアント装置11は、当該クライアント装置11がネットワーク8内に存在することを確認できた場合には、通信相手の電子証明書の検証をすることなく通信相手を認証し、当該通信相手との通信を開始することができる。なお、クライアント装置11Aとして示すようにネットワーク8外に存在する場合には、クライアント装置11Aは、通信相手の電子証明書の検証に成功したことを条件として当該通信相手の認証に成功したと決定する。
【0028】
なお、ネットワーク8には、クライアント装置11がネットワーク8内に存在するか否かを確認するために利用される通信機器13が含まれる。
【0029】
以下、クライアント装置11における、サーバ装置10の認証について説明する。
図2は、クライアント装置11のハードウェア構成を模式的に示す図である。
【0030】
図2を参照して、クライアント装置11は、当該クライアント装置11の動作を全体的に制御するCPU(Central Processing Unit)111を含む。また、クライアント装置11は、CPU111のワークエリア等となるRAM(Random Access Memory)112と、CPU111が実行するプログラム等を記録するROM(Read Only Memory)113と、他の機器との間で情報の送受信を行なうための通信部114と、種々のデータを記憶する記憶部115とを含む。
【0031】
クライアント装置11の記憶部115には、通信相手の証明書を検証するためのルート証明書115A、自機の通信環境に関する情報であるネットワーク情報115B、他の機器に送信するデータ等を含むデータ115Cが記憶されている。
【0032】
図3は、サーバ装置10のハードウェア構成を模式的に示す図である。
サーバ装置10は、当該サーバ装置10の動作を全体的に制御するCPU101を含む。また、サーバ装置10は、CPU101のワークエリア等となるRAM102と、CPU101が実行するプログラム等を記録するROM103と、他の機器との間で情報の送受信を行なうための通信部104と、種々のデータを記憶する記憶部106とを含む。
【0033】
サーバ装置10の記憶部106には、ルート証明書106Aと、当該サーバ装置10について発行された電子証明書であるサーバ証明書106Bと、通信相手に送信するためのデータ等を含むデータ106Cと、自機の通信環境を特定するための情報であるネットワーク情報106Dとが記憶されている。
【0034】
サーバ装置10のルート証明書106Aは、クライアント装置11のルート証明書115Aと同じ認証局が署名して発行したものとする。
【0035】
図4は、クライアント装置11においてサーバ装置10の認証が行なわれるための、通信ネットワークにおけるデータのやり取りを、模式的に示す図である。
【0036】
クライアント装置11は、通信機器13に対して、たとえば、クライアント装置11の起動時(OS(Operating System)の起動時等)、当該クライアント装置11のネットワーク8との接続確立時、または、サーバ装置10との通信の開始時に、ping(Packet INternet Groper)や、HTTP(HyperText Transfer Protocol)、POP(Post Office Protocol)、SMTP(Simple Mail Transfer Protocol)、SMB(Server Message Block)、LDAP(Lightweight Directory Access Protocol)、Exchange(Microsoft社(登録商標)のメッセージングサーバソフトウェア)、OCSP(Online Certificate Status Protocol)等の各種通信プロトコルを利用して通信を試みる。
【0037】
そして、クライアント装置11では、通信機器13から応答があったか否かが判断され、当該判断の結果が、ネットワーク情報115Bとして記憶される。
【0038】
そして、クライアント装置11では、サーバ装置10の認証のために当該サーバ装置10からサーバ証明書106Bを受信すると、ネットワーク情報115Bとして記憶している情報に基づいて、サーバ証明書106Bの検証を行なうか否かを判断する。具体的には、ネットワーク情報115Bとして、通信機器13から応答がなかったという情報が記憶されていれば、クライアント装置11では、サーバ装置10から受信したサーバ証明書106Bを、ルート証明書115Aを用いて検証し、当該サーバ証明書106Bの検証に成功したことを条件として、サーバ装置10の認証に成功したとして、当該サーバ装置10との通信を開始する。
【0039】
なお、サーバ装置10では、サーバ装置10の公開鍵106Xと秘密鍵106Yが保持されている。そして、サーバ装置10は、サーバ証明書106Bに署名して、クライアント装置11へ送信する。クライアント装置11へ送信されるサーバ証明書106Bには、サーバ装置10の公開鍵106Xが含まれる。そして、クライアント装置11は、ルート証明書115Aに含まれている公開鍵でサーバ証明書106Bの電子署名を検証する。
【0040】
また、サーバ証明書106Bの検証では、当該電子署名の検証に成功したこと、証明書の有効期限・鍵の用途が正しいこと、記憶部115に記憶しているCRLを更新して当該CRLにサーバ証明書106Bまたはルート証明書115Aがリストされていないことの少なくとも1つが実行される。
【0041】
一方、ネットワーク情報115Bとして、通信機器13から応答があったという情報が記憶されていれば、クライアント装置11では、サーバ証明書106Bの検証をすることなく、サーバ装置10の認証に成功したと決定して、当該サーバ装置10との間での通信が開始される。
【0042】
以上説明したように、本実施の形態では、クライアント装置11は、pingや各種通信プロトコルを利用して通信機器13との通信が可能である場合には、自機がファイアウォール装置12でセキュリティが確保されたネットワーク8内に存在している(ネットワーク8に接続している)と判断し、サーバ装置10の認証の際に、当該サーバ装置10のサーバ証明書106Bの検証を行なうことなく、サーバ装置10の認証に成功したものとして、サーバ装置10との通信を開始する。
【0043】
クライアント装置11が、クライアント装置11Aとして示されるように、ネットワーク8外のネットワーク9に存在する場合には、ファイアウォール装置12に通信を遮断されることにより、通信機器13とは通信することができないと考えられる。よって、本実施の形態では、クライアント装置11が通信機器13と通信可能であるか否かにより、クライアント装置11がネットワーク8内に存在するか否かが決定される。
【0044】
一方、クライアント装置11が、通信機器13との間で、pingや上記各種通信プロトコルでの通信が可能であることを確認できない場合(ネットワーク情報115Bとして、通信機器13からの応答がなかったことを示す情報が記憶されている場合)には、クライアント装置11におけるサーバ装置10の認証において、サーバ装置10の証明書の検証が実行される。
【0045】
本実施の形態では、クライアント装置11がこのようにサーバ装置10の認証を行なうことにより、セキュリティの確保された範囲に存在する機器においては電子証明書の有効性の確認を省略することになる。これにより、クライアント装置11がセキュリティの確保された範囲に存在する場合には、サーバ装置10の認証の処理時間の短縮により利便性を向上されることができ、電子証明書の有効性の確認やCRLの更新についてのコストを削減することができる一方で、当該クライアント装置11がセキュリティの確保されていない範囲に存在する場合には、電子証明書の有効性を確認させるため、ネットワーク内のセキュリティレベルを保つことができる。
【0046】
クライアント装置11によって実行される、サーバ装置10の認証に関する処理について、より具体的に説明する。
【0047】
図5は、クライアント装置11の起動時等に実行される、通信機器13との間の通信確認のための処理のフローチャートである。
【0048】
図5を参照して、当該処理では、まずステップSA10で、クライアント装置11から通信機器13に対して、通信の可否を確認するための情報が送信される。
【0049】
そして、クライアント装置11では、ステップSA20で、ステップSA10における情報の送信から所定時間内に、通信機器13から当該送信した情報に対する応答があったか否かが判断される。
【0050】
そして、応答があったと判断されると、ステップSA30で、ネットワーク情報115Bとして「応答あり」の情報が記憶されて、処理が終了される。
【0051】
一方、応答がなかったと判断されると、ステップSA40で、ネットワーク情報115Bとして「応答なし」という情報が記憶されて、処理が終了される。
【0052】
図6は、クライアント装置11におけるサーバ装置10の認証の際に実行される処理のフローチャートである。
【0053】
図6を参照して、クライアント装置11は、ステップSB10で、サーバ装置10から当該サーバ装置10の証明書(サーバ証明書106B)を受信すると、ステップSB30で、ネットワーク情報115Bに記憶された情報を読み出す。
【0054】
そして、ステップSB40で、クライアント装置11では、ネットワーク情報115Bに記憶された情報に基づいて、当該クライアント装置11が通信機器13と通信可能であったか否かが判断される。通信可能であったと判断されると、ステップSB70へ処理が進められ、通信可能でなかったと判断されると、ステップSB50へ処理が進められる。
【0055】
ステップSB50では、クライアント装置11では、サーバ装置10から受信したサーバ証明書106Bの検証が行なわれる。
【0056】
そしてステップSB60で、サーバ証明書106Bの検証が成功したか否かが判断され、成功したと判断されるとステップSB70へ処理が進められる。一方、検証が失敗したと判断されるとステップSB80に処理が進められ、通信エラーとして報知等がなされて処理が中断される。
【0057】
ステップSB70では、クライアント装置11は、サーバ装置10の認証が成功したとして、サーバ装置10との間で通信を開始する処理がなされて、図6に示された処理が終了する。
【0058】
また、本実施の形態では、クライアント装置11は、サーバ装置10が、通信相手とするに足りる正当な機器であることを検証するために、当該サーバ装置10から送信されたサーバ証明書の検証を行なっているが、サーバ装置10の正当性の検証は他の態様であってもよい。
【0059】
また、本実施の形態では、クライアント装置11は、サーバ装置10の正当性の検証の際に、図5を参照して説明した処理によって得られた通信機器13との通信結果(ネットワーク情報115B)が用いられる。当該通信結果を得る際(ステップSA30,SA40)において、クライアント装置11は、通信機器13を同定するのに、たとえば、通信機器13について予め定められたMAC(Media Access Control)アドレス等の固有のIDが用いられる。この場合には、通信機器13のMACアドレス等の固有のIDは、クライアント装置11の記憶部115に予め登録されているものとする。
【0060】
本実施の形態では、クライアント装置11が、ネットワーク8内に存在するか否かにより、つまり、クライアント装置11がネットワーク8(特定のネットワーク)に接続している状態であるか否かにより、特定の範囲に存在するか否かが判断されることとなる。
【0061】
なお、以上説明した本実施の形態では、クライアント装置11が社内のネットワーク8内に存在するか否かによって当該クライアント装置11における電子証明書の有効性確認の処理が異なる旨が説明されたが、クライアント装置11が存在するか否かを判断されるネットワークに限られない。他のネットワークの例としては、政府機関のネットワーク、学校のネットワーク、データセンターのネットワーク、インターネットサービスプロバイダ(ISP)のネットワーク等が挙げられる。
【0062】
[第2の実施の形態]
第1の実施の形態では、クライアント装置11が通信機器13と通信が可能であるか否かによって、クライアント装置11が特定の範囲に存在するか否かが判断された。そして、当該判断の結果に基づいて、サーバ装置10の認証ができたか否かの判断に、サーバ装置10の証明書の検証が必要とされるか否かが決定された。つまり、クライアント装置11が通信機器13と通信可能であると判断されれば、サーバ装置10の証明書の検証をすることなく、サーバ装置10の認証に成功したと判断される。
【0063】
なお、上記したような、「クライアント装置11が特定の範囲に存在するか否か」の判断は、他の態様によってなされてもよい。以下、他の態様を列挙する。
【0064】
(VPNサーバによる判断)
たとえば、図1に示したネットワーク8およびネットワーク9の変形例を図7に示す。
【0065】
本実施の形態では、ネットワーク8内に、VPN(Virtual Private Network)サーバ装置15が設けられている。VPNサーバ装置15は、その通信相手がネットワーク8内外のいずれに存在しているかを判定する機能を有するものとする。
【0066】
そして、クライアント装置11に、その起動時等にVPNサーバ装置15と通信させ、VPNサーバ装置15によるクライアント装置11についてのネットワーク8内外のいずれに存在しているかを判定結果を、ネットワーク情報115Bとしてクライアント装置11に記憶させてもよい。
【0067】
(存在位置による判断)
また、クライアント装置11に、GPS(Global Positioning System)システムが搭載されているものとする。
【0068】
そして、GPS衛星16により、クライアント装置11に、自機の物理的な位置を取得させ、当該位置がネットワーク8に接続可能な範囲に含まれるか否かがネットワーク情報115Bとして記憶されてもよい。
【0069】
また、クライアントの物理的位置は、赤外線センサ、カメラ、マイクによって特定されても良いし、RFID(Radio Frequency Identification)技術を利用して特定されても良い。
【0070】
(装置のユーザの属性による判断)
また、クライアント装置11が、IC(Integrated Circuit)カードのような記憶装置17に記憶された情報を読取可能に構成されており、クライアント装置11のユーザの属性等の特定の情報が記憶された記憶装置17がクライアント装置11に装着されている状態が継続していることを条件としてネットワーク8内に存在している(特定の範囲に存在する)と判断されてもよい。
【0071】
このような場合には、記憶装置17がクライアント装置11に装着されている状態が継続されているときに、クライアント装置11が正当なユーザによって操作されているとして、ネットワーク情報115Bはクライアント装置11が特定の範囲に存在するものとなり、一方、当該記憶装置17の装着が解除されると、ネットワーク情報115Bはクライアント装置11がネットワーク8外に存在するものとなる。
【0072】
また、クライアント装置11にログインしているユーザの属性に基づいて、クライアント装置11が特定の範囲に属するか否かが判断され、サーバ装置10の認証に際にサーバ装置10の証明書の検証の要否が決定されても良い。
【0073】
具体的には、たとえば図8に示されるように、ログインされているユーザが社内の人物である場合には、クライアント装置11が特定の範囲に属するとして、サーバ装置10の認証の際に、サーバ装置10の証明書の検証の成否を判定することなく、サーバ装置10の認証が成功したと決定され、一方、ログインされているユーザが社外の人物である場合には、クライアント装置11Aが特定の範囲外に属するとして、サーバ装置10の認証の際に、サーバ装置10の証明書の検証の成功を条件として、サーバ装置10の認証が成功したと決定される。
【0074】
(データの受信可否による判断)
また、クライアント装置11は、所定の無線送信機18から送信されるデータを受信可能な状態にあるときに、ネットワーク8内に存在している(特定の範囲に存在している)ものと判断されてもよい。
【0075】
この場合には、クライアント装置11が無線送信機18から送信されるデータが受信可能な状態にあるときには、ネットワーク情報115Bは、クライアント装置11がネットワーク8内に存在するものとされる。そして、クライアント装置11が当該データを受信できない状態では、ネットワーク情報115Bは、クライアント装置11がネットワーク8外にいることを示すものとされる。
【0076】
なお、無線送信機18の通信態様としては、たとえば、赤外線通信、Bluetooth、無線LAN(Local Area Network)が挙げられる。
【0077】
(IP(Internet Protocol)アドレスによる判断)
また、クライアント装置11は、自機がネットワーク8内に存在するか否かを、自機に対して割当てられたIPアドレスの値に基づいて判断してもよい。
【0078】
(ネットワーク外の通信機器との通信の可否による判断)
また、クライアント装置11がネットワーク8内に存在するか否かは、ネットワーク8外のネットワーク9に存在する通信機器14と通信可能であるか否かによって判断されてもよい。
【0079】
クライアント装置11は、ネットワーク8外のネットワーク9に存在する通信機器14との通信を試みた場合に、ネットワーク8内に存在すればファイアウォール装置12に遮断されて通信はできないが、クライアント装置11Aとして示すようにネットワーク8外のネットワーク9に存在すれば、pingや各種通信プロトコルによって通信機器14と通信することが可能である。
【0080】
この場合、クライアント装置11のネットワーク情報115Bでは、通信機器14に対して通信可否確認情報が送信された際の「応答あり」の情報(図5参照)が記憶されている場合にはクライアント装置11はネットワーク8外に存在することを意味し、そして「応答なし」の情報(図5参照)が記憶されているときには、クライアント装置11はネットワーク8内に存在することを意味する。
【0081】
(時刻による判断)
クライアント装置11が、図9に示すようにタイマ116をさらに含み、そして、当該タイマ116の計時する時刻が所定の時間帯(たとえば、職場の営業時間内)であるか否かによって、クライアント装置11が特定の範囲に属するか否かが決定されても良い。
【0082】
この場合、サーバ装置10の認証を開始したときの、タイマ116による計時時刻が、上記所定の時間帯内であれば、クライアント装置11が特定の範囲に属するとして、サーバ装置10の認証の際に、サーバ装置10の証明書の検証の成否を判定することなく、サーバ装置10の認証が成功したと決定され、一方、所定の時間帯外である場合には、クライアント装置11Aが特定の範囲外に属するとして、サーバ装置10の認証の際に、サーバ装置10の証明書の検証の成功を条件として、サーバ装置10の認証が成功したと決定される。
【0083】
このような技術は、図10に示されるように、クライアント装置11が、セキュリティレベルが時間帯によって変化するようなネットワーク9Aに存在する場合に好適である。つまり、たとえば、クライアント装置11が、一時的に社外の人物が使用する可能性のある状態とされた場合(社内のロビーや会議室に配置された場合等)、当該状態とされた時間帯については、クライアント装置11は、特定の範囲外に存在するものとして、サーバ装置10の認証に際し、当該サーバ装置10の証明書の検証を行なうように構成することができる。一方、クライアント装置11を社内の人間しか使用できないような時間帯については、クライアント装置11は、特定の範囲内に存在するものとして、サーバ装置10の認証に際し、当該サーバ装置10の証明書の検証を行なうように構成することができる。
【0084】
[第3の実施の形態]
本実施の形態では、クライアント装置11は、その認証対象となる通信相手端末の属性に基づいて、当該クライアント装置11が特定の範囲に存在するか否かが判断されてもよい。つまり、本実施の形態では、クライアント装置11の認証対象となる通信相手端末の属性に基づいて、当該通信相手端末の認証の可否の決定に当該通信相手端末の証明書の検証の可否を要するか否かが、決定される。以下、具体的に説明する。
【0085】
本実施の形態では、図11に示されるように、クライアント装置11の認証対象となる通信相手端末として、サーバ装置10Aとサーバ装置10Bが存在するものとする。なお、サーバ装置10Aは、重要度の高いデータを保持している属性を有するものとする。一方、サーバ装置10Bは、重要度の低いデータのみを保持している属性を有するものとする。
【0086】
クライアント装置11は、データ115C(図2参照)として、通信相手端末を特定する情報と認証に証明書の検証を要するか否かを特定する情報とを関連付けられて記憶されているものとする。そして、クライアント装置11は、通信相手端末の認証の際に、当該通信相手端末を特定する情報を取得し、当該取得した情報に基づいて、データ115Cの記憶内容を参照することにより、当該通信相手端末の認証に際し、当該通信相手端末の証明書の検証が必要か否かを特定する情報を取得する。そして、当該情報にしたがって、通信相手端末の認証を行なう。
【0087】
なお、たとえば、データ115Cに記憶される情報では、記憶するデータの重要度が高いサーバ装置10Aについてはその証明書の検証が成功した場合に認証が成功したと判断され、記憶するデータの重要度が低いサーバ装置10Bについてはその認証にその証明書の検証が必要とされないと判断される。
【0088】
[第4の実施の形態]
第1の実施の形態では、クライアント装置11における通信相手端末の認証の際に、クライアント装置11が特定の範囲に属しない場合には、通信相手端末の証明書の検証の成否に基づいて通信相手端末の認証の成否が決定され、一方で、クライアント装置11が特定の範囲に属する場合には、通信相手端末の証明書の検証を行なうことなく通信相手端末の認証が成功したと決定されていた。
【0089】
なお、本実施の形態では、後者の場合には、証明書の検証を行なわないのではなく、前者の場合よりも検証における処理負荷を軽減される。
【0090】
たとえば、本実施の形態では、前者の場合には、サーバ装置10のサーバ証明書106Bの検証において、1)当該電子署名の検証に成功したこと、2)証明書の有効期限・鍵の用途が正しいこと、および、3)記憶部115に記憶しているCRLを更新して当該CRLにサーバ証明書106Bまたはルート証明書115Aがリストされていないことのすべてについて要件を満たすか否かが判断され、すべての要件が満たされたこと(つまり、1)については検証に成功しており、2)については有効期限および用途が正しく(予め定められた内容と合致し)、そして、3)についてはリストされていないこと)を条件として、サーバ証明書106Bの検証が成功したと判断される。一方、後者の場合には、少なくとも電子署名の検証が成功したこと等、上記1)〜3)の少なくとも1つの要件のみが満たされたことが確認されれば、サーバ証明書106Bの検証が成功したと判断される。
【0091】
これにより、たとえばクライアント装置11が特定の範囲に属する場合には、通信相手端末の認証の際に、CRLの更新等の処理を省略することができる。
【0092】
[第5の実施の形態]
本実施の形態では、クライアント装置11は、通信相手端末の認証に成功したと判断した後で、通信相手端末の証明書の内容に基づいて警告情報を出力することもできる。
【0093】
クライアント装置11は、通信相手端末の証明書の検証の成否に関係なく(または、証明書の検証を行なうことなく)当該通信相手端末の認証に成功したと決定する場合、通信相手端末の認証に成功したと決定した後、証明書の有効期限を確認し、当該証明書の有効期限が満了してから一定期間(たとえば、1ヶ月)が経過している場合には、通信相手端末に対して証明書の有効期限が経過している旨の警告を出力する。
【0094】
このような警告は、クライアント装置11が通信相手端末の証明書の検証に成功したことを条件として当該通信相手端末の認証に成功したと判断する場合であって、当該判断においては通信相手端末の証明書の有効期限が参照されない場合であっても、同様に出力されても良い。つまり、クライアント装置11は、証明書の有効期限が当該証明書の検証に利用されなくとも、証明書の有効期限が切れていることを通信相手端末に対して報知しても良い。
【0095】
また、クライアント装置11は、当該クライアント装置11が特定の範囲に属する場合において通信相手端末の認証のためにその証明書の検証の成否の判断するとき、有効期限が経過していても経過期間が一定の期間(たとえば、1日や1週間)内であれば、証明書の認証に成功したと判断しても良い。この場合も、証明書の認証に成功したとして通信相手端末の認証に成功したとしながら、当該通信相手端末に対して警告情報を送信することが好ましい。
【0096】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0097】
8,9 ネットワーク、10,20,24,25,29 サーバ装置、11,11A,22,26,27,28 クライアント装置、12 ファイアウォール装置、13,14 通信機器、15 VPNサーバ装置、19,21,23 ネットワーク、16 GPS衛星、17 記憶装置、18 無線送信機、101,111 CPU、102,112 RAM、103,112 ROM、104,114 通信部、106,115 記憶部、106A,115A ルート証明書、106B サーバ証明書、106C,115C データ、106D,115B ネットワーク情報、106X 公開鍵、106Y 秘密鍵、116 タイマ。
【技術分野】
【0001】
本発明は、情報処理装置における認証用プログラム、認証用装置および認証方法に関し、特に、通信ネットワークにおけるセキュリティレベルの確保とユーザの利便性の低下の回避との双方を実現できる認証用プログラム、認証用装置および認証方法に関する。
【背景技術】
【0002】
従来から、情報処理装置において他の情報処理装置との通信を行なう場合に、通信相手を認証する方法として認証局等により発行された証明書を用いる認証技術が利用されている。
【0003】
このような技術に関しては、特許文献1等の種々の文献に開示がなされている。
特許文献1には、証明書の署名の検証により多大な計算機資源が消費される事態を回避すべく、当該検証を行なうサーバにおいて、一旦有効性が確保できた証明書の情報を有効証明書リストに蓄積し、当該有効証明書リストをCRL(Certificate Revocation List:証明書失効リスト)によって更新し、そして、当該有効証明書リスト内の証明書が有効期間内にあれば、検証対象の証明書が当該有効証明書リストに蓄積されていることを条件に、当該証明書の署名の取得や、上位証明書の取得、上位証明書の公開鍵の取得、証明書の署名の検証等の処理をすることなく、当該証明書が有効であるものとして取扱う技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−179724号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の特許文献1に記載の技術においても、有効証明書リストに掲載されていない新規の証明書の検証を行なう場合には、証明書の署名の検証等の処理が必要とされる。
【0006】
なお、証明書の署名の検証等の処理は、計算機資源を消費し、コストが生じるとともに、処理時間が比較的長くユーザに不便な思いをさせる一方で、通信ネットワークのセキュリティを担保する上では容易には省略することはできない。
【0007】
本発明は、係る実情に鑑み考え出されたものであり、その目的は、通信ネットワークのセキュリティレベルを確保しつつ、情報処理装置における計算機資源の消費を極力抑えることのできる、認証用プログラム、認証用装置および認証方法を提供することである。
【課題を解決するための手段】
【0008】
本発明に従った認証用プログラムは、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なうコンピュータにおいて実行される、コンピュータ読取可能なプログラムであって、コンピュータに、当該コンピュータが、特定の範囲に属しているか否かを特定するための情報である特定用情報を取得するステップと、通信相手端末を認証の成否を決定するステップとを実行させ、通信相手端末の認証の成否を決定するステップでは、特定用情報が、コンピュータが特定の範囲に属している状態に対応する情報である場合には、コンピュータが特定の範囲に属していない状態に対応する情報である場合よりも、受信した電子証明書の検証の処理負荷を軽減させる。
【0009】
また、本発明の認証用プログラムでは、通信相手端末の認証の成否を決定するステップでは、特定用情報が、コンピュータが特定の範囲に属していない状態に対応する情報である場合には、受信した電子証明書の検証において、失効証明書リストの更新を実行し、特定用情報が、コンピュータが特定の範囲に属している状態に対応する情報である場合には、受信した電子証明書の検証において、失効証明書リストの更新を実行しない。
【0010】
また、本発明の認証用プログラムは、通信相手端末の認証の成否を決定するステップでは、特定用情報が、コンピュータが特定の範囲に属している状態に対応する情報である場合には、受信した電子証明書の検証を実行することなく、通信端末の認証に成功したと決定する。
【0011】
また、本発明の認証用プログラムでは、特定用情報は、当該コンピュータが、特定のネットワークに接続している状態であるか否かを示す情報である。
【0012】
また、本発明の認証用プログラムでは、特定用情報は、特定のネットワークに接続している通信装置との間で通信可能であるか否かを示す情報である。
【0013】
また、本発明の認証用プログラムでは、特定のネットワークは、ファイアウォールによって外部からの不正なアクセスを防止され、特定用情報は、特定のネットワークに対してファイアウォールによって隔たれている所定のネットワークに接続している通信装置との間で通信が可能であるか否かを示す情報である。
【0014】
また、本発明の認証用プログラムでは、特定用情報は、コンピュータを操作するユーザの属性である。
【0015】
また、本発明の認証用プログラムでは、特定用情報は、コンピュータが認証相手端末の認証を開始した時間帯である。
【0016】
また、本発明の認証用プログラムは、コンピュータに、受信した電子証明書の有効期限の満了から一定期間以上経過している場合には、通信相手端末に対して、その旨の警告する情報を出力するステップをさらに実行させる。
【0017】
本発明に従った認証用装置は、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なう認証用装置であって、認証用装置が特定の範囲に属しているか否かを特定するための情報である特定用情報を取得する特定用情報取得部と、通信相手端末を認証の成否を決定する認証部とを備え、認証部は、特定用情報が、認証用装置が特定の範囲に属している状態に対応する情報である場合には、認証用装置が特定の範囲に属していない状態に対応する情報である場合よりも、受信した電子証明書の検証の処理負荷を軽減させる。
【0018】
本発明に従った認証方法は、コンピュータに、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なう方法であって、当該コンピュータが、特定の範囲に属しているか否かを特定するための情報である特定用情報を取得するステップと、通信相手端末を認証の成否を決定するステップとを備え、通信相手端末の認証の成否を決定するステップは、特定用情報が、コンピュータが特定の範囲に属している状態に対応する情報である場合には、コンピュータが特定の範囲に属していない状態に対応する情報である場合よりも、受信した電子証明書の検証の処理負荷を軽減させる。
【発明の効果】
【0019】
本発明によれば、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手の認証を行なうコンピュータにおいて、当該コンピュータが属している範囲に基づいて、相手端末から受信した電子証明書の検証の、処理内容(処理の有無も含めて)が決定され、当該内容に基づいて、処理負荷が決定される。
【0020】
これにより、コンピュータが特定の範囲に属しないことにより、通信ネットワークのセキュリティが確保されていないと判断される状態にある場合には、当該コンピュータに、受信した電子証明書の検証を厳重に行なわせた上で、相手端末の認証の可否を決定させることができる。一方、当該コンピュータが特定の範囲に属することにより通信ネットワークのセキュリティが確保された状態にあると判断される場合には、当該コンピュータにおける、相手端末から受信した電子証明書の検証についての処理を軽減または省略させることができる。
【0021】
したがって、当該コンピュータが属する通信ネットワークのセキュリティレベルを確保しつつ、当該コンピュータにおける計算機資源の消費を極力抑えることができる。
【図面の簡単な説明】
【0022】
【図1】本発明の認証用装置の一実施の形態であるクライアントコンピュータを含む通信ネットワークの構成を模式的に示す図である。
【図2】図1のクライアント装置のハードウェア構成を模式的に示す図である。
【図3】図1のサーバ装置のハードウェア構成を模式的に示す図である。
【図4】図1クライアント装置においてサーバ装置の認証が行なわれるための、通信ネットワークにおけるデータのやり取りを、模式的に示す図である。
【図5】図1のクライアント装置の起動時等に実行される、通信機器との間の通信確認のための処理のフローチャートである。
【図6】図1のクライアント装置におけるサーバ装置の認証の際に実行される処理のフローチャートである。
【図7】図1のネットワーク構成の変形例を示す図である。
【図8】図1のクライアント装置において、ログインユーザが異なる状態を模式的に示す図である。
【図9】図2のクライアント装置のハードウェア構成の変形例を示す図である。
【図10】本発明の認証用装置の第2の実施の形態が存在するネットワークの構成を模式的に示す図である。
【図11】本発明の認証用装置の第3の実施の形態が存在するネットワークの構成を模式的に示す図である。
【発明を実施するための形態】
【0023】
以下、本発明の認証用装置の実施の形態について、図面を参照しつつ説明する。なお、以下の説明では、特記する場合を除き、同じ構成要素には同じ符号を付し、詳細な説明は繰返さない。
【0024】
[第1の実施の形態]
図1は、本発明の認証用装置の一実施の形態であるクライアントコンピュータ(以下、「クライアント装置」と呼ぶ)11を含む通信ネットワークの構成を模式的に示す図である。
【0025】
本実施の形態では、情報通信機器の通信環境として、ファイアウォール装置12等のシステムによりセキュリティの確保された社内のネットワーク8と、セキュリティの確保されていない社外のネットワーク9が存在するものとする。ネットワーク8は、ファイアウォール装置12によって、外部からの不正なアクセスを防止されている。ファイアウォール装置12は、通信内容や、通信先・通信元によって、通信の通過の可否を判断し、また、外部から内部へのアクセスを遮断する。
【0026】
クライアント装置11は、サーバ装置10との通信開始時に、当該サーバ装置10の認証を行なう。サーバ装置10の認証の成否は、基本的には、サーバ装置10の電子証明書の検証の成否に基づいて決定される。
【0027】
なお、本実施の形態では、クライアント装置11は、当該クライアント装置11がネットワーク8内に存在することを確認できた場合には、通信相手の電子証明書の検証をすることなく通信相手を認証し、当該通信相手との通信を開始することができる。なお、クライアント装置11Aとして示すようにネットワーク8外に存在する場合には、クライアント装置11Aは、通信相手の電子証明書の検証に成功したことを条件として当該通信相手の認証に成功したと決定する。
【0028】
なお、ネットワーク8には、クライアント装置11がネットワーク8内に存在するか否かを確認するために利用される通信機器13が含まれる。
【0029】
以下、クライアント装置11における、サーバ装置10の認証について説明する。
図2は、クライアント装置11のハードウェア構成を模式的に示す図である。
【0030】
図2を参照して、クライアント装置11は、当該クライアント装置11の動作を全体的に制御するCPU(Central Processing Unit)111を含む。また、クライアント装置11は、CPU111のワークエリア等となるRAM(Random Access Memory)112と、CPU111が実行するプログラム等を記録するROM(Read Only Memory)113と、他の機器との間で情報の送受信を行なうための通信部114と、種々のデータを記憶する記憶部115とを含む。
【0031】
クライアント装置11の記憶部115には、通信相手の証明書を検証するためのルート証明書115A、自機の通信環境に関する情報であるネットワーク情報115B、他の機器に送信するデータ等を含むデータ115Cが記憶されている。
【0032】
図3は、サーバ装置10のハードウェア構成を模式的に示す図である。
サーバ装置10は、当該サーバ装置10の動作を全体的に制御するCPU101を含む。また、サーバ装置10は、CPU101のワークエリア等となるRAM102と、CPU101が実行するプログラム等を記録するROM103と、他の機器との間で情報の送受信を行なうための通信部104と、種々のデータを記憶する記憶部106とを含む。
【0033】
サーバ装置10の記憶部106には、ルート証明書106Aと、当該サーバ装置10について発行された電子証明書であるサーバ証明書106Bと、通信相手に送信するためのデータ等を含むデータ106Cと、自機の通信環境を特定するための情報であるネットワーク情報106Dとが記憶されている。
【0034】
サーバ装置10のルート証明書106Aは、クライアント装置11のルート証明書115Aと同じ認証局が署名して発行したものとする。
【0035】
図4は、クライアント装置11においてサーバ装置10の認証が行なわれるための、通信ネットワークにおけるデータのやり取りを、模式的に示す図である。
【0036】
クライアント装置11は、通信機器13に対して、たとえば、クライアント装置11の起動時(OS(Operating System)の起動時等)、当該クライアント装置11のネットワーク8との接続確立時、または、サーバ装置10との通信の開始時に、ping(Packet INternet Groper)や、HTTP(HyperText Transfer Protocol)、POP(Post Office Protocol)、SMTP(Simple Mail Transfer Protocol)、SMB(Server Message Block)、LDAP(Lightweight Directory Access Protocol)、Exchange(Microsoft社(登録商標)のメッセージングサーバソフトウェア)、OCSP(Online Certificate Status Protocol)等の各種通信プロトコルを利用して通信を試みる。
【0037】
そして、クライアント装置11では、通信機器13から応答があったか否かが判断され、当該判断の結果が、ネットワーク情報115Bとして記憶される。
【0038】
そして、クライアント装置11では、サーバ装置10の認証のために当該サーバ装置10からサーバ証明書106Bを受信すると、ネットワーク情報115Bとして記憶している情報に基づいて、サーバ証明書106Bの検証を行なうか否かを判断する。具体的には、ネットワーク情報115Bとして、通信機器13から応答がなかったという情報が記憶されていれば、クライアント装置11では、サーバ装置10から受信したサーバ証明書106Bを、ルート証明書115Aを用いて検証し、当該サーバ証明書106Bの検証に成功したことを条件として、サーバ装置10の認証に成功したとして、当該サーバ装置10との通信を開始する。
【0039】
なお、サーバ装置10では、サーバ装置10の公開鍵106Xと秘密鍵106Yが保持されている。そして、サーバ装置10は、サーバ証明書106Bに署名して、クライアント装置11へ送信する。クライアント装置11へ送信されるサーバ証明書106Bには、サーバ装置10の公開鍵106Xが含まれる。そして、クライアント装置11は、ルート証明書115Aに含まれている公開鍵でサーバ証明書106Bの電子署名を検証する。
【0040】
また、サーバ証明書106Bの検証では、当該電子署名の検証に成功したこと、証明書の有効期限・鍵の用途が正しいこと、記憶部115に記憶しているCRLを更新して当該CRLにサーバ証明書106Bまたはルート証明書115Aがリストされていないことの少なくとも1つが実行される。
【0041】
一方、ネットワーク情報115Bとして、通信機器13から応答があったという情報が記憶されていれば、クライアント装置11では、サーバ証明書106Bの検証をすることなく、サーバ装置10の認証に成功したと決定して、当該サーバ装置10との間での通信が開始される。
【0042】
以上説明したように、本実施の形態では、クライアント装置11は、pingや各種通信プロトコルを利用して通信機器13との通信が可能である場合には、自機がファイアウォール装置12でセキュリティが確保されたネットワーク8内に存在している(ネットワーク8に接続している)と判断し、サーバ装置10の認証の際に、当該サーバ装置10のサーバ証明書106Bの検証を行なうことなく、サーバ装置10の認証に成功したものとして、サーバ装置10との通信を開始する。
【0043】
クライアント装置11が、クライアント装置11Aとして示されるように、ネットワーク8外のネットワーク9に存在する場合には、ファイアウォール装置12に通信を遮断されることにより、通信機器13とは通信することができないと考えられる。よって、本実施の形態では、クライアント装置11が通信機器13と通信可能であるか否かにより、クライアント装置11がネットワーク8内に存在するか否かが決定される。
【0044】
一方、クライアント装置11が、通信機器13との間で、pingや上記各種通信プロトコルでの通信が可能であることを確認できない場合(ネットワーク情報115Bとして、通信機器13からの応答がなかったことを示す情報が記憶されている場合)には、クライアント装置11におけるサーバ装置10の認証において、サーバ装置10の証明書の検証が実行される。
【0045】
本実施の形態では、クライアント装置11がこのようにサーバ装置10の認証を行なうことにより、セキュリティの確保された範囲に存在する機器においては電子証明書の有効性の確認を省略することになる。これにより、クライアント装置11がセキュリティの確保された範囲に存在する場合には、サーバ装置10の認証の処理時間の短縮により利便性を向上されることができ、電子証明書の有効性の確認やCRLの更新についてのコストを削減することができる一方で、当該クライアント装置11がセキュリティの確保されていない範囲に存在する場合には、電子証明書の有効性を確認させるため、ネットワーク内のセキュリティレベルを保つことができる。
【0046】
クライアント装置11によって実行される、サーバ装置10の認証に関する処理について、より具体的に説明する。
【0047】
図5は、クライアント装置11の起動時等に実行される、通信機器13との間の通信確認のための処理のフローチャートである。
【0048】
図5を参照して、当該処理では、まずステップSA10で、クライアント装置11から通信機器13に対して、通信の可否を確認するための情報が送信される。
【0049】
そして、クライアント装置11では、ステップSA20で、ステップSA10における情報の送信から所定時間内に、通信機器13から当該送信した情報に対する応答があったか否かが判断される。
【0050】
そして、応答があったと判断されると、ステップSA30で、ネットワーク情報115Bとして「応答あり」の情報が記憶されて、処理が終了される。
【0051】
一方、応答がなかったと判断されると、ステップSA40で、ネットワーク情報115Bとして「応答なし」という情報が記憶されて、処理が終了される。
【0052】
図6は、クライアント装置11におけるサーバ装置10の認証の際に実行される処理のフローチャートである。
【0053】
図6を参照して、クライアント装置11は、ステップSB10で、サーバ装置10から当該サーバ装置10の証明書(サーバ証明書106B)を受信すると、ステップSB30で、ネットワーク情報115Bに記憶された情報を読み出す。
【0054】
そして、ステップSB40で、クライアント装置11では、ネットワーク情報115Bに記憶された情報に基づいて、当該クライアント装置11が通信機器13と通信可能であったか否かが判断される。通信可能であったと判断されると、ステップSB70へ処理が進められ、通信可能でなかったと判断されると、ステップSB50へ処理が進められる。
【0055】
ステップSB50では、クライアント装置11では、サーバ装置10から受信したサーバ証明書106Bの検証が行なわれる。
【0056】
そしてステップSB60で、サーバ証明書106Bの検証が成功したか否かが判断され、成功したと判断されるとステップSB70へ処理が進められる。一方、検証が失敗したと判断されるとステップSB80に処理が進められ、通信エラーとして報知等がなされて処理が中断される。
【0057】
ステップSB70では、クライアント装置11は、サーバ装置10の認証が成功したとして、サーバ装置10との間で通信を開始する処理がなされて、図6に示された処理が終了する。
【0058】
また、本実施の形態では、クライアント装置11は、サーバ装置10が、通信相手とするに足りる正当な機器であることを検証するために、当該サーバ装置10から送信されたサーバ証明書の検証を行なっているが、サーバ装置10の正当性の検証は他の態様であってもよい。
【0059】
また、本実施の形態では、クライアント装置11は、サーバ装置10の正当性の検証の際に、図5を参照して説明した処理によって得られた通信機器13との通信結果(ネットワーク情報115B)が用いられる。当該通信結果を得る際(ステップSA30,SA40)において、クライアント装置11は、通信機器13を同定するのに、たとえば、通信機器13について予め定められたMAC(Media Access Control)アドレス等の固有のIDが用いられる。この場合には、通信機器13のMACアドレス等の固有のIDは、クライアント装置11の記憶部115に予め登録されているものとする。
【0060】
本実施の形態では、クライアント装置11が、ネットワーク8内に存在するか否かにより、つまり、クライアント装置11がネットワーク8(特定のネットワーク)に接続している状態であるか否かにより、特定の範囲に存在するか否かが判断されることとなる。
【0061】
なお、以上説明した本実施の形態では、クライアント装置11が社内のネットワーク8内に存在するか否かによって当該クライアント装置11における電子証明書の有効性確認の処理が異なる旨が説明されたが、クライアント装置11が存在するか否かを判断されるネットワークに限られない。他のネットワークの例としては、政府機関のネットワーク、学校のネットワーク、データセンターのネットワーク、インターネットサービスプロバイダ(ISP)のネットワーク等が挙げられる。
【0062】
[第2の実施の形態]
第1の実施の形態では、クライアント装置11が通信機器13と通信が可能であるか否かによって、クライアント装置11が特定の範囲に存在するか否かが判断された。そして、当該判断の結果に基づいて、サーバ装置10の認証ができたか否かの判断に、サーバ装置10の証明書の検証が必要とされるか否かが決定された。つまり、クライアント装置11が通信機器13と通信可能であると判断されれば、サーバ装置10の証明書の検証をすることなく、サーバ装置10の認証に成功したと判断される。
【0063】
なお、上記したような、「クライアント装置11が特定の範囲に存在するか否か」の判断は、他の態様によってなされてもよい。以下、他の態様を列挙する。
【0064】
(VPNサーバによる判断)
たとえば、図1に示したネットワーク8およびネットワーク9の変形例を図7に示す。
【0065】
本実施の形態では、ネットワーク8内に、VPN(Virtual Private Network)サーバ装置15が設けられている。VPNサーバ装置15は、その通信相手がネットワーク8内外のいずれに存在しているかを判定する機能を有するものとする。
【0066】
そして、クライアント装置11に、その起動時等にVPNサーバ装置15と通信させ、VPNサーバ装置15によるクライアント装置11についてのネットワーク8内外のいずれに存在しているかを判定結果を、ネットワーク情報115Bとしてクライアント装置11に記憶させてもよい。
【0067】
(存在位置による判断)
また、クライアント装置11に、GPS(Global Positioning System)システムが搭載されているものとする。
【0068】
そして、GPS衛星16により、クライアント装置11に、自機の物理的な位置を取得させ、当該位置がネットワーク8に接続可能な範囲に含まれるか否かがネットワーク情報115Bとして記憶されてもよい。
【0069】
また、クライアントの物理的位置は、赤外線センサ、カメラ、マイクによって特定されても良いし、RFID(Radio Frequency Identification)技術を利用して特定されても良い。
【0070】
(装置のユーザの属性による判断)
また、クライアント装置11が、IC(Integrated Circuit)カードのような記憶装置17に記憶された情報を読取可能に構成されており、クライアント装置11のユーザの属性等の特定の情報が記憶された記憶装置17がクライアント装置11に装着されている状態が継続していることを条件としてネットワーク8内に存在している(特定の範囲に存在する)と判断されてもよい。
【0071】
このような場合には、記憶装置17がクライアント装置11に装着されている状態が継続されているときに、クライアント装置11が正当なユーザによって操作されているとして、ネットワーク情報115Bはクライアント装置11が特定の範囲に存在するものとなり、一方、当該記憶装置17の装着が解除されると、ネットワーク情報115Bはクライアント装置11がネットワーク8外に存在するものとなる。
【0072】
また、クライアント装置11にログインしているユーザの属性に基づいて、クライアント装置11が特定の範囲に属するか否かが判断され、サーバ装置10の認証に際にサーバ装置10の証明書の検証の要否が決定されても良い。
【0073】
具体的には、たとえば図8に示されるように、ログインされているユーザが社内の人物である場合には、クライアント装置11が特定の範囲に属するとして、サーバ装置10の認証の際に、サーバ装置10の証明書の検証の成否を判定することなく、サーバ装置10の認証が成功したと決定され、一方、ログインされているユーザが社外の人物である場合には、クライアント装置11Aが特定の範囲外に属するとして、サーバ装置10の認証の際に、サーバ装置10の証明書の検証の成功を条件として、サーバ装置10の認証が成功したと決定される。
【0074】
(データの受信可否による判断)
また、クライアント装置11は、所定の無線送信機18から送信されるデータを受信可能な状態にあるときに、ネットワーク8内に存在している(特定の範囲に存在している)ものと判断されてもよい。
【0075】
この場合には、クライアント装置11が無線送信機18から送信されるデータが受信可能な状態にあるときには、ネットワーク情報115Bは、クライアント装置11がネットワーク8内に存在するものとされる。そして、クライアント装置11が当該データを受信できない状態では、ネットワーク情報115Bは、クライアント装置11がネットワーク8外にいることを示すものとされる。
【0076】
なお、無線送信機18の通信態様としては、たとえば、赤外線通信、Bluetooth、無線LAN(Local Area Network)が挙げられる。
【0077】
(IP(Internet Protocol)アドレスによる判断)
また、クライアント装置11は、自機がネットワーク8内に存在するか否かを、自機に対して割当てられたIPアドレスの値に基づいて判断してもよい。
【0078】
(ネットワーク外の通信機器との通信の可否による判断)
また、クライアント装置11がネットワーク8内に存在するか否かは、ネットワーク8外のネットワーク9に存在する通信機器14と通信可能であるか否かによって判断されてもよい。
【0079】
クライアント装置11は、ネットワーク8外のネットワーク9に存在する通信機器14との通信を試みた場合に、ネットワーク8内に存在すればファイアウォール装置12に遮断されて通信はできないが、クライアント装置11Aとして示すようにネットワーク8外のネットワーク9に存在すれば、pingや各種通信プロトコルによって通信機器14と通信することが可能である。
【0080】
この場合、クライアント装置11のネットワーク情報115Bでは、通信機器14に対して通信可否確認情報が送信された際の「応答あり」の情報(図5参照)が記憶されている場合にはクライアント装置11はネットワーク8外に存在することを意味し、そして「応答なし」の情報(図5参照)が記憶されているときには、クライアント装置11はネットワーク8内に存在することを意味する。
【0081】
(時刻による判断)
クライアント装置11が、図9に示すようにタイマ116をさらに含み、そして、当該タイマ116の計時する時刻が所定の時間帯(たとえば、職場の営業時間内)であるか否かによって、クライアント装置11が特定の範囲に属するか否かが決定されても良い。
【0082】
この場合、サーバ装置10の認証を開始したときの、タイマ116による計時時刻が、上記所定の時間帯内であれば、クライアント装置11が特定の範囲に属するとして、サーバ装置10の認証の際に、サーバ装置10の証明書の検証の成否を判定することなく、サーバ装置10の認証が成功したと決定され、一方、所定の時間帯外である場合には、クライアント装置11Aが特定の範囲外に属するとして、サーバ装置10の認証の際に、サーバ装置10の証明書の検証の成功を条件として、サーバ装置10の認証が成功したと決定される。
【0083】
このような技術は、図10に示されるように、クライアント装置11が、セキュリティレベルが時間帯によって変化するようなネットワーク9Aに存在する場合に好適である。つまり、たとえば、クライアント装置11が、一時的に社外の人物が使用する可能性のある状態とされた場合(社内のロビーや会議室に配置された場合等)、当該状態とされた時間帯については、クライアント装置11は、特定の範囲外に存在するものとして、サーバ装置10の認証に際し、当該サーバ装置10の証明書の検証を行なうように構成することができる。一方、クライアント装置11を社内の人間しか使用できないような時間帯については、クライアント装置11は、特定の範囲内に存在するものとして、サーバ装置10の認証に際し、当該サーバ装置10の証明書の検証を行なうように構成することができる。
【0084】
[第3の実施の形態]
本実施の形態では、クライアント装置11は、その認証対象となる通信相手端末の属性に基づいて、当該クライアント装置11が特定の範囲に存在するか否かが判断されてもよい。つまり、本実施の形態では、クライアント装置11の認証対象となる通信相手端末の属性に基づいて、当該通信相手端末の認証の可否の決定に当該通信相手端末の証明書の検証の可否を要するか否かが、決定される。以下、具体的に説明する。
【0085】
本実施の形態では、図11に示されるように、クライアント装置11の認証対象となる通信相手端末として、サーバ装置10Aとサーバ装置10Bが存在するものとする。なお、サーバ装置10Aは、重要度の高いデータを保持している属性を有するものとする。一方、サーバ装置10Bは、重要度の低いデータのみを保持している属性を有するものとする。
【0086】
クライアント装置11は、データ115C(図2参照)として、通信相手端末を特定する情報と認証に証明書の検証を要するか否かを特定する情報とを関連付けられて記憶されているものとする。そして、クライアント装置11は、通信相手端末の認証の際に、当該通信相手端末を特定する情報を取得し、当該取得した情報に基づいて、データ115Cの記憶内容を参照することにより、当該通信相手端末の認証に際し、当該通信相手端末の証明書の検証が必要か否かを特定する情報を取得する。そして、当該情報にしたがって、通信相手端末の認証を行なう。
【0087】
なお、たとえば、データ115Cに記憶される情報では、記憶するデータの重要度が高いサーバ装置10Aについてはその証明書の検証が成功した場合に認証が成功したと判断され、記憶するデータの重要度が低いサーバ装置10Bについてはその認証にその証明書の検証が必要とされないと判断される。
【0088】
[第4の実施の形態]
第1の実施の形態では、クライアント装置11における通信相手端末の認証の際に、クライアント装置11が特定の範囲に属しない場合には、通信相手端末の証明書の検証の成否に基づいて通信相手端末の認証の成否が決定され、一方で、クライアント装置11が特定の範囲に属する場合には、通信相手端末の証明書の検証を行なうことなく通信相手端末の認証が成功したと決定されていた。
【0089】
なお、本実施の形態では、後者の場合には、証明書の検証を行なわないのではなく、前者の場合よりも検証における処理負荷を軽減される。
【0090】
たとえば、本実施の形態では、前者の場合には、サーバ装置10のサーバ証明書106Bの検証において、1)当該電子署名の検証に成功したこと、2)証明書の有効期限・鍵の用途が正しいこと、および、3)記憶部115に記憶しているCRLを更新して当該CRLにサーバ証明書106Bまたはルート証明書115Aがリストされていないことのすべてについて要件を満たすか否かが判断され、すべての要件が満たされたこと(つまり、1)については検証に成功しており、2)については有効期限および用途が正しく(予め定められた内容と合致し)、そして、3)についてはリストされていないこと)を条件として、サーバ証明書106Bの検証が成功したと判断される。一方、後者の場合には、少なくとも電子署名の検証が成功したこと等、上記1)〜3)の少なくとも1つの要件のみが満たされたことが確認されれば、サーバ証明書106Bの検証が成功したと判断される。
【0091】
これにより、たとえばクライアント装置11が特定の範囲に属する場合には、通信相手端末の認証の際に、CRLの更新等の処理を省略することができる。
【0092】
[第5の実施の形態]
本実施の形態では、クライアント装置11は、通信相手端末の認証に成功したと判断した後で、通信相手端末の証明書の内容に基づいて警告情報を出力することもできる。
【0093】
クライアント装置11は、通信相手端末の証明書の検証の成否に関係なく(または、証明書の検証を行なうことなく)当該通信相手端末の認証に成功したと決定する場合、通信相手端末の認証に成功したと決定した後、証明書の有効期限を確認し、当該証明書の有効期限が満了してから一定期間(たとえば、1ヶ月)が経過している場合には、通信相手端末に対して証明書の有効期限が経過している旨の警告を出力する。
【0094】
このような警告は、クライアント装置11が通信相手端末の証明書の検証に成功したことを条件として当該通信相手端末の認証に成功したと判断する場合であって、当該判断においては通信相手端末の証明書の有効期限が参照されない場合であっても、同様に出力されても良い。つまり、クライアント装置11は、証明書の有効期限が当該証明書の検証に利用されなくとも、証明書の有効期限が切れていることを通信相手端末に対して報知しても良い。
【0095】
また、クライアント装置11は、当該クライアント装置11が特定の範囲に属する場合において通信相手端末の認証のためにその証明書の検証の成否の判断するとき、有効期限が経過していても経過期間が一定の期間(たとえば、1日や1週間)内であれば、証明書の認証に成功したと判断しても良い。この場合も、証明書の認証に成功したとして通信相手端末の認証に成功したとしながら、当該通信相手端末に対して警告情報を送信することが好ましい。
【0096】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0097】
8,9 ネットワーク、10,20,24,25,29 サーバ装置、11,11A,22,26,27,28 クライアント装置、12 ファイアウォール装置、13,14 通信機器、15 VPNサーバ装置、19,21,23 ネットワーク、16 GPS衛星、17 記憶装置、18 無線送信機、101,111 CPU、102,112 RAM、103,112 ROM、104,114 通信部、106,115 記憶部、106A,115A ルート証明書、106B サーバ証明書、106C,115C データ、106D,115B ネットワーク情報、106X 公開鍵、106Y 秘密鍵、116 タイマ。
【特許請求の範囲】
【請求項1】
通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なうコンピュータにおいて実行される、コンピュータ読取可能なプログラムであって、
前記コンピュータに、
当該コンピュータが、特定の範囲に属しているか否かを特定するための情報である特定用情報を取得するステップと、
前記通信相手端末を認証の成否を決定するステップとを実行させ、
前記通信相手端末の認証の成否を決定するステップでは、前記特定用情報が、前記コンピュータが前記特定の範囲に属している状態に対応する情報である場合には、前記コンピュータが前記特定の範囲に属していない状態に対応する情報である場合よりも、前記受信した電子証明書の検証の処理負荷を軽減させる、認証用プログラム。
【請求項2】
前記通信相手端末の認証の成否を決定するステップでは、
前記特定用情報が、前記コンピュータが前記特定の範囲に属していない状態に対応する情報である場合には、前記受信した電子証明書の検証において、失効証明書リストの更新を実行し、
前記特定用情報が、前記コンピュータが前記特定の範囲に属している状態に対応する情報である場合には、前記受信した電子証明書の検証において、失効証明書リストの更新を実行しない、請求項1に記載の認証用プログラム。
【請求項3】
前記通信相手端末の認証の成否を決定するステップでは、前記特定用情報が、前記コンピュータが前記特定の範囲に属している状態に対応する情報である場合には、前記受信した電子証明書の検証を実行することなく、前記通信端末の認証に成功したと決定する、請求項1または請求項2に記載の認証用プログラム。
【請求項4】
前記特定用情報は、当該コンピュータが、特定のネットワークに接続している状態であるか否かを示す情報である、請求項1〜請求項3のいずれかに記載の認証用プログラム。
【請求項5】
前記特定用情報は、前記特定のネットワークに接続している通信装置との間で通信可能であるか否かを示す情報である、請求項4に記載の認証用プログラム。
【請求項6】
前記特定のネットワークは、ファイアウォールによって外部からの不正なアクセスを防止され、
前記特定用情報は、前記特定のネットワークに対してファイアウォールによって隔たれている所定のネットワークに接続している通信装置との間で通信が可能であるか否かを示す情報である、請求項4に記載の認証用プログラム。
【請求項7】
前記特定用情報は、前記コンピュータを操作するユーザの属性である、請求項1〜請求項3のいずれかに記載の認証用プログラム。
【請求項8】
前記特定用情報は、前記コンピュータが前記認証相手端末の認証を開始した時間帯である、請求項1〜請求項3のいずれかに記載の認証用プログラム。
【請求項9】
前記コンピュータに、前記受信した電子証明書の有効期限の満了から一定期間以上経過している場合には、前記通信相手端末に対して、その旨の警告する情報を出力するステップをさらに実行させる、請求項1〜請求項8のいずれかに記載の認証用プログラム。
【請求項10】
通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なう認証用装置であって、
前記認証用装置が特定の範囲に属しているか否かを特定するための情報である特定用情報を取得する特定用情報取得部と、
前記通信相手端末を認証の成否を決定する認証部とを備え、
前記認証部は、前記特定用情報が、前記認証用装置が前記特定の範囲に属している状態に対応する情報である場合には、前記認証用装置が前記特定の範囲に属していない状態に対応する情報である場合よりも、前記受信した電子証明書の検証の処理負荷を軽減させる、認証用装置。
【請求項11】
コンピュータに、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なう方法であって、
当該コンピュータが、特定の範囲に属しているか否かを特定するための情報である特定用情報を取得するステップと、
前記通信相手端末を認証の成否を決定するステップとを備え、
前記通信相手端末の認証の成否を決定するステップは、前記特定用情報が、前記コンピュータが前記特定の範囲に属している状態に対応する情報である場合には、前記コンピュータが前記特定の範囲に属していない状態に対応する情報である場合よりも、前記受信した電子証明書の検証の処理負荷を軽減させる、認証方法。
【請求項1】
通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なうコンピュータにおいて実行される、コンピュータ読取可能なプログラムであって、
前記コンピュータに、
当該コンピュータが、特定の範囲に属しているか否かを特定するための情報である特定用情報を取得するステップと、
前記通信相手端末を認証の成否を決定するステップとを実行させ、
前記通信相手端末の認証の成否を決定するステップでは、前記特定用情報が、前記コンピュータが前記特定の範囲に属している状態に対応する情報である場合には、前記コンピュータが前記特定の範囲に属していない状態に対応する情報である場合よりも、前記受信した電子証明書の検証の処理負荷を軽減させる、認証用プログラム。
【請求項2】
前記通信相手端末の認証の成否を決定するステップでは、
前記特定用情報が、前記コンピュータが前記特定の範囲に属していない状態に対応する情報である場合には、前記受信した電子証明書の検証において、失効証明書リストの更新を実行し、
前記特定用情報が、前記コンピュータが前記特定の範囲に属している状態に対応する情報である場合には、前記受信した電子証明書の検証において、失効証明書リストの更新を実行しない、請求項1に記載の認証用プログラム。
【請求項3】
前記通信相手端末の認証の成否を決定するステップでは、前記特定用情報が、前記コンピュータが前記特定の範囲に属している状態に対応する情報である場合には、前記受信した電子証明書の検証を実行することなく、前記通信端末の認証に成功したと決定する、請求項1または請求項2に記載の認証用プログラム。
【請求項4】
前記特定用情報は、当該コンピュータが、特定のネットワークに接続している状態であるか否かを示す情報である、請求項1〜請求項3のいずれかに記載の認証用プログラム。
【請求項5】
前記特定用情報は、前記特定のネットワークに接続している通信装置との間で通信可能であるか否かを示す情報である、請求項4に記載の認証用プログラム。
【請求項6】
前記特定のネットワークは、ファイアウォールによって外部からの不正なアクセスを防止され、
前記特定用情報は、前記特定のネットワークに対してファイアウォールによって隔たれている所定のネットワークに接続している通信装置との間で通信が可能であるか否かを示す情報である、請求項4に記載の認証用プログラム。
【請求項7】
前記特定用情報は、前記コンピュータを操作するユーザの属性である、請求項1〜請求項3のいずれかに記載の認証用プログラム。
【請求項8】
前記特定用情報は、前記コンピュータが前記認証相手端末の認証を開始した時間帯である、請求項1〜請求項3のいずれかに記載の認証用プログラム。
【請求項9】
前記コンピュータに、前記受信した電子証明書の有効期限の満了から一定期間以上経過している場合には、前記通信相手端末に対して、その旨の警告する情報を出力するステップをさらに実行させる、請求項1〜請求項8のいずれかに記載の認証用プログラム。
【請求項10】
通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なう認証用装置であって、
前記認証用装置が特定の範囲に属しているか否かを特定するための情報である特定用情報を取得する特定用情報取得部と、
前記通信相手端末を認証の成否を決定する認証部とを備え、
前記認証部は、前記特定用情報が、前記認証用装置が前記特定の範囲に属している状態に対応する情報である場合には、前記認証用装置が前記特定の範囲に属していない状態に対応する情報である場合よりも、前記受信した電子証明書の検証の処理負荷を軽減させる、認証用装置。
【請求項11】
コンピュータに、通信相手端末から受信した電子証明書の検証結果に基づいて通信相手端末の認証を行なう方法であって、
当該コンピュータが、特定の範囲に属しているか否かを特定するための情報である特定用情報を取得するステップと、
前記通信相手端末を認証の成否を決定するステップとを備え、
前記通信相手端末の認証の成否を決定するステップは、前記特定用情報が、前記コンピュータが前記特定の範囲に属している状態に対応する情報である場合には、前記コンピュータが前記特定の範囲に属していない状態に対応する情報である場合よりも、前記受信した電子証明書の検証の処理負荷を軽減させる、認証方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2010−283575(P2010−283575A)
【公開日】平成22年12月16日(2010.12.16)
【国際特許分類】
【出願番号】特願2009−134974(P2009−134974)
【出願日】平成21年6月4日(2009.6.4)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】
【公開日】平成22年12月16日(2010.12.16)
【国際特許分類】
【出願日】平成21年6月4日(2009.6.4)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】
[ Back to top ]