説明

通信システムおよび通信端末

【課題】 通信システムを構成する各通信端末が公開鍵証明書やその失効情報等の認証情報を所持するまでに必要な通信量および時間を削減することができる通信システムおよび通信端末を提供する。
【解決手段】 認証情報を生成または受信した通信端末(ノードS)に隣接する通信端末のうち、中継端末として選択された通信端末(ノードA,D,E)が、受信した認証情報をブロードキャストすることによって、認証情報を生成または受信した通信端末に隣接する全ての通信端末のさらに先に隣接する全ての通信端末に認証情報が転送される。これを繰り返すことによって、通信システムを構成する全ての通信端末が同一の認証情報を所持することができる。そして、認証情報の生成元の通信端末から一斉にかつ一方向に認証情報を転送することが可能となるため、通信システムを構成する各通信端末が認証情報を所持するまでに必要な通信量および時間を削減することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の通信端末を備え、公開鍵証明書やその失効情報等の認証情報に基づいて、各通信端末が通信相手の認証を行う通信システムに関する。また、本発明は、本通信システムに用いられる通信端末にも関する。
【背景技術】
【0002】
既存のインターネットにおける通信相手を認証するための基盤技術として、PKI(Public Key Infrastructure:公開鍵基盤)がある。PKIでは、公開鍵証明書(PKC:Public Key Certificate)を用いた認証が行われる。公開鍵証明書は、特定のノードの公開鍵と、その特定ノードに関する情報とを組み合わせたデータに対して、公開鍵証明書の発行者が自身の秘密鍵で暗号化を施した署名情報を含んでいる。従来、公開鍵証明書を発行・管理する機関はCA(Certificate Authority)と呼ばれ、従来の無線通信システムにおいては、基地局やアクセスポイント等の固定基盤がその役を担っていた。
【0003】
基地局やアクセスポイント等を必要とせず、無線で接続された携帯電話やPDA(Personal Digital Asistance)、無線LANを構成するPC(Personal Computer)等の通信端末同士が相互に無線接続を行い、他の通信端末を介して目的の通信相手と接続するマルチホップ接続により無線通信を行うネットワーク形態は無線アドホックネットワークと呼ばれる。しかし、基地局やアクセスポイント等の固定基盤を持たない無線アドホックネットワークの場合、絶対的に信頼できるCAが存在しないため、公開鍵証明書の発行・管理を行うことができなかった。そこで、各ノードが独自に公開鍵証明書を発行・管理する公開鍵証明書分散管理方式(各通信ノードがCAの役割を担うことからこう呼ばれる)が提案されている(例えば、非特許文献1参照)。
【0004】
この方式では、各ノードが独自の判断(knowledge:知識や経験)で他ノードの公開鍵証明書を発行して管理する。例えば、ノードAはノードBに対して公開鍵証明書を発行しておらず、ノードBと信頼関係を結んでいないとする。また、ノードAが直接信頼する(公開鍵証明書を発行している)ノードCはノードBを直接信頼しているとする。この場合、ノードAはノードCの公開鍵証明書を発行しており、ノードCはノードBの公開鍵証明書を発行している。ノードAが発行した公開鍵証明書にはノードCの公開鍵とノードAの署名情報が含まれ、ノードCが発行した公開鍵証明書にはノードBの公開鍵とノードCの証明情報が含まれる。
【0005】
ノードAがノードBと通信を行う場合、ノードAはノードCからノードBの公開鍵証明書を受け取り、自身が有するノードCの公開鍵証明書と、取得したノードBの公開鍵証明書とを用いてノードBの認証を行う。ノードBの公開鍵の正当性および公開鍵証明書の有効性を確認できた場合に、ノードAはノードBを信頼する。このようにして、ノードAとノードBとの間で結ばれる信頼関係を信頼の輪と呼んでいる。
【0006】
非特許文献1に記載された方式において、各ノードは、自身が信頼するノードと公開鍵証明書を交換することにより、それらのノードと信頼関係を結ぶ。さらに、それらのノードは他のノードと信頼関係を結んでおり、各ノードは、その信頼関係を利用して被認証ノードまでの信頼の輪を構築する。
【0007】
以下、図5を参照し、従来の公開鍵証明書分散管理方式における信頼の輪の構築方法を詳細に説明する。図5(a)は、通信システムを構成するノード1〜8の信頼関係を示している。各ノードを結ぶ矢印の根元にあるノードが、その矢印の先にあるノードを信頼している。例えば、ノード1はノード2を信頼しており、ノード2の公開鍵証明書を発行している。この公開鍵証明書にはノード2の公開鍵とノード1の署名情報が含まれている。
【0008】
以下の説明では、通信を開始するノードを認証ノード、通信相手となるノードを最終被認証ノードと呼ぶ。図5(a)において、ノード1(認証ノード)が、信頼関係を直接結んでいないノード4(最終被認証ノード)の認証を行うとする。まず、認証のための初期準備として、以下の動作が行われる。
【0009】
(公開鍵生成)
各ノードは公開鍵と秘密鍵のペアを作成する。
(公開鍵証明書の発行)
各ノードは、既に取得している他ノードについての独自の知識に基づいて、信頼する他ノードの公開鍵に関する公開鍵証明書を発行する。
(リポジトリの作成)
各ノードは、発行した公開鍵証明書をリポジトリ(公開鍵証明書を格納するためにメモリやハードディスク等に構築されるデータベース)に格納し、管理する。
(リポジトリ交換)
各ノードは、各々が所有するリポジトリに格納した公開鍵証明書を各ノード同士の間で交換(リポジトリ交換)し、取得した公開鍵証明書をリポジトリに格納する。各ノードは、電波が届いて直接通信が可能な隣接ノードと定期的に上記のリポジトリ交換を行い(図5(b))、最終的に全ノードのリポジトリを収集する。図5(c)は、通信システムを構成する全ノードの公開鍵証明書の取得が終了した定常状態におけるノード1のリポジトリ内の公開鍵証明書を示している。図中において、例えばノード1がノード2に発行した公開鍵証明書は1→2と表現されている。
【0010】
続いて、ノードの認証を行う際、ノード1(認証ノード)は、信頼の輪を構築するのに必要な公開鍵証明書を自身のリポジトリから探索する。探索の結果、ノード1(認証ノード)は、ノード4(最終被認証ノード)までの信頼の輪がノード1→ノード2→ノード3→ノード4と繋がると判断する(図5(d))。従来の公開鍵証明書分散管理方式では、全ノードの公開鍵証明書が一旦リポジトリに格納された後には、信頼の輪を短時間で探索することができる。
【0011】
続いて、ノード1(認証ノード)は、信頼の輪に含まれるノードの公開鍵の正当性および公開鍵証明書の有効性を確認する。公開鍵の正当性を確認するため、ノード1(認証ノード)は、自身がノード2の公開鍵に対して発行した公開鍵証明書をリポジトリから取り出し、自身の公開鍵を用いて署名情報を復号化し、情報が正しいか否かを確認する。情報が正しかった場合、ノード1(認証ノード)がノード2の公開鍵の正当性を確認できたことになる。同様にして、ノード1(認証ノード)は、ノード2がノード3の公開鍵に対して発行した公開鍵証明書をリポジトリから取り出し、ノード2の公開鍵を用いて署名情報を復号化し、情報が正しいか否かを確認する。情報が正しかった場合、ノード1(認証ノード)がノード3の公開鍵の正当性を確認できたことになる。同様にして、ノード1(認証ノード)はノード4(最終被認証ノード)の公開鍵の正当性を確認する。
【0012】
続いて、ノード1(認証ノード)は、公開鍵証明書の有効性を確認するため、無効となった(失効した)公開鍵証明書の一覧が記載された失効証明書リスト(CRL:Certificate Revocation List)を検証する。各ノードは、失効証明書リスト内の情報を常に最新に保つため、公開鍵証明書を発行したノードに対して、公開鍵証明書の有効性を定期的に確認する必要がある。最終的に、信頼の輪に含まれる全ノードの公開鍵証明書がいずれも失効証明書リストに存在しなかった場合に、ノード1(認証ノード)はノード4(最終被認証ノード)までの信頼の輪が有効であると判断する。
【0013】
一方、非特許文献2には他の公開鍵証明書分散管理方式が記載されている。非特許分権2に記載された公開鍵証明書分散管理方式においては、通信相手となるノードの認証を行う必要性が発生したときに、認証ノードが、各ノードから必要なノードのみの公開鍵証明書を取得するようにしている。これによって、ネットワークに参加する全てのノードの公開鍵を各ノードが管理する非特許文献1に記載の公開鍵分散管理方式と比較して、通信資源や各ノードの資源を無駄に使うことがなく、公開鍵の管理コストを低減することが可能となっている。
【非特許文献1】Srdjan Capkun,Levente Buttyan,and Jean-Pierre Hubaux,"Self-Organized Public-Key Management for Mobile Ad Hoc Networks",IEEE TRANSACTIONS ON MOBILE COMPUTING, Vol.2,No.2,JANUARY-MARCH 2003,p.52-63
【非特許文献2】北田夕子,荒川豊,竹森敬祐,渡邊晃,「無線アドホックネットワークに適したルーティング情報を用いたオンデマンド公開鍵分散管理方式」,CSS2004,October 2004
【発明の開示】
【発明が解決しようとする課題】
【0014】
非特許文献1に記載された公開鍵証明書分散管理方式には以下の問題点がある。すなわち、リポジトリに格納されている公開鍵証明書が少ない場合、認証に失敗する確率が高い。また、この方式では各ノードが公開鍵証明書を収集することに主眼が置かれており、ノード同士でのリポジトリの交換によって、各ノードがばらばらに通信を行うため、ネットワーク内の全ノードの公開鍵証明書を収集するまでに多大な通信量および時間を要する。ノード数が多い大規模ネットワークでは、この通信量および時間は指数関数的に増加する。
【0015】
また、各ノードが定期的に公開鍵証明書を交換し合うため、全ノードが公開鍵証明書を取得してからも通信量が掛かる。さらに、公開鍵証明書の有効性を確認するために、公開鍵証明書を発行した全ノードに対して公開鍵証明書の有効性を定期的に確認し、失効証明書リストを更新する処理負荷が大きい。
【0016】
また、非特許文献2に記載された公開鍵証明書分散管理方式では、認証要求が発生した時点のオンデマンドで公開鍵証明書の収集が行われるため、公開鍵証明書の有効性の確認のための通信が不要になる。しかし、この方式では、公開鍵証明書を収集するため、認証ノードおよび中継ノードの全てが、公開鍵証明書を要求するための情報をブロードキャストするため、ノード密度が高いネットワークにおいては、通信量が無視できなくなる。
【0017】
本発明は、上述した問題点に鑑みてなされたものであって、通信システムを構成する各通信端末が公開鍵証明書やその失効情報等の認証情報を所持するまでに必要な通信量および時間を削減することができる通信システムおよび通信端末を提供することを目的とする。
【課題を解決するための手段】
【0018】
本発明は、上記の課題を解決するためになされたものであり、本発明の通信システムは、複数の通信端末を備え、それら複数の通信端末のうち、通信相手の認証に用いられる認証情報(公開鍵証明書やその失効情報等)を生成した通信端末は、後述するOLSR(Optimized Link State Routing)プロトコル等に基づいて、隣接する(すなわち、直接通信が可能な)通信端末の先に隣接する全ての通信端末に認証情報が転送されるように、隣接する通信端末の中から、認証情報を中継する中継端末を選択する。そして、認証情報を生成した通信端末は、中継端末として選択したことを通知する通知情報を他の通信端末へ送信またはブロードキャストし、認証情報をブロードキャストする。認証情報をブロードキャストした通信端末に隣接する通信端末の少なくとも一部は、上記の通知情報に基づいて、中継端末として選択されたと判断した場合にのみ、受信した認証情報をブロードキャストする。認証情報を中継する中継端末の選択および通知情報の送信が認証情報の生成よりも前であるか、後であるかは問わない。
【0019】
また、本発明の通信システムは、複数の通信端末を備え、それら複数の通信端末のうち、認証情報を他の通信端末から受信した通信端末は、OLSRプロトコル等に基づいて、隣接する通信端末の先に隣接する全ての通信端末に認証情報が転送されるように、隣接する通信端末の中から、認証情報を中継する中継端末を選択する。そして、認証情報を受信した通信端末は、中継端末として選択したことを通知する通知情報を他の通信端末に送信またはブロードキャストし、認証情報をブロードキャストする。認証情報をブロードキャストした通信端末に隣接する通信端末の少なくとも一部は、通知情報に基づいて、中継端末として選択されたと判断した場合にのみ、受信した認証情報をブロードキャストする。認証情報を中継する中継端末の選択および通知情報の送信が認証情報の受信よりも前であるか、後であるかは問わない。
【0020】
上記の通信システムによれば、認証情報を生成または受信した通信端末に隣接する通信端末のうち、中継端末として選択された通信端末が、受信した認証情報をブロードキャストすることによって、認証情報を生成または受信した通信端末に隣接する全ての通信端末のさらに先に隣接する全ての通信端末に認証情報が転送される。これを繰り返すことによって、通信システムを構成する全ての通信端末が同一の認証情報を所持することができる。そして、認証情報の生成元の通信端末から一斉にかつ一方向に(認証情報の生成元の通信端末から見たホップ数が増加する方向に)認証情報を転送することが可能となるため、通信システムを構成する各通信端末が認証情報を所持するまでに必要な通信量および時間を削減することができる。
【0021】
特に、認証情報をブロードキャストした通信端末に隣接する通信端末の少なくとも一部が、中継端末として選択されたと判断した場合にのみ認証情報をブロードキャストし、中継端末として選択されなかったと判断した場合には認証情報をブロードキャストしないので、不要な通信量を大幅に削減することができる。また、上記の認証情報が、証明書の有効性の確認に必要な証明書の失効情報である場合には、全ての通信端末が証明書の有効性についての最新の情報を所持することが可能となるため、証明書の有効性を他の通信端末に確認するための通信が不要となる。したがって、各通信端末の失効情報の管理負荷を削減することができる。
【0022】
また、本発明の通信システムにおいて、通信システムを構成する複数の通信端末のうち、少なくとも一部の通信端末がさらに定期的または不定期的に認証情報をブロードキャストしてもよい。これによって、一時的にどの通信端末からも電波の届かない場所にいた通信端末が認証情報を取得する可能性を高めると共に、通信システムに参加する各通信端末が有する認証情報の同期を図ることができる。
【0023】
また、本発明の通信端末は、認証情報生成手段、選択手段、通知情報送信手段、および認証情報送信手段を備え、認証情報生成手段が生成した認証情報を認証情報送信手段がブロードキャストする。選択手段は、OLSRプロトコル等に基づいて、隣接する通信端末の先に隣接する全ての通信端末に認証情報が転送されるように、隣接する通信端末の中から、認証情報を中継する中継端末を選択する。通知情報送信手段は、中継端末として選択したことを通知する通知情報を他の通信端末へ送信またはブロードキャストする。認証情報を中継する中継端末の選択および通知情報の送信が認証情報の生成よりも前であるか、後であるかは問わない。
【0024】
また、本発明の通信端末は、認証情報受信手段、選択手段、通知情報送信手段、および認証情報送信手段を備え、他の通信端末から送信された認証情報を認証情報受信手段が受信し、その認証情報を認証情報送信手段がブロードキャストする。選択手段および通知情報送信手段は上記と同様である。特に本発明の認証情報送信手段は、通知情報に基づいて、中継端末として選択されたと判断した場合にのみ、受信された認証情報をブロードキャストする。認証情報を中継する中継端末の選択および通知情報の送信が認証情報の受信よりも前であるか、後であるかは問わない。
【0025】
上記の通信端末によれば、認証情報を生成または受信した通信端末に隣接する通信端末のうち、認証情報を中継する中継端末として選択された通信端末が認証情報を受信し、ブロードキャストすることによって、認証情報を生成または受信した通信端末に隣接する全ての通信端末のさらに先に隣接する全ての通信端末に認証情報が転送される。これを繰り返すことによって、通信システムを構成する全ての通信端末が同一の認証情報を所持することができる。そして、認証情報の生成元の通信端末から一斉にかつ一方向に(認証情報の生成元の通信端末から見たホップ数が増加する方向に)認証情報を転送することが可能となるため、通信システムを構成する各通信端末が認証情報を所持するまでに必要な通信量および時間を削減することができる。
【0026】
特に、他の通信端末から認証情報を受信した通信端末が、中継端末として選択されたと判断した場合にのみ認証情報をブロードキャストし、中継端末として選択されなかったと判断した場合には認証情報をブロードキャストしないので、不要な通信量を大幅に削減することができる。また、上記の認証情報が、証明書の有効性の確認に必要な証明書の失効情報である場合には、前述したように、証明書の有効性を他の通信端末に確認するための通信が不要となり、各通信端末の失効情報の管理負荷を削減することができる。
【0027】
また、本発明の通信端末において、認証情報送信手段が定期的または不定期的に認証情報をブロードキャストしてもよい。これによって、一時的にどの通信端末からも電波の届かない場所にいた通信端末が認証情報を取得する可能性を高めると共に、通信システムに参加する各通信端末が有する認証情報の同期を図ることができる。
【発明の効果】
【0028】
本発明によれば、通信システムを構成する各通信端末が公開鍵証明書やその失効情報等の認証情報を所持するまでに必要な通信量および時間を削減することができるという効果が得られる。
【発明を実施するための最良の形態】
【0029】
以下、図面を参照し、本発明の実施形態を説明する。図1は、本発明の一実施形態による通信システムの構成例を示している。本通信システムは、通信端末としての機能を有するノードA〜N,Sを備えている。ノード同士を結ぶ線は、各ノードが互いに電波の到達範囲内に位置し、直接通信が可能であることを示している。図2は各ノードの構成を示している。図2において、アンテナ10は、他のノードと電波の送受信を行うためのものである。通信部11は、データの送受信に係る変調・復調処理等を行う。操作部12は、ユーザによって操作されるキー等を備えている。表示部13は、ユーザに対して様々な情報を表示する。
【0030】
記憶部14は、記録媒体およびデータの読み書き用の回路を備えており、各種の情報を記憶する。リポジトリには、信頼するノードに対して自ノードが発行した公開鍵証明書と、他ノードから取得した公開鍵証明書とが格納される。後述する手法によって、公開鍵証明書の発行を受けた全てのノードの公開鍵証明書がリポジトリに格納される。1ホップ隣接ノード情報領域には、自ノードに隣接する(電波が届いて直接通信が可能な)ノード(1ホップ隣接ノードとする)の情報が格納される。2ホップ隣接ノード情報領域には、1ホップ隣接ノードに隣接するノード(2ホップ隣接ノードとする。自ノードおよび1ホップ隣接ノードは含まれない。)の情報が格納される。MPR情報領域には、後述するMPR集合に属するノードの情報が格納される。MPRセレクタ情報領域には、自ノードをMPR集合として選択している他ノードの情報が格納される。失効証明書リスト領域には、無効となった公開鍵証明書の一覧が記載された失効証明書リストが格納される。
【0031】
制御部15はCPU(Central Processing Unit)を備え、上記の各構成の動作を制御すると共に、各種の情報処理を行う。上述した構成は一例であり、上記以外の構成を追加したり、不要な構成を削除したりしてもよい。
【0032】
本実施形態における各ノードは、自身が他ノードに対して公開鍵証明書を発行した時点や、公開鍵証明書を失効させた時点で、公開鍵証明書またはその失効情報(どの公開鍵証明書が失効したのかを特定するための情報を少なくとも含むもの)を通信システム全体にフラッディングする。フラッディングとは、送信元の端末が情報をブロードキャストし、それを受信した全ての端末がその情報を転送することを繰り返すことによって、全端末に情報を配信する手法である。各ノードが、OLSR(Optimized Link State Routing)プロトコルに基づいてフラッディングを行うことによって、無駄なフラッディングを防ぐことが可能となっている。OLSRプロトコルの詳細は、例えば下記の文献に記載されている。
S.Corson and J.Macker,"Mobile ad hoc networking(MANET): Routing protocol performance issues and evaluation consideration",IETF RFC25010,Jan,1999
【0033】
例えば、ノードSがブロードキャストを行うと、ノードSに隣接するノードA,B,C,D,Eに電波が届き、これらのノードがノードSからの情報を受信する(図3(a))。これらのノードの全てがブロードキャストを行うと、これらのノードに隣接するノードF,G,H,I,J,Mに電波が届き、これらのノードが情報を受信する。しかし、例えばノードMはノードCおよびEの両方から情報を受信することになり、不要な通信が発生することが分かる。
【0034】
OLSRプロトコルでは、より効率的なフラッディングを行うため、ブロードキャストによって送信元からの電波が届いた1ホップ隣接ノードのうち、その先に隣接する全ての2ホップ隣接ノードへ情報を転送するのに必要最小限の数のノードが再送信ノードとなって、ブロードキャストを行う。このように、1ホップ隣接ノードの先に存在する全ての2ホップ隣接ノードへ情報が転送されるような1ホップ隣接ノードの集合はMPR(Multi Point Relay)集合と呼ばれる。
【0035】
後述するように、ノードSに隣接するノードのうち、ノードA,D,EがMPR集合に属している。これらのノードのみがブロードキャストを行い、残りの1ホップ隣接ノード(ノードBおよびC)は情報を受信してもブロードキャストしない。ノードF,G,HはノードAから情報を受信可能であり、ノードJはノードDから情報を受信可能であり、ノードI,MはノードEから情報を受信可能である(図3(b))。したがって、1ホップ隣接ノードのうちの一部のノードがブロードキャストを行うだけで、1ホップ隣接ノードの先に隣接する全ての2ホップ隣接ノードまで情報を転送することができるので、効率的なフラッディングを行うことができる。
【0036】
ノードA,D,Eがブロードキャストを行うと、同様にそれらの各ノードのMPR集合に属するノードのみがブロードキャストを行う。これを繰り返すことによって、不要な通信の発生を削減しながら、通信システムを構成する全てのノードに情報を配信することができる。
【0037】
次に、本実施形態による通信システムの詳細な動作を説明する。まず、MPR集合に属するノードの選択方法を説明する。各ノードは、HELLOメッセージを定期的に周辺のノードへ送信する。これによって、各ノードは他のノードの情報を取得する。初期状態では、各ノードは自身の存在を周辺のノードに通知するために、自身のアドレス(識別情報)を1ホップ隣接ノード情報として含むHELLOメッセージを送信する。すなわち、各ノードの制御部15はHELLOメッセージを生成して通信部11へ出力する。このHELLOメッセージは通信部11で変調された後、アンテナ10から他のノードへ送信される。送信されたHELLOメッセージは、隣接するノードのアンテナ10で受信され、通信部11で復調された後、制御部15へ出力される。制御部15は、HELLOメッセージに含まれる1ホップ隣接ノードのアドレスを記憶部14の1ホップ隣接ノード情報領域に格納する。
【0038】
また、各ノードは、自身に隣接するノードのアドレス(識別情報)を2ホップ隣接ノード情報として含むHELLOメッセージを送信する。このHELLOメッセージは、隣接するノードによって受信される。受信したノードの制御部15は、HELLOメッセージに含まれるアドレスのうち、記憶部14の1ホップ隣接ノード情報領域に格納されたアドレスに含まれないものを記憶部14の2ホップ隣接ノード情報領域に格納する。上記のようにして、各ノードは1ホップ隣接ノードおよび2ホップ隣接ノードの情報を取得する。
【0039】
各ノードは、Willingnessという0〜7の範囲の値を持っており、この値が高ければ高いほどMPR集合に選ばれやすい。Willingnessの値はHELLOメッセージに付加されており、各ノードに通知される。HELLOメッセージを受信したノードの制御部15は、HELLOメッセージに含まれる他ノードのアドレスとWillingnessの値とを関連付けて、記憶部14の1ホップ隣接ノード情報領域または2ホップ隣接ノード情報領域に格納する。このWillingnessの値が0のノードはMPR集合に選ばれず、7のノードは積極的にMPR集合に選ばれる。電力供給源を持つノードや電池残量の多いノードでWillingnessの値を高く設定したり、隣接ノードへの接続数が多いノードでWillingnessの値を高く設定したりすること等が考えられるが、本実施形態ではWillingnessの設定方法を特に限定しない。図1における各ノードのWillingnessの値は、ノードAが7(WILL_ALWAYS)、ノードEが5(WILL_HIGH)、その他のノードが3(WILL_DEFAULT)であるとする。
【0040】
実際に情報を中継するノードの集合であるMPR集合は、以下のようにして決定される。ここでは一例として、ノードSについてのMPR集合に属するノードの選択方法を説明する。ノードSが知っているノードはノードK,L,N以外の全ノードであり、それらがMPR集合の選択対象となる。ノードSの制御部15は、記憶部14の1ホップ隣接ノード情報領域および2ホップ隣接ノード情報領域に格納された各ノードの情報に基づいて、「N」と「N」という2つの集合を作成する(図4(a))。「N」は、MPR集合となるノードの候補を示す1ホップ隣接ノードの集合であり、ノードA,B,C,D,Eが含まれる。「N」は、まだMPR集合となるノードが選択されていないために、情報が届かないことを示す2ホップ隣接ノードの集合であり、ノードF,G,H,I,J,Mが含まれる。
【0041】
続いて、ノードSの制御部15は、「N」に含まれるノードの中から、Willingnessの値が最も高いノードAをMPR集合として選択する。もし、同じWillingnessの値を持つノードが複数あった場合には、「N」に含まれるノードのより多くへ情報を転送できるノードがMPR集合として選択される。ノードF,G,HはノードAから情報を受け取れるようになるので、制御部15はそれらのノードを「N」から削除する。このときの「N」および「N」は図4(b)のようになる。
【0042】
続いて、制御部15は、「N」に含まれる残りのノードの中から、Willingnessの値が最も高いノードEをMPR集合として選択する。ノードI,MはノードEから情報を受け取れるようになるので、制御部15はそれらのノードを「N」から削除する。このときの「N」および「N」は図4(c)のようになる。「N」から全てのノードが削除されるまで上記の処理が繰り返される。続いて、ノードDがMPR集合として選択されて、ノードJが「N」から削除されるため、MPR集合に属するノードの選択処理が終了する。結果として、MPR集合に属するノードは、ノードA,D,Eとなる。
【0043】
MPR集合の計算を行った後、ノードSは、MPR集合として選択されていることを通知するためのHELLOメッセージ(通知情報)をノードA,D,Eへ送信する。HELLOメッセージを受信した各ノードの制御部15は、HELLOメッセージに含まれるノードSのアドレスを記憶部14のMPRセレクタ情報領域に格納する。MPRセレクタ情報領域に格納された情報を参照することによって、各ノードは、自身がどのノードのMPR集合として選択されているのかを知ることができる。ノードS以外の他のノードも、上記と同様にしてMPR集合を決定する。上記のHELLOメッセージの送信はブロードキャストであってもよい。この場合には、MPR集合として選択されたノードのアドレスがHELLOメッセージ中に含まれていることが望ましい。ブロードキャストされたHELLOメッセージを受信したノードは、HELLOメッセージに含まれる、MPR集合として選択されたノードのアドレスが自身のアドレスと一致した場合に、自身がMPR集合として選択されたと判断し、送信元のノードのアドレスを記憶部14のMPRセレクタ情報領域に格納する。
【0044】
次に、公開鍵証明書の発行時およびその失効時の通信システムの動作を説明する。なお、各ノードは、一度受信した情報と重複する情報を再度受信した場合には、再度受信した方の情報を削除(破棄)するものとする。したがって、同じ情報を複数回受信した場合でも、各ノードが行うブロードキャストは最大で1回である。以下の説明では、ノードSが情報の発信源となる場合を説明するが、他のノードが発信源となる場合も同様である。
【0045】
ノードSが、あるノードに対して公開鍵証明書を発行する場合、ノードSの制御部15は公開鍵証明書を生成し、記憶部14のリポジトリに格納する。また、ノードSが、あるノードに対して公開鍵証明書を失効させる場合、ノードSの制御部15は失効情報を生成すると共に、記憶部14の失効証明書リスト領域に格納された失効証明書リストを更新する。続いて、ノードSは公開鍵証明書またはその失効情報をブロードキャストする。ノードSにおいて、前述したMPR集合の選択およびHELLOメッセージ(MPR集合として選択されていることを各ノードに通知するためのもの)の送信は、公開鍵証明書または失効情報のブロードキャストよりも前に行われればよく、公開鍵証明書または失効情報の生成よりも前または後のいずれでもよい。また、公開鍵証明書または失効情報に対して、MPR集合として選択されていることを各ノードに通知する情報を付加したものをノードSがブロードキャストするようにしてもよい。
【0046】
ブロードキャストされた公開鍵証明書または失効情報は、ノードSに隣接するノードA,B,C,D,Eによって受信される。各ノードの制御部15は、公開鍵証明書を受信した場合には、その公開鍵証明書を記憶部14のリポジトリに格納する。また、制御部15は、失効情報を受信した場合には、その失効情報に基づいて、記憶部14の失効証明書リスト領域に格納された失効証明書リストを更新する。
【0047】
また、制御部15は、公開鍵証明書または失効情報の送信元のノードのアドレスが、記憶部14のMPRセレクタ情報領域に格納されたアドレスのいずれかと一致するか否かを判定する。送信元のノードのアドレスが、MPRセレクタ情報領域に格納されたアドレスのいずれかと一致した場合にのみ、制御部15は公開鍵証明書または失効情報をブロードキャストする処理を行う。すなわち、図1のノードA,D,Eのみが公開鍵証明書または失効情報をブロードキャストする。前述したとおり、これらのノードはMPR集合としてノードSによって選択されたノードであり、これらのノードがブロードキャストを行うことによって、ノードSの全ての2ホップ隣接ノード(ノードF,G,H,I,M)へ公開鍵証明書または失効情報を転送することができる。
【0048】
ノードA,D,EもノードSと同様にMPR集合を決定しており、これらのノードの先に隣接するノードF,G,H,I,Mの中から、MPR集合として選択されたノードのみが公開鍵証明書または失効情報をブロードキャストする。上記の動作が繰り返されることによって、連鎖的に情報が再送信されていき、最終的に通信システム内の全てのノードが、ノードSによって生成された公開鍵証明書または失効情報を所持することになる。
【0049】
ノードの認証を行う必要性が発生した場合に信頼の輪の構築を行う動作は、前述した非特許文献1に記載の公開鍵証明書分散管理方式と同様である。したがって、全ノードの公開鍵証明書が一旦リポジトリに格納された後には、信頼の輪を短時間で探索することができる。しかし、本実施形態では、各ノードが公開鍵証明書の失効情報もリアルタイムでフラッディングすることによって、常に最新の状態の失効証明書リストを各ノードが所持することになるので、公開鍵証明書の有効性を確認するための通信が不要となる。
【0050】
次に、本実施形態の変形例を説明する。公開鍵証明書または失効情報のフラッディングが行われている際に、通信システム内の他のノードから電波が届かない電波範囲外にいて、公開鍵証明書または失効情報を受信することができないノードが存在する場合もある。そこで、一部のノードが、自身の有する公開鍵証明書または失効情報を定期的または不定期的に通信システム全体にフラッディングすることによって、電波範囲外にいたノードが電波範囲内に入った場合に公開鍵証明書または失効情報を受信することができるようにする。フラッディングの間隔は特に限定されず、所定間隔でも不定間隔でもよい。
【0051】
一部のノードがフラッディングする公開鍵証明書は、自身が発行した公開鍵証明書でもよいし、他のノードから取得した公開鍵証明書でもよい。また、記憶部14のリポジトリに格納されている、単一または一部の複数の公開鍵証明書をフラッディングしてもよいし、全ての公開鍵証明書をフラッディングしてもよい。失効情報についても、単一または一部の複数の失効情報をフラッディングしてもよいし、全ての失効情報(これを一元管理するもの、例えば失効証明書リスト(CRL)でもよい)をフラッディングしてもよい。
【0052】
定期的または不定期的にフラッディングを行うノードは、例えばWillingnessの値が高いノードとすればよい。Willingnessの値が高いか否かの判断においては、Willingnessの値が7である、あるいはWillingnessの値が所定値以上である等の基準を設ければよい。また、他のノードから公開鍵証明書を多く発行されているノード(すなわち多くの他のノードから信頼されているノード)が定期的または不定期的にフラッディングを行ってもよい。本実施形態の通信システムを構成する各ノードは、全てのノードの公開鍵証明書を所持することができるので、それが示す信頼関係の情報に基づいてフラッディングを行うか否かを判断する。この判断においては、公開鍵証明書の被発行数が所定数以上である、あるいは全てのノードの中で自ノードの公開鍵証明書の被発行数が、上位から数えて所定番目以内である等の基準を設ければよい。また、公開鍵証明書を発行し、フラッディングしたノードが同じ公開鍵証明書を定期的または不定期的にフラッディングしてもよい。
【0053】
本変形例によれば、一時的にどのノードからも電波の届かない場所にいたノードがいずれかのノードから電波の届く場所に来た際に、以前受信できなかった公開鍵証明書または失効情報を受信する可能性を高めることができる。また、通信システムに参加する各ノードが有する公開鍵証明書または失効情報の同期を図る(すなわち、より長い時間、各ノードが同じ公開鍵証明書または失効情報を所持しているようにする)ことができる。
【0054】
上述したように、本実施形態による通信システムでは、公開鍵証明書または失効情報を生成したノード(上記の例ではノードS)に隣接するノード(上記の例ではノードA,B,C,D,E等)、あるいは公開鍵証明書または失効情報を他のノードから受信したノードに隣接するノードのうち、MPR集合に属するノード(すなわち公開鍵証明書または失効情報を中継する中継ノード)として選択されたノード(上記の例ではノードA,D,E等)が、受信した公開鍵証明書または失効情報をブロードキャストする。この結果、公開鍵証明書または失効情報を生成または受信したノードに隣接する全てのノード(1ホップ隣接ノード)のさらに先に隣接する全てのノード(2ホップ隣接ノード)に公開鍵証明書または失効情報が転送される。
【0055】
これを繰り返すことによって、通信システムを構成する全てのノードが同一の情報を所持することができる。そして、公開鍵証明書または失効情報の生成元のノードから一斉にかつ一方向に(情報の生成元のノードから見たホップ数が増加する方向に)公開鍵証明書または失効情報を転送することが可能となるため、通信システムを構成する各ノードが公開鍵証明書または失効情報を所持するまでに必要な通信量および時間を削減することができる。特に、公開鍵証明書または失効情報をブロードキャストしたノードに隣接するノードのうち、中継ノードとして選択されたと判断したノードのみが公開鍵証明書または失効情報をブロードキャストするので、効率的なフラッディングが可能となり、不要な通信量を大幅に削減することができる。
【0056】
また、失効情報を生成したノードから他の全てのノードへ向けて上記のように次々と失効情報が転送される結果、常に最新の状態の失効証明書リストを全てのノードが所持する状態が保たれることになるので、公開鍵証明書の有効性を確認するための通信が不要となる。したがって、各ノードの失効情報の管理負荷を削減することができる。
【0057】
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成はこれらの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【図面の簡単な説明】
【0058】
【図1】本発明の一実施形態による通信システムの構成を示す構成図である。
【図2】本発明の一実施形態による通信システムが備える通信端末の構成を示すブロック図である。
【図3】本発明の一実施形態における認証情報の配信方法を説明するための説明図である。
【図4】本発明の一実施形態におけるMPR集合の決定方法を説明するための説明図である。
【図5】従来の通信システムにおける信頼の輪の構築方法を説明するための説明図である。
【符号の説明】
【0059】
10・・・アンテナ、11・・・通信部、12・・・操作部、13・・・表示部、14・・・記憶部、15・・・制御部


【特許請求の範囲】
【請求項1】
複数の通信端末を備えた通信システムにおいて、
通信相手の認証に用いられる認証情報を生成した通信端末は、
隣接する通信端末の先に隣接する全ての通信端末に前記認証情報が転送されるように、隣接する通信端末の中から、前記認証情報を中継する中継端末を選択し、
前記中継端末として選択したことを通知する通知情報を他の通信端末へ送信またはブロードキャストし、
前記認証情報をブロードキャストし、
前記認証情報をブロードキャストした通信端末に隣接する通信端末の少なくとも一部は、前記通知情報に基づいて、前記中継端末として選択されたと判断した場合にのみ、受信した前記認証情報をブロードキャストする
ことを特徴とする通信システム。
【請求項2】
複数の通信端末を備えた通信システムにおいて、
通信相手の認証に用いられる認証情報を他の通信端末から受信した通信端末は、
隣接する通信端末の先に隣接する全ての通信端末に前記認証情報が転送されるように、隣接する通信端末の中から、前記認証情報を中継する中継端末を選択し、
前記中継端末として選択したことを通知する通知情報を他の通信端末へ送信またはブロードキャストし、
前記認証情報をブロードキャストし、
前記認証情報をブロードキャストした通信端末に隣接する通信端末の少なくとも一部は、前記通知情報に基づいて、前記中継端末として選択されたと判断した場合にのみ、受信した前記認証情報をブロードキャストする
ことを特徴とする通信システム。
【請求項3】
前記通信システムを構成する複数の通信端末のうち、少なくとも一部の通信端末がさらに定期的または不定期的に前記認証情報をブロードキャストすることを特徴とする請求項1または請求項2に記載の通信システム。
【請求項4】
通信相手の認証に用いられる認証情報を生成する認証情報生成手段と、
隣接する通信端末の先に隣接する全ての通信端末に前記認証情報が転送されるように、隣接する通信端末の中から、前記認証情報を中継する中継端末を選択する選択手段と、
前記中継端末として選択したことを通知する通知情報を他の通信端末へ送信またはブロードキャストする通知情報送信手段と、
前記認証情報をブロードキャストする認証情報送信手段と、
を備えたことを特徴とする通信端末。
【請求項5】
他の通信端末から送信された、通信相手の認証に用いられる認証情報を受信する認証情報受信手段と、
隣接する通信端末の先に隣接する全ての通信端末に前記認証情報が転送されるように、隣接する通信端末の中から、前記認証情報を中継する中継端末を選択する選択手段と、
前記中継端末として選択したことを通知する通知情報を他の通信端末へ送信またはブロードキャストする通知情報送信手段と、
前記通知情報を他の通信端末から受信する通知情報受信手段と、
前記通知情報に基づいて、前記中継端末として選択されたと判断した場合にのみ、受信された前記認証情報をブロードキャストする認証情報送信手段と、
を備えたことを特徴とする通信端末。
【請求項6】
前記認証情報送信手段がさらに定期的または不定期的に前記認証情報をブロードキャストすることを特徴とする請求項5に記載の通信端末。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate