Nothing Special   »   [go: up one dir, main page]

JP2005236951A - 通信システムおよび通信端末 - Google Patents

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

Info

Publication number
JP2005236951A
JP2005236951A JP2004302936A JP2004302936A JP2005236951A JP 2005236951 A JP2005236951 A JP 2005236951A JP 2004302936 A JP2004302936 A JP 2004302936A JP 2004302936 A JP2004302936 A JP 2004302936A JP 2005236951 A JP2005236951 A JP 2005236951A
Authority
JP
Japan
Prior art keywords
information
terminal
node
public key
certificate
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.)
Granted
Application number
JP2004302936A
Other languages
English (en)
Other versions
JP4690007B2 (ja
Inventor
Keisuke Takemori
敬祐 竹森
Yuko Kitada
夕子 北田
Iwao Sasase
巌 笹瀬
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.)
KDDI Corp
Keio University
Original Assignee
KDDI Corp
Keio University
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 KDDI Corp, Keio University filed Critical KDDI Corp
Priority to JP2004302936A priority Critical patent/JP4690007B2/ja
Publication of JP2005236951A publication Critical patent/JP2005236951A/ja
Application granted granted Critical
Publication of JP4690007B2 publication Critical patent/JP4690007B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract


【課題】 通信資源や各ノードの資源を無駄に使うことがなく、公開鍵の管理コストを低減することができる通信システムおよび通信端末を提供する。
【解決手段】 ノード1Aはノード1Nの公開鍵を検証するため、公開鍵証明書の署名者であるノード1Mの公開鍵証明書を要求するための証明書要求情報をブロードキャストする。証明書要求情報を受信したノード1Cは、証明書要求情報に対して、ノード1Aによって発行された公開鍵証明書を付加し、証明書要求情報をブロードキャストする。各ノードは同様の動作を行う。ノード1Jが証明書要求情報を受信した場合、ノード1Jは要求された公開鍵証明書をノード1Aへ送信すべきであると判断し、要求された公開鍵証明書および各中継ノードの公開鍵証明書を含む返信情報をノード1Aへ送信する。ノード1Aは返信情報に基づいてノード1Nの公開鍵の検証を行う。
【選択図】 図1

Description

本発明は、暗号化通信を行う通信システムに関し、特に、暗号化通信における公開鍵の管理方式の改善を図った通信システムおよび通信端末に関する。
基地局やアクセスポイントなどを必要とせず、無線で接続された携帯電話、PHS(登録商標)、およびPDA(Personal Digital Asistance)などの無線通信端末同士が相互に無線接続を行い、他の無線通信端末を介して目的の通信相手と接続するマルチホップ接続により無線通信を行うネットワーク形態は無線アドホックネットワークと呼ばれる。無線アドホックネットワークにおいては、あるノードから電波の届く範囲内の全てのノードがそのノードを盗聴することができるため、エンド−エンド間の通信を秘匿するためのVPN(Virtual Private Network)が必要になる。
従来、セキュリティの高いVPNを構築するために、暗号化されたデータを通信でやりとりする暗号方式がよく使用されている。その暗号方式の一例としてよく知られるものに、公開鍵暗号方式がある。これは、データの送信側が用いる暗号化用の鍵と受信側が用いる復号化用の鍵とで異なる鍵が用いられる方式である。例えば、データの送信側は受信側から予め公開鍵を受け取り、この公開鍵を用いて暗号化したデータを受信側へ送信する。このデータを受信した受信側は、自身の公開鍵に対応した秘密鍵を用いて復号化を行い、データを取得する。
また、公開鍵暗号方式においては、不特定多数に対して公開される公開鍵の正当性を証明するために、公開鍵に対して公開鍵証明書を付与し、その公開鍵の信頼度および安全性を高めることが一般的に行われている。この公開鍵証明書を発行・管理する機関はCA(Certificate Authority)と呼ばれ、従来の無線通信システムにおいては、基地局やアクセスポイント等の固定基盤がその役を担っていた。従来の無線通信システムにおいては、ノードは予めCAに対して自身の公開鍵を通知する。そして、CAは、その公開鍵を持つノードが信頼できると判断した場合に、そのノードに対して公開鍵証明書を発行する。
公開鍵証明書は、公開鍵とその公開鍵の所有ノードに関する情報とを組み合わせたデータに対して、CAが自身の秘密鍵(共通鍵)を用いて行った電子書名を含むものである。あるノード(ノードAとする)が他のノード(ノードBとする)の公開鍵を認証する場合、ノードAはノードBから公開鍵証明書を取得する。そして、ノードAは、CAから予め取得したCAの公開鍵を用いて公開鍵証明書の電子署名を検証し、その電子署名が確かにCAによって行われたものだと認証した場合は、公開鍵証明書に付与されたノードBの公開鍵は正当なものであると判断する。この場合、ノードAは前述したとおり、この公開鍵を用いてノードBとの通信を行う。
しかし、基地局やアクセスポイント等の固定基盤を持たない無線アドホックネットワークの場合、絶対的に信頼できるCAが存在しないため、公開鍵証明書の発行・管理を行うことができなかった。そこで、各ノードが独自に公開鍵証明書を発行・管理する公開鍵証明書分散管理方式(各通信ノードがCAの役割を担うことからこう呼ばれる)が提案された(例えば、非特許文献1)。
この方式は、各ノードが独自の判断(knowledge:知識や経験)で通信ノードの公開鍵証明書を発行して管理するものである。例えば、ノードAはノードBに対して公開鍵証明書を発行しておらず、ノードBと信頼関係を結んでいないとする。また、ノードAが直接信頼する(公開鍵証明書を発行している)ノードCはノードBを直接信頼しているとする。ノードAがノードBと暗号化通信を行う場合、ノードAはノードCからノードBの公開鍵証明書を受け取ることにより、ノードBを信頼することができる。このようにして、ノードAとノードBとの間で結ばれる信頼関係を信頼の輪と呼んでいる。
非特許文献1に記載される方式においては、各ノードは公開鍵証明書に関する情報を自身が信頼するノードと交換することにより、それらのノードと信頼関係を結ぶ。さらに、それらのノードは他のノードと信頼関係を結んでおり、その信頼関係を利用して被認証ノードまでの信頼の輪を構築する手法である。被認証ノードまでの信頼の輪がつながれば、被認証ノードの公開鍵の正当性を証明したことになる。
より具体的には、この方式においては以下のような処理が行われる。まず、各ノードは自身の公開鍵とそれに対応した秘密鍵とを作成する。続いて、各ノードは自身が既に取得している他ノードの公開鍵の知識に基づいて、他ノードの公開鍵に関する公開鍵証明書を作成し、それらの公開鍵を所有する各ノードに対して公開鍵証明書を発行する。各ノードは作成した公開鍵証明書を各ノード同士の間で交換し、各々が所有するリポジトリ(公開鍵証明書を格納するためにハードディスクドライブなどに構築されるデータベース)に、取得した公開鍵証明書を格納する。そして、各ノードはリポジトリ内の情報を交換し合い、ネットワークに参加している全てのノードのリポジトリ内の情報を取得する。目的とするノードと通信を行いたいノードは、このリポジトリ内の情報に基づいて、目的とするノードまでの信頼の輪の構築計算を行う。
Srdjan Capkun、外2名,「Self−Organized Public−Key Management for Mobile Ad Hoc Networks」,IEEE TRANSACTIONS ON MOBILE COMPUTING,2003,Vol.2,No.1,p.52−63
しかし、上述した従来の公開鍵証明書分散管理方式においては、各ノードがネットワークに参加している全てのノードのリポジトリ内の情報を予め受け取り、HDD(Hard Disk Drive)もしくはメモリ上で管理することを前提としている。したがって、ノード数が増えるにつれ、公開鍵証明書情報の交換のための通信量が増大する。また、リポジトリの管理に必要なメモリおよびHDDの容量やCPU資源には限界があるため、公開鍵を管理することができるノードの数に限界がある。たとえ、全ノードの信頼関係に関する情報を収集し、保存することができたとしても、目的とする被認証ノードまでの信頼の輪のつながりをリポジトリから探索する場合には、CPU(Central Processing Unit)に大きな負荷が掛かるため、通信中に認証を行うにはリアルタイム性に問題が生じる。
また、たとえ信頼の輪を探索することができたとしても、リポジトリ内の各公開鍵証明書の有効性を確認しなければならない。公開鍵証明書が有効でないと判断されたノードは失効証明書リスト(CRL:Certification Revocation List)に記載される。公開鍵証明書の有効性の判断はこの失効証明書リストに基づいて実施される。従来の公開鍵証明書分散管理方式においては、信頼の輪がつながった時点において、通信を行うノードが、信頼の輪を構成しているノードに対して、失効証明書リストに関する情報を問い合わせる通信が発生し、その通信コストも問題である。
本発明は、上述した問題点に鑑みてなされたものであって、通信資源や各ノードの資源を無駄に使うことがなく、公開鍵の管理コストを低減することができる通信システムおよび通信端末を提供することを目的とする。
本発明は上記の課題を解決するためになされたもので、請求項1に記載の発明は、認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムにおいて、前記認証端末は、前記公開鍵の検証に必要な情報を要求するための要求情報を送信する第1の送信手段と、前記中継端末から、前記情報を含む検証用情報を受信する第1の受信手段と、該検証用情報に基づいて前記公開鍵を検証する検証手段とを具備し、前記中継端末は、前記要求情報によって要求された情報を所持していない場合には、前記要求情報を他の中継端末へ送信し、前記要求情報によって要求された情報を所持している場合には、前記情報を含む検証用情報を前記認証端末または他の中継端末へ送信する第2の送信手段とを具備することを特徴とする通信システムである。
請求項2に記載の発明は、認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムにおいて、前記認証端末は、前記公開鍵の検証に必要な第1の証明書情報を要求するための要求情報をブロードキャストする第1の送信手段と、前記第1の証明書情報を含む検証用情報を前記中継端末から受信する第1の受信手段と、前記検証用情報に基づいて前記公開鍵を検証する検証手段とを具備し、前記中継端末は、証明書情報を記憶する第1の記憶手段と、前記要求情報を受信する第2の受信手段と、該要求情報に基づいて、前記第1の証明書情報が前記第1の記憶手段に記憶されているかどうか判定する判定手段と、記憶されていないと判定された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、該要求情報をブロードキャストし、記憶されていると判定された場合には、前記要求情報に付加された証明書情報と前記第1の証明書情報とを含む検証用情報を前記認証端末へ送信する第2の送信手段とを具備することを特徴とする通信システムである。
請求項3に記載の発明は、請求項2に記載の通信システムにおいて、前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための、経由情報を含む要求情報をブロードキャストし、前記第2の送信手段は、前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記要求情報に含まれる前記経由情報を更新し、前記要求情報をブロードキャストし、前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記第1の証明書情報と、経由する端末を示す返信経由情報とを含む検証用情報を前記返信経由情報が示す前記認証端末または前記中継端末へ送信し、前記検証用情報が受信された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記返信経由情報が示す前記認証端末または前記中継端末へ送信することを特徴とする。
請求項4に記載の発明は、請求項2に記載の通信システムにおいて、前記認証端末はさらに、信頼する中継端末を記憶する第2の記憶手段を具備し、前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための要求情報を、前記第2の記憶手段によって記憶されている前記中継端末へ送信し、前記第1の記憶手段は、証明書情報および信頼する他の中継端末を記憶し、前記第2の送信手段は、前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記第1の記憶手段によって記憶されている前記中継端末へ該要求情報を送信し、前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記要求情報に付加された証明書情報と前記第1の証明書情報とを含む検証用情報を前記認証端末へ送信することを特徴とする。
各端末間の信頼関係は、例えば、公開鍵証明書の発行により定義される。ある端末(A)が他の端末(B)を信頼するとは、端末(A)が端末(B)の公開鍵に対して公開鍵証明書を発行していることを意味している。第1および第2の記憶手段は、自身が公開鍵証明書を発行している発行先の端末を記憶する。
請求項5に記載の発明は、請求項4に記載の通信システムにおいて、前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための、経由情報を含む要求情報を、前記第2の記憶手段によって記憶されている前記中継端末へ送信し、前記第2の送信手段は、前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記要求情報に含まれる前記経由情報を更新し、前記第1の記憶手段によって記憶されている前記中継端末へ該要求情報を送信し、前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記第1の証明書情報と、経由する端末を示す返信経由情報とを含む検証用情報を前記返信経由情報が示す前記認証端末または前記中継端末へ送信し、前記検証用情報が受信された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記返信経由情報が示す前記認証端末または前記中継端末へ送信することを特徴とする。
請求項6に記載の発明は、請求項1〜請求項5に記載の通信システムにおいて、前記第1の受信手段はさらに、前記被認証端末から、前記公開鍵を証明する第2の証明書情報を予め受信し、前記第1の証明書情報は、前記第2の証明書情報に含まれる署名情報の検証に必要な公開鍵を証明することを特徴とする。
請求項7に記載の発明は、請求項1〜請求項5に記載の通信システムにおいて、前記第1の受信手段はさらに、前記被認証端末から、前記公開鍵と、該被認証端末を信頼する端末に関する被信頼情報とを予め受信し、前記第1の証明書情報は、前記公開鍵を証明し、前記要求情報は、前記第1の証明書情報を、前記被信頼情報によって示される端末から取得することを示すことを特徴とする。
請求項8に記載の発明は、認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムにおいて、前記認証端末は、前記公開鍵の検証に必要な情報を要求するための要求情報を他の端末へ送信すると共に、他の端末から、前記公開鍵の検証に必要な情報を含む検証用情報を受信し、該検証用情報に基づいて前記公開鍵を検証し、前記中継端末は、自身が信頼する端末の識別情報と、他の端末に到達する経路に関する経路情報とを予め記憶し、前記要求情報を受信した場合に、前記公開鍵の検証に必要な情報を含むと共に、前記経路情報に基づいて、経由する端末を指定する情報を含む新たな要求情報を生成し、該要求情報を他の端末へ送信し、前記被認証端末は、前記要求情報を受信した場合に、該要求情報に含まれる、前記公開鍵の検証に必要な情報と、自身が所持する、前記公開鍵の検証に必要な情報とを含む前記検証用情報を生成して前記認証端末へ送信することを特徴とする通信システムである。
請求項9に記載の発明は、請求項8に記載の通信システムにおいて、前記中継端末が生成した新たな要求情報は、該要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報を含み、前記被認証端末が生成した前記検証情報は、前記要求情報に付加された前記中継端末の証明書情報と、前記要求情報が経由した前記中継端末によって生成された、自身の公開鍵を証明する証明書情報とを含むことを特徴とする。
請求項10に記載の発明は、認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムにおいて、前記認証端末は、前記公開鍵の検証に必要な情報を要求するための要求情報を他の端末へ送信すると共に、他の端末から、前記公開鍵の検証に必要な情報を含む検証用情報を受信し、該検証用情報に基づいて前記公開鍵を検証し、前記中継端末は、自身が信頼する端末の識別情報と、他の端末に到達する経路に関する経路情報とを予め記憶し、前記要求情報を受信し、前記被認証端末の公開鍵を証明する証明書情報を所持していない場合には、前記要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報を含むと共に、前記経路情報に基づいて、経由する端末を指定する情報を含む新たな要求情報を生成して他の端末へ送信し、前記要求情報を受信し、前記被認証端末の公開鍵を証明する証明書情報を所持している場合には、前記要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報と、前記要求情報に付加された前記証明書情報と、前記被認証端末の公開鍵を証明する前記証明書情報とを含む前記検証用情報を生成して前記認証端末へ送信することを特徴とする通信システムである。
請求項11に記載の発明は、請求項8〜請求項10のいずれかの項に記載の通信システムにおいて、前記中継端末は、自身を信頼しない他の端末から前記要求情報を受信し、該要求情報が経由する端末として自身が指定されている場合には、他の中継端末または前記被認証端末への到達を指定する情報を含む新たな要求情報を生成することを特徴とする。
請求項12に記載の発明は、認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムで用いられる通信端末において、前記認証端末として、前記公開鍵の検証に必要な情報を要求するための要求情報を送信する第1の送信手段と、前記中継端末から、前記情報を含む検証用情報を受信する第1の受信手段と、該検証用情報に基づいて前記公開鍵を検証する検証手段とを具備し、前記中継端末として、前記要求情報によって要求された情報を所持していない場合には、前記要求情報を他の中継端末へ送信し、前記要求情報によって要求された情報を所持している場合には、前記情報を含む検証用情報を前記認証端末または他の中継端末へ送信する第2の送信手段とを具備することを特徴とする通信端末である。
請求項13に記載の発明は、認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムで用いられる通信端末において、前記認証端末として、前記公開鍵の検証に必要な第1の証明書情報を要求するための要求情報をブロードキャストする第1の送信手段と、前記第1の証明書情報を含む検証用情報を前記中継端末から受信する第1の受信手段と、前記検証用情報に基づいて前記公開鍵を検証する検証手段とを具備し、前記中継端末として、証明書情報を記憶する第1の記憶手段と、前記要求情報を受信する第2の受信手段と、該要求情報に基づいて、前記第1の証明書情報が前記第1の記憶手段に記憶されているかどうか判定する判定手段と、記憶されていないと判定された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、該要求情報をブロードキャストし、記憶されていると判定された場合には、前記要求情報に付加された証明書情報と前記第1の証明書情報とを含む検証用情報を前記認証端末へ送信する第2の送信手段とを具備することを特徴とする通信端末である。
請求項14に記載の発明は、請求項13に記載の通信端末において、前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための、経由情報を含む要求情報をブロードキャストし、前記第2の送信手段は、前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記要求情報に含まれる前記経由情報を更新し、前記要求情報をブロードキャストし、前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記第1の証明書情報と、経由する端末を示す返信経由情報とを含む検証用情報を前記返信経由情報が示す前記認証端末または前記中継端末へ送信し、前記検証用情報が受信された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記返信経由情報が示す前記認証端末または前記中継端末へ送信することを特徴とする。
請求項15に記載の発明は、請求項13に記載の通信端末において、前記認証端末としてさらに、信頼する中継端末を記憶する第2の記憶手段を具備し、前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための要求情報を、前記第2の記憶手段によって記憶されている前記中継端末へ送信し、前記第1の記憶手段は、証明書情報および信頼する他の中継端末を記憶し、前記第2の送信手段は、前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記第1の記憶手段によって記憶されている前記中継端末へ該要求情報を送信し、前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記要求情報に付加された証明書情報と前記第1の証明書情報とを含む検証用情報を前記認証端末へ送信することを特徴とする。
請求項16に記載の発明は、請求項15に記載の通信端末において、前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための、経由情報を含む要求情報を、前記第2の記憶手段によって記憶されている前記中継端末へ送信し、前記第2の送信手段は、前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記要求情報に含まれる前記経由情報を更新し、前記第1の記憶手段によって記憶されている前記中継端末へ該要求情報を送信し、前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記第1の証明書情報と、経由する端末を示す返信経由情報とを含む検証用情報を前記返信経由情報が示す前記認証端末または前記中継端末へ送信し、前記検証用情報が受信された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記返信経由情報が示す前記認証端末または前記中継端末へ送信することを特徴とする。
請求項17に記載の発明は、請求項12〜請求項16に記載の通信端末において、前記第1の受信手段はさらに、前記被認証端末から、前記公開鍵を証明する第2の証明書情報を予め受信し、前記第1の証明書情報は、前記第2の証明書情報に含まれる署名情報の検証に必要な公開鍵を証明することを特徴とする。
請求項18に記載の発明は、請求項12〜請求項16に記載の通信端末において、前記第1の受信手段はさらに、前記被認証端末から、前記公開鍵と、該被認証端末を信頼する端末に関する被信頼情報とを予め受信し、前記第1の証明書情報は、前記公開鍵を証明し、前記要求情報は、前記第1の証明書情報を、前記被信頼情報によって示される端末から取得することを示すことを特徴とする。
請求項19に記載の発明は、認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムで用いられる通信端末において、前記認証端末として、前記公開鍵の検証に必要な情報を要求するための要求情報を他の端末へ送信する第1の送信手段と、他の端末から、前記公開鍵の検証に必要な情報を含む検証用情報を受信する第1の受信手段と、受信された前記検証用情報に基づいて前記公開鍵を検証する検証手段とを具備し、前記中継端末として、自身が信頼する端末の識別情報と、他の端末に到達する経路に関する経路情報とを予め記憶する記憶手段と、前記要求情報を受信する第2の受信手段と、前記要求情報が受信された場合に、前記公開鍵の検証に必要な情報を含むと共に、前記経路情報に基づいて、経由する端末を指定する情報を含む新たな要求情報を生成する第1の情報生成手段と、該要求情報を他の端末へ送信する第2の送信手段とを具備し、前記被認証端末として、前記要求情報を受信する第3の受信手段と、受信された前記要求情報に含まれる、前記公開鍵の検証に必要な情報と、自身が所持する、前記公開鍵の検証に必要な情報とを含む前記検証用情報を生成する第2の情報生成手段と、該検証用情報を前記認証端末へ送信する第3の送信手段とを具備することを特徴とする通信端末である。
請求項20に記載の発明は、請求項19に記載の通信端末において、前記第1の情報生成手段が生成した新たな要求情報は、該要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報を含み、前記第2の情報生成手段が生成した前記検証情報は、前記要求情報に付加された前記中継端末の証明書情報と、前記要求情報が経由した前記中継端末によって生成された、自身の公開鍵を証明する証明書情報とを含むことを特徴とする。
請求項21に記載の発明は、認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムで用いられる通信端末において、前記認証端末として、前記公開鍵の検証に必要な情報を要求するための要求情報を他の端末へ送信する第1の送信手段と、他の端末から、前記公開鍵の検証に必要な情報を含む検証用情報を受信する第1の受信手段と、受信された前記検証用情報に基づいて前記公開鍵を検証する検証手段とを具備し、前記中継端末として、自身が信頼する端末の識別情報と、他の端末に到達する経路に関する経路情報とを予め記憶する記憶手段と、前記要求情報を受信する第2の受信手段と、前記被認証端末の公開鍵を証明する証明書情報を所持していない場合には、前記要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報を含むと共に、前記経路情報に基づいて、経由する端末を指定する情報を含む新たな要求情報を生成し、前記被認証端末の公開鍵を証明する証明書情報を所持している場合には、前記要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報と、前記要求情報に付加された前記証明書情報と、前記被認証端末の公開鍵を証明する前記証明書情報とを含む前記検証用情報を生成する第1の情報生成手段と、新たな要求情報を他の端末へ送信すると共に、前記検証用情報を前記認証端末へ送信する第3の送信手段とを具備することを特徴とする通信端末である。
請求項22に記載の発明は、請求項19〜請求項21のいずれかの項に記載の通信システムにおいて、前記第2の受信手段は、自身を信頼しない他の端末から前記要求情報を受信し、前記第1の情報生成手段は、前記要求情報が経由する端末として自身が指定されている場合には、他の中継端末または前記被認証端末への到達を指定する情報を含む新たな要求情報を生成することを特徴とする。
本発明によれば、被認証端末の公開鍵の認証を行う必要性が発生したときに、認証端末が、信頼の輪を構築する各端末から必要な端末のみの公開鍵証明書を取得するようにしたので、通信資源や各ノードの資源を無駄に使うことがなく、公開鍵の管理コストを低減することができるという効果が得られる。
以下、図面を参照し、本発明を実施するための最良の形態について説明する。本実施形態においては、認証局(CA)を持たない通信システムとして、無線アドホックネットワークを例として説明する。図1は、本発明の一実施形態による通信システムの構成を示す概略構成図である。図には、ノード1A〜1Nが示されている。本実施形態におけるノードとは、携帯電話、PHS(登録商標)、PDA(Personal Digital Assistance)などの無線通信機能を有する端末または無線LAN(Local Area Network)を構成するパーソナルコンピュータなどの通信端末である。なお、この構成図は各ノードの位置関係を示すものではなく、論理的な接続関係を示すものである。また、この通信システムにはノード1A〜1Nに限られず、図示せぬノードも含まれるものとする。
図2は各ノードの構成を示すブロック図である。図において、10はデータ送受信用のアンテナである。11は通信部であり、データの送受信に係る変調・復調処理等を行う。12はユーザによって操作される操作部である。13は表示部であり、ユーザに対して様々な情報を表示する。14は一時記憶部であり、他ノードとの通信において取得した情報(公開鍵証明書等)を一時的に保持する。他ノードとの通信が終了したら、一時記憶部14内の情報は消去される。
15は長期間保持される情報が格納される記憶部である。記憶部15には、自ノードが信頼するノードに対して発行した公開鍵証明書と、自ノードを信頼しているノードから発行された公開鍵証明書とが証明書リポジトリとして格納されている。また、自ノードが直接信頼しているノードの情報が信頼ノードリストとして格納され、自ノードがどのノードに直接信頼されているのかを示す情報が被信頼ノードリストとして格納されている。16は制御部であり、上記各部を制御すると共に、データの暗号化および復号化を行う。
次に、本実施形態における各ノードの動作を説明する。まず、各ノード間の信頼関係について説明する。図1で示される通信システムにおいては、ノード1Aがノード1Bおよびノード1Cを信頼している。また、ノード1Aに信頼されているノード1Bおよびノード1Cも、図示されるように、それぞれ他のノードを信頼している。ここで、ノード1Aがノード1Bを信頼しているとは、ノード1Aがノード1Bの公開鍵に対する公開鍵証明書を発行していることを意味している。図1において、各矢印は各ノードの信頼関係を示している。
ノード1Aは予めノード1Bからノード1Bの公開鍵を通知されており、ノード1Bを信頼できると判断した場合に、ノード1Bの公開鍵に対する公開鍵証明書を作成し、ノード1Aの記憶部15中の証明書リポジトリ内にその公開鍵証明書を追加すると共に、信頼ノードリストにノード1Bの情報を追加する。この公開鍵証明書には、ノード1Bの公開鍵およびノード1Bの識別子等の公開鍵情報と署名情報(ノード1Aによる電子署名および署名者であるノード1Aの識別子)とが含まれている。ノード1Aの電子署名とは、上記の公開鍵情報がノード1Aの秘密鍵によって暗号化されたものであり、ノード1Aの公開鍵によってのみ復号化することができる。
以下、本実施形態に係る説明においては、ノード1Bの公開鍵Kとノード1Aの署名情報Sを含む公開鍵証明書を(K/S)として表現することにする。なお、Kは公開鍵(public key)を表し、Sは署名(signature)を表す。
ノード1Aは、ノード1Bに対する公開鍵証明書を作成した際に、ノード1Bに対して、公開鍵証明書(K/S)を送信する。この公開鍵証明書を取得したノード1Bは、公開鍵証明書を記憶部15中の証明書リポジトリに追加すると共に、記憶部15中の被信頼ノードリストにノード1Aの情報を追加する。これにより、ノード1Bはノード1Aから信頼されていることを認識することができる。
次に、本実施形態における通信経路の確立方法を説明する。本実施形態においては、図1におけるノード1Aがノード1Nと暗号化通信を行うものとする。本実施形態においては、DSR(Dynamic Source Routing)プロトコルや、AODV(Ad Hoc On−Demand Distance Vector Routing)プロトコル等の従来のプロトコルに従って各ノード間の通信経路が確立されるものとする。以下、DSRプロトコルとAODVプロトコルによる経路探索方式を説明する。
DSRプロトコルにおいては、経路探索を行う認証ノードは、RREQ(Route Request)と呼ばれるパケットを周囲のノードへ送信する。これを受信した周囲のノードは、そのパケットの宛先が自分でなければ、自身の情報をパケット中の経路情報に追加して、RREQパケットをさらに周囲のノードへ送信する。宛先ノードがこのパケットを受信した場合、RREQパケット中の経路情報に従って、RREP(Route Reply)パケットを認証ノードへ送信する。中継ノードを介してこのRREPパケットを受信した認証ノードは、RREPパケットに含まれる経路情報で示される中継ノードを介して、宛先ノードと通信を行う。
一方、AODVプロトコルにおいては、経路探索を行う認証ノードは、経路情報を含まないRREQパケットを周囲のノードへ送信する。周囲のノードは、RREQパケットに含まれる送信ノード(自分の一つ前にRREQパケットを送信したノード)の識別子を通信相手として記憶する。この通信相手は、認証ノード側に位置するノードである。続いて、周囲のノードは、RREQパケットの送信ノード識別子を自身の識別子に書き換え、RREQパケットをさらに周囲の他のノードへ送信する。
宛先ノードがこのパケットを受信した場合、宛先ノードは通信相手を記憶すると共に、その通信相手に向けてRREPパケットを送信する。RREPパケットを受信したノードは、RREPパケットに含まれる送信ノード(自分の一つ前にRREPパケットを送信したノード)を通信相手として記憶する。この通信相手は、宛先ノード側に位置するノードである。続いて、RREPパケットを受信したノードは、送信ノード識別子を自身の識別子に書き換えたRREPパケットを、RREQパケットにより記憶した被認証ノードへ送信する。RREPパケットを受信した認証ノードは、同様に通信相手を記憶し、中継ノードを介して宛先ノードと通信を行う。
なお、上述したDSRプロトコルおよびAODVプロトコルは、無線アドホックネットワークにおける通信方式の一例であり、本実施形態における通信経路の確立方法はこれらの方法に限定されない。
次に、通信時の各ノードの動作を説明する。まず、本実施形態における第1の動作例を説明する。暗号化通信を行う前に、ノード1A(認証端末)はノード1N(被認証端末)との通信経路を予め確立し、ノード1Nの公開鍵証明書(K/S)をノード1Nから取得する。ノード1Nの公開鍵証明書には、ノード1Nの公開鍵Kと、その公開鍵に対する署名情報Sが含まれている。ノード1Aはこの公開鍵証明書に含まれる公開鍵Kの認証を行うため、自身の記憶部15中の証明書リポジトリを参照し、ノード1Nの公開鍵証明書(K/S)があるかどうか判断する。
ノード1Aはノード1Nを直接信頼していないため、ノード1Nの公開鍵証明書を所持していない。その場合、ノード1Aはノード1Nから取得した公開鍵証明書に含まれる署名情報Sを参照する。この署名情報は、ノード1Nを信頼しているノード1Mによって生成されたもので、署名情報に含まれる電子署名はノード1Mの公開鍵によってのみ復号化される。ノード1Aはノード1Mを直接信頼していないため、ノード1Mの公開鍵証明書はノード1Aの証明書リポジトリにはない。したがって、ノード1Aはノード1Mを信頼しているノードからノード1Mの公開鍵証明書を取得することになる。
続いて、ノード1Aは、ノード1Mの公開鍵証明書を要求する証明書要求情報(要求情報)をブロードキャストする。この証明書要求情報には、ノード1Aがノード1Mの公開鍵証明書を要求していることを示す情報と、証明書要求情報を中継したノード(最初はノード1A)を示す中継ノード情報とが含まれている。この証明書要求情報は各ノードによって転送される。図3には第1の動作例による通信の様子が示されている。図3(a)には、ノード1Aによって送信された証明書要求情報が転送されていく様子が示されている。なお、この図は証明書要求情報の転送の一部を示したものであり、図示せぬノード(例えばノード1B、ノード1D等)も同様の処理を行っている。
図1において図示されぬノード(例えば、ノード1A−ノード1C間に存在するノード)がこの証明書要求情報を受信した場合、そのノードは中継ノード情報を参照することにより、ノード1Aが送信者であることを知り、自身の記憶部15の被信頼ノードリスト中にノード1Aが含まれているかどうか判断する。図示せぬノードは、ノード1Aから信頼されていないので、信頼の輪の構築に参加すべきではないと判断し、証明書要求情報をそのままブロードキャストする。なお、証明書要求情報が経路探索としての役目も果たすように、前述したRREQを含んでいてもよい。
ノード1C(中継端末:ノード1Bも同様)が証明書要求情報を受信した場合、ノード1Cは中継ノード情報を参照することにより、ノード1Aが送信者であることを知り、自身の記憶部15の被信頼ノードリスト中にノード1Aが含まれているかどうか判断する。ノード1Cの被信頼ノードリストにはノード1Aが含まれているので、ノード1Cは信頼の輪の構築に参加すべきであると判断する。ノード1Cは証明書要求情報に対して、中継ノード情報を自身の情報に書き換えると共に、ノード1Aから発行された自身の公開鍵証明書(K/S)を付加し、証明書要求情報をブロードキャストする。
ノード1Fはこの証明書要求情報を受信し、証明書要求情報中の中継ノード情報と記憶部15中の被信頼ノードリストとを参照することにより、自身がノード1Cから信頼されていると認識し、信頼の輪の構築に参加すべきであると判断する。ノード1Fは、証明書要求情報に対して、中継ノード情報を自身の情報に書き換えると共に、ノード1Cから発行された自身の公開鍵証明書(K/S)を付加し、証明書要求情報をブロードキャストする。
以上のように各ノードが証明書要求情報をブロードキャストすることにより、この証明書要求情報はノード1Mの公開鍵証明書を所持するノード1Jに転送される。ノード1Jは他のノードと同様に、証明書要求情報中の送信者情報と記憶部15中の被信頼ノードリストを参照することにより、自身がノード1Fから信頼されていると認識し、信頼の輪の構築に参加すべきであると判断する。また、証明書要求情報により、ノード1Aがノード1Mの公開鍵証明書を要求していることが示されており、ノード1Mの公開鍵証明書は記憶部15中の証明書リポジトリに存在するので、ノード1Jはノード1Mの公開鍵証明書をノード1Aに対して送信すべきであると判断する。
図3(b)はノード1Jがノード1Aに対してノード1Mの公開鍵証明書(K/S)を含む返信情報(検証用情報)を送信する場合の送信の様子を示している。ノード1Jは、宛先がノード1Aであることは指定するが、経由するノードは指定しない。なお、ノード1J−ノード1A間の通信において、証明書要求情報の転送の際に経由したノード1C等が経路に含まれていてもよいが、あくまで、ノード1Jはノード1C等の経由を指定する訳ではない。
返信情報には、最終宛先がノード1Aであることを示す最終宛先情報と、ノード1Jが受信した証明書要求情報に付加された公開鍵証明書(K/S)・(K/S)およびノード1Jが所持する公開鍵証明書(K/S)・(K/S)とが含まれる。ノード1Jは直接または複数のノードを介してノード1Aと通信を行い、ノード1Aに上記の返信情報を送信する。
ノード1Aは返信情報を受信し、返信情報中に目的のノード1Mの公開鍵証明書が含まれていることを確認する。続いて、ノード1Aは公開鍵証明書(K/S)に含まれるノード1Cの公開鍵を用いて、公開鍵証明書(K/S)に含まれるノード1Fの公開鍵を検証する。具体的には、ノード1Aは公開鍵Kにより、署名情報S中のノード1Cによる電子署名を復号化する。そして、公開鍵証明書に平文として含まれていた公開鍵Kと、電子署名の復号化により得られた公開鍵Kとを比較し、両者が同一であるかどうか判断する。
両者が同一であった場合、ノード1Aは公開鍵Kを認証したことになる。同様に、ノード1Aは公開鍵Kにより、公開鍵証明書(K/S)中の公開鍵Kの検証を行い、公開鍵Kの検証に成功したら、公開鍵Kにより公開鍵証明書(K/S)中の公開鍵Kの検証を行う。この検証に成功した場合、ノード1Aは公開鍵Kにより、公開鍵証明書(K/S)中の公開鍵Kの検証を行う。この検証に成功した場合、ノード1Aはノード1Nと暗号化通信を開始する。
ノード1Aとノード1Nとの暗号化通信は以下のようにして行われる。ノード1Aは、ノード1Nの公開鍵Kの認証に成功したことにより、ノード1Nを信頼する。ノード1Aは、自身のみが知っている秘密鍵(共通鍵)を、ノード1Nの公開鍵により暗号化し、ノード1Nへ送信する。ノード1Nは、自身の公開鍵から生成した秘密鍵を用いて、ノード1Aから受信した情報を復号化し、ノード1Aの共通鍵を取得する。これにより、ノード1Aおよびノード1Nは同一の共通鍵を所有することになる。
以後、ノード1Aおよびノード1N間の通信は、共通鍵による共通鍵暗号(秘密鍵暗号)方式の通信となる。例えば、ノード1Aがノード1Nへデータを送信する場合、ノード1Aは、共通鍵を用いてデータを暗号化し、ノード1Nへ送信する。ノード1Nは、受信したデータを、ノード1Aから取得した共通鍵を用いて復号化する。共通鍵により暗号化されたデータは、同一の共通鍵によってしか復号化することができないので、ノード1Nのみがデータを復号化することができる。ノード1Nがノード1Aへデータを送信する場合も、共通鍵による暗号化・復号化により、安全な通信を行うことができる。
なお、以上の動作において、ノード1Aは自身が直接信頼するノード1Cの公開鍵証明書(K/S)を予め所持しているので、ノード1Cは証明書要求情報を転送する際に、公開鍵証明書(K/S)を付加しなくてもよい。
次に、第1の動作例における認証ノード(ノードX:図1のノード1Aに相当)の動作を図4および図5のフローチャートにより説明する。まず、ノードXは被認証ノード(ノードY:図1のノード1Nに相当)との通信経路を確立する。この通信経路には、図示せぬ複数のノードが含まれている場合もある。通信経路の確立後、ノードXはノードYからノードYの公開鍵証明書を受信する。この場合、通信部11は、アンテナ10を介して公開鍵証明書を含む情報を受信し、この情報を制御部16へ出力する(ステップS401)。
この公開鍵証明書には、ノードYの公開鍵およびノードYの識別子等の公開鍵情報と署名情報(ノードZによる電子署名および署名者であるノードZの識別子)とが含まれている。ノードZは図1のノード1Mに相当する。この電子署名とは、上記の公開鍵情報がノードZの秘密鍵によって暗号化されたものである。制御部16は、署名者の識別子により、電子署名がノードZによって行われたことを認識することができる。
続いて、制御部16は記憶部15中の証明書リポジトリを参照し、ノードYの公開鍵証明書(K/S)が格納されているかどうか判定する(ステップS402)。ステップS402においてYESと判定された場合、制御部16はこの公開鍵証明書(K/S)中の公開鍵Kと、ノードYから受信した公開鍵証明書(K/S)中の公開鍵Kとが同一かどうか判定する(ステップS403)。ステップS403においてYESと判定された場合、ノードXはノードYの公開鍵の認証に成功し、ノードYと暗号化通信を開始する。
一方、ステップS402またはステップS403においてNOと判定された場合、制御部16は、ノードZの公開鍵証明書(K/S)が記憶部15中の証明書リポジトリに格納されているかどうか判定する(ステップS404)。ステップS404においてYESと判定された場合、制御部16は公開鍵Kを用いて、公開鍵証明書(K/S)の署名情報を検証し、公開鍵Kが正当かどうか判定する(ステップS405)。ステップS405においてYESと判定された場合、ノードXはノードYの公開鍵の認証に成功し、ノードYと暗号化通信を開始する。
ステップS404またはステップS405においてNOと判定された場合、ノードXは、ノードYの公開鍵証明書の署名者であるノードZの公開鍵証明書を他のノードから取得するための動作を行う。この場合の動作は図5のようになる。制御部16はノードYから取得した公開鍵証明書を一時記憶部14へ格納する。そして、制御部16は、ノード1Jの公開鍵証明書を要求するための証明書要求情報を作成し、通信部11へ出力する。
証明書要求情報には、ノードXがノードZの公開鍵証明書を要求していることを示す情報、中継ノード情報(最初はノードXとする)、中継ノードが所有する公開鍵証明書、ホップ数(証明書要求情報を中継したノードの数)、および証明書要求情報の作成時刻が含まれる。なお、ノードXにおいては、ホップ数はゼロとし、証明書要求情報中には公開鍵証明書は格納されていない。通信部11はアンテナ10を介して、この証明書要求情報をブロードキャストする(ステップS501)。
続いて、制御部16は、要求したノードZの公開鍵証明書を含む返信情報を受信したかどうか判定する(ステップS502)。なお、受信の判定に関しては、制限時間を設け、制御部16が制限時間内に返信情報を受信したかどうか判定するようにしてもよい。ステップS502においてYESと判定された場合、制御部16は受信した1以上の公開鍵証明書に基づいて、前述したように、ノードYの公開鍵Kが正当であるかどうか判定する(ステップS503)。ステップS503においてYESと判定された場合、ノードXはノードYの公開鍵の認証に成功し、ノードYとの暗号化通信を開始する。一方、ステップS502またはステップS503においてNOと判定された場合、ノードXはノードYの公開鍵の認証に失敗する。
図6は中継ノード(図1における図示せぬノードまたはノード1B、ノード1C等)の動作を示すフローチャートである。アンテナ10を介して他のノードから証明書要求情報を受信した通信部11は、証明書要求情報を制御部16へ出力する(ステップS601)。制御部16は証明書要求情報中の中継ノード情報を参照すると共に、記憶部15から被信頼ノードリストを読み出して参照する。制御部16は、中継ノード情報が示すノードが被信頼ノードリスト中にあるかどうか判定することにより、信頼の輪の構築に参加すべきであるかどうか判定する(ステップS602)。中継ノード情報が示すノードが被信頼ノードリスト中にある場合は信頼の輪の構築に参加すべきであると判定され、ない場合は信頼の輪の構築に参加すべきでないと判定される。
ステップS602においてNOと判定された場合、制御部16は通信部11へ証明書要求情報を出力し、通信部11はアンテナ10を介して証明書要求情報をブロードキャストする(ステップS603)。一方、ステップS602においてYESと判定された場合、制御部16は証明書要求情報中の情報を参照し、ノードZの公開鍵証明書が要求されていると判断する。これに基づいて、制御部16は記憶部15中の証明書リポジトリを参照し、ノードZの公開鍵証明書が格納されているかどうか判定する(ステップS604)。
ステップS604においてYESと判定された場合、制御部16はノードZの公開鍵証明書を含む返信情報を作成する(ステップS605)。返信情報には、最終宛先がノードXであることを示す最終宛先情報と、証明書要求情報に付加された公開鍵証明書(図1の例では、公開鍵証明書(K/S)・(K/S))と、自身が所持する公開鍵証明書とが含まれている。自身が所持する公開鍵証明書とは、ノードZの公開鍵証明書(図1の例では、公開鍵証明書(K/S))と、証明書要求情報の中継ノード情報が示すノードが自身に対して発行した公開鍵証明書(図1の例では、公開鍵証明書(K/S))とを意味する。
制御部16は返信情報を通信部11へ出力し、通信部11はアンテナ10を介して返信情報をノードXへ送信する(ステップS606)。また、ステップS604においてNOと判定された場合、制御部16は証明書要求情報の作成時刻を参照し、作成時刻と現在時刻との差から経過時間を求め、その時間が制限時間以内であるかどうか判定する(ステップS607)。ステップS607においてYESと判定された場合、制御部16は証明書要求情報のホップ数を参照し、その値が制限ホップ数以内であるかどうか判定する(ステップS608)。
ステップS608においてYESと判定された場合、制御部16は証明書要求情報の中継ノード情報が示すノードによって発行された公開鍵証明書を証明書要求情報に付加し、中継ノード情報を自身の情報に書き換えると共に、ホップ数を1だけ増加させ、証明書要求情報を通信部11へ出力する。通信部11はアンテナ10を介して証明書要求情報をブロードキャストする(ステップS609)。ステップS607またはステップS608においてNOと判定された場合、証明書要求情報はブロードキャストされずに処理が終了する。なお、信頼の輪の構築に参加しないノードは、受信した証明書要求情報をブロードキャストせずに棄却するようにしてもよい。これは以下の動作例においても同様である。
次に、本実施形態における第2の動作例を説明する。図7は第2の動作例における通信の様子を示している。第2の動作例においては、図7(a)のように証明書要求情報の転送の様子は第1の動作例と同様であるが、同図(b)のように、返信情報の送信においては、証明書要求情報の転送時に信頼の輪の構築に参加したノードを逆にたどっていく。
第1の動作例と同様に、ノード1Aはノード1Nからノード1Nの公開鍵証明書を取得し、その署名者であるノード1Mの公開鍵証明書を要求するための証明書要求情報をブロードキャストする。この証明書要求情報には、ノード1Aがノード1Mの公開鍵証明書を要求していることを示す情報と、証明書要求情報を中継したノード(最初はノード1A)を示す中継ノード情報と、経由ノード(最初はノード1A)を示す経由ノード情報(経由情報)とが含まれている。なお、第1の動作例とは異なり、証明書要求情報には公開鍵証明書は付加されない。
図示せぬノードが証明書要求情報を受信した場合、第1の動作例と同様に、証明書要求情報をそのままブロードキャストする。ノード1C(ノード1Bも同様)が証明書要求情報を受信した場合、ノード1Cは中継ノード情報を参照することにより、ノード1Aが送信者であることを知り、自身の記憶部15の被信頼ノードリスト中にノード1Aが含まれているかどうか判断する。ノード1Cの被信頼ノードリストにはノード1Aが含まれているので、ノード1Cは信頼の輪の構築に参加すべきであると判断する。ノード1Cは、証明書要求情報中の中継ノード情報を自身の情報に書き換え、経由ノード情報の末尾に自身の情報を追加し(経由ノード情報を更新し)、証明書要求情報をブロードキャストする。
ノード1Fはこの証明書要求情報を受信し、証明書要求情報中の中継ノード情報と記憶部15中の被信頼ノードリストとを参照することにより、自身がノード1Cから信頼されていると認識し、信頼の輪の構築に参加すべきであると判断する。ノード1Fは、証明書要求情報に対して、送信者情報を自身の情報に書き換えると共に、経由ノード情報に自身の情報を追加し、証明書要求情報をブロードキャストする。
証明書要求情報を受信したノード1Jは他のノードと同様に、証明書要求情報中の中継ノード情報と記憶部15中の被信頼ノードリストを参照することにより、自身がノード1Fから信頼されていると認識し、信頼の輪の構築に参加すべきであると判断する。また、第1の動作例と同様に、ノード1Jは記憶部15中の証明書リポジトリに格納されているノード1Mの公開鍵証明書(K/S)をノード1Aに対して送信すべきであると判断する。
ノード1Jは返信情報を作成し、ノード1Fまでの通信経路を確立し、返信情報をノード1Fへ送信する。この返信情報には、最終宛先がノード1Aであることを示す最終宛先情報と、ノード1Aまでに経由するノードを示す経由ノード情報(返信経由情報)と、ノード1Jが所持する公開鍵証明書(K/S)とを含んでいる。
ノード1Fはこの返信情報を受信し、経由ノード情報が示す次の経由ノードであるノード1Cまでの通信経路を確立し、返信情報をノード1Cへ送信する。この返信情報には、公開鍵証明書(K/S)が付加される。この返信情報を受信したノード1Cは、同様に、返信情報に公開鍵証明書(K/S)を付加し、ノード1Aへ送信する。なお、ノード1Jがノード1A宛の返信情報を送信する場合に、経由ノード情報が示すノードを経由するようなノード1Aまでの通信経路を予め確立するようにしてもよい。
ノード1Aは、公開鍵証明書(K/S)・(K/S)・(K/S)が付加された返信情報を受信する。ノード1Aは第1の動作例と同様に、これらの公開鍵証明書と、自身が所持する公開鍵証明書(K/S)とから公開鍵Kの検証を行い、続いて、公開鍵Kの検証を行う。公開鍵Kの検証に成功した場合、ノード1Aはノード1Nと暗号化通信を開始する。
次に、第2の動作例における認証ノードおよび中継ノードの動作を説明する。ノードX、Y、Zの定義は第1の動作例と同様とする。認証ノードであるノードXの動作は図4および図5と同様である。ただし、証明書要求情報には信頼の輪の構築に参加したノードを示す経由ノード情報が付加され、中継ノードが所持する公開鍵証明書は付加されない。
図8は中継ノードの動作を示すフローチャートである。図において、ステップS801〜ステップS805の動作は、図6におけるステップS601〜ステップS605の動作と同様であるので、説明を省略する。ただし、ステップS805において作成される返信情報には、最終宛先がノードXであることを示す最終宛先情報と、自身が所持するノードZの公開鍵証明書と、経由ノード情報とが含まれている。
続いて、通信部11は制御部16と連携し、経由ノード情報が示す経由ノードまでの通信経路を確立する。制御部16は返信情報を通信部11へ出力し、通信部11はアンテナ10を介して返信情報を経由ノードへ送信する(ステップS806)。ステップS807〜ステップS809の動作は図6のステップS607〜ステップS609の動作と同様であるので、説明を省略する。ただし、ステップS809において、証明書要求情報に公開鍵証明書は付加されない。ステップS810において、制御部16は、制限時間以内に返信情報を受信するかどうか判定する。
ステップS810においてYESと判定された場合、通信部11は制御部16と連携し、返信情報中の経由ノード情報が示す次の経由ノードまでの通信経路を確立する。制御部16は、経由ノード情報が示す次の経由ノードによって発行された公開鍵証明書を返信情報に付加し、返信情報を通信部11へ出力する。通信部11はアンテナ10を介して返信情報を次の経由ノードへ送信する(ステップS811)。ステップS807、ステップS808、またはステップS810においてNOと判定された場合、証明書要求情報は送信されずに処理が終了する。
第2の動作例によれば、第1の動作例と比較して、ノード1Jからノード1Aまでの返信情報の転送に時間が掛かる可能性があるが、証明書要求情報に公開鍵証明書が付加されないので、証明書要求情報の容量を削減することができる。特に、証明書要求情報がブロードキャストされることによる無用な通信が発生するため、この容量を削減することにより、ネットワークのトラヒックを削減することができる。なお、各ノードがセッション(一連の通信に係る処理)を短時間保持し、その間の通信経路を保持すると仮定した場合は、証明書要求情報および返信情報に経由ノード情報が含まれていなくてもよい。
次に、本実施形態における第3の動作例を説明する。第1の動作例と同様に、ノード1Aはノード1Nからノード1Nの公開鍵証明書を取得し、その署名者であるノード1Mの公開鍵証明書を要求するための証明書要求情報を作成する。図9は第3の動作例における通信の様子を示している。図9(a)は、各ノードによる証明書要求情報の転送の様子を示している。この図も、証明書要求情報の転送の一部を示したものである。第3の動作例においては、信頼の輪の構築に参加するノードは証明書要求情報をブロードキャストするのではなく、自身が信頼する1以上のノードを選択し、それらのノードに対して、証明書要求情報を送信する。この証明書要求情報には、ノード1Aがノード1Mの公開鍵証明書を要求していることを示す情報と、証明書要求情報を中継したノード(最初はノード1A)を示す中継ノード情報とが含まれている。
ノード1Aは証明書要求情報を、自身が信頼するノード1Bおよび1Cへ送信する。この場合、ノード1Aはノード1Bおよびノード1Cまでの通信経路を確立し、証明書要求情報を送信する。図示せぬノードは証明書要求情報を宛先のノードまで転送する。ノード1C(ノード1Bも同様)が証明書要求情報を受信した場合、ノード1Cは、証明書要求情報中の中継ノード情報と記憶部15中の被信頼ノードリストを参照することにより、自身がノード1Aから信頼されていると認識し、信頼の輪の構築に参加すべきであると判断する。ノード1Cは、証明書要求情報に対して、中継ノード情報を自身の情報に書き換えると共に、ノード1Aから発行された自身の公開鍵証明書(K/S)を付加し、自身が信頼するノード(記憶部15中の信頼ノードリストで示されるノード:ノード1Fおよび1G)へ証明書要求情報を送信する。
ノード1Fも同様の動作によって証明書要求情報を転送する。ノード1Jはこの証明書要求情報を受信し、第1および第2の動作例と同様に、ノード1Mの公開鍵証明書(K/S)をノード1Aに対して送信すべきであると判断する。図9(b)はノード1Jによる返信情報の送信の様子を示している。第1の動作例と同様に、ノード1Jはノード1Aまでの通信経路を確立し、返信情報を送信する。ノード1Aは第1の動作例と同様に、公開鍵Kの検証を行い、続いて、公開鍵Kの検証を行う。公開鍵Kの検証に成功した場合、ノード1Aはノード1Nと暗号化通信を開始する。
第3の動作例によれば、信頼の輪の構築に参加する中継ノードが、自身の信頼するノード宛に証明書要求情報を転送するので、証明書要求情報をブロードキャストする場合と比較して、通信量を削減することができる。なお、各ノードが証明書要求情報を自身の信頼するノード宛に転送する場合に、複数の信頼ノードの中から適宜ノードを選択して送信するようにしてもよい。
次に、本実施形態における第4の動作例を説明する。第4の動作例においては、証明書要求情報の転送処理は第3の動作例と同様であり、返信情報は第2の動作例と同様に、証明書要求情報の転送において信頼の輪の構築に参加したノードをたどって転送される。この場合の証明書要求情報は、第2の動作例における証明書要求情報と同様である。
次に、本実施形態における第5の動作例を説明する。以下の第5〜第8の動作例においては、ノード1Aはまずノード1Nからノード1Nの公開鍵Kと、ノード1Nの被信頼情報とを受信する。被信頼情報は、ノード1Nの記憶部15中の被信頼ノードリストで示されるノードの情報である。ノード1Aはノード1Nの公開鍵Kを検証するために、ノード1Nの公開鍵証明書を所持しているノードを探索する。その場合、ノード1Aはノード1Nの被信頼情報を参照し、ノード1Nを信頼しているノード1Mから公開鍵証明書(K/S)を取得すればよいと認識する。ノード1Aは証明書要求情報を作成し、第1の動作例と同様にブロードキャストする。
この証明書要求情報には、ノード1Aがノード1Nの公開鍵証明書を要求していることを示す情報と、証明書要求情報を中継したノード(最初はノード1A)を示す中継ノード情報と、ノード1Mがノード1Nの公開鍵証明書を所持していることを示す証明書所持情報とが含まれている。証明書要求情報を受信した各ノードの動作は第1の動作例と同様である。ただし、ノード1Jは証明書要求情報をブロードキャストするのではなく、ノード1Mにユニキャストする。
ノード1Jの動作は以下のように行われる。ノード1Jが証明書要求情報を受信した場合、制御部16は、中継ノード情報によって示されるノード1Fが記憶部15の被信頼ノードリスト中にあることにより、信頼の輪の構築に参加すべきであると判断する。また、制御部16は記憶部15中の信頼ノードリストに、証明書要求情報中の証明書所持情報によって示されるノード1Mが存在していることを認識する。これにより、制御部16は証明書要求情報をブロードキャストするのではなく、ノード1M宛に送信すればよいと判断する。これにより、ブロードキャストに伴う無用な通信の発生を抑えることができる。なお、第1の動作例と同様に、ノード1Jが証明書要求情報をブロードキャストするようにしてもよい。
ノード1Mは証明書要求情報を受信し、返信情報を作成し、第1あるいは第3の動作例と同様に、ノード1Aまでの通信経路を確立し、返信情報を送信する。この返信情報には、公開鍵証明書(K/S)・(K/S)・(K/S)・(K/S)・(K/S)が付加されている。ノード1Aは返信情報を受信し、公開鍵証明書(K/S)中の公開鍵Kとノード1Nから取得した公開鍵Kとが一致するかどうか検証を行う。両者が一致した場合、ノード1Aはノード1Nと暗号化通信を開始する。
次に、本実施形態における第6の動作例を説明する。第6の動作例においても、第5の動作例と同様に、ノード1Aはノード1Nから公開鍵Kとノード1Nの被信頼情報とを受信する。ノード1Aは第5の動作例と同様に証明書要求情報をブロードキャストする。以後の動作は第5の動作例と同様である。ただし、第2または第4の動作例と同様に、証明書要求情報には経由ノード情報が付加され、公開鍵証明書は付加されない。ノード1Mは証明書要求情報を受信し、返信情報を作成する。返信情報にはノード1Nの公開鍵証明書(K/S)が付加される。ノード1Mは、経由ノード情報に基づいて、ノード1Jまでの通信経路を確立し、返信情報を送信する。この返信情報は第2または第4の動作例と同様に、ノード1F・1Cによってノード1Aへ転送される。返信情報を受信したノード1Aの動作は第5の動作例と同様である。
次に、本実施形態における第7の動作例を説明する。第7の動作例においても、ノード1Aはノード1Nから公開鍵Kとノード1Nの被信頼情報とを受信する。ノード1Aは証明書要求情報を作成し、自身が信頼するノードに対して証明書要求情報を送信する。以下の各ノードの動作は第3の動作例と同様であり、信頼の輪の構築に参加するノードは、自身が信頼するノードへ証明書要求情報を転送する。ノード1Mは証明書要求情報を受信し、公開鍵証明書(K/S)が付加された返信情報を作成する。返信情報がノード1Aまで転送される動作は第1または第3の動作例と同様であり、ノード1Mはノード1Aまでの通信経路を確立し、返信情報を送信する。返信情報を受信したノード1Aの動作は第5の動作例と同様である。
次に、本実施形態における第8の動作例を説明する。第8の動作例においても、ノード1Aはノード1Nから公開鍵Kとノード1Nの被信頼情報とを受信する。ノード1Aは証明書要求情報を作成し、自身が信頼するノードに対して証明書要求情報を送信する。以下の各ノードの動作は第4の動作例と同様であり、信頼の輪の構築に参加するノードは、自身が信頼するノードへ証明書要求情報を転送する。ノード1Mは証明書要求情報を受信し、公開鍵証明書(K/S)が付加された返信情報を作成する。返信情報がノード1Aまで転送される場合の動作は第2または第4の動作例と同様であり、返信情報は経由ノード情報で示されるノードを経由してノード1Mからノード1Aまで転送される。返信情報を受信したノード1Aの動作は第5の動作例と同様である。
次に、第3・第4・第7・第8の動作例におけるノードの選択方法について説明する。これらの動作例においては、各ノードは自身が信頼している1以上のノードを選択し、そのノードに証明書要求情報を送信する。絶対的に信頼できるCAを持たない無線アドホックネットワークにおいては、信頼の輪の構築に関して、信頼の輪の信頼度と構築速度との間にトレードオフがあることが想定される。そこで、この両者の重み付けによってノードを選択する方法を提案する。
この選択方法を、図10および図11により説明する。図にはノード1a〜1oの各ノードが示されており、各ノードを結ぶ矢印はノード間の信頼関係を示している。なお、図において、一部のノードは図示が省略されている。矢印の根元のノードは矢印の先のノードに対して公開鍵証明書を発行している。例えば、ノード1aはノード1iに対して公開鍵証明書を発行している。すなわちノード1aはノード1iを信頼している。また、各ノードのそばに記載された数字は、公開鍵証明書の発行・被発行数を示している。例えば、ノード1aは、4つのノードに対して公開鍵証明書を発行しており、1つのノードから公開鍵証明書を発行されている。各ノードは記憶部15中の信頼ノードリストおよび被信頼ノードリストを参照することにより、公開鍵証明書の発行・被発行数を知ることができる。また、各ノードは、自身の周囲ノードに対して、上記の発行・被発行数を予め通知しているものとする。
各ノードが構築速度を重視して信頼の輪の構築を行う場合、公開鍵証明書の発行数の多いノード(多くのノードを信頼しているノード)を優先的に選択する。例えば、ノード1aが周囲ノードを選択する場合、周囲ノードの中で最も公開鍵証明書の発行数が多いノード1iを選択する。発行数が同じ場合は、任意にノードを選択すればよい。各ノードが同様の動作を行うことにより、図10の点線の矢印で示される経路で信頼の輪の構築が行われる。
各ノードが信頼度を重視して信頼の輪の構築を行う場合、公開鍵証明書の被発行数の多いノード(多くのノードから信頼されているノード)を優先的に選択する。例えば、ノード1aが周囲ノードを選択する場合、周囲ノードの中で最も公開鍵証明書の被発行数が多いノード1cまたはノード1eを選択する。被発行数が同じ場合は、任意にノードを選択すればよい。各ノードが同様の動作を行うことにより、図11の点線の矢印で示される経路で信頼の輪の構築が行われる。
なお、ノードの選択数は1に限られる訳ではなく、公開鍵証明書の発行数または被発行数が多い方から適宜複数のノードを選択するようにしてもよい。
次に、上述した周囲ノードの選択方式において、互いにトレードオフの関係にある信頼の輪の信頼度と構築速度とを的確に選択するための手法を提案する。以下の式は、信頼度と構築速度とに対する重み付けを式で示したものである。
weight=outedge×α+inedge×β ・・・(1)
α+β=1 ・・・(2)
上記の(1)式において、weightは重み付けを示す値である。outedgeは特定の周囲ノードに注目した場合の外向きの矢印の本数(公開鍵証明書の発行数)であり、inedgeは内向きの矢印の本数(公開鍵証明書の被発行数)である。αおよびβは0以上であると共に、(2)式を満たす数である。各ノードは周囲ノードを選択する場合に、αおよびβを適宜決定し、(1)式により、各々の周囲ノードについてweightを算出し、weightが最大となるノードを選択する。
αおよびβに関しては、信頼の輪の構築速度を最も重視する場合には、α=1、β=0となる。また、信頼度を最も重視する場合には、α=0、β=1となる。なお、各ノードの構築速度と信頼度の重視の度合により、各ノードはαおよびβの値を適宜選択すればよい。
次に、各ノードによる公開鍵証明書の管理について説明する。従来の公開鍵証明書分散管理方式においては、各ノードはネットワークに参加する全てのノードの公開鍵証明書を管理していた。しかし、本実施形態においては、各ノードは、自身を信頼するノードが発行した自身の公開鍵証明書と、自身が信頼する周囲ノードの公開鍵証明書とを記憶部15中の証明書リポジトリ内に保持する。なお、周囲ノードの公開鍵証明書に加えて、本実施形態における信頼の輪の構築時に他のノードから取得して一時記憶部14に格納した公開鍵証明書のうち、自身が信頼する周囲ノードからkホップ(kは正の整数)以内に存在するノードの公開鍵証明書を記憶部15中の証明書リポジトリに格納して管理するようにしてもよい。また、本実施形態においては、自身が発行した公開鍵証明書および自身に対して発行された公開鍵証明書を各ノードが管理しているが、自身に対して発行された公開鍵証明書のみを管理するようにしてもよい。
例えば、図1において、ノード1Aは自身の周囲ノードであるノード1Bおよび1Cに加えて、これらのノードの周囲ノードであるノード1D〜1Gから公開鍵証明書を取得したとする。もし、ノード1D〜1Gがノード1Bまたはノード1Cからkホップ以内に存在していれば、ノード1Aはこれらのノードの公開鍵証明書を証明書リポジトリ内に保持する。なお、kの値は記憶部15の容量に従って適宜変更されるようにしてもよい。
また、各ノードは利用頻度の小さい公開鍵証明書を証明書リポジトリから動的に削除する。例えば、各ノードは、特定の公開鍵証明書を最後に利用した日時に関する情報を記憶部15中に保持し、最後に利用してから所定時間経過しても再度の利用がなされなかった公開鍵証明書を削除する。あるいは一回限りしか利用しないことがわかっている公開鍵証明書を利用後に削除する。以上により、各ノードが保持する公開鍵証明書の有効性が保証される。
次に、本実施形態における、目的の公開鍵証明書を所持するノードの探索が成功しなかった場合について説明する。例えば、各ノードが自身の信頼する周囲ノードを一つだけ選択し、そのノードに対して証明書要求情報を送信する場合、送信先のノードが周囲ノードを一つも信頼していないことにより、探索が失敗する可能性がある。その場合は、最初のノードから探索をやり直したり、探索に失敗したノードの一つ手前のノードから、ノードの選択方式を変更するなどにより探索をやり直したりする。また、本実施形態においては、ある決められた制限時間以内または制限ホップ数以内で信頼の輪が構築されなかった場合は、構築を停止する。
次に、本実施形態によって構築された信頼の輪の可視化について説明する。目的のノードまでの信頼の輪が構築された場合、認証ノード(例えば図1におけるノード1A)においては、ユーザに対して確認を促すため、制御部16は表示部13へ表示データを出力する。表示部13はこの表示データに基づいた表示を行う。図12は表示部13による表示例を示す参考図である。この表示によって、自ノードから相手ノードまでの信頼の輪の構築の様子がユーザに対して通知される。
表示部13には、信頼の輪のパスの様子や、信頼の輪を構築する各ノードがいくつの周囲ノードから信頼されているのかなどが表示される。ユーザは表示部13を参照し、この信頼の輪を用いて相手ノードと通信を行うかどうか判断する。ユーザが通信を行うと判断し、操作部12より通信の開始指示を入力すると、操作部12はユーザによる指示を示す信号を制御部16へ出力する。制御部16はこの信号に基づいて、通信部11等を制御し、相手ノードとの暗号化通信を開始する。
また、複数のパスが構築された場合、表示部13には複数のパスが表示される。図13はこの場合の表示例を示す参考図である。さらに、信頼の輪を構築することができない場合には、図14のように表示される。自ノードから相手ノードまでの信頼の輪が構築されなかった場合でも、表示部13には、周囲のノードから信頼度数が高いノードに関しては、その信頼度が表示される。
以上説明したように、本実施形態によれば、通信相手となるノードの公開鍵の認証を行う必要性が発生したときに、信頼の輪を構築する各ノードから必要なノードのみの公開鍵証明書を取得するようにしたので、ネットワークに参加する全てのノードの公開鍵を各ノードが管理する従来の公開鍵分散管理方式と比較して、通信資源や各ノードの資源を無駄に使うことがなく、公開鍵の管理コストを低減することができる。例えば、認証ノードは被認証ノードの公開鍵の認証に必要なノードのみの公開鍵証明書を取得するので、各ノードがネットワークに参加する全ノードの証明書リポジトリ内の情報を取得する従来の公開鍵分散管理方式と比較して、通信資源の使用量を削減することができる。
また、各ノードは自身の信頼するノードのみの公開鍵証明書を証明書リポジトリに保持するので、ネットワークに参加するノード数が増加しても、各ノードによるメモリおよびHDD資源の使用量を従来よりも大幅に低減することができる。さらに、各ノードは自身に対して発行された公開鍵証明書のみ、あるいは、その公開鍵証明書に加えて、自身が発行した公開鍵証明書を管理するので、各ノードが他のノードから公開鍵証明書を取得する際に、その公開鍵証明書の有効性が保証される。したがって、本実施形態における通信システムにおいては、失効証明書リストに基づいた公開鍵証明書の有効性の確認が必要でないため、失効証明書リストの交換に伴う通信資源の使用量を削減することができる。以上により、公開鍵の管理コストを低減することができる。
また、信頼の輪の構築において、各ノードが自身が信頼するノードの中から、証明書要求情報を送信するノードを選択する際に、周囲ノードの信頼数・被信頼数を考慮することにより、信頼の輪の構築速度および信頼度の重視の度合に基づいた構築を行うことができる。
また、制限時間以内または制限ホップ数以内で信頼の輪の構築を行うことができなかった場合に、信頼の輪の構築を中止することにより、不要な通信の発生を抑えることができる。特に、各ノードが証明書要求情報をブロードキャストする場合には、不要な通信が発生しやすいので、通信量の削減を行うことができる。
また、構築した信頼の輪の様子をユーザに対して通知することにより、ユーザに対して確認を促すことができる。特に、複数の信頼の輪のパスが構築された場合に、どのパスを用いて通信を行うのかをユーザが選択することができるようになる。
次に、本発明の他の実施形態について説明する。図15は、本実施形態による通信システムの構成を示す概略構成図である。図15(a)に示されるように、本通信システムはノード2A〜2Hによって構成されている。各ノードの内部構成は前述した実施形態と同様である。図15(b)は各ノードの信頼関係(公開鍵証明書の発行関係)を示している。例えば「2F→2A」と示されているのは、ノード2Fがノード2Aを信頼しており、ノード2Aに対して公開鍵証明書(K/S)を発行していることを意味している。発行された公開鍵証明書は、前述した実施形態と同様に、その公開鍵証明書の発行元および発行先のノードにおいて、図2における記憶部15の証明書リポジトリに格納される。また、図15(b)に示される各ノードの信頼関係は記憶部15の信頼ノードリストおよび被信頼ノードリストに格納されている。
本実施形態においては、ノード2A(認証端末)がノード2D(被認証端末)と暗号化通信を行うため、ノード2Dの認証、すなわちノード2Dの公開鍵Kの正当性の検証を行うとする。ノード2Aは、公開鍵Kについての公開鍵証明書を要求するために、証明書要求情報を送信するが、本実施形態においては、不要な情報の送信を抑え、証明書要求情報をノード2Dまで効率的に到達させるため、各ノードは以下のように動作する。各ノードは、信頼の輪を構築するため、他のノードへの経路に関する経路情報を予め所持しているものとする。この経路情報の収集には、無線アドホックネットワークにおけるルーティングプロトコルとしてProactive型プロトコルを利用する。Proactive型プロトコルにおいては、定期的に経路情報を各ノード間で交換することにより、通信システムを構成する他のノードまでの経路に関する情報を各ノードが収集して、他のノードまでの経路に関するルーティングテーブルを構築し、保持する。
図16は、ノード2Aが所持するルーティングテーブルの内容を示している。「Destination Node」は到達先のノードを示している。「Next Hop Node」は、到達先のノードに到達する経路において、次に経由するノードを示している。「Next Hop Node」にノードの識別情報がない場合は、他のノードを経由することなく到達先のノードに到達することができることを示している。このようなルーティングテーブルは、各ノードの記憶部15中に記憶されている。
次に、各ノードにおけるルーティングテーブルの構築方法について説明する。Proactive型プロトコルは、以下の基本機能からなる。
(1)隣接するノードの発見プロセス
(2)ネットワークトポロジの構築プロセス
隣接ノードの発見プロセスにおいては、各ノードは、ノード間のハローメッセージの交換によってリンク状態を確認しあう。ネットワークトポロジの構築プロセスにおいては、各ノードは、ローカルなリンク情報をトポロジ制御メッセージに付加し、アドホックネットワーク全体にフラッディング広告して、その情報を得たノード自身が経路表を作成する。この際、フラッディングする制御パケットには、無駄なフラッディングを防ぐために、TTL、ホップ数、メッセージシーケンス番号等が記入される。その後は、定期的に差分情報を広報しあうことにより、各ノードが持つネットワーク全体のルーティングテーブルが維持および管理される。
次に、ノード2Aがノード2Dの公開鍵Kについての公開鍵証明書を取得するまでの各ノードの動作について説明する。ノード2Aにおいて制御部16は記憶部15からルーティングテーブルを読み出して参照する(図17(a)のルーティングテーブル200A)。ノード2Dへは直接到達することができないため、制御部16は、ノード2Aが信頼するノードへ証明書要求情報を送信すべきであると判断し、記憶部15から信頼ノードリストを読み出して参照する。図15(b)に示されるように、ノード2Aはノード2Bおよび2Eを信頼しているので、制御部16は、これらのノードに対する新たな証明書要求情報を作成する。
図17(a)には、ノード2Aによって作成された証明書要求情報201に含まれる情報の内容が示されている。経由ノード情報201aは、経由するノードの情報であり、ルーティングテーブル200Aに基づいた情報である。この場合には、ノード2Aが信頼しているノード2Bおよび2Eが経由ノードとして指定され、ノード2Bを経由するための経由ノードとして、ノード2Aから直接信頼されていないノード2Fが指定されている。認証ノード情報201bは、認証を行う主体のノード(この場合、ノード2A)の識別情報を示している。被認証ノード情報201cは、最終的な認証の対象となるノード(この場合、ノード2D)の識別情報を示している。探索制限数情報201dは、目的とする最終的な認証の対象ノードまでの間に経由する、信頼の輪に加わるノードの最大数を示している。
制御部16は、作成した証明書要求情報を通信部11へ出力する。通信部11は、アンテナ10を介して証明書要求情報をブロードキャストする。この証明書要求情報は、ノード2Aから電波の届く範囲内に存在するノード2E、ノード2F、およびノード2Hによって受信される(図20(a)参照)。各ノードにおいて、通信部11はアンテナ10を介して証明書要求情報を受信し、制御部16へ出力する。
証明書要求情報を受信したノード2Hの動作は以下のようになる。ノード2Hの制御部16は、証明書要求情報中の被認証ノード情報を参照し、ノード2Hが被認証ノードであるかどうかを判断する。被認証ノードはノード2Dであるから、制御部16は、ノード2Hが被認証ノードではないと判断する。続いて、制御部16は経由ノード情報を参照し、ノード2Hが経由ノードであるかどうか判断する。経由ノード情報中にノード2Hの識別情報がないことから、制御部16は、ノード2Hが経由ノードでないと判断し、証明書要求情報を棄却する。
また、ノード2Aからの証明書要求情報を受信したノード2Eの動作は以下のようになる。ノード2Eの制御部16は証明書要求情報中の被認証ノード情報を参照し、ノード2Eが被認証ノードではないと判断する。続いて、制御部16は、証明書要求情報中の経由ノード情報を参照し、経由ノード情報中にノード2Eの識別情報があることから、信頼の輪の構築に参加すべきであると判断する。制御部16は記憶部15からルーティングテーブル(図17(b)のルーティングテーブル200E)を読み出して参照し、被認証ノードであるノード2Dへは直接到達することができないため、信頼しているノード2Fを経由ノードとして指定する。また、制御部16は、ノード2Fに到達するための経由ノードとしてノード2Aを指定する。
制御部16は証明書要求情報を作成する。図17(b)には、ノード2Eによって送信される証明書要求情報202の内容が示されている。経由ノード情報202aの内容は上述したとおりであり、認証ノード情報202bおよび被認証ノード情報202cの内容は、ノード2Aから受信した証明書要求情報の内容と同一である。ノード2Aが直接信頼するノード2Eを経由したことから、探索制限数情報202dが示す数は1だけ減らされる。上記の内容は、ノード2Aから送信された証明書要求情報と同様であるが、さらに、公開鍵証明書(K/S)を含む証明書情報202eが付加されている。証明書情報202eは、認証ノードであるノード2Aによる公開鍵の検証の際に必要となる情報である。
制御部16は、信頼の輪の構築に参加すべきであると判断したので、記憶部15の証明書リポジトリから必要な公開鍵証明書を読み出して、証明書要求情報に付加する。この場合、制御部16は記憶部15の証明書リポジトリから、認証ノードであるノード2Aによって発行された公開鍵証明書(K/S)を読み出し、証明書要求情報に付加する。なお、証明書要求情報に他の公開鍵証明書が既に付加されている場合には、その公開鍵証明書に含まれる公開鍵によって示されるノードを既に経由してきたことが分かるので、制御部16は、そのノードによって発行された公開鍵証明書を付加する。また、次に公開鍵証明書を証明書要求情報に付加すべきノードを指定する情報を証明書要求情報に別途格納するようにし、証明書要求情報を受信したノードが、その情報に基づいて、必要な公開鍵証明書を証明書要求情報に付加するようにしてもよい。
制御部16は、作成した証明書要求情報を通信部11へ出力する。通信部11は、アンテナ10を介して証明書要求情報をブロードキャストする。この証明書要求情報は、ノード2Eから電波の届く範囲内に存在するノード2A、ノード2G、およびノード2Hによって受信される(図20(b)参照)。ノード2Gおよびノード2Hは経由ノードではないため、これらのノードにおいては、証明書要求情報は棄却される。また、ノード2Aは認証ノードであり、既に証明書要求情報を送信しているので、証明書要求情報を棄却する。
一方、図20(a)において、ノード2Aからの証明書要求情報を受信したノード2Fの動作は以下のようになる。ノード2Fの制御部16は証明書要求情報中の被認証ノード情報を参照し、ノード2Fが被認証ノードではないと判断する。続いて、制御部16は、証明書要求情報中の経由ノード情報を参照し、ノード2Fがノード2Bへの経由ノードとして指定されていることから、証明書要求情報をノード2Bへ届けなければならないと判断する。制御部16は記憶部15からルーティングテーブル(図18(a)のルーティングテーブル200F)を読み出して参照し、ノード2Bへは直接到達することができるので、ノード2Bを経由ノードとして指定する。ノード2Fはノード2Aによって直接信頼されているノードではなく、ノード2Aによって信頼されているノードへ証明書要求情報を転送するためのノードであるため、公開鍵証明書の付加は行わない。制御部16は証明書要求情報を作成し(図18(a)の証明書要求情報203)、通信部11へ出力する。通信部11は、アンテナ10を介して証明書要求情報をブロードキャストする。
この証明書要求情報は、ノード2Fから電波の届く範囲内に存在するノード2Aおよびノード2Bによって受信される(図21(a)参照)。ノード2Aは認証ノードであり、既に証明書要求情報を送信しているので、証明書要求情報を棄却する。証明書要求情報を受信したノード2Bの動作は以下のようになる。ノード2Bの制御部16は証明書要求情報中の被認証ノード情報を参照し、ノード2Bが被認証ノードではないと判断する。続いて、制御部16は、証明書要求情報中の経由ノード情報を参照し、経由ノード情報中にノード2Bの識別情報があることから、信頼の輪の構築に参加すべきであると判断する。制御部16は記憶部15からルーティングテーブル(図18(b)のルーティングテーブル200B)を読み出して参照し、被認証ノードであるノード2Dへは直接到達することができないため、信頼しているノード2Cを経由ノードとして指定する。
続いて、制御部16は証明書要求情報を作成する(図18(b)の証明書要求情報204)。このとき、制御部16は、信頼の輪の構築に参加すべきであると判断したので、記憶部15の証明書リポジトリから必要な公開鍵証明書を読み出して、証明書要求情報に付加する。制御部16は記憶部15の証明書リポジトリから、ノード2Aによって発行された公開鍵証明書(KB/S)を読み出し、証明書要求情報に付加する。
制御部16は、作成した証明書要求情報を通信部11へ出力する。通信部11は、アンテナ10を介して証明書要求情報をブロードキャストする。この証明書要求情報は、ノード2Bから電波の届く範囲内に存在するノード2Fおよびノード2Cによって受信される(図21(b)参照)。ノード2Fは経由ノードではないため、証明書要求情報を棄却する。証明書要求情報を受信したノード2Cの動作は以下のようになる。
ノード2Cの制御部16は証明書要求情報中の被認証ノード情報を参照し、ノード2Cが被認証ノードではないと判断する。続いて、制御部16は、証明書要求情報中の経由ノード情報を参照し、経由ノード情報中にノード2Cの識別情報があることから、信頼の輪の構築に参加すべきであると判断する。制御部16は記憶部15からルーティングテーブル(図19(a)のルーティングテーブル200C)を読み出して参照し、被認証ノードであるノード2Dへは直接到達することができるので、ノード2Dを宛先ノードとして指定する。
続いて、制御部16は証明書要求情報を作成する(図19(a)の証明書要求情報205)。このとき、制御部16は、信頼の輪の構築に参加すべきであると判断したので、記憶部15の証明書リポジトリから必要な公開鍵証明書を読み出して、証明書要求情報に付加する。ノード2Bから受信された証明書要求情報に既に公開鍵証明書(K/S)が付加されていることから、制御部16は、ノード2Bによって発行された公開鍵証明書を証明書要求情報に付加すればよいと判断する。制御部16は記憶部15の証明書リポジトリから公開鍵証明書(K/S)を読み出し、証明書要求情報に付加する。
制御部16は、作成した証明書要求情報を通信部11へ出力する。通信部11は、アンテナ10を介して証明書要求情報をノード2Dへ送信する(図22(a)参照)。ノード2Dはこの証明書要求情報を受信する。ノード2Dの制御部16は証明書要求情報中の被認証ノード情報を参照し、ノード2Dが被認証ノードであると判断する。したがって、制御部16は、ノード2Aへ返信するための返信情報を作成する(図19(b)の返信情報206)。ノード2Cから受信された証明書要求情報には公開鍵証明書(K/S)および(K/S)が付加されていることから、制御部16は、ノード2Cによって発行された公開鍵証明書を返信情報に付加すればよいと判断する。
制御部16は記憶部15の証明書リポジトリから公開鍵証明書(K/S)を読み出し、返信情報に付加する。この返信情報には、送信元である被認証ノード(ノード2D)の識別情報と、送信先である認証ノード(ノード2A)の識別情報とが格納されている。制御部16は、作成した返信情報を通信部11へ出力する。通信部11は、アンテナ10を介して返信情報をノード2Aへ送信する(図22(b)参照)。返信情報を返信する際の経路については限定されない。
ノード2Aはこの返信情報を受信する。返信情報を受信したノード2Aの動作は前述した実施形態と同様である。すなわち、ノード2Aは、返信情報に付加された公開鍵証明書を用いてノード2Dの公開鍵Kの正当性を検証する。公開鍵Kの正当性の検証に成功した場合、ノード2Aはノード2Dと暗号化通信を開始する。
なお、ノード2Cは、自身がノード2Dに対して発行した公開鍵証明書(K/S)を記憶部15の証明書リポジトリに所持していることから、ノード2Cがノード2Aへ返信情報を返信するようにしてもよい。すなわち、被認証ノードの公開鍵についての公開鍵証明書を所持するノードは、証明書要求情報を受信すると、返信情報を作成してノード2Aへ送信し、被認証ノードの公開鍵についての公開鍵証明書を所持しないノードは、ルーティングテーブルに基づいて経由ノードを指定して証明書要求情報を他のノードへ送信することになる。
また、前述した実施形態と同様に、ノード2Aが通信前にノード2Dから予め公開鍵証明書(K/S)を受信し、その公開鍵証明書の署名情報に含まれる電子署名の署名者であるノード2Cを被認証ノードとしてもよい。さらに、各ノードは証明書要求情報をブロードキャストするのではなく、自身が信頼するノードへユニキャストで送信したり、自身が信頼するノードに到達する経路上の経由ノードへユニキャストで送信したりしてもよい。
上述した本実施形態によっても、前述した実施形態と同様に、通信相手となるノードの公開鍵の認証を行う必要性が発生したときに、信頼の輪を構築する各ノードから必要なノードのみの公開鍵証明書を取得するようにしたので、ネットワークに参加する全てのノードの公開鍵を各ノードが管理する従来の公開鍵分散管理方式と比較して、通信資源や各ノードの資源を無駄に使うことがなく、公開鍵の管理コストを低減することができる。
また、各ノードが証明書要求情報を送信する際に、ルーティングテーブルを参照し、被認証ノードまでの経路、および自身が信頼するノードまでの経路に関する情報に基づいて証明書要求情報の経由ノードを決定することにより、信頼の輪を効率的に構築することができる。さらに、信頼の輪の構築に参加したノードに信頼されていなくても、信頼の輪の構築に参加すべき他のノードへ証明書要求情報を転送する経由ノード(例えばノード2F)が存在することにより、被認証ノードまで証明書要求情報がより確実に転送される。
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成はこれらの実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。例えば、上記の実施形態においては、通信システムは無線アドホックネットワークであるとしたが、全てのノードが無線通信により互いに接続される形態でなくてもよい。すなわち、一部に通信ケーブルによって有線接続されたノードを含んでいてもよいし、全ノードが有線接続されていてもよい。本発明は、認証局(CA)を持たないネットワークに対しての広範な適用が可能である。
本発明の活用例として、無線アドホックネットワークにおける公開鍵基盤の構築への適用が挙げられる。また、本発明は、無線ネットワークに限らず、その一部または全部が有線接続されたノードで構成され、認証局(CA)を持たないネットワークに対しても適用できる。
本発明の一実施形態による通信システムの構成を示す概略構成図である。 ノードの構成を示すブロック図である。 第1の動作例における通信の様子を示す概略参考図である。 第1の動作例における認証ノードの動作を示すフローチャートである。 第1の動作例における認証ノードの動作を示すフローチャートである。 第1の動作例における中継ノードの動作を示すフローチャートである。 第2の動作例における通信の様子を示す概略参考図である。 第2の動作例における中継ノードの動作を示すフローチャートである。 第3の動作例における通信の様子を示す概略参考図である。 周囲ノードの選択方法を説明するための概略参考図である。 周囲ノードの選択方法を説明するための概略参考図である。 表示部13による表示例を示す参考図である。 表示部13による他の表示例を示す参考図である。 表示部13による他の表示例を示す参考図である。 本発明の他の実施形態による通信システムの構成を示す概略構成図である。 ルーティングテーブルの内容を示す参考図である。 ルーティングテーブルおよび証明書要求情報の内容を示す参考図である。 ルーティングテーブルおよび証明書要求情報の内容を示す参考図である。 ルーティングテーブルおよび証明書要求情報の内容を示す参考図である。 証明書要求情報の送信の様子を示す概略参考図である。 証明書要求情報の送信の様子を示す概略参考図である。 証明書要求情報の送信の様子を示す概略参考図である。
符号の説明
1・・・ノード、10・・・アンテナ、11・・・通信部、12・・・操作部、13・・・表示部、14・・・一時記憶部、15・・・記憶部、16・・・制御部。

Claims (22)

  1. 認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムにおいて、
    前記認証端末は、
    前記公開鍵の検証に必要な情報を要求するための要求情報を送信する第1の送信手段と、
    前記中継端末から、前記情報を含む検証用情報を受信する第1の受信手段と、
    該検証用情報に基づいて前記公開鍵を検証する検証手段と、
    を具備し、
    前記中継端末は、
    前記要求情報によって要求された情報を所持していない場合には、前記要求情報を他の中継端末へ送信し、前記要求情報によって要求された情報を所持している場合には、前記情報を含む検証用情報を前記認証端末または他の中継端末へ送信する第2の送信手段と、
    を具備する
    ことを特徴とする通信システム。
  2. 認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムにおいて、
    前記認証端末は、
    前記公開鍵の検証に必要な第1の証明書情報を要求するための要求情報をブロードキャストする第1の送信手段と、
    前記第1の証明書情報を含む検証用情報を前記中継端末から受信する第1の受信手段と、
    前記検証用情報に基づいて前記公開鍵を検証する検証手段と、
    を具備し、
    前記中継端末は、
    証明書情報を記憶する第1の記憶手段と、
    前記要求情報を受信する第2の受信手段と、
    該要求情報に基づいて、前記第1の証明書情報が前記第1の記憶手段に記憶されているかどうか判定する判定手段と、
    記憶されていないと判定された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、該要求情報をブロードキャストし、記憶されていると判定された場合には、前記要求情報に付加された証明書情報と前記第1の証明書情報とを含む検証用情報を前記認証端末へ送信する第2の送信手段と、
    を具備する
    ことを特徴とする通信システム。
  3. 前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための、経由情報を含む要求情報をブロードキャストし、
    前記第2の送信手段は、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記要求情報に含まれる前記経由情報を更新し、前記要求情報をブロードキャストし、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記第1の証明書情報と、経由する端末を示す返信経由情報とを含む検証用情報を前記返信経由情報が示す前記認証端末または前記中継端末へ送信し、
    前記検証用情報が受信された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記返信経由情報が示す前記認証端末または前記中継端末へ送信する
    ことを特徴とする請求項2に記載の通信システム。
  4. 前記認証端末はさらに、信頼する中継端末を記憶する第2の記憶手段を具備し、
    前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための要求情報を、前記第2の記憶手段によって記憶されている前記中継端末へ送信し、
    前記第1の記憶手段は、証明書情報および信頼する他の中継端末を記憶し、
    前記第2の送信手段は、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記第1の記憶手段によって記憶されている前記中継端末へ該要求情報を送信し、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記要求情報に付加された証明書情報と前記第1の証明書情報とを含む検証用情報を前記認証端末へ送信する
    ことを特徴とする請求項2に記載の通信システム。
  5. 前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための、経由情報を含む要求情報を、前記第2の記憶手段によって記憶されている前記中継端末へ送信し、
    前記第2の送信手段は、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記要求情報に含まれる前記経由情報を更新し、前記第1の記憶手段によって記憶されている前記中継端末へ該要求情報を送信し、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記第1の証明書情報と、経由する端末を示す返信経由情報とを含む検証用情報を前記返信経由情報が示す前記認証端末または前記中継端末へ送信し、
    前記検証用情報が受信された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記返信経由情報が示す前記認証端末または前記中継端末へ送信する
    ことを特徴とする請求項4に記載の通信システム。
  6. 前記第1の受信手段はさらに、前記被認証端末から、前記公開鍵を証明する第2の証明書情報を予め受信し、
    前記第1の証明書情報は、前記第2の証明書情報に含まれる署名情報の検証に必要な公開鍵を証明する
    ことを特徴とする請求項1〜請求項5のいずれかの項に記載の通信システム。
  7. 前記第1の受信手段はさらに、前記被認証端末から、前記公開鍵と、該被認証端末を信頼する端末に関する被信頼情報とを予め受信し、
    前記第1の証明書情報は、前記公開鍵を証明し、
    前記要求情報は、前記第1の証明書情報を、前記被信頼情報によって示される端末から取得することを示す
    ことを特徴とする請求項1〜請求項5のいずれかの項に記載の通信システム。
  8. 認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムにおいて、
    前記認証端末は、
    前記公開鍵の検証に必要な情報を要求するための要求情報を他の端末へ送信すると共に、
    他の端末から、前記公開鍵の検証に必要な情報を含む検証用情報を受信し、
    該検証用情報に基づいて前記公開鍵を検証し、
    前記中継端末は、
    自身が信頼する端末の識別情報と、他の端末に到達する経路に関する経路情報とを予め記憶し、
    前記要求情報を受信した場合に、前記公開鍵の検証に必要な情報を含むと共に、前記経路情報に基づいて、経由する端末を指定する情報を含む新たな要求情報を生成し、
    該要求情報を他の端末へ送信し、
    前記被認証端末は、
    前記要求情報を受信した場合に、該要求情報に含まれる、前記公開鍵の検証に必要な情報と、自身が所持する、前記公開鍵の検証に必要な情報とを含む前記検証用情報を生成して前記認証端末へ送信する
    ことを特徴とする通信システム。
  9. 前記中継端末が生成した新たな要求情報は、該要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報を含み、
    前記被認証端末が生成した前記検証情報は、前記要求情報に付加された前記中継端末の証明書情報と、前記要求情報が経由した前記中継端末によって生成された、自身の公開鍵を証明する証明書情報とを含む
    ことを特徴とする請求項8に記載の通信システム。
  10. 認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムにおいて、
    前記認証端末は、
    前記公開鍵の検証に必要な情報を要求するための要求情報を他の端末へ送信すると共に、
    他の端末から、前記公開鍵の検証に必要な情報を含む検証用情報を受信し、
    該検証用情報に基づいて前記公開鍵を検証し、
    前記中継端末は、
    自身が信頼する端末の識別情報と、他の端末に到達する経路に関する経路情報とを予め記憶し、
    前記要求情報を受信し、前記被認証端末の公開鍵を証明する証明書情報を所持していない場合には、前記要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報を含むと共に、前記経路情報に基づいて、経由する端末を指定する情報を含む新たな要求情報を生成して他の端末へ送信し、
    前記要求情報を受信し、前記被認証端末の公開鍵を証明する証明書情報を所持している場合には、前記要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報と、前記要求情報に付加された前記証明書情報と、前記被認証端末の公開鍵を証明する前記証明書情報とを含む前記検証用情報を生成して前記認証端末へ送信する
    ことを特徴とする通信システム。
  11. 前記中継端末は、自身を信頼しない他の端末から前記要求情報を受信し、該要求情報が経由する端末として自身が指定されている場合には、他の中継端末または前記被認証端末への到達を指定する情報を含む新たな要求情報を生成することを特徴とする請求項8〜請求項10のいずれかの項に記載の通信システム。
  12. 認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムで用いられる通信端末において、
    前記認証端末として、
    前記公開鍵の検証に必要な情報を要求するための要求情報を送信する第1の送信手段と、
    前記中継端末から、前記情報を含む検証用情報を受信する第1の受信手段と、
    該検証用情報に基づいて前記公開鍵を検証する検証手段と、
    を具備し、
    前記中継端末として、
    前記要求情報によって要求された情報を所持していない場合には、前記要求情報を他の中継端末へ送信し、前記要求情報によって要求された情報を所持している場合には、前記情報を含む検証用情報を前記認証端末または他の中継端末へ送信する第2の送信手段と、
    を具備する
    ことを特徴とする通信端末。
  13. 認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムで用いられる通信端末において、
    前記認証端末として、
    前記公開鍵の検証に必要な第1の証明書情報を要求するための要求情報をブロードキャストする第1の送信手段と、
    前記第1の証明書情報を含む検証用情報を前記中継端末から受信する第1の受信手段と、
    前記検証用情報に基づいて前記公開鍵を検証する検証手段と、
    を具備し、
    前記中継端末として、
    証明書情報を記憶する第1の記憶手段と、
    前記要求情報を受信する第2の受信手段と、
    該要求情報に基づいて、前記第1の証明書情報が前記第1の記憶手段に記憶されているかどうか判定する判定手段と、
    記憶されていないと判定された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、該要求情報をブロードキャストし、記憶されていると判定された場合には、前記要求情報に付加された証明書情報と前記第1の証明書情報とを含む検証用情報を前記認証端末へ送信する第2の送信手段と、
    を具備する
    ことを特徴とする通信端末。
  14. 前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための、経由情報を含む要求情報をブロードキャストし、
    前記第2の送信手段は、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記要求情報に含まれる前記経由情報を更新し、前記要求情報をブロードキャストし、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記第1の証明書情報と、経由する端末を示す返信経由情報とを含む検証用情報を前記返信経由情報が示す前記認証端末または前記中継端末へ送信し、
    前記検証用情報が受信された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記返信経由情報が示す前記認証端末または前記中継端末へ送信する
    ことを特徴とする請求項13に記載の通信端末。
  15. 前記認証端末としてさらに、信頼する中継端末を記憶する第2の記憶手段を具備し、
    前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための要求情報を、前記第2の記憶手段によって記憶されている前記中継端末へ送信し、
    前記第1の記憶手段は、証明書情報および信頼する他の中継端末を記憶し、
    前記第2の送信手段は、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記第1の記憶手段によって記憶されている前記中継端末へ該要求情報を送信し、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記要求情報に付加された証明書情報と前記第1の証明書情報とを含む検証用情報を前記認証端末へ送信する
    ことを特徴とする請求項13に記載の通信端末。
  16. 前記第1の送信手段は、前記公開鍵の検証に必要な第1の証明書情報を要求するための、経由情報を含む要求情報を、前記第2の記憶手段によって記憶されている前記中継端末へ送信し、
    前記第2の送信手段は、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていないと判定された場合には、前記要求情報に含まれる前記経由情報を更新し、前記第1の記憶手段によって記憶されている前記中継端末へ該要求情報を送信し、
    前記第1の証明書情報が前記第1の記憶手段に記憶されていると判定された場合には、前記第1の証明書情報と、経由する端末を示す返信経由情報とを含む検証用情報を前記返信経由情報が示す前記認証端末または前記中継端末へ送信し、
    前記検証用情報が受信された場合には、前記第1の記憶手段によって記憶されている証明書情報を前記要求情報に付加し、前記返信経由情報が示す前記認証端末または前記中継端末へ送信する
    ことを特徴とする請求項15に記載の通信端末。
  17. 前記第1の受信手段はさらに、前記被認証端末から、前記公開鍵を証明する第2の証明書情報を予め受信し、
    前記第1の証明書情報は、前記第2の証明書情報に含まれる署名情報の検証に必要な公開鍵を証明する
    ことを特徴とする請求項12〜請求項16のいずれかの項に記載の通信端末。
  18. 前記第1の受信手段はさらに、前記被認証端末から、前記公開鍵と、該被認証端末を信頼する端末に関する被信頼情報とを予め受信し、
    前記第1の証明書情報は、前記公開鍵を証明し、
    前記要求情報は、前記第1の証明書情報を、前記被信頼情報によって示される端末から取得することを示す
    ことを特徴とする請求項12〜請求項16のいずれかの項に記載の通信端末。
  19. 認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムで用いられる通信端末において、
    前記認証端末として、
    前記公開鍵の検証に必要な情報を要求するための要求情報を他の端末へ送信する第1の送信手段と、
    他の端末から、前記公開鍵の検証に必要な情報を含む検証用情報を受信する第1の受信手段と、
    受信された前記検証用情報に基づいて前記公開鍵を検証する検証手段と、
    を具備し、
    前記中継端末として、
    自身が信頼する端末の識別情報と、他の端末に到達する経路に関する経路情報とを予め記憶する記憶手段と、
    前記要求情報を受信する第2の受信手段と、
    前記要求情報が受信された場合に、前記公開鍵の検証に必要な情報を含むと共に、前記経路情報に基づいて、経由する端末を指定する情報を含む新たな要求情報を生成する第1の情報生成手段と、
    該要求情報を他の端末へ送信する第2の送信手段と、
    を具備し、
    前記被認証端末として、
    前記要求情報を受信する第3の受信手段と、
    受信された前記要求情報に含まれる、前記公開鍵の検証に必要な情報と、自身が所持する、前記公開鍵の検証に必要な情報とを含む前記検証用情報を生成する第2の情報生成手段と、
    該検証用情報を前記認証端末へ送信する第3の送信手段と、
    を具備することを特徴とする通信端末。
  20. 前記第1の情報生成手段が生成した新たな要求情報は、該要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報を含み、
    前記第2の情報生成手段が生成した前記検証情報は、前記要求情報に付加された前記中継端末の証明書情報と、前記要求情報が経由した前記中継端末によって生成された、自身の公開鍵を証明する証明書情報とを含む
    ことを特徴とする請求項19に記載の通信端末。
  21. 認証端末が1以上の中継端末を介して被認証端末の公開鍵を検証し、検証した公開鍵を用いて前記被認証端末と暗号化通信を行う通信システムで用いられる通信端末において、
    前記認証端末として、
    前記公開鍵の検証に必要な情報を要求するための要求情報を他の端末へ送信する第1の送信手段と、
    他の端末から、前記公開鍵の検証に必要な情報を含む検証用情報を受信する第1の受信手段と、
    受信された前記検証用情報に基づいて前記公開鍵を検証する検証手段と、
    を具備し、
    前記中継端末として、
    自身が信頼する端末の識別情報と、他の端末に到達する経路に関する経路情報とを予め記憶する記憶手段と、
    前記要求情報を受信する第2の受信手段と、
    前記被認証端末の公開鍵を証明する証明書情報を所持していない場合には、前記要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報を含むと共に、前記経路情報に基づいて、経由する端末を指定する情報を含む新たな要求情報を生成し、前記被認証端末の公開鍵を証明する証明書情報を所持している場合には、前記要求情報が経由した他の中継端末または前記認証端末によって生成された、自身の公開鍵を証明する証明書情報と、前記要求情報に付加された前記証明書情報と、前記被認証端末の公開鍵を証明する前記証明書情報とを含む前記検証用情報を生成する第1の情報生成手段と、
    新たな要求情報を他の端末へ送信すると共に、前記検証用情報を前記認証端末へ送信する第3の送信手段と、
    を具備することを特徴とする通信端末。
  22. 前記第2の受信手段は、自身を信頼しない他の端末から前記要求情報を受信し、
    前記第1の情報生成手段は、前記要求情報が経由する端末として自身が指定されている場合には、他の中継端末または前記被認証端末への到達を指定する情報を含む新たな要求情報を生成する
    ことを特徴とする請求項19〜請求項21のいずれかの項に記載の通信端末。

JP2004302936A 2004-01-22 2004-10-18 通信システムおよび通信端末 Expired - Fee Related JP4690007B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004302936A JP4690007B2 (ja) 2004-01-22 2004-10-18 通信システムおよび通信端末

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2004014223 2004-01-22
JP2004014223 2004-01-22
JP2004302936A JP4690007B2 (ja) 2004-01-22 2004-10-18 通信システムおよび通信端末

Publications (2)

Publication Number Publication Date
JP2005236951A true JP2005236951A (ja) 2005-09-02
JP4690007B2 JP4690007B2 (ja) 2011-06-01

Family

ID=35019405

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004302936A Expired - Fee Related JP4690007B2 (ja) 2004-01-22 2004-10-18 通信システムおよび通信端末

Country Status (1)

Country Link
JP (1) JP4690007B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007088799A (ja) * 2005-09-22 2007-04-05 Sony Corp 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム
JP2008099245A (ja) * 2006-09-14 2008-04-24 Sony Corp 無線通信システム、無線通信装置、無線通信装置の認証方法、および、プログラム
JP2009528730A (ja) * 2006-02-28 2009-08-06 西安西▲電▼捷通▲無▼綫▲網▼絡通信有限公司 認証サーバのセキュアアクセスプロトコルの適合試験の方法およびそれについての装置
JP2017139811A (ja) * 2011-11-28 2017-08-10 ポルティコア エルティディ. 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、 安全未確保のコンピュータ環境でキーの安全を確保する方法と装置。
JP7585159B2 (ja) 2021-08-02 2024-11-18 株式会社東芝 ワイヤレス伝送システムおよびワイヤレス伝送方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000057045A (ja) * 1998-06-18 2000-02-25 Sun Microsyst Inc 保護されたメモリシステム内のサ―ビスへのアクセスを制御するための許可
JP2003513513A (ja) * 1999-10-27 2003-04-08 テレフォンアクチーボラゲット エル エム エリクソン(パブル) 通信ネットワークにおける配列と方式
JP2003348072A (ja) * 2002-05-30 2003-12-05 Hitachi Ltd 自律分散網における暗号鍵の管理方法および装置
US20040025018A1 (en) * 2002-01-23 2004-02-05 Haas Zygmunt J. Secure end-to-end communication in mobile ad hoc networks
JP2005512396A (ja) * 2001-11-29 2005-04-28 シーメンス アクチエンゲゼルシヤフト ネットワークプロバイダ及びビジネスパートナーに対する遠隔通信加入者の認証及び許可のための端末における公開鍵ペアの利用
JP2005286989A (ja) * 2004-03-02 2005-10-13 Ntt Docomo Inc 通信端末及びアドホックネットワーク経路制御方法
JP2006033399A (ja) * 2004-07-15 2006-02-02 Nec Corp アドホックネットワーク通信方式および方法ならびにノード装置およびそのプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000057045A (ja) * 1998-06-18 2000-02-25 Sun Microsyst Inc 保護されたメモリシステム内のサ―ビスへのアクセスを制御するための許可
JP2003513513A (ja) * 1999-10-27 2003-04-08 テレフォンアクチーボラゲット エル エム エリクソン(パブル) 通信ネットワークにおける配列と方式
JP2005512396A (ja) * 2001-11-29 2005-04-28 シーメンス アクチエンゲゼルシヤフト ネットワークプロバイダ及びビジネスパートナーに対する遠隔通信加入者の認証及び許可のための端末における公開鍵ペアの利用
US20040025018A1 (en) * 2002-01-23 2004-02-05 Haas Zygmunt J. Secure end-to-end communication in mobile ad hoc networks
JP2003348072A (ja) * 2002-05-30 2003-12-05 Hitachi Ltd 自律分散網における暗号鍵の管理方法および装置
JP2005286989A (ja) * 2004-03-02 2005-10-13 Ntt Docomo Inc 通信端末及びアドホックネットワーク経路制御方法
JP2006033399A (ja) * 2004-07-15 2006-02-02 Nec Corp アドホックネットワーク通信方式および方法ならびにノード装置およびそのプログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007088799A (ja) * 2005-09-22 2007-04-05 Sony Corp 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム
JP4735157B2 (ja) * 2005-09-22 2011-07-27 ソニー株式会社 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム
JP2009528730A (ja) * 2006-02-28 2009-08-06 西安西▲電▼捷通▲無▼綫▲網▼絡通信有限公司 認証サーバのセキュアアクセスプロトコルの適合試験の方法およびそれについての装置
JP2008099245A (ja) * 2006-09-14 2008-04-24 Sony Corp 無線通信システム、無線通信装置、無線通信装置の認証方法、および、プログラム
US8208899B2 (en) 2006-09-14 2012-06-26 Sony Corporation Wireless communication system, wireless communication device, authentication method of wireless communication device, and program
JP2017139811A (ja) * 2011-11-28 2017-08-10 ポルティコア エルティディ. 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、 安全未確保のコンピュータ環境でキーの安全を確保する方法と装置。
JP7585159B2 (ja) 2021-08-02 2024-11-18 株式会社東芝 ワイヤレス伝送システムおよびワイヤレス伝送方法

Also Published As

Publication number Publication date
JP4690007B2 (ja) 2011-06-01

Similar Documents

Publication Publication Date Title
US8023478B2 (en) System and method for securing mesh access points in a wireless mesh network, including rapid roaming
Dhillon et al. Implementing a fully distributed certificate authority in an OLSR MANET
JP4551202B2 (ja) アドホックネットワークの認証方法、および、その無線通信端末
US7792050B2 (en) Method for intelligent merging of ad hoc network partitions
JP4735157B2 (ja) 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム
WO2007079339A2 (en) Method for encryption key management for use in a wireless mesh network
WO2014040481A1 (zh) 一种无线网格网认证方法和系统
KR20120097498A (ko) 무선 센서 네트워크에서 노드를 동작시키기 위한 방법
US20100250922A1 (en) Method and system for propagating trust in an ad hoc wireless communication network
Ometov et al. Securing network-assisted direct communication: The case of unreliable cellular connectivity
El Defrawy et al. Leveraging social contacts for message confidentiality in delay tolerant networks
Li et al. Localized public-key management for mobile ad hoc networks
JP4690007B2 (ja) 通信システムおよび通信端末
Dahshan et al. A robust self‐organized public key management for mobile ad hoc networks
Li et al. A new scheme for key management in ad hoc networks
de Ree et al. Public key cryptography without certificates for beyond 5G mobile small cells
Boukerche et al. Anonymity enabling scheme for wireless ad hoc networks
Clark Securely & Efficiently Integrating Constrained Devices into an ICN-IoT
Arokiaraj et al. ACS: An efficient address based cryptography scheme for Mobile ad hoc networks security
Mounis et al. An on-demand key establishment protocol for MANETs
Davis Security protocols for mobile ad hoc networks
Rai et al. A secure framework for integrated manet-internet communication
Ge et al. Efficient and secure indirect-address service discovery in MANET
JP2007096919A (ja) 通信システムおよび通信端末
Kandikattu et al. Secure hybrid routing with micro/macro-mobility handoff mechanisms for urban wireless mesh networks

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070904

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101019

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101207

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4690007

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees