JPWO2012073339A1 - 鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム - Google Patents

鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム Download PDF

Info

Publication number
JPWO2012073339A1
JPWO2012073339A1 JP2012546616A JP2012546616A JPWO2012073339A1 JP WO2012073339 A1 JPWO2012073339 A1 JP WO2012073339A1 JP 2012546616 A JP2012546616 A JP 2012546616A JP 2012546616 A JP2012546616 A JP 2012546616A JP WO2012073339 A1 JPWO2012073339 A1 JP WO2012073339A1
Authority
JP
Japan
Prior art keywords
gateway
key
address
node
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012546616A
Other languages
English (en)
Other versions
JP5488715B2 (ja
Inventor
和快 古川
和快 古川
尚 兒島
尚 兒島
武仲 正彦
正彦 武仲
伊豆 哲也
哲也 伊豆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of JP5488715B2 publication Critical patent/JP5488715B2/ja
Publication of JPWO2012073339A1 publication Critical patent/JPWO2012073339A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0827Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

作業員は、ノード(Ni−3)の設置場所に行き、ノード(Ni−3)と携帯端末(H)とを接続する。ノード(Ni−3)は、暗号化パケット(SPi)を管理サーバ(101)に送信する。管理サーバ(101)は、暗号化パケット(SPi)をノード(Ni−3)から受信すると、暗号化パケット(SPi)からゲートウェイ(Gi)のアドレスを特定する。ゲートウェイ(Gi)のアドレスまたは現鍵(Ki)が暗号化パケット(SPi)から特定されるため、管理サーバ(101)は、鍵情報DB(110)を参照して、ゲートウェイ(Gi)のアドレスに関連付けられている新鍵(KKi)を抽出する。管理サーバ(101)は、鍵情報DB(110)から抽出された新鍵(KKi)を、携帯端末(H)を介してノード(Ni−3)に送信する。

Description

本発明は、データを暗号化するための鍵を更新する鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムに関する。
アドホックネットワークは、無線通信でリンクする自己構成型のネットワークの一種である。アドホックネットワークは複数のノードにより構成される。また、アドホックネットワーク内の各ノードは、マルチホップ通信によりパケットの送受信を行う。マルチホップ通信は、互いの通信圏内に存在しないノード同士が、各ノードの通信圏内に存在する別のノードを介して通信を行う技術である。
また、アドホックネットワークとインターネット、LAN(Local Area Network)、WAN(Wide Area Network)などの他のネットワークとを接続する場合、ゲートウェイと呼ばれる中継機器を用いて、ネットワーク間の通信の転送が行われる。
アドホックネットワークを利用した技術として、各家庭の電力メータに無線通信可能なノードを組み込んで、作業員が現地に出向くことなく、アドホックネットワーク経由でメータ確認などの業務を行うシステムがある。各家庭の電力の使用量などの個人情報を扱うアドホックネットワークでは、秘匿性や改ざん防止の観点からセキュアな通信を行うことが要求される。
そこで、従来のシステムでは、アドホックネットワーク内のノード間で送受信されるパケットを暗号化することで、セキュアな通信を確保することが行われている。この際、システム内の全ノードで共通の暗号鍵を用いた場合、鍵漏洩時のリスクが大きいため、ゲートウェイごとに暗号鍵を変えるシステムがある。
また、システムへの新規ノードの初期導入時などにおいて、新規ノードは、暗号鍵が設定されるまでの間、アドホックネットワーク内の他のノードとセキュアな通信を行うことができない。このため、アドホックネットワーク経由で新規ノードに暗号鍵を自動設定することが難しく、作業員が現地に出向いて暗号鍵の設定作業を行っている。
また、セキュア通信に関する先行技術として、たとえば、ブロードキャストにより通信を行うネットワークの暗号鍵を管理する技術がある(たとえば、下記特許文献1参照。)。また、アドホックネットワークにおいて通信開始時の鍵交換を安定して行うための技術がある(たとえば、下記特許文献2参照。)。また、アドホックネットワーク内の各ノードが適応ゲートウェイを選択するための技術がある(たとえば、下記特許文献3参照。)。また、異なるネットワーク間に所属する複数のデバイスに鍵を渡し、それを用いてアドホックネットワークを構成する技術がある(たとえば、下記特許文献4参照。)。
特開2003−348072号公報 特開2007−88799号公報 特開2009−81854号公報 特表2009−535921号公報
しかしながら、上述した従来技術では、アドホックネットワーク内の各ノードに設定する暗号鍵をゲートウェイごとに更新する場合、ノードが属するゲートウェイを特定することが難しいという問題があった。
たとえば、ノードの設置場所の住所から候補となるゲートウェイを絞り込むことはできても、天候や近傍の建物との位置関係などの要因により通信状況が変化する。このため、実際にどのゲートウェイと通信可能であるかを作業員が現地に出向いて確認する必要があり、作業員の暗号鍵の更新作業にかかる作業時間および作業負荷の増大を招くという問題がある。
また、ゲートウェイが暗号鍵を更新したタイミングで暗号鍵を更新できるのはゲートウェイから1ホップ隣のノードのみである。具体的には、1ホップ隣のノードがゲートウェイからのブロードキャストパケット(以下、「BCパケット」)を受信することはできるが、BCパケットは新しい暗号鍵(以下、「新鍵」)で暗号化されている。したがって、当該パケットは現在所有している暗号鍵(以下、「現鍵」)で復号することができず、ゲートウェイから2ホップ隣まで転送されないからである。
すなわち、アドホックネットワークでの鍵更新の開始直後には、ゲートウェイから1ホップ隣のノードは新鍵に設定できるが、ゲートウェイから2ホップ先のノード以降は鍵設定することができない。換言すれば、ゲートウェイから2ホップ隣のノードは、ゲートウェイから1ホップ隣のノードについて鍵更新が完了し、ゲートウェイからのBCパケットを受信可能となって初めて鍵更新が可能となる。
しかしながら、どのノードがゲートウェイから何ホップ先であるかを調査するのは非常に困難である。また、ノードの設置時に何ホップ先であるかを記録していても、上述したように、各種要因により通信状況が変化する。したがって、結局、実際にどのノードがゲートウェイから何ホップ先であるかを、作業員が現地に出向いてその都度確認する必要がある。このように、従来では、作業員の暗号鍵の更新作業にかかる作業時間および作業負荷の増大を招くという問題がある。
本発明は、上述した従来技術による問題点を解消するため、アドホックネットワーク内のノードが用いる暗号鍵の更新作業の効率化を図ることができる鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、アドホックネットワーク内のゲートウェイから前記アドホックネットワーク内のノード群の各ノードに付与された前記ゲートウェイ固有の現鍵を更新する鍵更新にあたって、前記ゲートウェイが、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、前記アドホックネットワークに同時通報し、前記ゲートウェイが、前記ゲートウェイ固有の新鍵を取得し、前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバが、前記新鍵を取得して、前記新鍵を前記現鍵に関連付けて前記データベースに保存し、前記ノード群内の各ノードが、前記暗号化パケットを前記現鍵で復号することにより、前記更新通知情報であるか否かを判断し、前記サーバと通信可能な携帯端末と接続された前記ノード群内の特定のノードが、前記更新通知情報であると判断された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスを含むパケットを、前記携帯端末を介して前記サーバに送信し、前記サーバが、前記データベースにおいて、送信されたパケット内の前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信し、前記特定のノードが、前記現鍵から、送信された前記新鍵に更新する鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムが一例として挙げられる。
本発明にかかる鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムによれば、アドホックネットワーク内のノードが用いる暗号鍵の更新作業の効率化を図ることができるという効果を奏する。
図1は、実施の形態にかかるネットワークシステムの一実施例を示す説明図である。 図2は、アドホックネットワークAiにおける鍵更新例(その1)を示す説明図である。 図3は、アドホックネットワークAiにおける鍵更新例(その2)を示す説明図である。 図4は、アドホックネットワークAiにおける鍵更新例(その3)を示す説明図である。 図5は、アドホックネットワークAiにおける鍵更新例(その4)を示す説明図である。 図6は、アドホックネットワークAiにおける鍵更新例(その5)を示す説明図である。 図7は、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造の一例を示す説明図である。 図8は、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造の他の例を示す説明図である。 図9は、実施の形態にかかる管理サーバ101のハードウェア構成例を示すブロック図である。 図10は、実施の形態にかかるゲートウェイGiおよびノードNi−1〜Ni−mi(以下、「ノード等」)のハードウェア構成例を示すブロック図である。 図11は、鍵情報DB110の記憶内容の一例を示す説明図である。 図12は、ゲートウェイGiの機能的構成例を示すブロック図である。 図13は、管理サーバ101の機能的構成例を示すブロック図である。 図14は、ノードNiの機能的構成例を示すブロック図である。 図15は、パケット情報テーブルの記憶内容の一例を示す説明図である。 図16は、管理サーバ101の認証情報の一例を示す説明図である。 図17は、携帯端末Hの認証情報の一例を示す説明図である。 図18は、実施の形態にかかる鍵更新シーケンス例を示すシーケンス図である。 図19は、図18に示した鍵更新前処理(ステップS1804)の詳細な処理手順の一例を示すフローチャートである。 図20は、図18に示した鍵更新前処理(ステップS1804)の詳細な処理手順の他の例を示すフローチャートである。 図21は、図18に示した新鍵特定処理(ステップS1810)の詳細な処理手順の一例を示すフローチャートである。 図22は、図18に示した新鍵特定処理(ステップS1810)の詳細な処理手順の他の例を示すフローチャートである。 図23は、ゲートウェイGiの機能的構成の他の例を示すブロック図である。 図24は、管理サーバ101の機能的構成の他の例を示すブロック図である。 図25は、実施の形態にかかる鍵更新シーケンスの他の例を示すシーケンス図である。
以下に添付図面を参照して、この発明にかかる鍵設定方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムの実施の形態を詳細に説明する。
(ネットワークシステムの一実施例)
図1は、実施の形態にかかるネットワークシステムの一実施例を示す説明図である。図1において、ネットワークシステム100は、管理サーバ101と、ゲートウェイG1〜Gnと、ノードN1−1〜N1−m1,N2−1〜N2−m2,…,Nn−1〜Nn−mnと、を含む構成である。
ネットワークシステム100において、管理サーバ101とゲートウェイG1〜Gnは、インターネット、LAN、WANなどのネットワークNW1を介して相互に通信可能に接続されている。また、ゲートウェイGiとノードNi−1〜Ni−miは、アドホックネットワークAiを介して接続されている(i=1,2,…,n)。なお、以降の説明で、単に「ノードNi」と表記した場合は、任意のアドホックネットワークAiを構成するノードNi−1〜Ni−miの中の任意のノードを示すこととする。
ここで、管理サーバ101は、鍵情報DB(データベース)110を備え、各ゲートウェイG1〜Gn固有の暗号鍵を管理するコンピュータである。ゲートウェイGi固有の暗号鍵(以下、「暗号鍵Ki」という)は、ゲートウェイGiが属するアドホックネットワークAi内のノード間で送受信されるパケットを暗号化するための鍵情報である。なお、鍵情報DB110についての詳細な説明は、図11を用いて後述する。
ゲートウェイGiは、アドホックネットワークAiとネットワークNW1とを接続する中継機器である。ゲートウェイGiは、アドホックネットワークAiのプロトコルとネットワークNW1のプロトコルの両方を理解し、アドホックネットワークAiとネットワークNW1との間の通信の転送を行う。
ノードNi−1〜Ni−miは、所定の通信圏内の他ノードとマルチホップ通信を行う無線通信装置である。アドホックネットワークAiでは、すべてのノードNi−1〜Ni−miがゲートウェイGiと直接通信できる必要はなく、一部のノードがゲートウェイGiと通信可能であればよい。
ネットワークシステム100は、たとえば、各家庭の電力やガスの使用量を収集するシステムに適用することができる。具体的には、たとえば、各家庭の電力メータやガスメータに各ノードNi−1〜Ni−miを組み込むことで、アドホックネットワークAi内のノード間で各家庭の電力やガスの使用量を送受信する。なお、各家庭の電力やガスの使用量は、各ノードNi−1〜Ni−miが計測してもよく、また、各ノードNi−1〜Ni−miが電力メータやガスメータから取得してもよい。
ゲートウェイGiは、アドホックネットワークAi内のノードNi−1〜Ni−miから受信した各家庭の電力やガスの使用量を、ネットワークNW1を介して電力会社やガス会社のサーバ(たとえば、管理サーバ101)に送信する。これにより、作業員が現地に出向くことなく電力やガスの使用量を収集することができる。
また、ネットワークシステム100では、アドホックネットワークAiごとにゲートウェイGi固有の暗号鍵Kiを用いてパケットを暗号化する。これにより、アドホックネットワークAiのセキュア通信(データ秘匿性、改ざん防止など)を確保する。また、アドホックネットワークAiごとに暗号鍵Kiを変えることで、鍵漏洩時のリスクを低減させる。また、受信されるパケットも暗号鍵Kiで暗号化されているため、ゲートウェイGiやその配下のノードNi−1〜Ni−miは、暗号鍵Kiで復号することができる。
なお、図1の例では、アドホックネットワークAi内に1台のゲートウェイGiを設ける構成としたが、同一のアドホックネットワークAi内に複数台のゲートウェイGiを設ける構成としてもよい。この場合、アドホックネットワークAi内で送受信されるパケットを暗号化するための暗号鍵Kiは、複数台のゲートウェイGiで共通である。
(現鍵Kiの更新例)
暗号鍵Kiは、アドホックネットワークAi内のゲートウェイGiおよびノードNi−1〜Ni−miで共通に使用される鍵情報である。アドホックネットワークAiで暗号鍵Kiを現在利用されている現鍵Kiとし、現鍵Kiを新鍵KKiに更新する例について説明する。
図2〜図6は、アドホックネットワークAiにおける鍵更新例を示す説明図である。図2は、鍵更新前の状態(A)を示している。管理サーバ101は、鍵情報DB110においてゲートウェイGiごとに現鍵Kiを保存している。図2では、鍵情報DB110において、ゲートウェイGi(のアドレス)と現鍵Kiとが関連付けられていることを示している。また、ゲートウェイGiおよびノードNi−1〜Gi−6も現鍵Kiを保持している。
図3は、図2の状態(A)から遷移した状態(B)を示している。状態(B)では、(1)ゲートウェイGiが、現鍵Kiで現鍵Kiの更新通知情報を暗号化する。そして、ゲートウェイGiは、暗号化パケットSPiをアドホックネットワークAiに対しブロードキャストする。ゲートウェイGiから暗号化パケットSPiがブロードキャストされると、各ノードNi−1〜Ni−6に暗号化パケットSPiが行き渡る。
(2)ゲートウェイGiは、新鍵KKiを生成し、ネットワークNW1を介して管理サーバ101に新鍵KKiを送信する。管理サーバ101は、ゲートウェイGiから新鍵KKiを受信すると、新鍵KKiの送信元であるゲートウェイGiのアドレスを手がかりとして、鍵情報DB110のゲートウェイGiのレコードを指定する。
(3)管理サーバ101は、指定したレコードに新鍵KKiを保存する。これにより、ゲートウェイGi(のアドレス)と現鍵Kiと新鍵KKiとが関連付けられる。
図4は、図3の状態(B)から遷移した状態(C)を示している。状態(C)では、ノードNi−1〜Ni−6では、現鍵Kiが消去されている。なお、現鍵Kiの消去はこの段階に限られない。たとえば、ノードNi−1〜Ni−6が新鍵KKiを受信したあとでもよい。また、ノードNi−1〜Ni−6は、ゲートウェイGiからブロードキャストされた暗号化パケットSPiを保持している。
なお、ノードNi−1〜Ni−6は暗号化パケットSPiを現鍵Kiで復号し、現鍵Kiの更新通知情報が含まれているかを確認する。更新通知情報が含まれている場合は、暗号化パケットSPiを保持しておく。含まれていない場合は、復号された情報にしたがってノード固有の処理(たとえば、計測結果をゲートウェイGiに送るなど)を実行することとなる。
図5は、図4の状態(C)から遷移した状態(D)を示している。状態(D)では、ノードNi−3に携帯端末Hを接続し、ノードNi−3が携帯端末Hを通信インターフェースとして利用して、管理サーバ101と通信をおこなう例を示している。図5では、ノードNi−3について説明しているが、他のノードNi−1,Ni−2,Ni−4〜Ni−6も同様に実行する。
(4)作業員は、ノードNi−3の設置場所に行き、ノードNi−3と携帯端末Hとを接続する。携帯端末Hは、管理サーバ101と通信可能なコンピュータである。携帯端末Hと管理サーバ101との通信の確立は、ノードNi−3の接続前でも接続後でもよい。
(5)ノードNi−3と携帯端末Hとが接続されると、ノードNi−3は、暗号化パケットSPiを管理サーバ101に送信する。ここでは、暗号化パケットSPiを送信する例について説明しているが、ゲートウェイGiのアドレスを含むパケットであれば、暗号化パケットSPiでなくてもよい。なお、携帯端末Hと管理サーバ101間の通信は、公開鍵暗号方式などの既存の暗号化通信を利用してもよい。
(6)管理サーバ101は、暗号化パケットSPiをノードNi−3から受信すると、暗号化パケットSPiからゲートウェイGiのアドレスを特定する。暗号化パケットSPiでは、更新通知情報のみが現鍵Kiで暗号化されている場合や更新通知情報およびゲートウェイGiのアドレスが現鍵Kiで暗号化されている場合がある。
ゲートウェイGiのアドレスが現鍵Kiで暗号化されていない場合は、暗号化パケットSPiからゲートウェイGiのアドレスが特定できる。ゲートウェイGiのアドレスも現鍵Kiで暗号化されている場合は、管理サーバ101は、ゲートウェイごとの暗号鍵で順次復号を試みる。そして、復号できた場合は、その鍵がアドホックネットワークAiでの現鍵Kiであることがわかる。
いずれにしても、ゲートウェイGiのアドレスまたは現鍵Kiが暗号化パケットSPiから特定されるため、管理サーバ101は、鍵情報DB110を参照して、ゲートウェイGiのアドレス(または現鍵Ki)に関連付けられている新鍵KKiを抽出する。
(7)そして、管理サーバ101は、鍵情報DB110から抽出された新鍵KKiを、携帯端末Hを介してノードNi−3に送信する。なお、携帯端末Hと管理サーバ101間の通信は、公開鍵暗号方式などの既存の暗号化通信を利用してもよい。
図6は、図5の状態(D)から遷移した状態(E)を示している。状態(E)では、図5の状態(D)で示した処理を、他のノードNi−1,Ni−2,Ni−4〜Ni−6についても実行した結果を示している。状態(E)では、各ノードNi−1〜Ni−6に新鍵KKiが行き渡っている。また、鍵情報DB110から現鍵Kiが消去され新鍵KKiが残されている。このあと、新鍵KKiがアドホックネットワークAiでの有効な現鍵となる。
(暗号化パケットSPiのデータ構造例)
つぎに、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造例について説明する。
図7は、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造の一例を示す説明図である。図7において、暗号化パケットSPiは、ヘッダ部710とペイロード部720とを含む構成である。ヘッダ部710には、宛先アドレス、差出アドレス、ホップ数およびGWアドレスが記述されている。ペイロード部720には、暗号化されたデータ本体が記述されている(図7中ハッチ部分)。
ここで、宛先アドレスは、送信先のアドレスである。ここでは、ブロードキャスト用のMACアドレス『00:00:00:00:00:00』が記述されている。差出アドレスは、送信元のアドレスである。ここでは、アドホックネットワークAi内のノードNiとは異なる他のノードNiのMACアドレスが記述されている。
ホップ数は、暗号化パケットSPiを残り何回転送するのかを示す残余の転送回数である。ゲートウェイGiからブロードキャストされる暗号化パケットSPiのホップ数の最大値は予め設定されている。ホップ数は暗号化パケットSPiの転送時にデクリメントされ、ホップ数が『0』となった暗号化パケットSPiは棄却される。ここでは、暗号化パケットSP1のホップ数『10』が記述されている。
GWアドレスは、ゲートウェイGiのアドレスである。ここでは、ゲートウェイGiのMACアドレス『AA:AA:AA:AA:AA:AA』が記述されている。なお、ここでは宛先アドレス、差出アドレスおよびGWアドレスの一例として、MACアドレスを用いて説明したが、IPアドレスなどのアドレスを用いることにしてもよい。
ペイロード部720は、暗号鍵Kiで復号される。復号されたペイロード部720には、鍵更新フラグ721とタイムスタンプ722を含む更新通知情報が記憶されている。鍵更新フラグ721とは、現鍵Ki(暗号鍵Ki)の更新をおこなうことを示すビット情報である。たとえば、鍵更新フラグのビット位置をあらかじめ指定しておくことで、各ノードNi−1〜Ni−miで鍵の更新をおこなうことが検出できる。
また、タイムスタンプ722は、更新通知情報の生成時刻を記述した情報である。各ノードNi−1〜Ni−miは、暗号化パケットSPiを受信する都度、そのタイムスタンプ722のうち最新のものを保持しておく。あらたに暗号化パケットSPiを受信したときは、各ノードNi−1〜Ni−miは、保持されているタイムスタンプ722と今回受信した暗号化パケットSPiを復号して得られたタイムスタンプ722とを比較する。そして、今回受信した暗号化パケットSPiを復号して得られたタイムスタンプが新しければ、鍵更新フラグは有効であるとして、各ノードNi−1〜Ni−miは、鍵更新処理を実行することとなる。
図8は、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造の他の例を示す説明図である。図7に示した暗号化パケットSPiでは、暗号化パケットSPiをブロードキャストしたゲートウェイGiのGWアドレスがヘッダ部710に埋め込まれていた。
これに対し、図8に示す暗号化パケットSPiでは、ヘッダ部810には、ゲートウェイGiのGWアドレスが埋め込まれていない。そのかわりに、復号されたペイロード部820に、ゲートウェイGiのGWアドレスが埋め込まれている。図8に示した暗号化パケットSPiの場合は、暗号化パケットSPiを暗号鍵Kiで復号しなければ、ブロードキャストしたゲートウェイGiのGWアドレスを特定することができない。
(管理サーバ101のハードウェア構成)
図9は、実施の形態にかかる管理サーバ101のハードウェア構成例を示すブロック図である。図9において、管理サーバ101は、CPU(Central Processing Unit)901と、ROM(Read Only Memory)902と、RAM(Random Access Memory)903と、磁気ディスクドライブ904と、磁気ディスク905と、光ディスクドライブ906と、光ディスク907と、I/F(Interface)908と、ディスプレイ909と、キーボード910と、マウス911と、を備えている。また、CPU901〜マウス911はバス900によってそれぞれ接続されている。
ここで、CPU901は、管理サーバ101の全体の制御を司る。ROM902は、ブートプログラムなどのプログラムを記憶している。RAM903は、CPU901のワークエリアとして使用される。磁気ディスクドライブ904は、CPU901の制御に従って磁気ディスク905に対するデータのリード/ライトを制御する。磁気ディスク905は、磁気ディスクドライブ904の制御で書き込まれたデータを記憶する。
光ディスクドライブ906は、CPU901の制御に従って光ディスク907に対するデータのリード/ライトを制御する。光ディスク907は、光ディスクドライブ906の制御で書き込まれたデータを記憶したり、光ディスク907に記憶されたデータをコンピュータに読み取らせたりする。
I/F908は、通信回線を通じてネットワークNW1,NW2に接続され、このネットワークNW1,NW2を介して他の装置(たとえば、ゲートウェイGi、携帯端末H)に接続される。I/F908は、ネットワークNW1,NW2と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F908には、たとえば、モデムやLANアダプタなどを採用することができる。
ディスプレイ909は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ909は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
キーボード910は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス911は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。なお、図2に示した携帯端末Hについても、図9に示した管理サーバ101と同様のハードウェア構成により実現できる。
(ゲートウェイGiおよびノードNiのハードウェア構成)
図10は、実施の形態にかかるゲートウェイGiおよびノードNi−1〜Ni−mi(以下、「ノード等」)のハードウェア構成例を示すブロック図である。図10において、ノード等は、CPU1001と、RAM1002と、フラッシュメモリ1003と、I/F1004と、暗号化回路1005と、を備えている。CPU1001〜暗号化回路1005は、バス1000によってそれぞれ接続されている。
ここで、CPU1001は、ノード等の全体の制御を司る。RAM1002は、CPU1001のワークエリアとして使用される。フラッシュメモリ1003は、プログラムや暗号鍵などの鍵情報を記憶している。I/F1004は、マルチホップ通信によりパケットを送受信する。また、ゲートウェイGiのI/F1004は、通信回線を通じてネットワークNW1に接続され、このネットワークNW1を介して管理サーバ101に接続される。
暗号化回路1005は、データを暗号化する場合に暗号鍵によりデータを暗号化する回路である。暗号化をソフトウェア的に実行する場合は、暗号化回路1005に相当するプログラムをフラッシュメモリ1003に記憶させておくことで、暗号化回路1005は不要となる。
(鍵情報DB110の記憶内容)
図11は、鍵情報DB110の記憶内容の一例を示す説明図である。図11において、鍵情報DB110は、ID、GWアドレス、現鍵および新鍵のフィールドを有し、各フィールドに情報を設定することで、ゲートウェイG1〜Gnごとの鍵情報1100−1100−nをレコードとして記憶している。
ここで、IDは、本明細書において説明上用いる各ゲートウェイGiの識別子である。GWアドレスは、ゲートウェイGiのアドレスである。GWアドレスとしては、たとえば、ゲートウェイGiのMAC(Media Access Control)アドレスやIP(Internet Protocol)アドレスを用いることができる。現鍵Kiは、各ゲートウェイGi固有の現在有効な暗号鍵であり、具体的には、たとえば、128〜256ビット程度のバイナリデータである。
新鍵KKiは、各ゲートウェイGi固有の更新後の暗号鍵であり、具体的には、たとえば、128〜256ビット程度のバイナリデータである。新鍵KKiは、更新処理において鍵情報DB110に保存され、更新処理が完了することで、現鍵として鍵情報DB110に保存される。
鍵情報1100−1を例に挙げると、ゲートウェイG1のGWアドレスは『xx:xx:xx:xx:12:34』、暗号鍵は『暗号鍵K1』である。なお、鍵情報DB110は、たとえば、図9に示した管理サーバ101のROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置により実現される。
鍵情報DB110の記憶内容は、管理サーバ101がゲートウェイGi固有の暗号鍵KiをゲートウェイGiから受信することで更新してもよい。また、図9に示したキーボード910やマウス911を用いたユーザの操作入力により、鍵情報DB110の記憶内容を更新することにしてもよい。
(ネットワークシステム100の機能的構成例)
つぎに、ネットワークシステム100の機能的構成例について、図12〜図14を用いて説明する。
図12は、ゲートウェイGiの機能的構成例を示すブロック図である。ゲートウェイGiは、配信部1201と、取得部1202と、送信部1203とを備えている。各機能部(配信部1201〜送信部1203)は、具体的には、たとえば、図10に示したRAM1002やフラッシュメモリ1003などの記憶装置に記憶されたプログラムをCPU1001に実行させることにより、または、I/F1004により、その機能を実現する。また、各機能部(配信部1201〜送信部1203)の処理結果は、たとえば、RAM1002やフラッシュメモリ1003などの記憶装置に記憶される。
配信部1201は、ゲートウェイGiのGWアドレスおよび現鍵Kiの更新通知情報を有し少なくとも更新通知情報を現鍵Kiで暗号化した暗号化パケットSPiを、アドホックネットワークAiに同時通報する。暗号化パケットSPiのデータ構造は、図7または図8に示したデータ構造のいずれでもよい。
また、ゲートウェイGiは、現鍵Kiの更新指示を受け付けると、更新通知情報を生成する。そして、ゲートウェイGiは、生成された更新通知情報をペイロード部720,820として暗号化パケットSPiを生成する。ゲートウェイGiは、配信部1201により、生成された暗号化パケットSPiをアドホックネットワークAiにブロードキャストする。なお、現鍵Kiの更新指示は、ゲートウェイGiに対する操作入力でもよく、定期的に与えられる自動更新指示でもよい。また、管理サーバ101から現鍵Kiの更新指示を受け付けることとしてもよい。
取得部1202は、ゲートウェイGi固有の新鍵KKiを取得する。取得部1202は、具体的には、たとえば、生成部1221と保存部1222とを備える。生成部1221は、新鍵KKiを生成する。生成部1221は、たとえば、乱数生成機能により新鍵KKiを生成する。
保存部1222は、生成部1221で生成された新鍵KKiを保存する。たとえば、保存部1222は、新鍵KKiを、ゲートウェイGi内のRAM1002やフラッシュメモリ1003などの記憶装置に保存する。また、すでに現鍵Kiで暗号化された暗号化パケットSPiが配信部1201によりブロードキャストされた後であれば、新鍵KKiを現鍵Kiに上書きするなどして、現鍵Kiを消去してもよい。
送信部1203は、ネットワークNW1を経由して、管理サーバ101に新鍵KKiを送信する。このあと、各ノードNi−1〜Ni−miと管理サーバ101との間で鍵更新処理が完了することで、アドホックネットワークAi内で、新鍵KKiで暗号化したパケットで通信することが可能となる。
図13は、管理サーバ101の機能的構成例を示すブロック図である。管理サーバ101は、鍵情報DB110と、取得部1301と、受信部1302と、抽出部1303と、復号部1304と、判定部1305と、送信部1306と、を備えている。鍵情報DB110は、具体的には、たとえば、図9に示したROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置によりその機能を実現する。
また、各機能部(取得部1301〜送信部1306)は、具体的には、たとえば、図9に示したROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶されたプログラムをCPU901に実行させることにより、または、I/F908により、その機能を実現する。また、各機能部(取得部1301〜送信部1306)の処理結果は、たとえば、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶される。
取得部1301は、新鍵KKiを取得して、新鍵KKiを現鍵Kiに関連付けて鍵情報DB110に保存する。具体的には、たとえば、取得部1301は、ゲートウェイGiから新鍵KKiを受信する。受信された新鍵KKiは、新鍵KKiの送信パケットのヘッダに送信元として記憶されているゲートウェイGiのGWアドレスを手がかりとして、鍵情報DB110のゲートウェイGiのレコードの新鍵のフィールドに保存される。
受信部1302は、ノードNi−1〜Ni−miのうち携帯端末Hが接続された特定のノードNi−x(図5ではx=3)から、携帯端末Hを介して、暗号化パケットSPiを受信する。なお、携帯端末Hと管理サーバ101との間では、たとえば、SSL(Secure Socket Layer)などのセキュアな通信が行われる。このため、携帯端末Hを介して特定のノードNi−xから受信されるパケットは、暗号化パケットSPiである必要はなく、少なくとも、ゲートウェイGiのGWアドレスが含まれているパケットであればよい。また、ゲートウェイGiのGWアドレスは現鍵Kiで暗号化されていなくてもよい。
抽出部1303は、ゲートウェイGiのGWアドレスに基づいて、鍵情報DB110からゲートウェイGiの現鍵Kiを抽出する。具体的には、たとえば、携帯端末HからのパケットにおいてゲートウェイGiのGWアドレスが暗号化されていない場合(たとえば、図7のデータ構造の暗号化パケットSPi)は、ゲートウェイGiのGWアドレスが特定される。
したがって、抽出部1303は、特定されたゲートウェイGiのGWアドレスを手がかりとして、鍵情報DB110から、ゲートウェイGiの現鍵Kiに関連付けられている新鍵KKiを抽出する。また、この場合、暗号化パケットSPiでは、更新通知情報が暗号化されているため、抽出部1303は、更新通知情報を復号する場合は現鍵Kiを抽出してもよい。
また、携帯端末HからのパケットにおいてゲートウェイGiのGWアドレスが暗号化されている場合(たとえば、図8のデータ構造の暗号化パケットSPi)は、ゲートウェイGiのGWアドレスが特定されない。したがって、抽出部1303は、鍵情報DB110に保存されている現鍵K1,K2,…を順次抽出し、抽出された現鍵K1,K2,…を復号部1304に与えることとなる。
復号部1304は、抽出部1303によって抽出された鍵を用いて、受信部1302によって受信された暗号化パケットを復号する。具体的には、たとえば、暗号化パケットSPiが図7に示したデータ構造である場合は、暗号化パケットSPiを復号できる現鍵Kiを一意に特定できる。したがって、復号部1304は、現鍵Kiを用いて暗号化パケットSPiを復号する。また、この場合、更新通知情報も復号されることとなる。
また、暗号化パケットSPiが図8に示したデータ構造である場合は、復号部1304は、順次抽出された現鍵K1,K2,…により、暗号化パケットSPiを復号する。復号が成功した場合は、ゲートウェイGiのGWアドレスおよび更新通知情報が得られる。
暗号化パケットSPiのデータ構造が図7または図8のいずれのデータ構造であっても、復号が成功すれば、ゲートウェイGiのGWアドレスが得られる。したがって、抽出部1303では、ゲートウェイGiのGWアドレスを手がかりとして、新鍵KKiを抽出することができる。
判定部1305は、暗号化パケットSPiから復号された情報が更新通知情報であるか否かを判定する。具体的には、あらかじめ指定されたビット位置に鍵更新フラグが立っているか否かを判定する。そして、更新通知情報であると判定されると、抽出部1303では、ゲートウェイGiのGWアドレスを手がかりとして、新鍵KKiを抽出することとなる。
送信部1306は、抽出部1303によって抽出された新鍵KKiを、携帯端末Hを介して特定のノードNi−xに送信する。これにより、アドホックネットワークAiを経由せずに、特定のノードNi−xに新鍵KKiを付与することができる。
図14は、ノードNiの機能的構成例を示すブロック図である。ノードNiは、パケット受信部1401と、判断部1402と、検知部1403と、パケット送信部1404と、鍵受信部1405と、更新部1406と、記録部1407と、決定部1408と、を含む構成である。
各機能部(パケット受信部1401〜決定部1408)は、具体的には、たとえば、図10に示したRAM1002、フラッシュメモリ1003などの記憶装置に記憶されたプログラムをCPU1001に実行させることにより、または、I/F1004により、その機能を実現する。また、各機能部(パケット受信部1401〜決定部1408)の処理結果は、特に指定する場合を除いて、RAM1002、フラッシュメモリ1003などの記憶装置に記憶される。
パケット受信部1401は、アドホックネットワークAi内のゲートウェイGiからブロードキャストされた暗号化パケットSPiを受信する。暗号化パケットSPiは、ゲートウェイGi固有の暗号鍵Kiを用いて暗号化されたパケットである。暗号化パケットSPiは、たとえば、アドホックネットワークAiに対し更新処理を知らせる更新通知情報を含んだパケットである。
具体的には、たとえば、パケット受信部1401が、アドホックネットワークAi内の他のノードNiからマルチホップ通信により暗号化パケットSPiを受信する。ただし、ノードNiの通信圏内にゲートウェイGiが存在していれば、パケット受信部1401は、ゲートウェイGiから暗号化パケットSPiを直接受信する場合もある。
判断部1402は、アドホックネットワークAiを構成するノード群内の各ノードNi−1〜Ni−miが、暗号化パケットSPiを現鍵Kiで復号することにより、更新通知情報があるか否かを判断する。具体的には、たとえば、ノードNiが、暗号化パケットSPiから復号されたパケットにおいて、あらかじめ指定されたビット位置に鍵更新フラグが立っているか否かを判定する。また、判断部1402は、前回保存しておいた更新通知情報のタイムスタンプと比較して、今回受信した暗号化パケットSPiが最新であるか否かも判断することとしてもよい。
検知部1403は、管理サーバ101と通信可能な携帯端末Hとの接続を検知する。具体的には、たとえば、作業員がUSBケーブルを用いて携帯端末Hと新規ノードNとを接続した結果、検知部1403が、USBケーブルを介した携帯端末Hとの接続を検知する。
パケット送信部1404は、携帯端末Hとの接続が検知され、かつ、判断部1402によって暗号化パケットSPiに更新通知情報があると判断された場合、携帯端末Hを介して、受信された暗号化パケットSPiを管理サーバ101に送信する。具体的には、たとえば、パケット送信部1404が、USBケーブルなどのネットワークNW3を介して、暗号化パケットSPiを携帯端末Hに送信する。この結果、携帯端末Hが、ネットワークNW2を介して、ノードNiからの暗号化パケットSPiを管理サーバ101に送信する。
鍵受信部1405は、携帯端末Hを介して、ゲートウェイGi固有の暗号鍵KKiを管理サーバ101から受信する。この暗号鍵KKiは、たとえば、ノードNi−xでパケットを暗号化するとともに、暗号鍵KKiを用いて暗号化された暗号化パケットSPiを復号することができる共通鍵である。
更新部1406は、現鍵Kiから新鍵KKiに更新する。これにより、以降においてノードNiが送信対象となるパケットの暗号化、および暗号化パケットSPiの復号は、新鍵KKiで実行されることとなる。したがって、アドホックネットワークAi内のノード間でセキュア通信を行うことができる。
なお、更新部1406では、新鍵KKiを現鍵Kiに上書きすることで更新してもよく、また、ノードNiが暗号化パケットSPiを管理サーバ101に送信するまでの間に、現鍵Kiを消去してもよい。
記録部1407は、受信された暗号化パケットSPiに関する情報を記録する。具体的には、たとえば、記録部1407が、暗号化パケットSPiのヘッダ部に含まれているホップ数およびGWアドレスを、パケット情報テーブルに記録する。ここで、パケット情報テーブルについて説明する。パケット情報テーブルは、たとえば、RAM1002、フラッシュメモリ1003などの記憶装置により実現される。
図15は、パケット情報テーブルの記憶内容の一例を示す説明図である。図15において、パケット情報テーブル1500は、ID、ホップ数、およびGWアドレスのフィールドを有し、各フィールドに情報を設定することで、パケット情報1500−1〜1500−5をレコードとして記憶している。
ここで、IDは、本明細書において説明上用いる暗号化パケットSPiの識別子である。ホップ数は、暗号化パケットSPiを残り何回転送するのかを示す残余の転送回数である。GWアドレスは、ゲートウェイGiのアドレスである。なお、各暗号化パケットSPiのパケット情報は、暗号化パケットSPiの受信順にパケット情報テーブル1500に記憶される。
図14の説明に戻り、決定部1408は、複数の暗号化パケットSPiが受信された場合、記録された暗号化パケットSPiに関する情報に基づいて、送信対象となる暗号化パケットSPiを決定する。たとえば、ノードNiの設置場所がアドホックネットワークA1,A2が重なる場所に位置する場合、パケット受信部1401が、異なるゲートウェイG1,G2からの暗号化パケットSP1,SP2を受信することがある。
この場合、ノードNiが属すべき適切なゲートウェイGiを決めるために、記録部1407によって記録された暗号化パケットSPiに関する情報に基づいて、管理サーバ101に送信する暗号化パケットSPiを決定する。そして、パケット送信部1404は、携帯端末Hを介して、決定された暗号化パケットSPiを管理サーバ101に送信する。以下、図15を用いて送信対象となる暗号化パケットSPiの決定例について説明する。
まず、決定部1408は、たとえば、パケット情報テーブル1500を参照して、最古の暗号化パケットSPiを送信対象に決定することにしてもよい。図15の例では、決定部1408が、最古のパケット情報1500−1から特定される暗号化パケットSP1を送信対象に決定する。これにより、ノードNiが最初に受信した暗号化パケットSPiを送信対象とすることができる。
また、決定部1408は、たとえば、パケット情報テーブル1500を参照して、最新の暗号化パケットSPiを送信対象に決定することにしてもよい。図15の例では、決定部1408が、最新のパケット情報1500−5から特定される暗号化パケットSP1を送信対象に決定する。これにより、ノードNiが受信した最新の暗号化パケットSPiを送信対象とすることができる。この結果、たとえば、既設のゲートウェイより近傍に位置するゲートウェイが新設された場合などに、新設されたゲートウェイ固有の暗号鍵を取得することができる。
決定部1408は、たとえば、パケット情報テーブル1500を参照して、ホップ数が最小の暗号化パケットSPiを送信対象に決定することにしてもよい。図15の例では、決定部1408が、パケット情報1500−1から特定される暗号化パケットSP1を送信対象に決定する。これにより、転送回数が最も少ない暗号化パケットSPiを送信対象とすることができる。
ここで、暗号化パケットSPiの転送回数が少ないということは、ゲートウェイGiが地理的に近い位置にある可能性が高い。このため、転送回数が最も少ない暗号化パケットSPiを送信対象とすることで、結果的に、より近傍のゲートウェイGi固有の暗号鍵Kiを取得することができ、ゲートウェイGiとの通信効率を向上させることができる。
また、決定部1408は、たとえば、パケット情報テーブル1500を参照して、ゲートウェイGiごとのホップ数の平均値に基づいて、送信対象となる暗号化パケットSPiを決定することにしてもよい。具体的には、まず、決定部1408が、パケット情報テーブル1500を参照して、GWアドレスごとのホップ数の平均値を算出する。
図15の例では、GWアドレス『xx:xx:xx:xx:12:34』のホップ数の平均値は『6=(10+7+1)/3』となる。GWアドレス『xx:xx:xx:xx:56:78』のホップ数の平均値は『7=(8+6)/2』となる。この場合、決定部1408は、たとえば、ホップ数の平均値が最大のGWアドレス『xx:xx:xx:xx:56:78』のゲートウェイG2からブロードキャストされた暗号化パケットSP2を送信対象に決定する。これにより、統計的に転送回数が最も少ない暗号化パケットSPiを送信対象とすることができる。
(管理サーバ101と携帯端末Hとの間の通信方式)
ここで、管理サーバ101と携帯端末Hとの間の通信方式の一実施例について説明する。まず、携帯端末Hからみた管理サーバ101のサーバ認証について説明する。具体的には、たとえば、まず、携帯端末Hが、予め決められたIPアドレスを用いて管理サーバ101に接続する。
そして、携帯端末Hが、管理サーバ101からSSLサーバ証明書を受信する。受信されたSSLサーバ証明書は、たとえば、管理サーバ101のIPアドレスと関連付けて携帯端末HのRAM1002やフラッシュメモリ1003などの記憶装置に記憶される。
図16は、管理サーバ101の認証情報の一例を示す説明図である。図16において、管理サーバ101の認証情報1600は、IPアドレスおよびSSLサーバ証明書を有する。IPアドレスは、管理サーバ101のIPアドレスである。X.509証明書は、管理サーバ101のSSLサーバ証明書(公開鍵証明書)である。
携帯端末Hは、予め自端末に組み込まれている公開鍵を用いて、SSLサーバ証明書を復号することでサーバ認証を行う。公開鍵は、たとえば、第三者認証機関によって発行されたものである。この公開鍵を用いてSSLサーバ証明書を正しく復号できれば、SSLサーバ証明書が第三者認証機関によって証明された正しい証明書であることがわかり、ひいては管理サーバ101の身元が保証されたことになる。
つぎに、管理サーバ101からみた携帯端末Hのユーザ認証について説明する。ここでは、図17に示すような携帯端末Hの認証情報1700を用いて、携帯端末Hのユーザ認証を行う場合を例に挙げて説明する。認証情報1700は、たとえば、管理サーバ101のROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶されている。
図17は、携帯端末Hの認証情報の一例を示す説明図である。図17において、携帯端末Hの認証情報1700は、ユーザIDおよびパスワードを有する。ユーザIDは、携帯端末Hの識別子である。パスワードは、携帯端末Hを使用するユーザを認証するためのものである。
具体的には、たとえば、まず、携帯端末Hが、ユーザIDおよびパスワードのペアを管理サーバ101に送信する。このユーザIDおよびパスワードは、携帯端末Hのフラッシュメモリ603に予め登録されていてもよく、また、携帯端末Hの入力装置(不図示)を用いたユーザの操作入力により受け付けてもよい。
このあと、管理サーバ101は、携帯端末HからのユーザIDおよびパスワードのペアを、認証情報1700のユーザIDおよびパスワードのペアと一致判定する。ここで、認証情報1700のユーザIDおよびパスワードと一致すれば、携帯端末Hのユーザの身元が保証されたことになる。
なお、認証後において、携帯端末Hは、たとえば、管理サーバ101のSSLサーバ証明書に含まれる公開鍵を用いてパケットを暗号化して管理サーバ101との通信を行う。これにより、管理サーバ101と携帯端末Hとの間でセキュアな通信を行うことができる。
(鍵更新シーケンス)
図18は、実施の形態にかかる鍵更新シーケンス例を示すシーケンス図である。まず、ゲートウェイGiは、更新通知情報を生成し(ステップS1801)、更新通知情報を現鍵Kiで暗号化して暗号化パケットSPiを生成する(ステップS1802)。そして、ゲートウェイGiは、暗号化パケットSPiをアドホックネットワークAi内にブロードキャストする(ステップS1803)。これにより、アドホックネットワークAiでマルチホップ通信されることで、暗号化パケットSPiがノードNi−1〜Ni−miに行き渡る。
このあと、ノードNi−1〜Ni−miは、鍵更新前処理を実行する(ステップS1804)。鍵更新前処理(ステップS1804)の詳細については、図19で後述する。また、ゲートウェイGiは、暗号化パケットSPiをブロードキャストした後、新鍵KKiを生成する(ステップS1805)。そして、ゲートウェイGiは、生成された新鍵KKiおよびゲートウェイGiのGWアドレスを、ネットワークNW1を介して管理サーバ101に送信する(ステップS1806)。
このあと、ゲートウェイGiは、現鍵Kiを消去する(ステップS1808)。これにより、ゲートウェイGiは今後、新鍵KKiで暗号化されたパケットをアドホックネットワークAiに配信し、アドホックネットワークAiから受信されるパケットを新鍵KKiで復号することとなる。なお、新鍵KKiで復号できないパケットは破棄されることとなる。
また、管理サーバ101は、ゲートウェイGiから送信されてきた新鍵KKiおよびゲートウェイGiのGWアドレスを受信し、鍵情報DB110における当該GWアドレスのレコードに新鍵KKiを保存する(ステップS1807)。
一方、ノードNi−1〜Ni−miでは、鍵更新前処理(ステップS1804)を実行することで、携帯端末Hとの接続/非接続が検知されている。図18では、ノードNi−3が携帯端末Hと接続されているものとする。
ノードNi−3は、携帯端末Hを介して、ゲートウェイGiのGWアドレスを含むパケット(たとえば、ゲートウェイGiからブロードキャストされた暗号化パケットSPi)を、管理サーバ101に送信する(ステップS1809)。
管理サーバ101は、ノードNi−3からパケットを受信すると、新鍵特定処理を実行する(ステップS1810)。新鍵特定処理(ステップS1810)の詳細については図21で後述する。管理サーバ101は、新鍵特定処理(ステップS1810)で特定された新鍵KKiを、携帯端末Hを介して、ノードNi−3に送信する(ステップS1811)。
ノードNi−3は、携帯端末Hを介して管理サーバ101から新鍵KKiを受信すると、アドホックネットワークAiで使用する鍵を、現鍵Kiから新鍵KKiに更新する(ステップS1812)。これにより、作業員は、アドホックネットワークAi内のどのノードNiがゲートウェイGiから何ホップ先であるか調査することなく、任意に選んだノードNiから順次鍵更新作業をおこなうことができる。したがって、鍵更新作業の効率化を図ることができる。
図19は、図18に示した鍵更新前処理(ステップS1804)の詳細な処理手順の一例を示すフローチャートである。まず、ノードNiは、ゲートウェイGiからブロードキャストされた暗号化パケットSPiを現鍵Kiで復号する(ステップS1901)。つぎに、ノードNiは、暗号化パケットSPiから復号されたパケットが更新通知情報であるか否かを判断する(ステップS1902)。更新通知情報でない場合(ステップS1902:No)、鍵更新前処理(ステップS1804)を終了する。この場合は、鍵更新はおこなわれない。
一方、ステップS1902において、更新通知情報であると判断された場合(ステップS1902:Yes)、ノードNiは、送信対象のパケットを設定する(ステップS1903)。たとえば、暗号化パケットSPiなどゲートウェイGiのGWアドレスを含むパケットをノードNi内の送信バッファに書き込む。
このあと、ノードNiは、携帯端末Hとの接続が検知されるのを待ち受ける(ステップS1904:No)。携帯端末Hとの接続が検知された場合(ステップS1904:Yes)、鍵更新前処理(ステップS1804)を終了する。この場合は、図18のステップS1809で示したように、ノードNiは、ゲートウェイGiのGWアドレスを含むパケットを、携帯端末Hを介して管理サーバ101に送信することとなる。
図20は、図18に示した鍵更新前処理(ステップS1804)の詳細な処理手順の他の例を示すフローチャートである。図20の鍵更新前処理(ステップS1804)は、暗号化パケットSPiの転送回数を記録する場合の例である。
まず、ノードNiは、ゲートウェイGiからブロードキャストされた暗号化パケットSPiを現鍵Kiで復号する(ステップS2001)。つぎに、ノードNiは、暗号化パケットSPiから復号されたパケットが更新通知情報であるか否かを判断する(ステップS2002)。更新通知情報でない場合(ステップS2002:No)、鍵更新前処理(ステップS1804)を終了する。この場合は、鍵更新はおこなわれない。
一方、ステップS2002において、更新通知情報であると判断された場合(ステップS2002:Yes)、ノードNiは、暗号化パケットSPiの転送回数を記録する(ステップS2003)、このステップS2001〜ステップS2003の処理は、暗号化パケットSPiごとに実行される。
このあと、ノードNiは、暗号化パケットSPiごとに記録された転送回数に基づいて、送信対象とすべき暗号化パケットSPiを決定する(ステップS2004)。決定された暗号化パケットSPiは、たとえば、ノードNi内の送信バッファに書き込まれる。
このあと、ノードNiは、携帯端末Hとの接続が検知されるのを待ち受ける(ステップS2005:No)。携帯端末Hとの接続が検知された場合(ステップS2005:Yes)、鍵更新前処理(ステップS1804)を終了する。この場合は、図18のステップS1809で示したように、ノードNiは、ゲートウェイGiのGWアドレスを含むパケットを、携帯端末Hを介して管理サーバ101に送信することとなる。
図21は、図18に示した新鍵特定処理(ステップS1810)の詳細な処理手順の一例を示すフローチャートである。ここでは、例として暗号化パケットSPiが、ゲートウェイGiのGWアドレスを含むパケットとして受信された場合について説明する。なお、この暗号化パケットSPiは、図7に示したようにゲートウェイGiのGWアドレスが暗号化されていないパケットとする。
まず、管理サーバ101は、暗号化パケットSPiに含まれているGWアドレスを検出する(ステップS2101)。つぎに、管理サーバ101は、検出されたGWアドレスに関連付けられている現鍵(この場合は、現鍵Kiとなる)を鍵情報DB110から抽出する(ステップS2102)。
そして、管理サーバ101は、暗号化パケットSPiを、抽出された現鍵Kiで復号する(ステップS2103)。このあと、管理サーバ101は、暗号化パケットSPiの復号により得られた情報が更新通知情報であるか否かを判断する(ステップS2104)。更新通知情報でない場合(ステップS2104:No)、エラー処理を実行して(ステップS2105)、新鍵特定処理(ステップS1810)を終了する。
この場合、エラー処理(ステップS2105)の具体例として、たとえば、抽出部1303が、携帯端末Hを介して、新鍵KKiを抽出できなかった旨のエラーメッセージを特定のノードNi−xに送信することにしてもよい。エラー処理(ステップS2105)は、たとえば、暗号化パケットSPiが改ざんされた場合や暗号化パケットSPiの一部が欠落した場合などに実行される。このエラー処理によれば、特定のノードNi−xによる暗号化パケットSPiの再送信を促すことができる。
一方、ステップS2104において、更新通知情報であると判断された場合(ステップS2104:Yes)、管理サーバ101は、検出されたGWアドレスに関連付けられている新鍵(この場合は、新鍵KKiとなる)を鍵情報DB110から抽出する(ステップS2106)。このあと、新鍵特定処理(ステップS1810)を終了して、ステップS1811に移行する。これにより、携帯端末Hと接続された特定のノードNi−xに対して、携帯端末Hを介して、新鍵KKiをセキュアで、かつ、効率的に付与することができる。
図22は、図18に示した新鍵特定処理(ステップS1810)の詳細な処理手順の他の例を示すフローチャートである。ここでは、例として暗号化パケットSPiが、ゲートウェイGiのGWアドレスを含むパケットとして受信された場合について説明する。なお、この暗号化パケットSPiは、図8に示したようにゲートウェイGiのGWアドレスが暗号化されているパケットとする。
まず、管理サーバ101は、変数iを「i=1」で初期化する(ステップS2201)。そして、管理サーバ101は、鍵情報DB110の中のゲートウェイGi固有の暗号鍵Kiを用いて、受信された暗号化パケットSPiを復号する(ステップS2202)。
このあと、管理サーバ101は、暗号鍵Kiで暗号化パケットSPiの復号に成功したか否かを判断する(ステップS2203)。成功した場合(ステップS2203:Yes)、成功した暗号鍵Kiが現鍵Kiと同一鍵であることが判明するため、管理サーバ101は、鍵情報DB110の中から暗号鍵Kiを抽出して(ステップS2204)、図18に示したステップS1811に移行する。
これにより、暗号化パケットSPiのヘッダ部810にGWアドレスが含まれていない場合であっても、鍵情報DB110の中から、受信された暗号化パケットSPiを復号するための暗号鍵Kiを抽出することができる。
一方、暗号化パケットSPiの復号に失敗した場合(ステップS2203:No)、管理サーバ101は、変数iをインクリメントして(ステップS2205)、i>nか否かを判断する(ステップS2206)。
ここで、i>nでない場合(ステップS2206:No)、ステップS2202に戻る。一方、i>nである場合(ステップS2206:Yes)、管理サーバ101は、エラー処理を実行して(ステップS2207)、新鍵特定処理(ステップS1810)を終了する。これにより、携帯端末Hと接続された特定のノードNi−xに対して、携帯端末Hを介して、新鍵KKiをセキュアで、かつ、効率的に付与することができる。
(他の構成例)
なお、上述した実施の形態では、ゲートウェイGiが暗号化パケットSPiをブロードキャストしたあとに、ゲートウェイGiが新鍵KKiを生成する構成について説明したが、新鍵KKiの生成は、管理サーバ101がおこなうこととしてもよい。新鍵KKiの生成を管理サーバ101が実行することで、各ゲートウェイGiの処理負荷を低減することができる。また、新鍵KKiの生成を管理サーバ101という1台のコンピュータに集約することができるため、ゲートウェイG1〜Gnの低コスト化を図ることができる。以下、管理サーバ101が新鍵KKiを生成する例について説明する。
(ゲートウェイGiの機能的構成の他の例)
図23は、ゲートウェイGiの機能的構成の他の例を示すブロック図である。なお、図12に示した構成と同一構成には同一符号を付し、その説明を省略する。ゲートウェイGiは、配信部1201と、取得部2302とを備えている。
各機能部(配信部1201および取得部2302)は、具体的には、たとえば、図10に示したRAM1002やフラッシュメモリ1003などの記憶装置に記憶されたプログラムをCPU1001に実行させることにより、または、I/F1004により、その機能を実現する。また、各機能部(配信部1201および取得部2302)の処理結果は、たとえば、RAM1002やフラッシュメモリ1003などの記憶装置に記憶される。
取得部2302は、ゲートウェイGi固有の新鍵KKiを取得する。取得部2302は、具体的には、たとえば、受信部2321と保存部2322とを備える。受信部2321は、管理サーバ101から新鍵KKiを受信する。
保存部2322は、受信部2321で受信された新鍵KKiを保存する。たとえば、保存部2322は、新鍵KKiを、ゲートウェイGi内のRAM1002やフラッシュメモリ1003などの記憶装置に保存する。また、すでに現鍵Kiで暗号化された暗号化パケットSPiが配信部1201によりブロードキャストされた後であれば、新鍵KKiを現鍵Kiに上書きするなどして、現鍵Kiを消去してもよい。
このあと、各ノードNi−1〜Ni−miと管理サーバ101との間で鍵更新処理が完了することで、アドホックネットワークAi内で、新鍵KKiで暗号化したパケットで通信することが可能となる。
図24は、管理サーバ101の機能的構成の他の例を示すブロック図である。なお、図13に示した構成と同一構成には同一符号を付し、その説明を省略する。管理サーバ101は、鍵情報DB110と、取得部2400と、第1の送信部2401と、受信部1302と、抽出部1303と、復号部1304と、判定部1305と、第2の送信部2402と、を備えている。
各機能部(取得部2400〜第2の送信部2402)は、具体的には、たとえば、図9に示したROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶されたプログラムをCPU901に実行させることにより、または、I/F908により、その機能を実現する。また、各機能部(取得部2400〜第2の送信部2402)の処理結果は、たとえば、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶される。
取得部2400は、新鍵KKiを取得して、新鍵KKiを現鍵Kiに関連付けて鍵情報DB110に保存する。取得部2400は、具体的には、たとえば、生成部2411と保存部2412とを備える。
生成部2411は、更新対象となるゲートウェイGiについて新鍵KKiを生成する。生成部2411は、たとえば、乱数生成機能により新鍵KKiを生成する。保存部2412は、生成部2411で生成された新鍵KKiを保存する。たとえば、保存部2412は、新鍵KKiを、ゲートウェイGiのGWアドレスに関連付けて、鍵情報DB110に保存する。
第1の送信部2401は、管理サーバ101の生成部2411で生成されたゲートウェイGi固有の新鍵KKiを、ゲートウェイGiに送信する。送信された新鍵KKiは、ゲートウェイGiで保存される。
第2の送信部2402は、抽出部1303によって抽出された新鍵KKiを、携帯端末Hを介して特定のノードNi−xに送信する。これにより、アドホックネットワークAiを経由せずに、特定のノードNi−xに新鍵KKiを付与することができる。
このあと、各ノードNi−1〜Ni−miと管理サーバ101との間で鍵更新処理が完了することで、アドホックネットワークAi内で、新鍵KKiで暗号化したパケットで通信することが可能となる。
(鍵更新シーケンス)
図25は、実施の形態にかかる鍵更新シーケンスの他の例を示すシーケンス図である。なお、図18に示した処理と同一処理には同一符号を付し、その説明を省略する。管理サーバ101は、ゲートウェイGi固有の新鍵KKiを生成する(ステップS2501)。そして、管理サーバ101は、生成された新鍵KKiを、ネットワークNW1を介してゲートウェイGiに送信する(ステップS2502)。
ゲートウェイGiでは、ステップS2502で管理サーバ101から新鍵KKiを受信すると、更新通知情報を生成することとする(ステップS1801)。また、管理サーバ101は、新鍵KKiを生成すると、鍵情報DB110に新鍵KKiをゲートウェイGiのGWアドレスに関連付けて保存することとなる(ステップS1807)。
以降は、図18の場合と同様、ステップS1801〜S1804、S1807〜S1812を実行することで、作業員は、アドホックネットワークAi内のどのノードNiがゲートウェイGiから何ホップ先であるか調査することなく、任意に選んだノードNiから順次鍵更新作業をおこなうことができる。したがって、鍵更新作業の効率化を図ることができる。
以上説明したように、本実施の形態によれば、ノードNiは暗号化パケットSPiと引き換えに、アドホックネットワークAi以外のネットワークNW2,NW3から新鍵KKiを取得できるため、作業員は、アドホックネットワークAi内のどのノードNiがゲートウェイGiから何ホップ先であるかをしらみつぶしに探す必要はない。したがって、作業員による鍵更新作業の負担軽減を図ることができる。また、現鍵Kiが漏洩しても鍵更新作業が効率的に実施されるため、新鍵KKiへ更新することにより、アドホックネットワークAi内の暗号化通信の早期復旧を図ることができる。
なお、本実施の形態で説明した鍵更新方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本鍵設定プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。
100 ネットワークシステム
101 管理サーバ
110 鍵情報DB
Ai アドホックネットワーク
Gi ゲートウェイ
H 携帯端末
Ki 現鍵(暗号鍵)
KKi 新鍵(暗号鍵)
Ni ノード
SPi 暗号化パケット
本発明は、データを暗号化するための鍵を更新する鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムに関する。
アドホックネットワークは、無線通信でリンクする自己構成型のネットワークの一種である。アドホックネットワークは複数のノードにより構成される。また、アドホックネットワーク内の各ノードは、マルチホップ通信によりパケットの送受信を行う。マルチホップ通信は、互いの通信圏内に存在しないノード同士が、各ノードの通信圏内に存在する別のノードを介して通信を行う技術である。
また、アドホックネットワークとインターネット、LAN(Local Area Network)、WAN(Wide Area Network)などの他のネットワークとを接続する場合、ゲートウェイと呼ばれる中継機器を用いて、ネットワーク間の通信の転送が行われる。
アドホックネットワークを利用した技術として、各家庭の電力メータに無線通信可能なノードを組み込んで、作業員が現地に出向くことなく、アドホックネットワーク経由でメータ確認などの業務を行うシステムがある。各家庭の電力の使用量などの個人情報を扱うアドホックネットワークでは、秘匿性や改ざん防止の観点からセキュアな通信を行うことが要求される。
そこで、従来のシステムでは、アドホックネットワーク内のノード間で送受信されるパケットを暗号化することで、セキュアな通信を確保することが行われている。この際、システム内の全ノードで共通の暗号鍵を用いた場合、鍵漏洩時のリスクが大きいため、ゲートウェイごとに暗号鍵を変えるシステムがある。
また、システムへの新規ノードの初期導入時などにおいて、新規ノードは、暗号鍵が設定されるまでの間、アドホックネットワーク内の他のノードとセキュアな通信を行うことができない。このため、アドホックネットワーク経由で新規ノードに暗号鍵を自動設定することが難しく、作業員が現地に出向いて暗号鍵の設定作業を行っている。
また、セキュア通信に関する先行技術として、たとえば、ブロードキャストにより通信を行うネットワークの暗号鍵を管理する技術がある(たとえば、下記特許文献1参照。)。また、アドホックネットワークにおいて通信開始時の鍵交換を安定して行うための技術がある(たとえば、下記特許文献2参照。)。また、アドホックネットワーク内の各ノードが適応ゲートウェイを選択するための技術がある(たとえば、下記特許文献3参照。)。また、異なるネットワーク間に所属する複数のデバイスに鍵を渡し、それを用いてアドホックネットワークを構成する技術がある(たとえば、下記特許文献4参照。)。
特開2003−348072号公報 特開2007−88799号公報 特開2009−81854号公報 特表2009−535921号公報
しかしながら、上述した従来技術では、アドホックネットワーク内の各ノードに設定する暗号鍵をゲートウェイごとに更新する場合、ノードが属するゲートウェイを特定することが難しいという問題があった。
たとえば、ノードの設置場所の住所から候補となるゲートウェイを絞り込むことはできても、天候や近傍の建物との位置関係などの要因により通信状況が変化する。このため、実際にどのゲートウェイと通信可能であるかを作業員が現地に出向いて確認する必要があり、作業員の暗号鍵の更新作業にかかる作業時間および作業負荷の増大を招くという問題がある。
また、ゲートウェイが暗号鍵を更新したタイミングで暗号鍵を更新できるのはゲートウェイから1ホップ隣のノードのみである。具体的には、1ホップ隣のノードがゲートウェイからのブロードキャストパケット(以下、「BCパケット」)を受信することはできるが、BCパケットは新しい暗号鍵(以下、「新鍵」)で暗号化されている。したがって、当該パケットは現在所有している暗号鍵(以下、「現鍵」)で復号することができず、ゲートウェイから2ホップ隣まで転送されないからである。
すなわち、アドホックネットワークでの鍵更新の開始直後には、ゲートウェイから1ホップ隣のノードは新鍵に設定できるが、ゲートウェイから2ホップ先のノード以降は鍵設定することができない。換言すれば、ゲートウェイから2ホップ隣のノードは、ゲートウェイから1ホップ隣のノードについて鍵更新が完了し、ゲートウェイからのBCパケットを受信可能となって初めて鍵更新が可能となる。
しかしながら、どのノードがゲートウェイから何ホップ先であるかを調査するのは非常に困難である。また、ノードの設置時に何ホップ先であるかを記録していても、上述したように、各種要因により通信状況が変化する。したがって、結局、実際にどのノードがゲートウェイから何ホップ先であるかを、作業員が現地に出向いてその都度確認する必要がある。このように、従来では、作業員の暗号鍵の更新作業にかかる作業時間および作業負荷の増大を招くという問題がある。
1つの側面では、本発明は、アドホックネットワーク内のノードが用いる暗号鍵の更新作業の効率化を図ることができる鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムを提供することを目的とする。
本発明の一側面によれば、アドホックネットワーク内のゲートウェイから前記アドホックネットワーク内のノード群の各ノードに付与された前記ゲートウェイ固有の現鍵を更新する鍵更新にあたって、前記ゲートウェイが、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、前記アドホックネットワークに同時通報し、前記ゲートウェイが、前記ゲートウェイ固有の新鍵を取得し、前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバが、前記新鍵を取得して、前記新鍵を前記現鍵に関連付けて前記データベースに保存し、前記ノード群内の各ノードが、前記暗号化パケットを前記現鍵で復号することにより、前記更新通知情報であるか否かを判断し、前記サーバと通信可能な携帯端末と接続された前記ノード群内の特定のノードが、前記更新通知情報であると判断された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスを含むパケットを、前記携帯端末を介して前記サーバに送信し、前記サーバが、前記データベースにおいて、送信されたパケット内の前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信し、前記特定のノードが、前記現鍵から、送信された前記新鍵に更新する鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムが提案される。
本発明の一態様によれば、アドホックネットワーク内のノードが用いる暗号鍵の更新作業の効率化を図ることができるという効果を奏する。
図1は、実施の形態にかかるネットワークシステムの一実施例を示す説明図である。 図2は、アドホックネットワークAiにおける鍵更新例(その1)を示す説明図である。 図3は、アドホックネットワークAiにおける鍵更新例(その2)を示す説明図である。 図4は、アドホックネットワークAiにおける鍵更新例(その3)を示す説明図である。 図5は、アドホックネットワークAiにおける鍵更新例(その4)を示す説明図である。 図6は、アドホックネットワークAiにおける鍵更新例(その5)を示す説明図である。 図7は、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造の一例を示す説明図である。 図8は、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造の他の例を示す説明図である。 図9は、実施の形態にかかる管理サーバ101のハードウェア構成例を示すブロック図である。 図10は、実施の形態にかかるゲートウェイGiおよびノードNi−1〜Ni−mi(以下、「ノード等」)のハードウェア構成例を示すブロック図である。 図11は、鍵情報DB110の記憶内容の一例を示す説明図である。 図12は、ゲートウェイGiの機能的構成例を示すブロック図である。 図13は、管理サーバ101の機能的構成例を示すブロック図である。 図14は、ノードNiの機能的構成例を示すブロック図である。 図15は、パケット情報テーブルの記憶内容の一例を示す説明図である。 図16は、管理サーバ101の認証情報の一例を示す説明図である。 図17は、携帯端末Hの認証情報の一例を示す説明図である。 図18は、実施の形態にかかる鍵更新シーケンス例を示すシーケンス図である。 図19は、図18に示した鍵更新前処理(ステップS1804)の詳細な処理手順の一例を示すフローチャートである。 図20は、図18に示した鍵更新前処理(ステップS1804)の詳細な処理手順の他の例を示すフローチャートである。 図21は、図18に示した新鍵特定処理(ステップS1810)の詳細な処理手順の一例を示すフローチャートである。 図22は、図18に示した新鍵特定処理(ステップS1810)の詳細な処理手順の他の例を示すフローチャートである。 図23は、ゲートウェイGiの機能的構成の他の例を示すブロック図である。 図24は、管理サーバ101の機能的構成の他の例を示すブロック図である。 図25は、実施の形態にかかる鍵更新シーケンスの他の例を示すシーケンス図である。
以下に添付図面を参照して、この発明にかかる鍵設定方法、ノード、ゲートウェイ、サーバ、およびネットワークシステムの実施の形態を詳細に説明する。
(ネットワークシステムの一実施例)
図1は、実施の形態にかかるネットワークシステムの一実施例を示す説明図である。図1において、ネットワークシステム100は、管理サーバ101と、ゲートウェイG1〜Gnと、ノードN1−1〜N1−m1,N2−1〜N2−m2,…,Nn−1〜Nn−mnと、を含む構成である。
ネットワークシステム100において、管理サーバ101とゲートウェイG1〜Gnは、インターネット、LAN、WANなどのネットワークNW1を介して相互に通信可能に接続されている。また、ゲートウェイGiとノードNi−1〜Ni−miは、アドホックネットワークAiを介して接続されている(i=1,2,…,n)。なお、以降の説明で、単に「ノードNi」と表記した場合は、任意のアドホックネットワークAiを構成するノードNi−1〜Ni−miの中の任意のノードを示すこととする。
ここで、管理サーバ101は、鍵情報DB(データベース)110を備え、各ゲートウェイG1〜Gn固有の暗号鍵を管理するコンピュータである。ゲートウェイGi固有の暗号鍵(以下、「暗号鍵Ki」という)は、ゲートウェイGiが属するアドホックネットワークAi内のノード間で送受信されるパケットを暗号化するための鍵情報である。なお、鍵情報DB110についての詳細な説明は、図11を用いて後述する。
ゲートウェイGiは、アドホックネットワークAiとネットワークNW1とを接続する中継機器である。ゲートウェイGiは、アドホックネットワークAiのプロトコルとネットワークNW1のプロトコルの両方を理解し、アドホックネットワークAiとネットワークNW1との間の通信の転送を行う。
ノードNi−1〜Ni−miは、所定の通信圏内の他ノードとマルチホップ通信を行う無線通信装置である。アドホックネットワークAiでは、すべてのノードNi−1〜Ni−miがゲートウェイGiと直接通信できる必要はなく、一部のノードがゲートウェイGiと通信可能であればよい。
ネットワークシステム100は、たとえば、各家庭の電力やガスの使用量を収集するシステムに適用することができる。具体的には、たとえば、各家庭の電力メータやガスメータに各ノードNi−1〜Ni−miを組み込むことで、アドホックネットワークAi内のノード間で各家庭の電力やガスの使用量を送受信する。なお、各家庭の電力やガスの使用量は、各ノードNi−1〜Ni−miが計測してもよく、また、各ノードNi−1〜Ni−miが電力メータやガスメータから取得してもよい。
ゲートウェイGiは、アドホックネットワークAi内のノードNi−1〜Ni−miから受信した各家庭の電力やガスの使用量を、ネットワークNW1を介して電力会社やガス会社のサーバ(たとえば、管理サーバ101)に送信する。これにより、作業員が現地に出向くことなく電力やガスの使用量を収集することができる。
また、ネットワークシステム100では、アドホックネットワークAiごとにゲートウェイGi固有の暗号鍵Kiを用いてパケットを暗号化する。これにより、アドホックネットワークAiのセキュア通信(データ秘匿性、改ざん防止など)を確保する。また、アドホックネットワークAiごとに暗号鍵Kiを変えることで、鍵漏洩時のリスクを低減させる。また、受信されるパケットも暗号鍵Kiで暗号化されているため、ゲートウェイGiやその配下のノードNi−1〜Ni−miは、暗号鍵Kiで復号することができる。
なお、図1の例では、アドホックネットワークAi内に1台のゲートウェイGiを設ける構成としたが、同一のアドホックネットワークAi内に複数台のゲートウェイGiを設ける構成としてもよい。この場合、アドホックネットワークAi内で送受信されるパケットを暗号化するための暗号鍵Kiは、複数台のゲートウェイGiで共通である。
(現鍵Kiの更新例)
暗号鍵Kiは、アドホックネットワークAi内のゲートウェイGiおよびノードNi−1〜Ni−miで共通に使用される鍵情報である。アドホックネットワークAiで暗号鍵Kiを現在利用されている現鍵Kiとし、現鍵Kiを新鍵KKiに更新する例について説明する。
図2〜図6は、アドホックネットワークAiにおける鍵更新例を示す説明図である。図2は、鍵更新前の状態(A)を示している。管理サーバ101は、鍵情報DB110においてゲートウェイGiごとに現鍵Kiを保存している。図2では、鍵情報DB110において、ゲートウェイGi(のアドレス)と現鍵Kiとが関連付けられていることを示している。また、ゲートウェイGiおよびノードNi−1〜Gi−6も現鍵Kiを保持している。
図3は、図2の状態(A)から遷移した状態(B)を示している。状態(B)では、(1)ゲートウェイGiが、現鍵Kiで現鍵Kiの更新通知情報を暗号化する。そして、ゲートウェイGiは、暗号化パケットSPiをアドホックネットワークAiに対しブロードキャストする。ゲートウェイGiから暗号化パケットSPiがブロードキャストされると、各ノードNi−1〜Ni−6に暗号化パケットSPiが行き渡る。
(2)ゲートウェイGiは、新鍵KKiを生成し、ネットワークNW1を介して管理サーバ101に新鍵KKiを送信する。管理サーバ101は、ゲートウェイGiから新鍵KKiを受信すると、新鍵KKiの送信元であるゲートウェイGiのアドレスを手がかりとして、鍵情報DB110のゲートウェイGiのレコードを指定する。
(3)管理サーバ101は、指定したレコードに新鍵KKiを保存する。これにより、ゲートウェイGi(のアドレス)と現鍵Kiと新鍵KKiとが関連付けられる。
図4は、図3の状態(B)から遷移した状態(C)を示している。状態(C)では、ノードNi−1〜Ni−6では、現鍵Kiが消去されている。なお、現鍵Kiの消去はこの段階に限られない。たとえば、ノードNi−1〜Ni−6が新鍵KKiを受信したあとでもよい。また、ノードNi−1〜Ni−6は、ゲートウェイGiからブロードキャストされた暗号化パケットSPiを保持している。
なお、ノードNi−1〜Ni−6は暗号化パケットSPiを現鍵Kiで復号し、現鍵Kiの更新通知情報が含まれているかを確認する。更新通知情報が含まれている場合は、暗号化パケットSPiを保持しておく。含まれていない場合は、復号された情報にしたがってノード固有の処理(たとえば、計測結果をゲートウェイGiに送るなど)を実行することとなる。
図5は、図4の状態(C)から遷移した状態(D)を示している。状態(D)では、ノードNi−3に携帯端末Hを接続し、ノードNi−3が携帯端末Hを通信インターフェースとして利用して、管理サーバ101と通信をおこなう例を示している。図5では、ノードNi−3について説明しているが、他のノードNi−1,Ni−2,Ni−4〜Ni−6も同様に実行する。
(4)作業員は、ノードNi−3の設置場所に行き、ノードNi−3と携帯端末Hとを接続する。携帯端末Hは、管理サーバ101と通信可能なコンピュータである。携帯端末Hと管理サーバ101との通信の確立は、ノードNi−3の接続前でも接続後でもよい。
(5)ノードNi−3と携帯端末Hとが接続されると、ノードNi−3は、暗号化パケットSPiを管理サーバ101に送信する。ここでは、暗号化パケットSPiを送信する例について説明しているが、ゲートウェイGiのアドレスを含むパケットであれば、暗号化パケットSPiでなくてもよい。なお、携帯端末Hと管理サーバ101間の通信は、公開鍵暗号方式などの既存の暗号化通信を利用してもよい。
(6)管理サーバ101は、暗号化パケットSPiをノードNi−3から受信すると、暗号化パケットSPiからゲートウェイGiのアドレスを特定する。暗号化パケットSPiでは、更新通知情報のみが現鍵Kiで暗号化されている場合や更新通知情報およびゲートウェイGiのアドレスが現鍵Kiで暗号化されている場合がある。
ゲートウェイGiのアドレスが現鍵Kiで暗号化されていない場合は、暗号化パケットSPiからゲートウェイGiのアドレスが特定できる。ゲートウェイGiのアドレスも現鍵Kiで暗号化されている場合は、管理サーバ101は、ゲートウェイごとの暗号鍵で順次復号を試みる。そして、復号できた場合は、その鍵がアドホックネットワークAiでの現鍵Kiであることがわかる。
いずれにしても、ゲートウェイGiのアドレスまたは現鍵Kiが暗号化パケットSPiから特定されるため、管理サーバ101は、鍵情報DB110を参照して、ゲートウェイGiのアドレス(または現鍵Ki)に関連付けられている新鍵KKiを抽出する。
(7)そして、管理サーバ101は、鍵情報DB110から抽出された新鍵KKiを、携帯端末Hを介してノードNi−3に送信する。なお、携帯端末Hと管理サーバ101間の通信は、公開鍵暗号方式などの既存の暗号化通信を利用してもよい。
図6は、図5の状態(D)から遷移した状態(E)を示している。状態(E)では、図5の状態(D)で示した処理を、他のノードNi−1,Ni−2,Ni−4〜Ni−6についても実行した結果を示している。状態(E)では、各ノードNi−1〜Ni−6に新鍵KKiが行き渡っている。また、鍵情報DB110から現鍵Kiが消去され新鍵KKiが残されている。このあと、新鍵KKiがアドホックネットワークAiでの有効な現鍵となる。
(暗号化パケットSPiのデータ構造例)
つぎに、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造例について説明する。
図7は、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造の一例を示す説明図である。図7において、暗号化パケットSPiは、ヘッダ部710とペイロード部720とを含む構成である。ヘッダ部710には、宛先アドレス、差出アドレス、ホップ数およびGWアドレスが記述されている。ペイロード部720には、暗号化されたデータ本体が記述されている(図7中ハッチ部分)。
ここで、宛先アドレスは、送信先のアドレスである。ここでは、ブロードキャスト用のMACアドレス『00:00:00:00:00:00』が記述されている。差出アドレスは、送信元のアドレスである。ここでは、アドホックネットワークAi内のノードNiとは異なる他のノードNiのMACアドレスが記述されている。
ホップ数は、暗号化パケットSPiを残り何回転送するのかを示す残余の転送回数である。ゲートウェイGiからブロードキャストされる暗号化パケットSPiのホップ数の最大値は予め設定されている。ホップ数は暗号化パケットSPiの転送時にデクリメントされ、ホップ数が『0』となった暗号化パケットSPiは棄却される。ここでは、暗号化パケットSP1のホップ数『10』が記述されている。
GWアドレスは、ゲートウェイGiのアドレスである。ここでは、ゲートウェイGiのMACアドレス『AA:AA:AA:AA:AA:AA』が記述されている。なお、ここでは宛先アドレス、差出アドレスおよびGWアドレスの一例として、MACアドレスを用いて説明したが、IPアドレスなどのアドレスを用いることにしてもよい。
ペイロード部720は、暗号鍵Kiで復号される。復号されたペイロード部720には、鍵更新フラグ721とタイムスタンプ722を含む更新通知情報が記憶されている。鍵更新フラグ721とは、現鍵Ki(暗号鍵Ki)の更新をおこなうことを示すビット情報である。たとえば、鍵更新フラグのビット位置をあらかじめ指定しておくことで、各ノードNi−1〜Ni−miで鍵の更新をおこなうことが検出できる。
また、タイムスタンプ722は、更新通知情報の生成時刻を記述した情報である。各ノードNi−1〜Ni−miは、暗号化パケットSPiを受信する都度、そのタイムスタンプ722のうち最新のものを保持しておく。あらたに暗号化パケットSPiを受信したときは、各ノードNi−1〜Ni−miは、保持されているタイムスタンプ722と今回受信した暗号化パケットSPiを復号して得られたタイムスタンプ722とを比較する。そして、今回受信した暗号化パケットSPiを復号して得られたタイムスタンプが新しければ、鍵更新フラグは有効であるとして、各ノードNi−1〜Ni−miは、鍵更新処理を実行することとなる。
図8は、ゲートウェイGiからブロードキャストされる暗号化パケットSPiのデータ構造の他の例を示す説明図である。図7に示した暗号化パケットSPiでは、暗号化パケットSPiをブロードキャストしたゲートウェイGiのGWアドレスがヘッダ部710に埋め込まれていた。
これに対し、図8に示す暗号化パケットSPiでは、ヘッダ部810には、ゲートウェイGiのGWアドレスが埋め込まれていない。そのかわりに、復号されたペイロード部820に、ゲートウェイGiのGWアドレスが埋め込まれている。図8に示した暗号化パケットSPiの場合は、暗号化パケットSPiを暗号鍵Kiで復号しなければ、ブロードキャストしたゲートウェイGiのGWアドレスを特定することができない。
(管理サーバ101のハードウェア構成)
図9は、実施の形態にかかる管理サーバ101のハードウェア構成例を示すブロック図である。図9において、管理サーバ101は、CPU(Central Processing Unit)901と、ROM(Read Only Memory)902と、RAM(Random Access Memory)903と、磁気ディスクドライブ904と、磁気ディスク905と、光ディスクドライブ906と、光ディスク907と、I/F(Interface)908と、ディスプレイ909と、キーボード910と、マウス911と、を備えている。また、CPU901〜マウス911はバス900によってそれぞれ接続されている。
ここで、CPU901は、管理サーバ101の全体の制御を司る。ROM902は、ブートプログラムなどのプログラムを記憶している。RAM903は、CPU901のワークエリアとして使用される。磁気ディスクドライブ904は、CPU901の制御に従って磁気ディスク905に対するデータのリード/ライトを制御する。磁気ディスク905は、磁気ディスクドライブ904の制御で書き込まれたデータを記憶する。
光ディスクドライブ906は、CPU901の制御に従って光ディスク907に対するデータのリード/ライトを制御する。光ディスク907は、光ディスクドライブ906の制御で書き込まれたデータを記憶したり、光ディスク907に記憶されたデータをコンピュータに読み取らせたりする。
I/F908は、通信回線を通じてネットワークNW1,NW2に接続され、このネットワークNW1,NW2を介して他の装置(たとえば、ゲートウェイGi、携帯端末H)に接続される。I/F908は、ネットワークNW1,NW2と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F908には、たとえば、モデムやLANアダプタなどを採用することができる。
ディスプレイ909は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ909は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
キーボード910は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス911は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。なお、図2に示した携帯端末Hについても、図9に示した管理サーバ101と同様のハードウェア構成により実現できる。
(ゲートウェイGiおよびノードNiのハードウェア構成)
図10は、実施の形態にかかるゲートウェイGiおよびノードNi−1〜Ni−mi(以下、「ノード等」)のハードウェア構成例を示すブロック図である。図10において、ノード等は、CPU1001と、RAM1002と、フラッシュメモリ1003と、I/F1004と、暗号化回路1005と、を備えている。CPU1001〜暗号化回路1005は、バス1000によってそれぞれ接続されている。
ここで、CPU1001は、ノード等の全体の制御を司る。RAM1002は、CPU1001のワークエリアとして使用される。フラッシュメモリ1003は、プログラムや暗号鍵などの鍵情報を記憶している。I/F1004は、マルチホップ通信によりパケットを送受信する。また、ゲートウェイGiのI/F1004は、通信回線を通じてネットワークNW1に接続され、このネットワークNW1を介して管理サーバ101に接続される。
暗号化回路1005は、データを暗号化する場合に暗号鍵によりデータを暗号化する回路である。暗号化をソフトウェア的に実行する場合は、暗号化回路1005に相当するプログラムをフラッシュメモリ1003に記憶させておくことで、暗号化回路1005は不要となる。
(鍵情報DB110の記憶内容)
図11は、鍵情報DB110の記憶内容の一例を示す説明図である。図11において、鍵情報DB110は、ID、GWアドレス、現鍵および新鍵のフィールドを有し、各フィールドに情報を設定することで、ゲートウェイG1〜Gnごとの鍵情報1100−1100−nをレコードとして記憶している。
ここで、IDは、本明細書において説明上用いる各ゲートウェイGiの識別子である。GWアドレスは、ゲートウェイGiのアドレスである。GWアドレスとしては、たとえば、ゲートウェイGiのMAC(Media Access Control)アドレスやIP(Internet Protocol)アドレスを用いることができる。現鍵Kiは、各ゲートウェイGi固有の現在有効な暗号鍵であり、具体的には、たとえば、128〜256ビット程度のバイナリデータである。
新鍵KKiは、各ゲートウェイGi固有の更新後の暗号鍵であり、具体的には、たとえば、128〜256ビット程度のバイナリデータである。新鍵KKiは、更新処理において鍵情報DB110に保存され、更新処理が完了することで、現鍵として鍵情報DB110に保存される。
鍵情報1100−1を例に挙げると、ゲートウェイG1のGWアドレスは『xx:xx:xx:xx:12:34』、暗号鍵は『暗号鍵K1』である。なお、鍵情報DB110は、たとえば、図9に示した管理サーバ101のROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置により実現される。
鍵情報DB110の記憶内容は、管理サーバ101がゲートウェイGi固有の暗号鍵KiをゲートウェイGiから受信することで更新してもよい。また、図9に示したキーボード910やマウス911を用いたユーザの操作入力により、鍵情報DB110の記憶内容を更新することにしてもよい。
(ネットワークシステム100の機能的構成例)
つぎに、ネットワークシステム100の機能的構成例について、図12〜図14を用いて説明する。
図12は、ゲートウェイGiの機能的構成例を示すブロック図である。ゲートウェイGiは、配信部1201と、取得部1202と、送信部1203とを備えている。各機能部(配信部1201〜送信部1203)は、具体的には、たとえば、図10に示したRAM1002やフラッシュメモリ1003などの記憶装置に記憶されたプログラムをCPU1001に実行させることにより、または、I/F1004により、その機能を実現する。また、各機能部(配信部1201〜送信部1203)の処理結果は、たとえば、RAM1002やフラッシュメモリ1003などの記憶装置に記憶される。
配信部1201は、ゲートウェイGiのGWアドレスおよび現鍵Kiの更新通知情報を有し少なくとも更新通知情報を現鍵Kiで暗号化した暗号化パケットSPiを、アドホックネットワークAiに同時通報する。暗号化パケットSPiのデータ構造は、図7または図8に示したデータ構造のいずれでもよい。
また、ゲートウェイGiは、現鍵Kiの更新指示を受け付けると、更新通知情報を生成する。そして、ゲートウェイGiは、生成された更新通知情報をペイロード部720,820として暗号化パケットSPiを生成する。ゲートウェイGiは、配信部1201により、生成された暗号化パケットSPiをアドホックネットワークAiにブロードキャストする。なお、現鍵Kiの更新指示は、ゲートウェイGiに対する操作入力でもよく、定期的に与えられる自動更新指示でもよい。また、管理サーバ101から現鍵Kiの更新指示を受け付けることとしてもよい。
取得部1202は、ゲートウェイGi固有の新鍵KKiを取得する。取得部1202は、具体的には、たとえば、生成部1221と保存部1222とを備える。生成部1221は、新鍵KKiを生成する。生成部1221は、たとえば、乱数生成機能により新鍵KKiを生成する。
保存部1222は、生成部1221で生成された新鍵KKiを保存する。たとえば、保存部1222は、新鍵KKiを、ゲートウェイGi内のRAM1002やフラッシュメモリ1003などの記憶装置に保存する。また、すでに現鍵Kiで暗号化された暗号化パケットSPiが配信部1201によりブロードキャストされた後であれば、新鍵KKiを現鍵Kiに上書きするなどして、現鍵Kiを消去してもよい。
送信部1203は、ネットワークNW1を経由して、管理サーバ101に新鍵KKiを送信する。このあと、各ノードNi−1〜Ni−miと管理サーバ101との間で鍵更新処理が完了することで、アドホックネットワークAi内で、新鍵KKiで暗号化したパケットで通信することが可能となる。
図13は、管理サーバ101の機能的構成例を示すブロック図である。管理サーバ101は、鍵情報DB110と、取得部1301と、受信部1302と、抽出部1303と、復号部1304と、判定部1305と、送信部1306と、を備えている。鍵情報DB110は、具体的には、たとえば、図9に示したROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置によりその機能を実現する。
また、各機能部(取得部1301〜送信部1306)は、具体的には、たとえば、図9に示したROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶されたプログラムをCPU901に実行させることにより、または、I/F908により、その機能を実現する。また、各機能部(取得部1301〜送信部1306)の処理結果は、たとえば、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶される。
取得部1301は、新鍵KKiを取得して、新鍵KKiを現鍵Kiに関連付けて鍵情報DB110に保存する。具体的には、たとえば、取得部1301は、ゲートウェイGiから新鍵KKiを受信する。受信された新鍵KKiは、新鍵KKiの送信パケットのヘッダに送信元として記憶されているゲートウェイGiのGWアドレスを手がかりとして、鍵情報DB110のゲートウェイGiのレコードの新鍵のフィールドに保存される。
受信部1302は、ノードNi−1〜Ni−miのうち携帯端末Hが接続された特定のノードNi−x(図5ではx=3)から、携帯端末Hを介して、暗号化パケットSPiを受信する。なお、携帯端末Hと管理サーバ101との間では、たとえば、SSL(Secure Socket Layer)などのセキュアな通信が行われる。このため、携帯端末Hを介して特定のノードNi−xから受信されるパケットは、暗号化パケットSPiである必要はなく、少なくとも、ゲートウェイGiのGWアドレスが含まれているパケットであればよい。また、ゲートウェイGiのGWアドレスは現鍵Kiで暗号化されていなくてもよい。
抽出部1303は、ゲートウェイGiのGWアドレスに基づいて、鍵情報DB110からゲートウェイGiの現鍵Kiを抽出する。具体的には、たとえば、携帯端末HからのパケットにおいてゲートウェイGiのGWアドレスが暗号化されていない場合(たとえば、図7のデータ構造の暗号化パケットSPi)は、ゲートウェイGiのGWアドレスが特定される。
したがって、抽出部1303は、特定されたゲートウェイGiのGWアドレスを手がかりとして、鍵情報DB110から、ゲートウェイGiの現鍵Kiに関連付けられている新鍵KKiを抽出する。また、この場合、暗号化パケットSPiでは、更新通知情報が暗号化されているため、抽出部1303は、更新通知情報を復号する場合は現鍵Kiを抽出してもよい。
また、携帯端末HからのパケットにおいてゲートウェイGiのGWアドレスが暗号化されている場合(たとえば、図8のデータ構造の暗号化パケットSPi)は、ゲートウェイGiのGWアドレスが特定されない。したがって、抽出部1303は、鍵情報DB110に保存されている現鍵K1,K2,…を順次抽出し、抽出された現鍵K1,K2,…を復号部1304に与えることとなる。
復号部1304は、抽出部1303によって抽出された鍵を用いて、受信部1302によって受信された暗号化パケットを復号する。具体的には、たとえば、暗号化パケットSPiが図7に示したデータ構造である場合は、暗号化パケットSPiを復号できる現鍵Kiを一意に特定できる。したがって、復号部1304は、現鍵Kiを用いて暗号化パケットSPiを復号する。また、この場合、更新通知情報も復号されることとなる。
また、暗号化パケットSPiが図8に示したデータ構造である場合は、復号部1304は、順次抽出された現鍵K1,K2,…により、暗号化パケットSPiを復号する。復号が成功した場合は、ゲートウェイGiのGWアドレスおよび更新通知情報が得られる。
暗号化パケットSPiのデータ構造が図7または図8のいずれのデータ構造であっても、復号が成功すれば、ゲートウェイGiのGWアドレスが得られる。したがって、抽出部1303では、ゲートウェイGiのGWアドレスを手がかりとして、新鍵KKiを抽出することができる。
判定部1305は、暗号化パケットSPiから復号された情報が更新通知情報であるか否かを判定する。具体的には、あらかじめ指定されたビット位置に鍵更新フラグが立っているか否かを判定する。そして、更新通知情報であると判定されると、抽出部1303では、ゲートウェイGiのGWアドレスを手がかりとして、新鍵KKiを抽出することとなる。
送信部1306は、抽出部1303によって抽出された新鍵KKiを、携帯端末Hを介して特定のノードNi−xに送信する。これにより、アドホックネットワークAiを経由せずに、特定のノードNi−xに新鍵KKiを付与することができる。
図14は、ノードNiの機能的構成例を示すブロック図である。ノードNiは、パケット受信部1401と、判断部1402と、検知部1403と、パケット送信部1404と、鍵受信部1405と、更新部1406と、記録部1407と、決定部1408と、を含む構成である。
各機能部(パケット受信部1401〜決定部1408)は、具体的には、たとえば、図10に示したRAM1002、フラッシュメモリ1003などの記憶装置に記憶されたプログラムをCPU1001に実行させることにより、または、I/F1004により、その機能を実現する。また、各機能部(パケット受信部1401〜決定部1408)の処理結果は、特に指定する場合を除いて、RAM1002、フラッシュメモリ1003などの記憶装置に記憶される。
パケット受信部1401は、アドホックネットワークAi内のゲートウェイGiからブロードキャストされた暗号化パケットSPiを受信する。暗号化パケットSPiは、ゲートウェイGi固有の暗号鍵Kiを用いて暗号化されたパケットである。暗号化パケットSPiは、たとえば、アドホックネットワークAiに対し更新処理を知らせる更新通知情報を含んだパケットである。
具体的には、たとえば、パケット受信部1401が、アドホックネットワークAi内の他のノードNiからマルチホップ通信により暗号化パケットSPiを受信する。ただし、ノードNiの通信圏内にゲートウェイGiが存在していれば、パケット受信部1401は、ゲートウェイGiから暗号化パケットSPiを直接受信する場合もある。
判断部1402は、アドホックネットワークAiを構成するノード群内の各ノードNi−1〜Ni−miが、暗号化パケットSPiを現鍵Kiで復号することにより、更新通知情報があるか否かを判断する。具体的には、たとえば、ノードNiが、暗号化パケットSPiから復号されたパケットにおいて、あらかじめ指定されたビット位置に鍵更新フラグが立っているか否かを判定する。また、判断部1402は、前回保存しておいた更新通知情報のタイムスタンプと比較して、今回受信した暗号化パケットSPiが最新であるか否かも判断することとしてもよい。
検知部1403は、管理サーバ101と通信可能な携帯端末Hとの接続を検知する。具体的には、たとえば、作業員がUSBケーブルを用いて携帯端末Hと新規ノードNとを接続した結果、検知部1403が、USBケーブルを介した携帯端末Hとの接続を検知する。
パケット送信部1404は、携帯端末Hとの接続が検知され、かつ、判断部1402によって暗号化パケットSPiに更新通知情報があると判断された場合、携帯端末Hを介して、受信された暗号化パケットSPiを管理サーバ101に送信する。具体的には、たとえば、パケット送信部1404が、USBケーブルなどのネットワークNW3を介して、暗号化パケットSPiを携帯端末Hに送信する。この結果、携帯端末Hが、ネットワークNW2を介して、ノードNiからの暗号化パケットSPiを管理サーバ101に送信する。
鍵受信部1405は、携帯端末Hを介して、ゲートウェイGi固有の暗号鍵KKiを管理サーバ101から受信する。この暗号鍵KKiは、たとえば、ノードNi−xでパケットを暗号化するとともに、暗号鍵KKiを用いて暗号化された暗号化パケットSPiを復号することができる共通鍵である。
更新部1406は、現鍵Kiから新鍵KKiに更新する。これにより、以降においてノードNiが送信対象となるパケットの暗号化、および暗号化パケットSPiの復号は、新鍵KKiで実行されることとなる。したがって、アドホックネットワークAi内のノード間でセキュア通信を行うことができる。
なお、更新部1406では、新鍵KKiを現鍵Kiに上書きすることで更新してもよく、また、ノードNiが暗号化パケットSPiを管理サーバ101に送信するまでの間に、現鍵Kiを消去してもよい。
記録部1407は、受信された暗号化パケットSPiに関する情報を記録する。具体的には、たとえば、記録部1407が、暗号化パケットSPiのヘッダ部に含まれているホップ数およびGWアドレスを、パケット情報テーブルに記録する。ここで、パケット情報テーブルについて説明する。パケット情報テーブルは、たとえば、RAM1002、フラッシュメモリ1003などの記憶装置により実現される。
図15は、パケット情報テーブルの記憶内容の一例を示す説明図である。図15において、パケット情報テーブル1500は、ID、ホップ数、およびGWアドレスのフィールドを有し、各フィールドに情報を設定することで、パケット情報1500−1〜1500−5をレコードとして記憶している。
ここで、IDは、本明細書において説明上用いる暗号化パケットSPiの識別子である。ホップ数は、暗号化パケットSPiを残り何回転送するのかを示す残余の転送回数である。GWアドレスは、ゲートウェイGiのアドレスである。なお、各暗号化パケットSPiのパケット情報は、暗号化パケットSPiの受信順にパケット情報テーブル1500に記憶される。
図14の説明に戻り、決定部1408は、複数の暗号化パケットSPiが受信された場合、記録された暗号化パケットSPiに関する情報に基づいて、送信対象となる暗号化パケットSPiを決定する。たとえば、ノードNiの設置場所がアドホックネットワークA1,A2が重なる場所に位置する場合、パケット受信部1401が、異なるゲートウェイG1,G2からの暗号化パケットSP1,SP2を受信することがある。
この場合、ノードNiが属すべき適切なゲートウェイGiを決めるために、記録部1407によって記録された暗号化パケットSPiに関する情報に基づいて、管理サーバ101に送信する暗号化パケットSPiを決定する。そして、パケット送信部1404は、携帯端末Hを介して、決定された暗号化パケットSPiを管理サーバ101に送信する。以下、図15を用いて送信対象となる暗号化パケットSPiの決定例について説明する。
まず、決定部1408は、たとえば、パケット情報テーブル1500を参照して、最古の暗号化パケットSPiを送信対象に決定することにしてもよい。図15の例では、決定部1408が、最古のパケット情報1500−1から特定される暗号化パケットSP1を送信対象に決定する。これにより、ノードNiが最初に受信した暗号化パケットSPiを送信対象とすることができる。
また、決定部1408は、たとえば、パケット情報テーブル1500を参照して、最新の暗号化パケットSPiを送信対象に決定することにしてもよい。図15の例では、決定部1408が、最新のパケット情報1500−5から特定される暗号化パケットSP1を送信対象に決定する。これにより、ノードNiが受信した最新の暗号化パケットSPiを送信対象とすることができる。この結果、たとえば、既設のゲートウェイより近傍に位置するゲートウェイが新設された場合などに、新設されたゲートウェイ固有の暗号鍵を取得することができる。
決定部1408は、たとえば、パケット情報テーブル1500を参照して、ホップ数が最小の暗号化パケットSPiを送信対象に決定することにしてもよい。図15の例では、決定部1408が、パケット情報1500−1から特定される暗号化パケットSP1を送信対象に決定する。これにより、転送回数が最も少ない暗号化パケットSPiを送信対象とすることができる。
ここで、暗号化パケットSPiの転送回数が少ないということは、ゲートウェイGiが地理的に近い位置にある可能性が高い。このため、転送回数が最も少ない暗号化パケットSPiを送信対象とすることで、結果的に、より近傍のゲートウェイGi固有の暗号鍵Kiを取得することができ、ゲートウェイGiとの通信効率を向上させることができる。
また、決定部1408は、たとえば、パケット情報テーブル1500を参照して、ゲートウェイGiごとのホップ数の平均値に基づいて、送信対象となる暗号化パケットSPiを決定することにしてもよい。具体的には、まず、決定部1408が、パケット情報テーブル1500を参照して、GWアドレスごとのホップ数の平均値を算出する。
図15の例では、GWアドレス『xx:xx:xx:xx:12:34』のホップ数の平均値は『6=(10+7+1)/3』となる。GWアドレス『xx:xx:xx:xx:56:78』のホップ数の平均値は『7=(8+6)/2』となる。この場合、決定部1408は、たとえば、ホップ数の平均値が最大のGWアドレス『xx:xx:xx:xx:56:78』のゲートウェイG2からブロードキャストされた暗号化パケットSP2を送信対象に決定する。これにより、統計的に転送回数が最も少ない暗号化パケットSPiを送信対象とすることができる。
(管理サーバ101と携帯端末Hとの間の通信方式)
ここで、管理サーバ101と携帯端末Hとの間の通信方式の一実施例について説明する。まず、携帯端末Hからみた管理サーバ101のサーバ認証について説明する。具体的には、たとえば、まず、携帯端末Hが、予め決められたIPアドレスを用いて管理サーバ101に接続する。
そして、携帯端末Hが、管理サーバ101からSSLサーバ証明書を受信する。受信されたSSLサーバ証明書は、たとえば、管理サーバ101のIPアドレスと関連付けて携帯端末HのRAM1002やフラッシュメモリ1003などの記憶装置に記憶される。
図16は、管理サーバ101の認証情報の一例を示す説明図である。図16において、管理サーバ101の認証情報1600は、IPアドレスおよびSSLサーバ証明書を有する。IPアドレスは、管理サーバ101のIPアドレスである。X.509証明書は、管理サーバ101のSSLサーバ証明書(公開鍵証明書)である。
携帯端末Hは、予め自端末に組み込まれている公開鍵を用いて、SSLサーバ証明書を復号することでサーバ認証を行う。公開鍵は、たとえば、第三者認証機関によって発行されたものである。この公開鍵を用いてSSLサーバ証明書を正しく復号できれば、SSLサーバ証明書が第三者認証機関によって証明された正しい証明書であることがわかり、ひいては管理サーバ101の身元が保証されたことになる。
つぎに、管理サーバ101からみた携帯端末Hのユーザ認証について説明する。ここでは、図17に示すような携帯端末Hの認証情報1700を用いて、携帯端末Hのユーザ認証を行う場合を例に挙げて説明する。認証情報1700は、たとえば、管理サーバ101のROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶されている。
図17は、携帯端末Hの認証情報の一例を示す説明図である。図17において、携帯端末Hの認証情報1700は、ユーザIDおよびパスワードを有する。ユーザIDは、携帯端末Hの識別子である。パスワードは、携帯端末Hを使用するユーザを認証するためのものである。
具体的には、たとえば、まず、携帯端末Hが、ユーザIDおよびパスワードのペアを管理サーバ101に送信する。このユーザIDおよびパスワードは、携帯端末Hのフラッシュメモリ603に予め登録されていてもよく、また、携帯端末Hの入力装置(不図示)を用いたユーザの操作入力により受け付けてもよい。
このあと、管理サーバ101は、携帯端末HからのユーザIDおよびパスワードのペアを、認証情報1700のユーザIDおよびパスワードのペアと一致判定する。ここで、認証情報1700のユーザIDおよびパスワードと一致すれば、携帯端末Hのユーザの身元が保証されたことになる。
なお、認証後において、携帯端末Hは、たとえば、管理サーバ101のSSLサーバ証明書に含まれる公開鍵を用いてパケットを暗号化して管理サーバ101との通信を行う。これにより、管理サーバ101と携帯端末Hとの間でセキュアな通信を行うことができる。
(鍵更新シーケンス)
図18は、実施の形態にかかる鍵更新シーケンス例を示すシーケンス図である。まず、ゲートウェイGiは、更新通知情報を生成し(ステップS1801)、更新通知情報を現鍵Kiで暗号化して暗号化パケットSPiを生成する(ステップS1802)。そして、ゲートウェイGiは、暗号化パケットSPiをアドホックネットワークAi内にブロードキャストする(ステップS1803)。これにより、アドホックネットワークAiでマルチホップ通信されることで、暗号化パケットSPiがノードNi−1〜Ni−miに行き渡る。
このあと、ノードNi−1〜Ni−miは、鍵更新前処理を実行する(ステップS1804)。鍵更新前処理(ステップS1804)の詳細については、図19で後述する。また、ゲートウェイGiは、暗号化パケットSPiをブロードキャストした後、新鍵KKiを生成する(ステップS1805)。そして、ゲートウェイGiは、生成された新鍵KKiおよびゲートウェイGiのGWアドレスを、ネットワークNW1を介して管理サーバ101に送信する(ステップS1806)。
このあと、ゲートウェイGiは、現鍵Kiを消去する(ステップS1808)。これにより、ゲートウェイGiは今後、新鍵KKiで暗号化されたパケットをアドホックネットワークAiに配信し、アドホックネットワークAiから受信されるパケットを新鍵KKiで復号することとなる。なお、新鍵KKiで復号できないパケットは破棄されることとなる。
また、管理サーバ101は、ゲートウェイGiから送信されてきた新鍵KKiおよびゲートウェイGiのGWアドレスを受信し、鍵情報DB110における当該GWアドレスのレコードに新鍵KKiを保存する(ステップS1807)。
一方、ノードNi−1〜Ni−miでは、鍵更新前処理(ステップS1804)を実行することで、携帯端末Hとの接続/非接続が検知されている。図18では、ノードNi−3が携帯端末Hと接続されているものとする。
ノードNi−3は、携帯端末Hを介して、ゲートウェイGiのGWアドレスを含むパケット(たとえば、ゲートウェイGiからブロードキャストされた暗号化パケットSPi)を、管理サーバ101に送信する(ステップS1809)。
管理サーバ101は、ノードNi−3からパケットを受信すると、新鍵特定処理を実行する(ステップS1810)。新鍵特定処理(ステップS1810)の詳細については図21で後述する。管理サーバ101は、新鍵特定処理(ステップS1810)で特定された新鍵KKiを、携帯端末Hを介して、ノードNi−3に送信する(ステップS1811)。
ノードNi−3は、携帯端末Hを介して管理サーバ101から新鍵KKiを受信すると、アドホックネットワークAiで使用する鍵を、現鍵Kiから新鍵KKiに更新する(ステップS1812)。これにより、作業員は、アドホックネットワークAi内のどのノードNiがゲートウェイGiから何ホップ先であるか調査することなく、任意に選んだノードNiから順次鍵更新作業をおこなうことができる。したがって、鍵更新作業の効率化を図ることができる。
図19は、図18に示した鍵更新前処理(ステップS1804)の詳細な処理手順の一例を示すフローチャートである。まず、ノードNiは、ゲートウェイGiからブロードキャストされた暗号化パケットSPiを現鍵Kiで復号する(ステップS1901)。つぎに、ノードNiは、暗号化パケットSPiから復号されたパケットが更新通知情報であるか否かを判断する(ステップS1902)。更新通知情報でない場合(ステップS1902:No)、鍵更新前処理(ステップS1804)を終了する。この場合は、鍵更新はおこなわれない。
一方、ステップS1902において、更新通知情報であると判断された場合(ステップS1902:Yes)、ノードNiは、送信対象のパケットを設定する(ステップS1903)。たとえば、暗号化パケットSPiなどゲートウェイGiのGWアドレスを含むパケットをノードNi内の送信バッファに書き込む。
このあと、ノードNiは、携帯端末Hとの接続が検知されるのを待ち受ける(ステップS1904:No)。携帯端末Hとの接続が検知された場合(ステップS1904:Yes)、鍵更新前処理(ステップS1804)を終了する。この場合は、図18のステップS1809で示したように、ノードNiは、ゲートウェイGiのGWアドレスを含むパケットを、携帯端末Hを介して管理サーバ101に送信することとなる。
図20は、図18に示した鍵更新前処理(ステップS1804)の詳細な処理手順の他の例を示すフローチャートである。図20の鍵更新前処理(ステップS1804)は、暗号化パケットSPiの転送回数を記録する場合の例である。
まず、ノードNiは、ゲートウェイGiからブロードキャストされた暗号化パケットSPiを現鍵Kiで復号する(ステップS2001)。つぎに、ノードNiは、暗号化パケットSPiから復号されたパケットが更新通知情報であるか否かを判断する(ステップS2002)。更新通知情報でない場合(ステップS2002:No)、鍵更新前処理(ステップS1804)を終了する。この場合は、鍵更新はおこなわれない。
一方、ステップS2002において、更新通知情報であると判断された場合(ステップS2002:Yes)、ノードNiは、暗号化パケットSPiの転送回数を記録する(ステップS2003)、このステップS2001〜ステップS2003の処理は、暗号化パケットSPiごとに実行される。
このあと、ノードNiは、暗号化パケットSPiごとに記録された転送回数に基づいて、送信対象とすべき暗号化パケットSPiを決定する(ステップS2004)。決定された暗号化パケットSPiは、たとえば、ノードNi内の送信バッファに書き込まれる。
このあと、ノードNiは、携帯端末Hとの接続が検知されるのを待ち受ける(ステップS2005:No)。携帯端末Hとの接続が検知された場合(ステップS2005:Yes)、鍵更新前処理(ステップS1804)を終了する。この場合は、図18のステップS1809で示したように、ノードNiは、ゲートウェイGiのGWアドレスを含むパケットを、携帯端末Hを介して管理サーバ101に送信することとなる。
図21は、図18に示した新鍵特定処理(ステップS1810)の詳細な処理手順の一例を示すフローチャートである。ここでは、例として暗号化パケットSPiが、ゲートウェイGiのGWアドレスを含むパケットとして受信された場合について説明する。なお、この暗号化パケットSPiは、図7に示したようにゲートウェイGiのGWアドレスが暗号化されていないパケットとする。
まず、管理サーバ101は、暗号化パケットSPiに含まれているGWアドレスを検出する(ステップS2101)。つぎに、管理サーバ101は、検出されたGWアドレスに関連付けられている現鍵(この場合は、現鍵Kiとなる)を鍵情報DB110から抽出する(ステップS2102)。
そして、管理サーバ101は、暗号化パケットSPiを、抽出された現鍵Kiで復号する(ステップS2103)。このあと、管理サーバ101は、暗号化パケットSPiの復号により得られた情報が更新通知情報であるか否かを判断する(ステップS2104)。更新通知情報でない場合(ステップS2104:No)、エラー処理を実行して(ステップS2105)、新鍵特定処理(ステップS1810)を終了する。
この場合、エラー処理(ステップS2105)の具体例として、たとえば、抽出部1303が、携帯端末Hを介して、新鍵KKiを抽出できなかった旨のエラーメッセージを特定のノードNi−xに送信することにしてもよい。エラー処理(ステップS2105)は、たとえば、暗号化パケットSPiが改ざんされた場合や暗号化パケットSPiの一部が欠落した場合などに実行される。このエラー処理によれば、特定のノードNi−xによる暗号化パケットSPiの再送信を促すことができる。
一方、ステップS2104において、更新通知情報であると判断された場合(ステップS2104:Yes)、管理サーバ101は、検出されたGWアドレスに関連付けられている新鍵(この場合は、新鍵KKiとなる)を鍵情報DB110から抽出する(ステップS2106)。このあと、新鍵特定処理(ステップS1810)を終了して、ステップS1811に移行する。これにより、携帯端末Hと接続された特定のノードNi−xに対して、携帯端末Hを介して、新鍵KKiをセキュアで、かつ、効率的に付与することができる。
図22は、図18に示した新鍵特定処理(ステップS1810)の詳細な処理手順の他の例を示すフローチャートである。ここでは、例として暗号化パケットSPiが、ゲートウェイGiのGWアドレスを含むパケットとして受信された場合について説明する。なお、この暗号化パケットSPiは、図8に示したようにゲートウェイGiのGWアドレスが暗号化されているパケットとする。
まず、管理サーバ101は、変数iを「i=1」で初期化する(ステップS2201)。そして、管理サーバ101は、鍵情報DB110の中のゲートウェイGi固有の暗号鍵Kiを用いて、受信された暗号化パケットSPiを復号する(ステップS2202)。
このあと、管理サーバ101は、暗号鍵Kiで暗号化パケットSPiの復号に成功したか否かを判断する(ステップS2203)。成功した場合(ステップS2203:Yes)、成功した暗号鍵Kiが現鍵Kiと同一鍵であることが判明するため、管理サーバ101は、鍵情報DB110の中から暗号鍵Kiを抽出して(ステップS2204)、図18に示したステップS1811に移行する。
これにより、暗号化パケットSPiのヘッダ部810にGWアドレスが含まれていない場合であっても、鍵情報DB110の中から、受信された暗号化パケットSPiを復号するための暗号鍵Kiを抽出することができる。
一方、暗号化パケットSPiの復号に失敗した場合(ステップS2203:No)、管理サーバ101は、変数iをインクリメントして(ステップS2205)、i>nか否かを判断する(ステップS2206)。
ここで、i>nでない場合(ステップS2206:No)、ステップS2202に戻る。一方、i>nである場合(ステップS2206:Yes)、管理サーバ101は、エラー処理を実行して(ステップS2207)、新鍵特定処理(ステップS1810)を終了する。これにより、携帯端末Hと接続された特定のノードNi−xに対して、携帯端末Hを介して、新鍵KKiをセキュアで、かつ、効率的に付与することができる。
(他の構成例)
なお、上述した実施の形態では、ゲートウェイGiが暗号化パケットSPiをブロードキャストしたあとに、ゲートウェイGiが新鍵KKiを生成する構成について説明したが、新鍵KKiの生成は、管理サーバ101がおこなうこととしてもよい。新鍵KKiの生成を管理サーバ101が実行することで、各ゲートウェイGiの処理負荷を低減することができる。また、新鍵KKiの生成を管理サーバ101という1台のコンピュータに集約することができるため、ゲートウェイG1〜Gnの低コスト化を図ることができる。以下、管理サーバ101が新鍵KKiを生成する例について説明する。
(ゲートウェイGiの機能的構成の他の例)
図23は、ゲートウェイGiの機能的構成の他の例を示すブロック図である。なお、図12に示した構成と同一構成には同一符号を付し、その説明を省略する。ゲートウェイGiは、配信部1201と、取得部2302とを備えている。
各機能部(配信部1201および取得部2302)は、具体的には、たとえば、図10に示したRAM1002やフラッシュメモリ1003などの記憶装置に記憶されたプログラムをCPU1001に実行させることにより、または、I/F1004により、その機能を実現する。また、各機能部(配信部1201および取得部2302)の処理結果は、たとえば、RAM1002やフラッシュメモリ1003などの記憶装置に記憶される。
取得部2302は、ゲートウェイGi固有の新鍵KKiを取得する。取得部2302は、具体的には、たとえば、受信部2321と保存部2322とを備える。受信部2321は、管理サーバ101から新鍵KKiを受信する。
保存部2322は、受信部2321で受信された新鍵KKiを保存する。たとえば、保存部2322は、新鍵KKiを、ゲートウェイGi内のRAM1002やフラッシュメモリ1003などの記憶装置に保存する。また、すでに現鍵Kiで暗号化された暗号化パケットSPiが配信部1201によりブロードキャストされた後であれば、新鍵KKiを現鍵Kiに上書きするなどして、現鍵Kiを消去してもよい。
このあと、各ノードNi−1〜Ni−miと管理サーバ101との間で鍵更新処理が完了することで、アドホックネットワークAi内で、新鍵KKiで暗号化したパケットで通信することが可能となる。
図24は、管理サーバ101の機能的構成の他の例を示すブロック図である。なお、図13に示した構成と同一構成には同一符号を付し、その説明を省略する。管理サーバ101は、鍵情報DB110と、取得部2400と、第1の送信部2401と、受信部1302と、抽出部1303と、復号部1304と、判定部1305と、第2の送信部2402と、を備えている。
各機能部(取得部2400〜第2の送信部2402)は、具体的には、たとえば、図9に示したROM902、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶されたプログラムをCPU901に実行させることにより、または、I/F908により、その機能を実現する。また、各機能部(取得部2400〜第2の送信部2402)の処理結果は、たとえば、RAM903、磁気ディスク905、光ディスク907などの記憶装置に記憶される。
取得部2400は、新鍵KKiを取得して、新鍵KKiを現鍵Kiに関連付けて鍵情報DB110に保存する。取得部2400は、具体的には、たとえば、生成部2411と保存部2412とを備える。
生成部2411は、更新対象となるゲートウェイGiについて新鍵KKiを生成する。生成部2411は、たとえば、乱数生成機能により新鍵KKiを生成する。保存部2412は、生成部2411で生成された新鍵KKiを保存する。たとえば、保存部2412は、新鍵KKiを、ゲートウェイGiのGWアドレスに関連付けて、鍵情報DB110に保存する。
第1の送信部2401は、管理サーバ101の生成部2411で生成されたゲートウェイGi固有の新鍵KKiを、ゲートウェイGiに送信する。送信された新鍵KKiは、ゲートウェイGiで保存される。
第2の送信部2402は、抽出部1303によって抽出された新鍵KKiを、携帯端末Hを介して特定のノードNi−xに送信する。これにより、アドホックネットワークAiを経由せずに、特定のノードNi−xに新鍵KKiを付与することができる。
このあと、各ノードNi−1〜Ni−miと管理サーバ101との間で鍵更新処理が完了することで、アドホックネットワークAi内で、新鍵KKiで暗号化したパケットで通信することが可能となる。
(鍵更新シーケンス)
図25は、実施の形態にかかる鍵更新シーケンスの他の例を示すシーケンス図である。なお、図18に示した処理と同一処理には同一符号を付し、その説明を省略する。管理サーバ101は、ゲートウェイGi固有の新鍵KKiを生成する(ステップS2501)。そして、管理サーバ101は、生成された新鍵KKiを、ネットワークNW1を介してゲートウェイGiに送信する(ステップS2502)。
ゲートウェイGiでは、ステップS2502で管理サーバ101から新鍵KKiを受信すると、更新通知情報を生成することとする(ステップS1801)。また、管理サーバ101は、新鍵KKiを生成すると、鍵情報DB110に新鍵KKiをゲートウェイGiのGWアドレスに関連付けて保存することとなる(ステップS1807)。
以降は、図18の場合と同様、ステップS1801〜S1804、S1807〜S1812を実行することで、作業員は、アドホックネットワークAi内のどのノードNiがゲートウェイGiから何ホップ先であるか調査することなく、任意に選んだノードNiから順次鍵更新作業をおこなうことができる。したがって、鍵更新作業の効率化を図ることができる。
以上説明したように、本実施の形態によれば、ノードNiは暗号化パケットSPiと引き換えに、アドホックネットワークAi以外のネットワークNW2,NW3から新鍵KKiを取得できるため、作業員は、アドホックネットワークAi内のどのノードNiがゲートウェイGiから何ホップ先であるかをしらみつぶしに探す必要はない。したがって、作業員による鍵更新作業の負担軽減を図ることができる。また、現鍵Kiが漏洩しても鍵更新作業が効率的に実施されるため、新鍵KKiへ更新することにより、アドホックネットワークAi内の暗号化通信の早期復旧を図ることができる。
なお、本実施の形態で説明した鍵更新方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本鍵設定プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)アドホックネットワーク内のゲートウェイから前記アドホックネットワーク内のノード群の各ノードに付与された前記ゲートウェイ固有の現鍵を更新する鍵更新方法であって、
前記ゲートウェイが、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、前記アドホックネットワークに同時通報する配信工程と、
前記ゲートウェイが、前記ゲートウェイ固有の新鍵を取得する第1の取得工程と、
前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバが、前記新鍵を取得して、前記新鍵を前記現鍵に関連付けて前記データベースに保存する第2の取得工程と、
前記ノード群内の各ノードが、前記暗号化パケットを前記現鍵で復号することにより、前記更新通知情報があるか否かを判断する判断工程と、
前記サーバと通信可能な携帯端末と接続された前記ノード群内の特定のノードが、前記判断工程によって前記更新通知情報があると判断された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスを含むパケットを、前記携帯端末を介して前記サーバに送信する第1の送信工程と、
前記サーバが、前記データベースにおいて前記第1の送信工程によって送信されたパケット内の前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信する第2の送信工程と、
前記特定のノードが、前記現鍵から前記第2の送信工程によって送信された前記新鍵に更新する更新工程と、
を含んだことを特徴とする鍵更新方法。
(付記2)前記第1の取得工程は、
前記ゲートウェイが、前記新鍵を生成して保存し、
前記第2の取得工程は、
前記サーバが、前記ゲートウェイによって生成された前記新鍵および前記ゲートウェイのアドレスを前記ゲートウェイから受信することにより、前記ゲートウェイのアドレスに基づいて、前記新鍵を前記現鍵に関連付けて前記データベースに保存することを特徴とする付記1に記載の鍵更新方法。
(付記3)前記第2の取得工程は、
前記サーバが、前記新鍵を生成して、前記新鍵を前記現鍵に関連付けて前記データベースに保存し、
前記第1の取得工程は、
前記ゲートウェイが、前記第2の取得工程によって前記サーバで生成された前記新鍵を受信して保存することを特徴とする付記1に記載の鍵更新方法。
(付記4)前記第1の取得工程は、
前記ゲートウェイが、前記配信工程による同時通報後に前記新鍵を取得して、前記新鍵の取得後に前記現鍵を消去することを特徴とする付記1〜3のいずれか一つに記載の鍵更新方法。
(付記5)前記第1の送信工程は、
特定のノードが、前記暗号化パケットを、前記携帯端末を介して前記サーバに送信することを特徴とする付記1〜4のいずれか一つに記載の鍵更新方法。
(付記6)前記サーバが、前記データベース内の鍵群から選ばれた鍵で前記暗号化パケットを復号する復号工程を含み、
前記第2の送信工程は、
前記サーバが、前記復号工程によって前記ゲートウェイのアドレスが復号できた場合、前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信することを特徴とする付記4または5に記載の鍵更新方法。
(付記7)前記サーバが、前記データベース内の鍵群から選ばれた鍵で前記暗号化パケットを復号する復号工程を含み、
前記第2の送信工程は、
前記サーバが、前記復号工程によって前記更新通知情報が復号できた場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信することを特徴とする付記4または5に記載の鍵更新方法。
(付記8)前記サーバが、前記復号工程によって復号できた情報が前記更新通知情報であるか否かを判定する判定工程を含み、
前記第2の送信工程は、
前記サーバが、前記判定工程によって前記更新通知情報であると判定された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信することを特徴とする付記7に記載の鍵更新方法。
(付記9)アドホックネットワークを構成するノード群内のノードであって、
前記アドホックネットワーク内のゲートウェイから、前記ゲートウェイのアドレスおよび前記ゲートウェイ固有の現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを受信する受信手段と、
前記受信手段によって受信された暗号化パケットを前記現鍵で復号することにより、前記更新通知情報であるか否かを判断する判断手段と、
前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記判断手段によって前記更新通知情報であると判断され、かつ、前記検知手段によって接続が検知された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスを含むパケットを、前記携帯端末を介して前記サーバに送信する送信手段と、
前記送信手段によって前記パケットが前記サーバに送信された結果、前記携帯端末を介して送信されてきた新鍵を、前記現鍵から更新する更新手段と、
を備えることを特徴とするノード。
(付記10)前記送信手段は、
前記暗号化パケットを、前記携帯端末を介して前記サーバに送信することを特徴とする付記9に記載のノード。
(付記11)アドホックネットワーク内のゲートウェイであって、
前記ゲートウェイ固有の現鍵を有する前記アドホックネットワーク内の各ノードに対し、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、同時通報する配信手段と、
前記ゲートウェイ固有の新鍵を生成して保存する生成手段と、
前記ゲートウェイのアドレスおよび前記生成手段によって生成された新鍵を、前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバに送信する送信手段と、
を備えることを特徴とするゲートウェイ。
(付記12)アドホックネットワーク内のゲートウェイであって、
前記ゲートウェイ固有の現鍵を有する前記アドホックネットワーク内の各ノードに対し、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、同時通報する配信手段と、
前記ゲートウェイのアドレス、前記現鍵および前記ゲートウェイ固有の新鍵を関連付けて保存するデータベースを有するサーバから、前記新鍵を受信する受信手段と、
前記受信手段によって受信された新鍵を保存する保存手段と、
を備えることを特徴とするゲートウェイ。
(付記13)アドホックネットワーク内のゲートウェイと通信可能なサーバであって、
前記ゲートウェイのアドレスおよび前記ゲートウェイ固有の現鍵を関連付けて保存するデータベースと、
前記ゲートウェイのアドレスおよび前記ゲートウェイ固有の新鍵を前記ゲートウェイから受信して、前記ゲートウェイのアドレスに基づいて、前記新鍵を前記現鍵に関連付けて前記データベースに保存する取得手段と、
前記ゲートウェイのアドレスを含むパケットを、前記アドホックネットワークを構成するノード群内の前記サーバと通信可能な携帯端末と接続された特定のノードから、前記携帯端末を介して受信する受信手段と、
前記受信手段によって受信されたパケットに含まれている前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出する抽出手段と、
前記抽出手段によって抽出された前記新鍵を、前記携帯端末を介して前記特定のノードに送信する送信手段と、
を備えることを特徴とするサーバ。
(付記14)アドホックネットワーク内のゲートウェイと通信可能なサーバであって、
前記ゲートウェイのアドレスおよび前記ゲートウェイ固有の現鍵を関連付けて保存するデータベースと、
前記ゲートウェイ固有の新鍵を生成して、前記新鍵を前記現鍵に関連付けて前記データベースに保存する取得手段と、
前記取得手段によって取得された前記新鍵を前記ゲートウェイに送信する第1の送信手段と、
前記ゲートウェイのアドレスを含むパケットを、前記アドホックネットワークを構成するノード群内の前記サーバと通信可能な携帯端末と接続された特定のノードから、前記携帯端末を介して受信する受信手段と、
前記受信手段によって受信されたパケットに含まれている前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出する抽出手段と、
前記抽出手段によって抽出された前記新鍵を、前記携帯端末を介して前記特定のノードに送信する第2の送信手段と、
を備えることを特徴とするサーバ。
(付記15)前記受信手段は、
前記ゲートウェイが前記アドホックネットワークに同時通報した、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、前記特定のノードから前記携帯端末を介して受信することを特徴とする付記13または14に記載のサーバ。
(付記16)前記データベース内の鍵群から選ばれた鍵で前記暗号化パケットを復号する復号手段を備え、
前記抽出手段は、
前記復号手段によって前記ゲートウェイのアドレスが復号できた場合、前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出することを特徴とする付記15に記載のサーバ。
(付記17)前記データベース内の鍵群から選ばれた鍵で前記暗号化パケットを復号する復号手段を備え、
前記抽出手段は、
前記復号手段によって前記更新通知情報が復号できた場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出することを特徴とする付記15に記載のサーバ。
(付記18)前記復号手段によって復号できた情報が前記更新通知情報であるか否かを判定する判定手段を備え、
前記抽出手段は、
前記判定手段によって前記更新通知情報であると判定された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出することを特徴とする付記17に記載のサーバ。
(付記19)アドホックネットワーク内のゲートウェイと、前記アドホックネットワーク内のノード群と、前記ゲートウェイと通信可能なサーバと、を備え、前記ノード群の各ノードに付与された前記ゲートウェイ固有の現鍵を更新するネットワークシステムであって、
前記ゲートウェイが、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、前記アドホックネットワークに同時通報する配信手段と、
前記ゲートウェイが、前記ゲートウェイ固有の新鍵を取得する第1の取得手段と、
前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバが、前記新鍵を取得して、前記新鍵を前記現鍵に関連付けて前記データベースに保存する第2の取得手段と、
前記ノード群内の各ノードが、前記暗号化パケットを前記現鍵で復号することにより、前記更新通知情報であるか否かを判断する判断手段と、
前記サーバと通信可能な携帯端末と接続された前記ノード群内の特定のノードが、前記判断手段によって前記更新通知情報であると判断された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスを含むパケットを、前記携帯端末を介して前記サーバに送信する第1の送信手段と、
前記サーバが、前記データベースにおいて前記第1の送信手段によって送信されたパケット内の前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信する第2の送信手段と、
前記特定のノードが、前記現鍵から前記第2の送信手段によって送信された前記新鍵に更新する更新手段と、
を備えることを特徴とするネットワークシステム。
100 ネットワークシステム
101 管理サーバ
110 鍵情報DB
Ai アドホックネットワーク
Gi ゲートウェイ
H 携帯端末
Ki 現鍵(暗号鍵)
KKi 新鍵(暗号鍵)
Ni ノード
SPi 暗号化パケット

Claims (19)

  1. アドホックネットワーク内のゲートウェイから前記アドホックネットワーク内のノード群の各ノードに付与された前記ゲートウェイ固有の現鍵を更新する鍵更新方法であって、
    前記ゲートウェイが、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、前記アドホックネットワークに同時通報する配信工程と、
    前記ゲートウェイが、前記ゲートウェイ固有の新鍵を取得する第1の取得工程と、
    前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバが、前記新鍵を取得して、前記新鍵を前記現鍵に関連付けて前記データベースに保存する第2の取得工程と、
    前記ノード群内の各ノードが、前記暗号化パケットを前記現鍵で復号することにより、前記更新通知情報があるか否かを判断する判断工程と、
    前記サーバと通信可能な携帯端末と接続された前記ノード群内の特定のノードが、前記判断工程によって前記更新通知情報があると判断された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスを含むパケットを、前記携帯端末を介して前記サーバに送信する第1の送信工程と、
    前記サーバが、前記データベースにおいて前記第1の送信工程によって送信されたパケット内の前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信する第2の送信工程と、
    前記特定のノードが、前記現鍵から前記第2の送信工程によって送信された前記新鍵に更新する更新工程と、
    を含んだことを特徴とする鍵更新方法。
  2. 前記第1の取得工程は、
    前記ゲートウェイが、前記新鍵を生成して保存し、
    前記第2の取得工程は、
    前記サーバが、前記ゲートウェイによって生成された前記新鍵および前記ゲートウェイのアドレスを前記ゲートウェイから受信することにより、前記ゲートウェイのアドレスに基づいて、前記新鍵を前記現鍵に関連付けて前記データベースに保存することを特徴とする請求項1に記載の鍵更新方法。
  3. 前記第2の取得工程は、
    前記サーバが、前記新鍵を生成して、前記新鍵を前記現鍵に関連付けて前記データベースに保存し、
    前記第1の取得工程は、
    前記ゲートウェイが、前記第2の取得工程によって前記サーバで生成された前記新鍵を受信して保存することを特徴とする請求項1に記載の鍵更新方法。
  4. 前記第1の取得工程は、
    前記ゲートウェイが、前記配信工程による同時通報後に前記新鍵を取得して、前記新鍵の取得後に前記現鍵を消去することを特徴とする請求項1〜3のいずれか一つに記載の鍵更新方法。
  5. 前記第1の送信工程は、
    特定のノードが、前記暗号化パケットを、前記携帯端末を介して前記サーバに送信することを特徴とする請求項1〜4のいずれか一つに記載の鍵更新方法。
  6. 前記サーバが、前記データベース内の鍵群から選ばれた鍵で前記暗号化パケットを復号する復号工程を含み、
    前記第2の送信工程は、
    前記サーバが、前記復号工程によって前記ゲートウェイのアドレスが復号できた場合、前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信することを特徴とする請求項4または5に記載の鍵更新方法。
  7. 前記サーバが、前記データベース内の鍵群から選ばれた鍵で前記暗号化パケットを復号する復号工程を含み、
    前記第2の送信工程は、
    前記サーバが、前記復号工程によって前記更新通知情報が復号できた場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信することを特徴とする請求項4または5に記載の鍵更新方法。
  8. 前記サーバが、前記復号工程によって復号できた情報が前記更新通知情報であるか否かを判定する判定工程を含み、
    前記第2の送信工程は、
    前記サーバが、前記判定工程によって前記更新通知情報であると判定された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信することを特徴とする請求項7に記載の鍵更新方法。
  9. アドホックネットワークを構成するノード群内のノードであって、
    前記アドホックネットワーク内のゲートウェイから、前記ゲートウェイのアドレスおよび前記ゲートウェイ固有の現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを受信する受信手段と、
    前記受信手段によって受信された暗号化パケットを前記現鍵で復号することにより、前記更新通知情報であるか否かを判断する判断手段と、
    前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバと通信可能な携帯端末との接続を検知する検知手段と、
    前記判断手段によって前記更新通知情報であると判断され、かつ、前記検知手段によって接続が検知された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスを含むパケットを、前記携帯端末を介して前記サーバに送信する送信手段と、
    前記送信手段によって前記パケットが前記サーバに送信された結果、前記携帯端末を介して送信されてきた新鍵を、前記現鍵から更新する更新手段と、
    を備えることを特徴とするノード。
  10. 前記送信手段は、
    前記暗号化パケットを、前記携帯端末を介して前記サーバに送信することを特徴とする請求項9に記載のノード。
  11. アドホックネットワーク内のゲートウェイであって、
    前記ゲートウェイ固有の現鍵を有する前記アドホックネットワーク内の各ノードに対し、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、同時通報する配信手段と、
    前記ゲートウェイ固有の新鍵を生成して保存する生成手段と、
    前記ゲートウェイのアドレスおよび前記生成手段によって生成された新鍵を、前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバに送信する送信手段と、
    を備えることを特徴とするゲートウェイ。
  12. アドホックネットワーク内のゲートウェイであって、
    前記ゲートウェイ固有の現鍵を有する前記アドホックネットワーク内の各ノードに対し、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、同時通報する配信手段と、
    前記ゲートウェイのアドレス、前記現鍵および前記ゲートウェイ固有の新鍵を関連付けて保存するデータベースを有するサーバから、前記新鍵を受信する受信手段と、
    前記受信手段によって受信された新鍵を保存する保存手段と、
    を備えることを特徴とするゲートウェイ。
  13. アドホックネットワーク内のゲートウェイと通信可能なサーバであって、
    前記ゲートウェイのアドレスおよび前記ゲートウェイ固有の現鍵を関連付けて保存するデータベースと、
    前記ゲートウェイのアドレスおよび前記ゲートウェイ固有の新鍵を前記ゲートウェイから受信して、前記ゲートウェイのアドレスに基づいて、前記新鍵を前記現鍵に関連付けて前記データベースに保存する取得手段と、
    前記ゲートウェイのアドレスを含むパケットを、前記アドホックネットワークを構成するノード群内の前記サーバと通信可能な携帯端末と接続された特定のノードから、前記携帯端末を介して受信する受信手段と、
    前記受信手段によって受信されたパケットに含まれている前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出する抽出手段と、
    前記抽出手段によって抽出された前記新鍵を、前記携帯端末を介して前記特定のノードに送信する送信手段と、
    を備えることを特徴とするサーバ。
  14. アドホックネットワーク内のゲートウェイと通信可能なサーバであって、
    前記ゲートウェイのアドレスおよび前記ゲートウェイ固有の現鍵を関連付けて保存するデータベースと、
    前記ゲートウェイ固有の新鍵を生成して、前記新鍵を前記現鍵に関連付けて前記データベースに保存する取得手段と、
    前記取得手段によって取得された前記新鍵を前記ゲートウェイに送信する第1の送信手段と、
    前記ゲートウェイのアドレスを含むパケットを、前記アドホックネットワークを構成するノード群内の前記サーバと通信可能な携帯端末と接続された特定のノードから、前記携帯端末を介して受信する受信手段と、
    前記受信手段によって受信されたパケットに含まれている前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出する抽出手段と、
    前記抽出手段によって抽出された前記新鍵を、前記携帯端末を介して前記特定のノードに送信する第2の送信手段と、
    を備えることを特徴とするサーバ。
  15. 前記受信手段は、
    前記ゲートウェイが前記アドホックネットワークに同時通報した、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、前記特定のノードから前記携帯端末を介して受信することを特徴とする請求項13または14に記載のサーバ。
  16. 前記データベース内の鍵群から選ばれた鍵で前記暗号化パケットを復号する復号手段を備え、
    前記抽出手段は、
    前記復号手段によって前記ゲートウェイのアドレスが復号できた場合、前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出することを特徴とする請求項15に記載のサーバ。
  17. 前記データベース内の鍵群から選ばれた鍵で前記暗号化パケットを復号する復号手段を備え、
    前記抽出手段は、
    前記復号手段によって前記更新通知情報が復号できた場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出することを特徴とする請求項15に記載のサーバ。
  18. 前記復号手段によって復号できた情報が前記更新通知情報であるか否かを判定する判定手段を備え、
    前記抽出手段は、
    前記判定手段によって前記更新通知情報であると判定された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記データベースから抽出することを特徴とする請求項17に記載のサーバ。
  19. アドホックネットワーク内のゲートウェイと、前記アドホックネットワーク内のノード群と、前記ゲートウェイと通信可能なサーバと、を備え、前記ノード群の各ノードに付与された前記ゲートウェイ固有の現鍵を更新するネットワークシステムであって、
    前記ゲートウェイが、前記ゲートウェイのアドレスおよび前記現鍵の更新通知情報を有し少なくとも前記更新通知情報を前記現鍵で暗号化した暗号化パケットを、前記アドホックネットワークに同時通報する配信手段と、
    前記ゲートウェイが、前記ゲートウェイ固有の新鍵を取得する第1の取得手段と、
    前記ゲートウェイのアドレスおよび前記現鍵を関連付けて保存するデータベースを有するサーバが、前記新鍵を取得して、前記新鍵を前記現鍵に関連付けて前記データベースに保存する第2の取得手段と、
    前記ノード群内の各ノードが、前記暗号化パケットを前記現鍵で復号することにより、前記更新通知情報であるか否かを判断する判断手段と、
    前記サーバと通信可能な携帯端末と接続された前記ノード群内の特定のノードが、前記判断手段によって前記更新通知情報であると判断された場合、前記暗号化パケットから得られた前記ゲートウェイのアドレスを含むパケットを、前記携帯端末を介して前記サーバに送信する第1の送信手段と、
    前記サーバが、前記データベースにおいて前記第1の送信手段によって送信されたパケット内の前記ゲートウェイのアドレスに関連付けられている前記新鍵を、前記携帯端末を介して前記特定のノードに送信する第2の送信手段と、
    前記特定のノードが、前記現鍵から前記第2の送信手段によって送信された前記新鍵に更新する更新手段と、
    を備えることを特徴とするネットワークシステム。
JP2012546616A 2010-11-30 2010-11-30 鍵更新方法、ノード、サーバ、およびネットワークシステム Expired - Fee Related JP5488715B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/071393 WO2012073339A1 (ja) 2010-11-30 2010-11-30 鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム

Publications (2)

Publication Number Publication Date
JP5488715B2 JP5488715B2 (ja) 2014-05-14
JPWO2012073339A1 true JPWO2012073339A1 (ja) 2014-05-19

Family

ID=46171325

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012546616A Expired - Fee Related JP5488715B2 (ja) 2010-11-30 2010-11-30 鍵更新方法、ノード、サーバ、およびネットワークシステム

Country Status (2)

Country Link
JP (1) JP5488715B2 (ja)
WO (1) WO2012073339A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012073339A1 (ja) * 2010-11-30 2012-06-07 富士通株式会社 鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム
JP5488716B2 (ja) * 2010-11-30 2014-05-14 富士通株式会社 鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム
CN114143013A (zh) * 2021-12-16 2022-03-04 郑州轨道交通信息技术研究院 基于MD5、RC4加密和zmq通讯的网关授权方法
CN114299694A (zh) * 2021-12-31 2022-04-08 郑州大学 一种基于ZigBee技术的智能水利无线预警系统

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003046517A (ja) * 2001-07-27 2003-02-14 Mitsubishi Materials Corp 情報管理機構、無線モバイルルータ
WO2003071734A1 (en) * 2002-02-22 2003-08-28 Nokia Corporation Requesting digital certificates
JP2003333031A (ja) * 2002-05-17 2003-11-21 Canon Inc 通信装置、通信システム、通信方法、記憶媒体、及びプログラム
JP2005117458A (ja) * 2003-10-09 2005-04-28 Sony Corp 無線接続システム、無線接続制御方法、アクセスポイント機器、および通信機器
JP2005303449A (ja) * 2004-04-07 2005-10-27 Buffalo Inc 無線通信システム、アクセスポイント、端末および無線通信方法
JP2006238343A (ja) * 2005-02-28 2006-09-07 Nec Commun Syst Ltd 暗号キー配信装置、無線通信端末、無線アクセスポイント、無線データ通信システム、無線データ通信方法、プログラム、記録媒体
JP2007074391A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 安全なアドホックネットワークを構成するデバイスおよび認証方法並びに認証プログラム
JP2007074390A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 認証局、デバイス、移動局および通信システム並びに通信方法並びに通信プログラム
JP2007074393A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 安全なアドホックネットワークを構築するシステム
JP2007074392A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 安全なアドホックネットワークを構築するシステム、方法及びコンピュータプログラム
JP2007174083A (ja) * 2005-12-20 2007-07-05 Oki Electric Ind Co Ltd マルチホップネットワークにおける鍵更新システム,鍵管理装置,通信端末および鍵情報構築方法
JP2007281924A (ja) * 2006-04-07 2007-10-25 Toshiba Corp コンテンツ鍵データ配信方法、並びにコンテンツ鍵データ配信システム及びこれに用いられる再生機器
JP2008515357A (ja) * 2004-10-01 2008-05-08 インテル・コーポレーション 集中型wlan−wwan相互作用ネットワークにおけるユーザの証明書の初期化、配布、および、配信のためのシステムおよび方法
JP2009075688A (ja) * 2007-09-19 2009-04-09 Fujitsu Ltd 携帯装置の位置に関する情報とファイル用暗号鍵とを管理するためのプログラムおよび方法
WO2009130917A1 (ja) * 2008-04-24 2009-10-29 富士通株式会社 ノード装置及びプログラム
JP2010503327A (ja) * 2006-09-07 2010-01-28 モトローラ・インコーポレイテッド マルチホップメッシュネットワークを介する管理トラフィックの送信
JP2010506480A (ja) * 2006-10-06 2010-02-25 エヌイーシー ヨーロッパ リミテッド ネットワーク内でアグリゲータノードを選択する方法
WO2010044292A1 (ja) * 2008-10-17 2010-04-22 富士通株式会社 通信装置、通信方法及び通信プログラム
WO2010114373A1 (en) * 2009-03-31 2010-10-07 Eurologics B.V. Apparatus for display of audio and/or video in a mobile application
WO2012073339A1 (ja) * 2010-11-30 2012-06-07 富士通株式会社 鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007104310A (ja) * 2005-10-04 2007-04-19 Hitachi Ltd ネットワーク装置、ネットワークシステム及び鍵更新方法

Patent Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003046517A (ja) * 2001-07-27 2003-02-14 Mitsubishi Materials Corp 情報管理機構、無線モバイルルータ
WO2003071734A1 (en) * 2002-02-22 2003-08-28 Nokia Corporation Requesting digital certificates
JP2003333031A (ja) * 2002-05-17 2003-11-21 Canon Inc 通信装置、通信システム、通信方法、記憶媒体、及びプログラム
JP2005117458A (ja) * 2003-10-09 2005-04-28 Sony Corp 無線接続システム、無線接続制御方法、アクセスポイント機器、および通信機器
JP2005303449A (ja) * 2004-04-07 2005-10-27 Buffalo Inc 無線通信システム、アクセスポイント、端末および無線通信方法
JP2008515357A (ja) * 2004-10-01 2008-05-08 インテル・コーポレーション 集中型wlan−wwan相互作用ネットワークにおけるユーザの証明書の初期化、配布、および、配信のためのシステムおよび方法
JP2006238343A (ja) * 2005-02-28 2006-09-07 Nec Commun Syst Ltd 暗号キー配信装置、無線通信端末、無線アクセスポイント、無線データ通信システム、無線データ通信方法、プログラム、記録媒体
JP2007074391A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 安全なアドホックネットワークを構成するデバイスおよび認証方法並びに認証プログラム
JP2007074390A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 認証局、デバイス、移動局および通信システム並びに通信方法並びに通信プログラム
JP2007074393A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 安全なアドホックネットワークを構築するシステム
JP2007074392A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 安全なアドホックネットワークを構築するシステム、方法及びコンピュータプログラム
JP2007174083A (ja) * 2005-12-20 2007-07-05 Oki Electric Ind Co Ltd マルチホップネットワークにおける鍵更新システム,鍵管理装置,通信端末および鍵情報構築方法
JP2007281924A (ja) * 2006-04-07 2007-10-25 Toshiba Corp コンテンツ鍵データ配信方法、並びにコンテンツ鍵データ配信システム及びこれに用いられる再生機器
JP2010503327A (ja) * 2006-09-07 2010-01-28 モトローラ・インコーポレイテッド マルチホップメッシュネットワークを介する管理トラフィックの送信
JP2010506480A (ja) * 2006-10-06 2010-02-25 エヌイーシー ヨーロッパ リミテッド ネットワーク内でアグリゲータノードを選択する方法
JP2009075688A (ja) * 2007-09-19 2009-04-09 Fujitsu Ltd 携帯装置の位置に関する情報とファイル用暗号鍵とを管理するためのプログラムおよび方法
WO2009130917A1 (ja) * 2008-04-24 2009-10-29 富士通株式会社 ノード装置及びプログラム
WO2010044292A1 (ja) * 2008-10-17 2010-04-22 富士通株式会社 通信装置、通信方法及び通信プログラム
JP2010098597A (ja) * 2008-10-17 2010-04-30 Fujitsu Ltd 通信装置、通信方法及び通信プログラム
WO2010114373A1 (en) * 2009-03-31 2010-10-07 Eurologics B.V. Apparatus for display of audio and/or video in a mobile application
WO2012073339A1 (ja) * 2010-11-30 2012-06-07 富士通株式会社 鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
久埜 豊 他: "ワイヤレスアドホックトンネリングアクセス(WATA)の概要", NTT技術ジャーナル, vol. 第19巻 第7号, JPN6013053215, 1 July 2007 (2007-07-01), pages 42 - 45, ISSN: 0002666270 *
保母 雅敏 他: "多段構成ネットワークにおける鍵配送方式の一検討", 第66回(平成16年)全国大会講演論文集(3), JPN6013053218, 9 March 2004 (2004-03-09), pages 3 - 495, ISSN: 0002666272 *
朴 美娘 他: "マルチキャスト通信上での効率的な鍵配布方式に関する検討", マルチメディア通信と分散処理ワークショップ論文集, vol. 99, no. 18, JPN6013053220, 1 December 1999 (1999-12-01), JP, pages 25 - 30, ISSN: 0002733465 *
福澤 寧子 他: "自律分散制御路側網システムのセキュリティ機能の開発", 情報処理学会論文誌, vol. 第44巻 第12号, JPN6013053217, 15 December 2003 (2003-12-15), JP, pages 3090 - 3097, ISSN: 0002666271 *
菊澤 隆司 他, 電子情報通信学会2002年通信ソサイエティ大会講演論文集2, JPN6013053222, 20 August 2002 (2002-08-20), pages 254, ISSN: 0002733466 *

Also Published As

Publication number Publication date
JP5488715B2 (ja) 2014-05-14
WO2012073339A1 (ja) 2012-06-07

Similar Documents

Publication Publication Date Title
US9032203B2 (en) Key setting method, node, server, and network system
US20220006627A1 (en) Quantum key distribution node apparatus and method for quantum key distribution thereof
US8588410B2 (en) Simplified secure symmetrical key management
US8509438B2 (en) Key management in a wireless network using primary and secondary keys
US8732454B2 (en) Key setting method, node, and network system
US8719563B2 (en) Key setting method, node, and network system
JP5488715B2 (ja) 鍵更新方法、ノード、サーバ、およびネットワークシステム
JP5488716B2 (ja) 鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム
KR20190040443A (ko) 스마트미터의 보안 세션 생성 장치 및 방법
JP5494828B2 (ja) 鍵設定方法、ノード、サーバ、およびネットワークシステム
Li et al. Hierarchical agent-based secure and reliable multicast in wireless mesh networks
KR20130003616A (ko) 세션 키 및 클러스터 키 생성 방법 및 그 장치
JP5418700B2 (ja) 鍵設定方法、ノード、サーバおよびネットワークシステム
JP5621905B2 (ja) 鍵設定方法、ノード、サーバおよびネットワークシステム
JP5418699B2 (ja) 鍵設定方法、ノード、サーバおよびネットワークシステム
CN117155671A (zh) 轨迹数据的发送方法、系统、设备及存储介质
Baek et al. FI-Based Local Group Key Generation/Distribution for Mobile Multicast in a Hierarchical Mobile IPv6Network

Legal Events

Date Code Title Description
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: 20140128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140210

R150 Certificate of patent or registration of utility model

Ref document number: 5488715

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees