(57)【要約】  アドホックネットワーク（Ａａ）内のゲートウェイ（Ｇａ）およびノード（Ｎａ）は、暗号鍵（Ｋａ）を保持する。アドホックネットワーク（Ａｂ）内のゲートウェイ（Ｇｂ）およびノード（Ｎｂ）は、暗号鍵（Ｋｂ）を保持する。アドホックネットワーク（Ａａ，Ａｂ）の通信圏内のノード（Ｎｃ）のみ暗号鍵（Ｋａ，Ｋｂ）を保持する。ノード（Ｎａ，Ｎｂ）のいずれか一方との通信が遮断されても、他方の経路で通信が可能となる。したがって、ゲートウェイを自律的に選択でき、ロバスト性の低減を防止でき、鍵漏洩リスクの低減化を図ることができる。また、ゲートウェイ（Ｇａ）およびノード（Ｎａ）は暗号鍵（Ｋａ）、ゲートウェイ（Ｇｂ）およびノード（Ｎｂ）は暗号鍵（Ｋｂ）しか保持していないため、各ノードでの処理量や通信量が増加せず、アドホックネットワーク（Ａａ，Ａｂ）自体が破綻をきたすことはない。
2012090331.tif 000002
【特許請求の範囲】
【請求項１】
複数のアドホックネットワークの通信圏内にあるノードが、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信工程と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信工程によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信工程と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【請求項２】
前記鍵受信工程は、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定工程は、
前記鍵受信工程によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信工程によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする請求項１に記載の鍵設定方法。
【請求項３】
前記鍵受信工程は、
前記サーバでの前記複数の暗号化パケットの着順に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項２に記載の鍵設定方法。
【請求項４】
前記鍵受信工程は、
前記サーバで得られた前記複数の暗号化パケットの各々の転送回数に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項２に記載の鍵設定方法。
【請求項５】
前記複数の暗号化パケットの各々の着順を記録する記録工程と、
前記記録工程によって記録された前記各暗号化パケットの着順に基づいて、前記各暗号化パケットの優先度を決定する決定工程と、を実行し、
前記パケット送信工程は、
さらに、前記決定工程によって決定された優先度を前記サーバに送信し、
前記鍵受信工程は、
前記サーバによって前記複数の鍵のうち前記優先度に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項２に記載の鍵設定方法。
【請求項６】
前記複数の暗号化パケットの各々の転送回数を記録する記録工程と、
前記記録工程によって記録された前記各暗号化パケットの転送回数に基づいて、前記各暗号化パケットの優先度を決定する決定工程と、を実行し、
前記パケット送信工程は、
さらに、前記決定工程によって決定された優先度を前記サーバに送信し、
前記鍵受信工程は、
前記サーバによって前記複数の鍵のうち前記優先度に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項２に記載の鍵設定方法。
【請求項７】
複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記特定のゲートウェイから同時通報された、前記主鍵を用いて暗号化された特定の暗号化パケットを、前記第１のノードから受信するパケット受信工程と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信工程によって受信された前記特定の暗号化パケットを前記サーバに送信するパケット送信工程と、
前記パケット送信工程によって送信された前記特定の暗号化パケットを復号する前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記主鍵を、前記第２のノードでの暗号化対象データを暗号化し、かつ、前記第２のノードでの復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【請求項８】
複数のアドホックネットワークの通信圏内にあるノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信工程と、
前記送信工程によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【請求項９】
前記検知工程によって接続が検知された前記携帯端末から、前記取得要求の送信指示を受け付ける受付工程をさらに実行し、
前記送信工程は、
前記受付工程によって前記送信指示が受け付けられた場合、前記取得要求を前記複数のアドホックネットワークに同時通報することを特徴とする請求項８に記載の鍵設定方法。
【請求項１０】
前記送信工程は、
前記送信指示に含まれる前記サーバが通信先を識別するための前記携帯端末の識別子を含む前記取得要求を、前記複数のアドホックネットワークに同時通報することを特徴とする請求項９に記載の鍵設定方法。
【請求項１１】
前記送信工程は、
前記ゲートウェイ固有の鍵を送信済みのノードを前記サーバが識別するための前記ノードの識別子を含む前記取得要求を、前記いずれかのアドホックネットワークに同時通報することを特徴とする請求項９または１０に記載の鍵設定方法。
【請求項１２】
前記鍵受信工程は、
前記サーバに送信された前記各ゲートウェイ固有の鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定工程は、
前記鍵受信工程によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信工程によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする請求項８〜１０のいずれか一つに記載の鍵設定方法。
【請求項１３】
複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信工程と、
前記送信工程によって同時通報された前記取得要求が前記第１のノードにおいて前記主鍵で暗号化されて、前記各ゲートウェイのうち前記特定のゲートウェイにのみ転送された結果、当該特定のゲートウェイから前記サーバに送信された前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記主鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【請求項１４】
複数のアドホックネットワークの通信圏内にあるノードであって、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信手段と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【請求項１５】
前記鍵受信手段は、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定手段は、
前記鍵受信手段によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信手段によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする請求項１４に記載のノード。
【請求項１６】
前記鍵受信手段は、
前記サーバでの前記複数の暗号化パケットの着順に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項１５に記載のノード。
【請求項１７】
前記鍵受信手段は、
前記サーバで得られた前記複数の暗号化パケットの各々の転送回数に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項１５に記載のノード。
【請求項１８】
前記複数の暗号化パケットの各々の着順を記録する記録手段と、
前記記録手段によって記録された前記各暗号化パケットの着順に基づいて、前記各暗号化パケットの優先度を決定する決定手段と、を備え、
前記パケット送信手段は、
さらに、前記決定手段によって決定された優先度を前記サーバに送信し、
前記鍵受信手段は、
前記サーバによって前記複数の鍵のうち前記優先度に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項１５に記載のノード。
【請求項１９】
前記複数の暗号化パケットの各々の転送回数を記録する記録手段と、
前記記録手段によって記録された前記各暗号化パケットの転送回数に基づいて、前記各暗号化パケットの優先度を決定する決定手段と、を備え、
前記パケット送信手段は、
さらに、前記決定手段によって決定された優先度を前記サーバに送信し、
前記鍵受信手段は、
前記サーバによって前記複数の鍵のうち前記優先度に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項１５に記載のノード。
【請求項２０】
複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードであって、
前記特定のゲートウェイから同時通報された、前記主鍵を用いて暗号化された特定の暗号化パケットを、前記第１のノードから受信するパケット受信手段と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された前記特定の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記パケット送信手段によって送信された前記特定の暗号化パケットを復号する前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記主鍵を、前記第２のノードでの暗号化対象データを暗号化し、かつ、前記第２のノードでの復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【請求項２１】
複数のアドホックネットワークの通信圏内にあるノードであって、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【請求項２２】
前記検知手段によって接続が検知された前記携帯端末から、前記取得要求の送信指示を受け付ける受付手段をさらに備え、
前記送信手段は、
前記受付手段によって前記送信指示が受け付けられた場合、前記取得要求を前記複数のアドホックネットワークに同時通報することを特徴とする請求項２１に記載のノード。
【請求項２３】
前記送信手段は、
前記送信指示に含まれる前記サーバが通信先を識別するための前記携帯端末の識別子を含む前記取得要求を、前記複数のアドホックネットワークに同時通報することを特徴とする請求項２２に記載のノード。
【請求項２４】
前記送信手段は、
前記ゲートウェイ固有の鍵を送信済みのノードを前記サーバが識別するための前記ノードの識別子を含む前記取得要求を、前記いずれかのアドホックネットワークに同時通報することを特徴とする請求項２２または２３に記載のノード。
【請求項２５】
前記鍵受信手段は、
前記サーバに送信された前記各ゲートウェイ固有の鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定手段は、
前記鍵受信手段によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信手段によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする請求項２１〜２３のいずれか一つに記載のノード。
【請求項２６】
複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記第１のノードにおいて前記主鍵で暗号化されて、前記各ゲートウェイのうち前記特定のゲートウェイにのみ転送された結果、当該特定のゲートウェイから前記サーバに送信された前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記主鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、
を実行することを特徴とするノード。
【請求項２７】
複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶する記憶手段と、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信したノードから、当該ノードに接続された携帯端末を介して、前記複数の暗号化パケットを受信する受信手段と、
前記受信手段によって受信された前記複数の暗号化パケットを同時通報したゲートウェイに関連付けられている鍵を、前記記憶手段から暗号化パケットごとに抽出する抽出手段と、
前記抽出手段によって抽出された複数の鍵を、前記携帯端末を介して前記ノードに送信する送信手段と、
を備えることを特徴とするサーバ。
【請求項２８】
前記サーバでの前記複数の暗号化パケットの各々の着順に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする請求項２７に記載のサーバ。
【請求項２９】
前記複数の暗号化パケットについてのそれぞれのアドホックネットワーク内での転送回数に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする請求項２７に記載のサーバ。
【請求項３０】
前記複数の暗号化パケットの各々について前記ノードによって決定された優先度に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする請求項２７に記載のサーバ。
【請求項３１】
前記決定手段は、
前記複数の暗号化パケットの各々について前記ノードでの着順によって決定された優先度に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定することを特徴とする請求項３０に記載のサーバ。
【請求項３２】
前記決定手段は、
前記複数の暗号化パケットの各々について前記各々のアドホックネットワークでの転送回数によって決定された優先度に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定することを特徴とする請求項３０に記載のサーバ。
【請求項３３】
複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバであって、
前記各ゲートウェイから前記各ゲートウェイ固有の鍵を受信する受信手段と、
暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を前記複数のアドホックネットワークに同時通報したノードに接続された携帯端末を介して、前記受信手段によって受信された各鍵を前記ノードに送信する送信手段と、
を備えることを特徴とするサーバ。
【請求項３４】
前記受信手段によって受信された各鍵の着順に基づいて、前記各鍵の中から主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを前記携帯端末を介して前記ノードに送信することを特徴とする請求項３３に記載のサーバ。
【請求項３５】
前記受信手段によって受信された鍵ごとの前記鍵に関する受信回数に基づいて、前記各鍵の中から主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを前記携帯端末を介して前記ノードに送信することを特徴とする請求項３３に記載のサーバ。
【請求項３６】
複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークと通信可能であり、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶する記憶手段を有するサーバと、を備えるネットワークシステムであって、
前記ノードは、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信手段と、
前記サーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定手段と、を備え、
前記サーバは、
前記ノードが前記パケット送信手段によって送信した前記複数の暗号化パケットを、前記ノードに接続された携帯端末を介して受信する受信手段と、
前記受信手段によって受信された前記複数の暗号化パケットを同時通報したゲートウェイに関連付けられている鍵を、前記記憶手段から暗号化パケットごとに抽出する抽出手段と、
前記抽出手段によって抽出された複数の鍵を、前記携帯端末を介して前記ノードに送信する送信手段と、
を備えることを特徴とするネットワークシステム。
【請求項３７】
複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと、を備えるネットワークシステムであって、
前記ノードは、
前記サーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、を備え、
前記サーバは、
前記各ゲートウェイから前記各ゲートウェイ固有の鍵を受信する受信手段と、
前記ノードに接続された携帯端末を介して、前記受信手段によって受信された各鍵を前記ノードに送信する送信手段と、
を備えることを特徴とするネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを暗号化するための鍵を設定する鍵設定方法、ノード、サーバ、およびネットワークシステムに関する。
【背景技術】
【０００２】
アドホックネットワークは、無線通信でリンクする自己構成型のネットワークの一種である。アドホックネットワークは複数のノードにより構成される。また、アドホックネットワーク内の各ノードは、マルチホップ通信によりパケットの送受信を行う。マルチホップ通信は、互いの通信圏内に存在しないノード同士が、各ノードの通信圏内に存在する別のノードを介して通信を行う技術である。【０００３】
また、アドホックネットワークとインターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの他のネットワークとを接続する場合、ゲートウェイと呼ばれる中継機器を用いて、ネットワーク間の通信の転送が行われる。【０００４】
また、アドホックネットワークに属するノード数がある程度以上大きくなると、一つのゲートウェイでは処理が困難になる。そのような場合、ゲートウェイを複数個設けることにより、その処理を分散することが行われる。【０００５】
上述の通り、アドホックネットワークにおけるマルチホップ通信は、中継するノードが選択した経路を通して、ノード同士の通信が自律的に行われるため、各ノードの状態や通信環境によって、時々刻々と経路が変化する。複数のゲートウェイが存在するアドホックネットワークでも同様で、あるノードが他のネットワークと通信する場合、どのゲートウェイにより中継されるかは、ネットワークの状態により変化するのが一般的である。アドホックネットワークは、このような自由な経路選択による、自律性とロバスト性を持つという特徴を有している。【０００６】
一方、アドホックネットワークを利用した技術として、各家庭の電力メータに無線通信可能なノードを組み込んで、作業員が現地に出向くことなく、アドホックネットワーク経由でメータ確認などの業務を行うシステムがある。各家庭の電力の使用量などの個人情報を扱うアドホックネットワークでは、秘匿性や改ざん防止の観点からセキュアな通信を行うことが要求される。【０００７】
そこで、従来では、アドホックネットワーク内のノード間で送受信されるパケットを暗号化することで、セキュアな通信を確保することが行われている。この際、システム内で使用する暗号化用の鍵を１個として、各ノードやゲートウェイがこの鍵を保持することで、セキュアな通信を行うことが一般的に行われている。【０００８】
しかし、システム内の全ノードで共通の暗号鍵を用いた場合、万一、１個のノードが解析されて鍵が漏洩した場合、システム全体の通信の内容が漏洩する危険性がある。そのため、システム内で使用する鍵を複数にすることで、鍵漏洩時のリスクを低減することが求められている。【０００９】
また、システムへの新規ノードの初期導入時などにおいて、新規ノードは、暗号鍵が設定されるまでの間、アドホックネットワーク内の他のノードとセキュアな通信を行うことができない。このため、アドホックネットワーク経由で新規ノードに暗号鍵を自動設定することが難しく、作業員が現地に出向いて暗号鍵の設定作業を行っている。【００１０】
また、セキュア通信に関する先行技術として、たとえば、ブロードキャストにより通信を行うネットワークの暗号鍵を管理する技術がある（たとえば、下記特許文献１参照。）。また、アドホックネットワークにおいて通信開始時の鍵交換を安定して行うための技術がある（たとえば、下記特許文献２参照。）。また、アドホックネットワーク内の各ノードが適応ゲートウェイを選択するための技術がある（たとえば、下記特許文献３参照。）。【００１１】
また、セキュア通信に関する先行技術として、たとえば、端末が通信制御を行うのに必要な各種の通信制御情報を端末とは異なる他の通信装置を利用して認証サーバから取得する技術がある（たとえば、下記特許文献４参照。）。また、各通信端末が最寄りの通信端末と公開鍵を用いて相互認証を行うアドホックネットワークに関する技術がある（たとえば、下記特許文献５参照。）。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００３−３４８０７２号公報
【特許文献２】特開２００７−８８７９９号公報
【特許文献３】特開２００９−８１８５４号公報
【特許文献４】特開２００６−１３５８７４号公報
【特許文献５】特開２００７−１３３８６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、上述した従来技術では、アドホックネットワーク内の各ノードに設定する暗号鍵をゲートウェイごとに変える場合、新規ノードの初期導入時などにおいて、新規ノードが属するゲートウェイを特定することが難しいという問題があった。たとえば、新規ノードの設置場所の住所から候補となるゲートウェイを絞り込むことはできても、天候や近傍の建物との位置関係などの要因により通信状況が変化する。このため、実際にどのゲートウェイと通信可能であるかを作業員が現地に出向いて確認する必要があり、作業員の暗号鍵の設定作業にかかる作業時間および作業負荷の増大を招くという問題がある。【００１４】
また、導入された新規ノードにおいて一部の鍵しか設定されないと、アドホックネットワークの特徴の一つである自律的なゲートウェイの選択ができず、ロバスト性が低減することにより、通信効率の低減を招く可能性があるという問題がある。【００１５】
また、システム内で共通の暗号鍵を使用する場合、何らかの理由（たとえば、ノードの物理解析）によって暗号鍵が漏洩してしまうと、その影響はシステム全体に及ぶことになる。したがって、システム内のすべての通信の内容が漏洩する危険性が生じるという問題がある。そのため、システム内で使用する鍵を複数にすることで、鍵漏洩時のリスクを低減することが求められている。【００１６】
一方、システム内の全ノードで複数の鍵を設定すると、鍵ごとに暗号化及び復号の処理をおこなって、鍵ごとに暗号化されたパケットがアドホックネットワーク内で流通してしまい、アドホックネットワークが破綻する可能性がある。【００１７】
本発明は、１つの側面では、アドホックネットワーク内のノードが用いる暗号鍵の設定作業の効率化を図ることを目的とする。また、他の側面では、新規ノードの導入後において、アドホックネットワークの自律性やロバスト性を維持しつつ、鍵漏洩時のリスクの低減と通信の効率化を図ることを目的とする。
【課題を解決するための手段】
【００１８】
本発明の一態様として、複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークと通信可能であり、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶する記憶手段を有するサーバと、を備えるネットワークシステムであって、前記ノードは、前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信し、前記サーバと通信可能な携帯端末との接続を検知し、前記携帯端末との接続が検知された場合、前記携帯端末を介して、複数の暗号化パケットを前記サーバに送信し、前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信し、複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定し、前記サーバは、前記ノードが送信した前記複数の暗号化パケットを、前記ノードに接続された携帯端末を介して受信し、前記複数の暗号化パケットを同時通報したゲートウェイに関連付けられている鍵を、前記記憶手段から暗号化パケットごとに抽出し、抽出された複数の鍵を、前記携帯端末を介して前記ノードに送信する鍵設定方法、ノード、サーバ、およびネットワークシステムが提案される。【００１９】
また、本発明の他の態様として、複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと、を備えるネットワークシステムであって、前記ノードは、前記サーバと通信可能な携帯端末との接続を検知し、前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報し、同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信し、受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定し、前記サーバは、前記各ゲートウェイから前記各ゲートウェイ固有の鍵を受信し、前記ノードに接続された携帯端末を介して、受信された各鍵を前記ノードに送信する鍵設定方法、ノード、およびネットワークシステムが提案される。
【発明の効果】
【００２０】
本鍵設定方法、ノード、サーバ、およびネットワークシステムによれば、アドホックネットワーク内のノードが用いる暗号鍵の設定作業の効率化を図ることができるという効果を奏する。また、新規ノードの導入後において、アドホックネットワークの自律性やロバスト性を維持しつつ、鍵漏洩時のリスクの低減と通信の効率化を図ることができるという効果を奏する。
【図面の簡単な説明】
【００２１】
【図１】図１は、ネットワークシステムの第１の例を示す説明図である。
【図２】図２は、ネットワークシステムの第２の例を示す説明図である。
【図３】図３は、ネットワークシステムの第３の例を示す説明図である。
【図４】図４は、ネットワークシステムの第４の例を示す説明図である。
【図５】図５は、ネットワークシステムの第５の例を示す説明図である。
【図６】図６は、実施の形態１にかかるネットワークシステムの一実施例を示す説明図である。
【図７】図７は、実施の形態１にかかるネットワークシステムへの新規ノードの導入例を示す説明図である。
【図８】図８は、実施の形態１にかかる新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図（その１）である。
【図９】図９は、実施の形態１にかかる新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図（その２）である。
【図１０】図１０は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その１）である。
【図１１】図１１は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その２）である。
【図１２】図１２は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その３）である。
【図１３】図１３は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その４）である。
【図１４】図１４は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その５）である。
【図１５】図１５は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その６）である。
【図１６】図１６は、実施の形態１にかかる管理サーバのハードウェア構成例を示すブロック図である。
【図１７】図１７は、実施の形態１にかかるノード等のハードウェア構成例を示すブロック図である。
【図１８】図１８は、実施の形態１にかかる暗号鍵ＤＢの記憶内容の一例を示す説明図である。
【図１９】図１９は、実施の形態１にかかるノードの機能的構成例を示すブロック図である。
【図２０】図２０は、実施の形態１にかかる暗号化パケットのデータ構造の一例を示す説明図（その１）である。
【図２１】図２１は、実施の形態１にかかる管理サーバの機能的構成を示すブロック図である。
【図２２】図２２は、実施の形態１にかかる暗号化パケットのデータ構造の一例を示す説明図（その２）である。
【図２３】図２３は、管理サーバの認証情報の一例を示す説明図である。
【図２４】図２４は、携帯端末の認証情報の一例を示す説明図である。
【図２５】図２５は、実施の形態１にかかるノードの鍵設定処理手順の一例を示すフローチャートである。
【図２６】図２６は、実施の形態１にかかる管理サーバの鍵提供処理手順の一例を示すフローチャートである。
【図２７】図２７は、実施の形態１にかかるステップＳ２６０２の鍵抽出処理（その１）の具体的な処理手順の一例を示すフローチャートである。
【図２８】図２８は、実施の形態１にかかるステップＳ２６０２の鍵抽出処理（その２）の具体的な処理手順の一例を示すフローチャートである。
【図２９】図２９は、実施の形態１にかかる新規ノードの暗号鍵設定後の通信処理手順を示すフローチャートである。
【図３０】図３０は、実施の形態１にかかる他のノードの暗号鍵設定後の通信処理手順を示すフローチャートである。
【図３１】図３１は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その１）である。
【図３２】図３２は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その２）である。
【図３３】図３３は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その３）である。
【図３４】図３４は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その４）である。
【図３５】図３５は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その５）である。
【図３６】図３６は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その６）である。
【図３７】図３７は、実施の形態２にかかるノードの機能的構成例を示すブロック図である。
【図３８】図３８は、実施の形態２にかかるパケット情報テーブルの記憶内容の一例を示す説明図である。
【図３９】図３９は、実施の形態２にかかるノードの鍵設定処理手順の一例を示すフローチャートである。
【図４０】図４０は、実施の形態２にかかる管理サーバの機能的構成を示すブロック図である。
【図４１】図４１は、実施の形態２にかかる管理サーバの鍵提供処理手順の一例を示すフローチャートである。
【図４２】図４２は、実施の形態２にかかるダウンストリーム型により導入された新規ノードの通信例を示す説明図（その１）である。
【図４３】図４３は、実施の形態２にかかるダウンストリーム型により導入された新規ノードの通信例を示す説明図（その２）である。
【図４４】図４４は、実施の形態２にかかる境界ノードＮｘの通信処理手順を示すフローチャートである。
【図４５】図４５は、実施の形態３にかかるネットワークシステムの一実施例を示す説明図である。
【図４６】図４６は、実施の形態３にかかるネットワークシステムへの新規ノードの導入例を示す説明図である。
【図４７】図４７は、実施の形態３にかかる新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図である。
【図４８】図４８は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その１）である。
【図４９】図４９は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その２）である。
【図５０】図５０は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その３）である。
【図５１】図５１は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その４）である。
【図５２】図５２は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その５）である。
【図５３】図５３は、実施の形態３にかかるノードの機能的構成例を示すブロック図である。
【図５４】図５４は、実施の形態３にかかるＧＷ探索フレームの送信指示の具体例を示す説明図である。
【図５５】図５５は、実施の形態３にかかるＧＷ探索フレームのデータ構造の一例を示す説明図である。
【図５６】図５６は、実施の形態３にかかるゲートウェイの機能的構成例を示すブロック図である。
【図５７】図５７は、実施の形態３にかかる鍵通知フレームの具体例を示す説明図（その１）である。
【図５８】図５８は、実施の形態３にかかる鍵通知フレームの具体例を示す説明図（その２）である。
【図５９】図５９は、実施の形態３にかかる管理サーバの機能的構成を示すブロック図である。
【図６０】図６０は、実施の形態３にかかる送信済リストの具体例を示す説明図である。
【図６１】図６１は、実施の形態３にかかる暗号鍵ＤＢの記憶内容の一例を示す説明図である。
【図６２】図６２は、実施の形態３にかかる新規ノードの鍵設定処理手順の一例を示すフローチャートである。
【図６３】図６３は、実施の形態３にかかるゲートウェイの鍵通知処理手順の一例を示すフローチャートである。
【図６４】図６４は、実施の形態３にかかる管理サーバの鍵提供処理手順の一例を示すフローチャート（その１）である。
【図６５】図６５は、実施の形態３にかかる管理サーバの鍵提供処理手順の一例を示すフローチャート（その２）である。
【図６６】図６６は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その１）である。
【図６７】図６７は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その２）である。
【図６８】図６８は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その３）である。
【図６９】図６９は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その４）である。
【図７０】図７０は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その５）である。
【図７１】図７１は、実施の形態４にかかる管理サーバの機能的構成を示すブロック図である。
【図７２】図７２は、実施の形態４にかかる設定部での鍵通知フレームの設定例１を示す説明図である。
【図７３】図７３は、実施の形態４にかかる設定部での鍵通知フレームの設定例２を示す説明図である。
【図７４】図７４は、実施の形態４にかかる管理サーバの鍵提供処理手順の一例を示すフローチャート（その１）である。
【図７５】図７５は、実施の形態４にかかる管理サーバの鍵提供処理手順の一例を示すフローチャート（その２）である。
【図７６】図７６は、実施の形態４にかかる境界ノードの通信処理手順を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下に添付図面を参照して、本発明にかかる鍵設定方法、ノード、およびネットワークシステムの実施の形態を詳細に説明する。アドホックネットワークとは、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）のようなアクセスポイントを必要としない、無線で接続できるノード群で構成された自立分散型無線ネットワークである。なお、本明細書では、ゲートウェイ（いわゆるシンクノード）もアドホックネットワークに含まれるものとする。
【００２３】
アドホックネットワークでは、当該アドホックネットワーク内の各ノードに設定する暗号鍵を、セキュリティ等のため、ゲートウェイごとに変える場合がある。このようにゲートウェイごとに暗号鍵を変える場合、セキュリティを考慮しないアドホックネットワークや、１個の暗号鍵を全ノードが共有するアドホックネットワークでは可能であった、自律的なゲートウェイの選択が行えないという状況が発生する。そのため、アドホックネットワークの特徴の一つであるロバスト性が低減することにより、通信効率の低減を招く可能性がある。
【００２４】
図１は、ネットワークシステムの第１の例を示す説明図である。第１の例は、セキュリティを考慮しない、すなわち、暗号鍵がないネットワークシステムを示している。図１では、管理サーバ１０１とゲートウェイ群（Ｇａ，Ｇｂ）とがネットワークＮＷ１を介して通信可能とする。図１では、説明を単純化するため、ゲートウェイ数を２個、ノード数を３個とする。セキュリティを考慮していないため、暗号鍵はないものとする。
【００２５】
ノードＮｃは、ノードＮａ，Ｎｂの通信圏内にある。ノードＮｃは、通信状況などに応じて、ノードＮａまたはノードＮｂと通信することで、いずれか一方のゲートウェイ（ＧａまたはＧｂ）を経由してネットワークＮＷ１を介して管理サーバ１０１と通信が可能である。第１の例では、自律的なゲートウェイの選択はできるが、暗号鍵が使用されていないため、セキュリティに問題がある。
【００２６】
図２は、ネットワークシステムの第２の例を示す説明図である。第２の例は、セキュリティを考慮した、すなわち、暗号鍵があるネットワークシステムを示している。図１と同一構成には同一符号を付し、その説明を省略する。図２では、一方で、セキュリティを考慮するため、ゲートウェイＧａの配下にノードＮａ，Ｎｃ、ゲートウェイＧｂの配下にノードＮｂが所属するものとする。
【００２７】
すなわち、図２では、ゲートウェイＧａ，ノードＮａ，ＮｃからなるアドホックネットワークＡａは、暗号鍵Ｋａを保持する。アドホックネットワークＡａ内では、暗号化パケットＳＰａが送信される。また、ゲートウェイＧｂとノードＮｂからなるアドホックネットワークＡｂは、暗号鍵Ｋｂを保持する。アドホックネットワークＡｂ内では、暗号化パケットＳＰｂが送信される。この場合、ノードＮｃは、アドホックネットワークＡｂのゲートウェイＧｂとは通信することができなくなる。
【００２８】
ここで、図１および図２において、ある時点で、ノードＮａ，Ｎｃ間の通信だけが天候等の影響で途切れた場合、図１では、ノードＮｃはノードＮｂ経由で通信が可能であるが、図２では、ノードＮｃは暗号化パケットＳＰｂによる通信自体が遮断されてしまう。したがって、図２のように、セキュリティを考慮する場合は、自律的なゲートウェイの選択が行えず、ロバスト性が低減し、通信効率の低減を招くこととなる。
【００２９】
一方、ロバスト性の低減防止のため、アドホックネットワークの各ノードに複数の暗号鍵を設定することも考えられる。
【００３０】
図３は、ネットワークシステムの第３の例を示す説明図である。第３の例は、セキュリティを考慮し、かつ、ロバスト性を維持したネットワークシステムを示している。図１および図２と同一構成には同一符号を付し、その説明を省略する。図３では、ゲートウェイＧａ，Ｇｂ，ノードＮａ〜Ｎｃが、それぞれ暗号鍵Ｋａ，Ｋｂを保持している。
【００３１】
ここで、ある時点で、ノードＮａ，Ｎｃ間の通信だけが天候等の影響で途切れた場合であっても、図３では、ノードＮｃは暗号化パケットＳＰｂによる通信をおこなうことができる。しかしながら、ｎ個のノードで暗号鍵を複数個（ｍ個）設定すると、各ノードでは、複数の暗号鍵を使用する処理量がｍ倍になる。さらに、通信量は、最悪でｎm（ｎのｍ乗）倍となり、アドホックネットワークが破綻する可能性があり、ゲートウェイ数が増加するほど顕著になる。
【００３２】
たとえば、図３の場合、各ノードＮａ〜Ｎｃでの処理量は２倍になり、通信量は最悪で３2＝９倍になる。したがって、図２のように、ゲートウェイＧａ，Ｇｂ毎に暗号鍵Ｋａ，Ｋｂを１個設定するアドホックネットワークＡａ，Ａｂにおいて、複数の暗号鍵を保持するノードの数は最小にする必要がある。
【００３３】
このように、本実施の形態では、ゲートウェイごとにセキュリティを考慮して（暗号鍵を設定して）アドホックネットワークが構築されてはいるが、複数のアドホックネットワークの通信圏内に新規設定されるノードについてのみ、複数の暗号鍵を持たせる。
【００３４】
図４は、ネットワークシステムの第４の例を示す説明図である。第４の例は、セキュリティを考慮し、ロバスト性を維持し、かつ、通信効率性のよいネットワークシステムを示している。図１〜図３と同一構成には同一符号を付し、その説明を省略する。図４では、アドホックネットワークＡａ内のゲートウェイＧａおよびノードＮａは、暗号鍵Ｋａを保持している。アドホックネットワークＡｂ内のゲートウェイＧｂおよびノードＮｂは、暗号鍵Ｋｂを保持している。アドホックネットワークＡａ，Ａｂの両方の通信圏内のノードＮｃのみ暗号鍵Ｋａ，Ｋｂを保持する。
【００３５】
第４の例では、各アドホックネットワークＡａ，Ａｂでは、それぞれ固有の暗号鍵Ｋａ，Ｋｂが設定されている。したがって、セキュリティを維持することができる。
【００３６】
また、ノードＮｃには、暗号鍵Ｋａ，Ｋｂが設定されているため、ノードＮａ，Ｎｂのいずれか一方との通信が遮断されても、他方の経路で通信が可能となる。したがって、ゲートウェイを自律的に選択でき、ロバスト性の低減を防止することができる。また、ノードＮｃには、暗号鍵Ｋａ，Ｋｂが設定されているため、鍵漏洩リスクの低減化を図ることができる。
【００３７】
また、ゲートウェイＧａおよびノードＮａは暗号鍵Ｋａ、ゲートウェイＧｂおよびノードＮｂは暗号鍵Ｋｂしか保持していないため、各ノードでの処理量や通信量が増加しないため、アドホックネットワークＡａ，Ａｂ自体が破綻をきたすことはない。したがって、アドホックネットワークＡａ，Ａｂ内での通信の効率性の向上を図ることができる。
【００３８】
図５は、ネットワークシステムの第５の例を示す説明図である。第５の例は、図４に示した第４の例のノードＮｃの配下に、ノードＮｄを追加した例である。また、ノードＮｃは、ゲートウェイＧａ，Ｇｂを自律的に選択可能とするため、暗号鍵Ｋａ，Ｋｂを保持しているが、第５の例では、一方を主鍵（たとえば、暗号鍵Ｋａ）とし、他方を副鍵（たとえば、暗号鍵Ｋｂ）とする。したがって、ノードＮｃは、通常は主鍵である暗号鍵Ｋａを用いるため暗号化パケットＳＰａはゲートウェイＧａに転送されることになるが、ノードＮａとの間で通信障害が発生すると、副鍵である暗号鍵Ｋｂを用いて暗号化パケットＳＰｂがゲートウェイＧｂに転送されることになる。
【００３９】
この場合、ノードＮｃの配下に設置されるノードＮｄには、主鍵である暗号鍵Ｋａのみ設定される。これにより、暗号鍵が複数個となるノード数を制限することができ、第４の例と同様、アドホックネットワークＡａ，Ａｂ内での通信の効率性の向上を図ることができる。
【００４０】
以下の実施の形態では、第４の例で示したようなアドホックネットワークＡａ，Ａｂの境界において、ノードＮｃ（境界ノード）を新規ノードとして設置して、複数の暗号鍵を設定する鍵設定例について説明する。また、ノードＮｃについて鍵設定が行われたあと、その配下にノードＮｄが新規ノードとして設置された場合に、主鍵のみを設定する鍵設定例について説明する。
【００４１】
また、鍵設定処理には、ダウンストリーム型とアップストリーム型の２種類がある。ダウンストリーム型とは、新規ノードに対し上流側（ゲートウェイ）からパケットをブロードキャストすることで、鍵設定をおこなう処理である。一方、アップストリーム型とは、新規ノードから上流側（ゲートウェイ）に対しパケットをアップロードすることで、鍵設定を行う処理である。以降、ダウンストリーム型については、図６〜図４５を用いて説明する。一方、アップストリーム型については、図４６〜図７６を用いて説明する。
【００４２】
＜実施の形態１：ダウンストリーム型で複数鍵設定＞
まず、実施の形態１について説明する。実施の形態１は、図４に示した第４の例について、いわゆるダウンストリーム型で新規ノード（図４ではノードＮｃ）に複数の暗号鍵を設定する処理である。以下、図６〜図３０を用いて説明する。
【００４３】
（ネットワークシステムの一実施例）
図６は、実施の形態１にかかるネットワークシステムの一実施例を示す説明図である。図６において、ネットワークシステム１００は、管理サーバ１０１と、ゲートウェイＧ１〜Ｇｎと、ノードＮ１−１〜Ｎ１−ｍ１，…，Ｎｉ−１〜Ｎｉ−ｍｉ，…，Ｎｎ−１〜Ｎｎ−ｍｎと、を含む構成である。
【００４４】
ネットワークシステム１００において、管理サーバ１０１とゲートウェイＧ１〜Ｇｎは、インターネット、ＬＡＮ、ＷＡＮなどのネットワークＮＷ１を介して相互に通信可能に接続されている。また、ゲートウェイＧｉとノードＮｉ−１〜Ｎｉ−ｍｉは、アドホックネットワークＡｉを介して接続されている（ｉ＝１，２，…，ｎ）。
【００４５】
ここで、管理サーバ１０１は、暗号鍵ＤＢ（データベース）１１０を備え、各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵を管理するコンピュータである。ゲートウェイＧｉ固有の暗号鍵（以下、「暗号鍵Ｋｉ」という）は、ゲートウェイＧｉが属するアドホックネットワークＡｉ内のノード間で送受信されるパケットを暗号化するための鍵情報である。なお、暗号鍵ＤＢ１１０についての詳細な説明は、図１８を用いて後述する。
【００４６】
ゲートウェイＧｉは、アドホックネットワークＡｉとネットワークＮＷ１とを接続する中継機器である。ゲートウェイＧｉは、アドホックネットワークＡｉのプロトコルとネットワークＮＷ１のプロトコルの両方を理解し、アドホックネットワークＡｉとネットワークＮＷ１との間の通信の転送を行う。
【００４７】
ノードＮｉ−１〜Ｎｉ−ｍｉは、所定の通信圏内の他ノードとマルチホップ通信を行う無線通信装置である。アドホックネットワークＡｉでは、すべてのノードＮｉ−１〜Ｎｉ−ｍｉがゲートウェイＧｉと直接通信できる必要はなく、一部のノードがゲートウェイＧｉと通信可能であればよい。
【００４８】
ネットワークシステム１００は、たとえば、各家庭の電力やガスの使用量を収集するシステムに適用することができる。具体的には、たとえば、各家庭の電力メータやガスメータに各ノードＮｉ−１〜Ｎｉ−ｍｉを組み込むことで、アドホックネットワークＡｉ内のノード間で各家庭の電力やガスの使用量を送受信する。なお、各家庭の電力やガスの使用量は、各ノードＮｉ−１〜Ｎｉ−ｍｉが計測してもよく、また、各ノードＮｉ−１〜Ｎｉ−ｍｉが電力メータやガスメータから取得してもよい。
【００４９】
ゲートウェイＧｉは、アドホックネットワークＡｉ内のノードＮｉ−１〜Ｎｉ−ｍｉから受信した各家庭の電力やガスの使用量を、ネットワークＮＷ１を介して電力会社やガス会社のサーバ（たとえば、管理サーバ１０１）に送信する。これにより、作業員が現地に出向くことなく電力やガスの使用量を収集することができる。
【００５０】
また、ネットワークシステム１００では、アドホックネットワークＡｉごとにゲートウェイＧｉ固有の暗号鍵Ｋｉを用いてパケットを暗号化する。これにより、アドホックネットワークＡｉのセキュア通信（データ秘匿性、改ざん防止など）を確保する。また、アドホックネットワークＡｉごとに暗号鍵Ｋｉを変えることで、鍵漏洩時のリスクを低減させる。
【００５１】
なお、各ノードは1つのアドホックネットワークに属する構成を記述しているが、複数のアドホックネットワーク、ゲートウェイに所属するノードがある構成としてもよい。その場合、複数のアドホックネットワークに属するノードは、対応する複数のゲートウェイ鍵を保持する。
【００５２】
（新規ノードの導入時における暗号鍵Ｋｉの設定例）
つぎに、図６に示したネットワークシステム１００への新規ノードの導入時における暗号鍵Ｋｉの設定例について説明する。実施の形態１では、新規ノードに対し、複数の暗号鍵を設定するが、ここでは、まず、１個の暗号鍵を設定する例について説明し、そのあとで、複数の鍵の設定例（図１０〜図１５）について説明する。なお、複数の鍵の設定例（図１０〜図１５）においても、個々の鍵の設定については、以下の図７〜図９に示す設定となる。
【００５３】
図７は、実施の形態１にかかるネットワークシステム１００への新規ノードの導入例を示す説明図である。図７において、ネットワークシステム１００のアドホックネットワークＡｉ内に新規ノードＮｉ−ｘが導入されている。なお、図７では、アドホックネットワークＡｉ内のノードＮｉ−１〜Ｎｉ−ｍｉのうち、代表としてノードＮｉ−１〜Ｎｉ−３を示している。
【００５４】
新規ノードＮｉ−ｘの導入時は、作業員ＯＰは新規ノードＮｉ−ｘがどのアドホックネットワークＡｉに属しているのかわからない。そこで、新規ノードＮｉ−ｘが傍受した、ゲートウェイＧｉからの暗号化パケットを、作業員ＯＰが使用する携帯端末ＭＴを利用して、管理サーバ１０１に送信することで、新規ノードＮｉ−ｘに設定すべき暗号鍵Ｋｉを管理サーバ１０１に問い合わせる。これにより、適切な暗号鍵Ｋｉを管理サーバ１０１から取得して新規ノードＮｉ−ｘに自動設定される。
【００５５】
ここで、携帯端末ＭＴは、作業員ＯＰが使用する携帯型の通信装置であり、たとえば、携帯電話機、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍ）電話機、スマートフォン、ノート型のパーソナル・コンピュータなどである。携帯端末ＭＴは、直接通信できない新規ノードＮｉ−ｘと管理サーバ１０１との間の通信を中継する。
【００５６】
図８および図９は、実施の形態１にかかる新規ノードＮｉ−ｘの導入時におけるネットワークシステム１００の動作例を示すシーケンス図である。図８のシーケンスは、たとえば、作業員ＯＰが現地（新規ノードＮｉ−ｘの設置場所）に出向くまでに行われる動作例である。図９のシーケンスは、たとえば、作業員ＯＰが現地に出向いたあとに行われる動作例である。
【００５７】
図８のシーケンスにおいて、（１）ゲートウェイＧｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。（２）管理サーバ１０１は、ゲートウェイＧｉ固有の暗号鍵ＫｉとゲートウェイＧｉのアドレスとを関連付けて暗号鍵ＤＢ１１０に登録する。
【００５８】
（３）ゲートウェイＧｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて暗号化されたパケット（以下、「暗号化パケットＳＰｉ」という）をアドホックネットワークＡｉにブロードキャスト（同時通報）する。暗号化パケットＳＰｉには、たとえば、ゲートウェイＧｉのアドレスが含まれている。
【００５９】
（４）ノードＮｉ−１は、ゲートウェイＧｉからの暗号化パケットＳＰｉを通信圏内のノードＮｉ−３に送信する。（５）ノードＮｉ−３は、ノードＮｉ−１からの暗号化パケットＳＰｉを通信圏内の新規ノードＮｉ−ｘに送信する。（６）新規ノードＮｉ−ｘは、ノードＮｉ−３からの暗号化パケットＳＰｉを記録する。ただし、この時点では、新規ノードＮｉ−ｘは、暗号鍵Ｋｉが未設定のため、暗号化パケットＳＰｉを復号することはできない。
【００６０】
図９のシーケンスにおいて、（７）携帯端末ＭＴは、携帯電話網やインターネットなどのネットワークＮＷ２を介して管理サーバ１０１に接続する。この際、携帯端末ＭＴは、たとえば、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）を用いて、管理サーバ１０１とセキュアな通信を行う。なお、管理サーバ１０１と携帯端末ＭＴとの間でセキュア通信を実現するための通信方式については、図２３および図２４を用いて後述する。
【００６１】
（８）携帯端末ＭＴは、有線または無線のネットワークＮＷ３を介して新規ノードＮｉ−ｘに接続する。具体的には、たとえば、作業員ＯＰが、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ケーブルを用いて、携帯端末ＭＴと新規ノードＮｉ−ｘとを接続することで、携帯端末ＭＴと新規ノードＮｉ−ｘとの間にネットワークＮＷ３が確立される。
【００６２】
（９）新規ノードＮｉ−ｘは、ネットワークＮＷ３を介して、図８に示した（６）において記録した暗号化パケットＳＰｉを携帯端末ＭＴに送信する。（１０）携帯端末ＭＴは、ネットワークＮＷ２を介して、新規ノードＮｉ−ｘからの暗号化パケットＳＰｉを管理サーバ１０１に送信する。
【００６３】
（１１）管理サーバ１０１は、携帯端末ＭＴからの暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを暗号鍵ＤＢ１１０の中から抽出する。具体的には、たとえば、管理サーバ１０１は、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰｉに含まれるゲートウェイＧｉのアドレスと関連付けて記憶されている暗号鍵Ｋｉを抽出する。
【００６４】
（１２）管理サーバ１０１は、ネットワークＮＷ２を介して、抽出された暗号鍵Ｋｉを携帯端末ＭＴに送信する。（１３）携帯端末ＭＴは、ネットワークＮＷ３を介して、管理サーバ１０１からの暗号鍵Ｋｉを新規ノードＮｉ−ｘに送信する。（１４）新規ノードＮｉ−ｘは、携帯端末ＭＴからの暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。
【００６５】
このように、新規ノードＮｉ−ｘが、セキュア通信のための暗号鍵Ｋｉが未設定でも受信できるゲートウェイＧｉからの暗号化パケットＳＰｉを手掛かりに、携帯端末ＭＴを介して、管理サーバ１０１に鍵要求することで、設定すべき暗号鍵Ｋｉを取得することができる。つぎに、複数のアドホックネットワークの境界（通信圏内）に、新規ノードを導入する例について説明する。
【００６６】
図１０〜図１５は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図である。図１０〜図１５では、例として２つのアドホックネットワークＡ１，Ａ２の境界に、新規ノードＮｘを導入する例について説明する。
【００６７】
図１０は、初期状態（Ａ）を示している。アドホックネットワークＡ１内のノードを、ノードＮ１−１〜Ｎ１−４とし、アドホックネットワークＡ２内のノードを、ノードＮ２−１〜Ｎ２−３とする。アドホックネットワークＡ１内のゲートウェイＧ１およびノードＮ１−１〜Ｎ１−４は、ゲートウェイＧ１固有の暗号鍵Ｋ１を保持している。アドホックネットワークＡ２内のゲートウェイＧ２およびノードＮ２−１〜Ｎ２−３は、ゲートウェイＧ２固有の暗号鍵Ｋ２を保持している。
【００６８】
新規ノードＮｘは、ノードＮ１−３およびノードＮ２−２の通信圏内に設置されているものとする。また、管理サーバ１０１の暗号鍵ＤＢ１１０には、ゲートウェイＧ１のアドレスに関連付けて暗号鍵Ｋ１が、ゲートウェイＧ２のアドレスに関連付けて暗号鍵Ｋ２が格納されているものとする。
【００６９】
図１１は、初期状態（Ａ）の次状態（Ｂ）を示している。（Ｂ）では、図８に示したように、ゲートウェイＧ１が、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１を、アドホックネットワークＡ１にブロードキャストしている。同様に、ゲートウェイＧ２が、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２を、アドホックネットワークＡ２にブロードキャストしている。新規ノードＮｘは、ノードＮ１−３の通信圏内にあるため、ノードＮ１−３がノードＮ１−１から受信した暗号化パケットＳＰ１を傍受する。
【００７０】
同様に、新規ノードＮｘは、ノードＮ２−２の通信圏内にあるため、ノードＮ２−２がノードＮ２−１から受信した暗号化パケットＳＰ２を傍受する。新規ノードＮｘは、この段階では暗号鍵Ｋ１，Ｋ２が未設定なため、傍受した暗号化パケットＳＰ１，ＳＰ２を復号することができない。
【００７１】
図１２は、状態（Ｂ）の次状態（Ｃ）を示している。（Ｃ）では、図７および図９に示したように、管理サーバ１０１とセキュアなネットワークＮＷ２を介して接続可能な携帯端末ＭＴが、新規ノードＮｘと接続された状態を示している。
【００７２】
図１３は、状態（Ｃ）の次状態（Ｄ）を示している。（Ｄ）では、（Ｃ）の状態から、新規ノードＮｘが、傍受した暗号化パケットＳＰ１，ＳＰ２を、ネットワークＮＷ３を介して携帯端末ＭＴに送信し、携帯端末ＭＴが、新規ノードＮｘから受信した暗号化パケットＳＰ１，ＳＰ２を、ネットワークＮＷ２を介して管理サーバ１０１に送信している。
【００７３】
図１４は、状態（Ｄ）の次状態（Ｅ）を示している。（Ｅ）では、管理サーバ１０１が（Ｄ）により受け取った暗号化パケットＳＰ１，ＳＰ２から、ゲートウェイＧ１、Ｇ２を特定する。特定方法については、各種あるが、たとえば、暗号化パケットＳＰ１，ＳＰ２の暗号化されていないヘッダに、送信元のゲートウェイＧ１，Ｇ２のアドレスが記述されている場合は、ヘッダを解析することで、ゲートウェイＧ１，Ｇ２のアドレスが特定できる。これにより、管理サーバ１０１は、暗号鍵ＤＢ１１０から、ゲートウェイＧ１，Ｇ２のアドレスに関連付けて記憶されている暗号鍵Ｋ１，Ｋ２を抽出する。
【００７４】
また、暗号化パケットＳＰ１，ＳＰ２のヘッダからゲートウェイＧ１，Ｇ２のアドレスを特定できない場合は、暗号鍵ＤＢ１１０内の暗号鍵Ｋ１，Ｋ２，…で、暗号化パケットＳＰ１，ＳＰ２の復号を試みる。そして、管理サーバ１０１は、復号が成功した暗号鍵Ｋ１，Ｋ２を暗号鍵ＤＢ１１０から抽出する。いずれにしても、管理サーバ１０１は、暗号鍵ＤＢ１１０から抽出された暗号鍵Ｋ１，Ｋ２を、ネットワークＮＷ２、携帯端末ＭＴ、ネットワークＮＷ３経由で、新規ノードＮｘに送信する。
【００７５】
図１５は、状態（Ｅ）の次状態（Ｆ）を示している。（Ｆ）では、新規ノードＮｘは、管理サーバ１０１から送信されてきた暗号鍵Ｋ１，Ｋ２を受信して、暗号化および復号するための鍵に設定する。したがって、このあと、新規ノードＮｘは、ノードＮ１−３からの暗号化パケットＳＰ１を暗号鍵Ｋ１で復号することができる。また、新規ノードＮｘは、ノードＮ２−２からの暗号化パケットＳＰ２を暗号鍵Ｋ２で復号することができる。また、新規ノードＮｘからは、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１がノードＮ１−３に送信され、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２がノードＮ２−２に送信される。
【００７６】
なお、新規ノードＮｘからの暗号化パケットＳＰ１は、ノードＮ２−２に傍受されるが、ノードＮ２−２は暗号鍵Ｋ１を保持していないため、復号できず、これ以上、暗号化パケットＳＰ１を転送しない。同様に、新規ノードＮｘからの暗号化パケットＳＰ２は、ノードＮ１−３に傍受されるが、ノードＮ１−３は暗号鍵Ｋ２を保持していないため、復号できず、これ以上、暗号化パケットＳＰ２を転送しない。したがって、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。
【００７７】
なお、以下の説明において、「ノードＮ」とは、ネットワークシステム１００のアドホックネットワークＡ１〜ＡｎのいずれかのアドホックネットワークＡｉ内でマルチホップ通信によりパケットを送受信するノードを示す。また、「ノード等」とは、ネットワークシステム１００のゲートウェイＧ１〜ＧｎおよびノードＮを示す。
【００７８】
（管理サーバ１０１のハードウェア構成例）
図１６は、実施の形態１にかかる管理サーバ１０１のハードウェア構成例を示すブロック図である。図１６において、管理サーバ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１６０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）１６０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１６０３と、磁気ディスクドライブ１６０４と、磁気ディスク１６０５と、光ディスクドライブ１６０６と、光ディスク１６０７と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）１６０８と、ディスプレイ１６０９と、キーボード１６１０と、マウス１６１１と、を備えている。また、ＣＰＵ１６０１〜マウス１６１１はバス１６００によってそれぞれ接続されている。
【００７９】
ここで、ＣＰＵ１６０１は、管理サーバ１０１の全体の制御を司る。ＲＯＭ１６０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１６０３は、ＣＰＵ１６０１のワークエリアとして使用される。磁気ディスクドライブ１６０４は、ＣＰＵ１６０１の制御に従って磁気ディスク１６０５に対するデータのリード／ライトを制御する。磁気ディスク１６０５は、磁気ディスクドライブ１６０４の制御で書き込まれたデータを記憶する。
【００８０】
光ディスクドライブ１６０６は、ＣＰＵ１６０１の制御に従って光ディスク１６０７に対するデータのリード／ライトを制御する。光ディスク１６０７は、光ディスクドライブ１６０６の制御で書き込まれたデータを記憶したり、光ディスク１６０７に記憶されたデータをコンピュータに読み取らせたりする。
【００８１】
Ｉ／Ｆ１６０８は、通信回線を通じてネットワークＮＷ１，ＮＷ２に接続され、このネットワークＮＷ１，ＮＷ２を介して他の装置（たとえば、ゲートウェイＧｉ、携帯端末ＭＴ）に接続される。Ｉ／Ｆ１６０８は、ネットワークＮＷ１，ＮＷ２と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ１６０８には、たとえば、モデムやＬＡＮアダプタなどを採用することができる。
【００８２】
ディスプレイ１６０９は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ１６０９は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００８３】
キーボード１６１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス１６１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。なお、携帯端末ＭＴについても、図１６に示した管理サーバ１０１と同様のハードウェア構成により実現できる。
【００８４】
（ノード等のハードウェア構成例）
図１７は、実施の形態１にかかるノード等のハードウェア構成例を示すブロック図である。図１７において、ノード等は、ＣＰＵ１７０１と、ＲＡＭ１７０２と、フラッシュメモリ１７０３と、Ｉ／Ｆ１７０４と、暗号化回路１７０５と、を備えている。ＣＰＵ１７０１〜暗号化回路１７０５は、バス１７００によってそれぞれ接続されている。
【００８５】
ここで、ＣＰＵ１７０１は、ノード等の全体の制御を司る。ＲＡＭ１７０２は、ＣＰＵ１７０１のワークエリアとして使用される。フラッシュメモリ１７０３は、プログラムや暗号鍵などの鍵情報を記憶している。Ｉ／Ｆ１７０４は、マルチホップ通信によりパケットを送受信する。また、ゲートウェイＧｉのＩ／Ｆ１７０４は、通信回線を通じてネットワークＮＷ１に接続され、このネットワークＮＷ１を介して管理サーバ１０１に接続される。
【００８６】
暗号化回路１７０５は、データを暗号化する場合に暗号鍵によりデータを暗号化する回路である。暗号化をソフトウェア的に実行する場合は、暗号化回路１７０５に相当するプログラムをフラッシュメモリ１７０３に記憶させておくことで、暗号化回路１７０５は不要となる。
【００８７】
（暗号鍵ＤＢ１１０の記憶内容）
図１８は、暗号鍵ＤＢ１１０の記憶内容の一例を示す説明図である。図１８において、暗号鍵ＤＢ１１０は、ＩＤ、ＧＷアドレスおよび暗号鍵のフィールドを有し、各フィールドに情報を設定することで、ゲートウェイＧ１〜Ｇｎごとの鍵情報１８００−１〜１８００−ｎをレコードとして記憶している。
【００８８】
ここで、ＩＤは、本明細書において説明上用いる各ゲートウェイＧｉの識別子である。ＧＷアドレスは、ゲートウェイＧｉのアドレスである。ＧＷアドレスとしては、たとえば、ゲートウェイＧｉのＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスやＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスを用いることができる。暗号鍵は、各ゲートウェイＧｉ固有の暗号鍵Ｋｉであり、具体的には、たとえば、１２８〜２５６ビット程度のバイナリデータである。
【００８９】
鍵情報１８００−１を例に挙げると、ゲートウェイＧ１のＧＷアドレスは『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』、暗号鍵は『暗号鍵Ｋ１』である。なお、暗号鍵ＤＢ１１０は、たとえば、図１６に示した管理サーバ１０１のＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置により実現される。
【００９０】
暗号鍵ＤＢ１１０の記憶内容は、図８のシーケンスで説明したように、管理サーバ１０１がゲートウェイＧｉ固有の暗号鍵ＫｉをゲートウェイＧｉから受信することで更新してもよい。また、図１６に示したキーボード１６１０やマウス１６１１を用いたユーザの操作入力により、暗号鍵ＤＢ１１０の記憶内容を更新することにしてもよい。
【００９１】
（ノードＮの機能的構成例）
図１９は、実施の形態１にかかるノードＮの機能的構成例を示すブロック図である。図１９において、ノードＮは、パケット受信部１９０１と、検知部１９０２と、パケット送信部１９０３と、鍵受信部１９０４と、設定部１９０５と、を含む構成である。各機能部（パケット受信部１９０１〜設定部１９０５）は、具体的には、たとえば、図１７に示したＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されたプログラムをＣＰＵ１７０１に実行させることにより、または、Ｉ／Ｆ１７０４により、その機能を実現する。また、各機能部（パケット受信部１９０１〜設定部１９０５）の処理結果は、特に指定する場合を除いて、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶される。
【００９２】
パケット受信部１９０１は、アドホックネットワークＡｉ内のゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを受信する。暗号化パケットＳＰｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて暗号化されたパケットである。この暗号化パケットＳＰｉは、たとえば、アドホックネットワークＡｉ内のノード等で同期をとるためにゲートウェイＧｉからブロードキャストされるパケットである。
【００９３】
具体的には、たとえば、パケット受信部１９０１が、アドホックネットワークＡｉ内の他のノードＮからマルチホップ通信により暗号化パケットＳＰｉを受信する。ただし、ノードＮの通信圏内にゲートウェイＧｉが存在していれば、パケット受信部１９０１は、ゲートウェイＧｉから暗号化パケットＳＰｉを直接受信する場合もある。ここで、暗号化パケットＳＰｉのデータ構造について説明する。
【００９４】
図２０は、実施の形態１にかかる暗号化パケットのデータ構造の一例を示す説明図（その１）である。図２０において、暗号化パケットＳＰｉは、ヘッダ部２０１０とペイロード部２０２０とを含む構成である。ヘッダ部２０１０には、宛先アドレス、差出アドレス、ホップ数およびＧＷアドレスが記述されている。ペイロード部２０２０には、暗号化されたデータ本体が記述されている（図２０中ハッチ部分）。
【００９５】
ここで、宛先アドレスは、送信先のアドレスである。暗号化パケットＳＰｉがゲートウェイＧｉからのブロードキャストパケットである場合、宛先アドレスには、ブロードキャスト用のＭＡＣアドレス『００：００：００：００：００：００』が記述される。差出アドレスは、送信元のアドレスである。ここでは、アドホックネットワークＡｉ内のノードＮ（新規ノードＮｘ除く）のＭＡＣアドレスが記述されている。
【００９６】
ホップ数は、暗号化パケットＳＰｉを残り何回転送するのかを示す残余の転送回数である。ゲートウェイＧｉからブロードキャストされる暗号化パケットＳＰｉのホップ数の最大値は予め設定されている。このホップ数は暗号化パケットＳＰｉの転送時にデクリメントされ、ホップ数が『０』となった暗号化パケットＳＰｉは棄却される。ここでは、暗号化パケットＳＰ１のホップ数『１０』が記述されている。
【００９７】
ＧＷアドレスは、ゲートウェイＧｉのアドレスである。ここでは、ゲートウェイＧ１のＭＡＣアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』が記述されている。なお、ここでは宛先アドレス、差出アドレスおよびＧＷアドレスの一例として、ＭＡＣアドレスを用いて説明したが、ＩＰアドレスなどのアドレスを用いることにしてもよい。
【００９８】
図１９の説明に戻り、検知部１９０２は、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知する。具体的には、たとえば、作業員ＯＰがＵＳＢケーブルを用いて携帯端末ＭＴと新規ノードＮｘとを接続した結果、検知部１９０２が、ＵＳＢケーブルを介した携帯端末ＭＴとの接続を検知する。
【００９９】
パケット送信部１９０３は、携帯端末ＭＴとの接続が検知された場合、携帯端末ＭＴを介して、受信された暗号化パケットＳＰｉを管理サーバ１０１に送信する。具体的には、たとえば、パケット送信部１９０３が、ＵＳＢケーブルなどのネットワークＮＷ３を介して、暗号化パケットＳＰｉを携帯端末ＭＴに送信する。この結果、携帯端末ＭＴが、ネットワークＮＷ２を介して、ノードＮからの暗号化パケットＳＰｉを管理サーバ１０１に送信する。
【０１００】
鍵受信部１９０４は、携帯端末ＭＴを介して、送信された暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信する。この暗号鍵Ｋｉは、たとえば、パケットを暗号化するとともに、暗号鍵Ｋｉを用いて暗号化された暗号化パケットＳＰｉを復号することができる共通鍵である。
【０１０１】
設定部１９０５は、受信された各ゲートウェイＧｉ固有の暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。具体的には、たとえば、設定部１９０５は、特定の記憶領域に各暗号鍵Ｋｉを書き込む。特定の記憶領域のアドレスは、パケットを暗号化する際、または暗号化パケットＳＰｉを復号する際に指定されるアドレスである。これにより、以降においてノードＮが送信対象となるパケットを暗号化、および暗号化パケットＳＰｉを復号することが暗号鍵Ｋｉごとに可能となり、アドホックネットワークＡｉ内のノード間でセキュア通信を行うことができる。
【０１０２】
（管理サーバ１０１の機能的構成）
図２１は、実施の形態１にかかる管理サーバ１０１の機能的構成を示すブロック図である。図２１において、管理サーバ１０１は、受信部２１０１と、抽出部２１０２と、送信部２１０３と、を含む構成である。各機能部（受信部２１０１〜送信部２１０３）は、具体的には、たとえば、図１６に示したＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されたプログラムをＣＰＵ１６０１に実行させることにより、または、Ｉ／Ｆ１６０８により、その機能を実現する。また、各機能部（受信部２１０１〜送信部２１０３）の処理結果は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶される。
【０１０３】
受信部２１０１は、携帯端末ＭＴを介して、暗号化パケットＳＰｉをノードＮから受信する。具体的には、たとえば、受信部２１０１が、ネットワークＮＷ２を介して、ノードＮからの暗号化パケットＳＰｉを携帯端末ＭＴから受信する。
【０１０４】
抽出部２１０２は、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出する。具体的には、たとえば、抽出部２１０２が、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰｉに含まれるゲートウェイＧｉのアドレスと関連付けて記憶されている暗号鍵Ｋｉを抽出する。
【０１０５】
ここで、受信部２１０１によって暗号化パケットＳＰ１が受信されたとする。この場合、抽出部２１０２が、たとえば、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰ１に含まれるＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』と関連付けて記憶されている暗号鍵Ｋ１を抽出する。
【０１０６】
送信部２１０３は、携帯端末ＭＴを介して、抽出された暗号鍵ＫｉをノードＮに送信する。具体的には、たとえば、ネットワークＮＷ２を介して、抽出された暗号鍵Ｋ１を携帯端末ＭＴに送信する。この結果、携帯端末ＭＴが、ネットワークＮＷ３を介して、管理サーバ１０１からの暗号鍵Ｋ１をノードＮに送信する。
【０１０７】
また、図２０に示した暗号化パケットＳＰ１のようにＧＷアドレスがヘッダ部２０１０に含まれていれば、上述したように、ＧＷアドレスを手掛かりに暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出することができる。これに対して、ＧＷアドレスがペイロード部２０２０に含まれる場合がある。
【０１０８】
図２２は、実施の形態１にかかる暗号化パケットのデータ構造の一例を示す説明図（その２）である。図２２において、暗号化パケットＳＰｉは、ヘッダ部２２１０とペイロード部２２２０とを含む構成である。ヘッダ部２２１０には、宛先アドレス、差出アドレスおよびホップ数が記述されている。ペイロード部２２２０には、暗号化されたＧＷアドレスおよびデータ本体が記述されている（図２２中ハッチ部分）。
【０１０９】
この場合、ＧＷアドレスを手掛かりに暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出することはできない。そこで、抽出部２１０２は、暗号鍵ＤＢ１１０に登録されている暗号鍵Ｋｉごとに、暗号鍵Ｋｉを用いて暗号化パケットＳＰｉの復号処理を実行する。そして、抽出部２１０２は、暗号化パケットＳＰｉの復号に成功した暗号鍵Ｋｉを抽出する。
【０１１０】
復号の成否は、暗号化パケットＳＰｉを復号した復号後のパケットのフォーマットに基づいて判断することができる。具体的には、たとえば、抽出部２１０２は、暗号化パケットＳＰｉを復号した復号後のパケットが、予め規定されたフォーマットのデータの場合、暗号化パケットＳＰｉの復号が成功したと判断する。これにより、暗号化パケットＳＰｉのヘッダ部２２１０にＧＷアドレスが含まれていない場合であっても、暗号鍵ＤＢ１１０の中から新規ノードＮｘに設定すべき適切な暗号鍵Ｋｉを抽出することができる。
【０１１１】
なお、上述した説明では、管理サーバ１０１が暗号化パケットＳＰｉを受信した時点において、暗号鍵ＤＢ１１０にゲートウェイＧｉ固有の暗号鍵Ｋｉが登録済みの場合を想定したが、これに限らない。たとえば、管理サーバ１０１が、暗号化パケットＳＰｉを受信したあとゲートウェイＧｉに問い合わせることで、ゲートウェイＧｉ固有の暗号鍵Ｋｉを取得することにしてもよい。これにより、ネットワークシステム１００内のすべてのゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを管理サーバ１０１が予め保持しておく必要がなくなる。
【０１１２】
（管理サーバ１０１と携帯端末ＭＴとの間の通信方式）
ここで、管理サーバ１０１と携帯端末ＭＴとの間の通信方式の一実施例について説明する。まず、携帯端末ＭＴからみた管理サーバ１０１のサーバ認証について説明する。具体的には、たとえば、まず、携帯端末ＭＴが、予め決められたＩＰアドレスを用いて管理サーバ１０１に接続する。
【０１１３】
そして、携帯端末ＭＴが、管理サーバ１０１からＳＳＬサーバ証明書を受信する。受信されたＳＳＬサーバ証明書は、たとえば、管理サーバ１０１のＩＰアドレスと関連付けて携帯端末ＭＴのＲＡＭ１７０２やフラッシュメモリ１７０３などの記憶装置に記憶される。
【０１１４】
図２３は、管理サーバ１０１の認証情報の一例を示す説明図である。図２３において、管理サーバ１０１の認証情報２３００は、ＩＰアドレスおよびＳＳＬサーバ証明書を有する。ＩＰアドレスは、管理サーバ１０１のＩＰアドレスである。Ｘ．５０９証明書は、管理サーバ１０１のＳＳＬサーバ証明書（公開鍵証明書）である。
【０１１５】
携帯端末ＭＴは、予め自端末に組み込まれている公開鍵を用いて、ＳＳＬサーバ証明書を復号することでサーバ認証を行う。公開鍵は、たとえば、第三者認証機関によって発行されたものである。この公開鍵を用いてＳＳＬサーバ証明書を正しく復号できれば、ＳＳＬサーバ証明書が第三者認証機関によって証明された正しい証明書であることがわかり、ひいては管理サーバ１０１の身元が保証されたことになる。
【０１１６】
つぎに、管理サーバ１０１からみた携帯端末ＭＴのユーザ認証について説明する。ここでは、携帯端末ＭＴの認証情報を用いて、携帯端末ＭＴのユーザ認証を行う場合を例に挙げて説明する。認証情報は、たとえば、管理サーバ１０１のＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されている。
【０１１７】
図２４は、携帯端末ＭＴの認証情報の一例を示す説明図である。図２４において、携帯端末ＭＴの認証情報２４００は、ユーザＩＤおよびパスワードを有する。ユーザＩＤは、携帯端末ＭＴの識別子である。パスワードは、携帯端末ＭＴを使用するユーザを認証するためのデータである。
【０１１８】
具体的には、たとえば、まず、携帯端末ＭＴが、ユーザＩＤおよびパスワードのペアを管理サーバ１０１に送信する。このユーザＩＤおよびパスワードは、携帯端末ＭＴのフラッシュメモリ１８０３に予め登録されていてもよく、また、携帯端末ＭＴの入力装置（不図示）を用いたユーザの操作入力により受け付けてもよい。
【０１１９】
このあと、管理サーバ１０１は、携帯端末ＭＴからのユーザＩＤおよびパスワードのペアを、認証情報２４００のユーザＩＤおよびパスワードのペアと一致判定する。ここで、認証情報２４００のユーザＩＤおよびパスワードと一致すれば、携帯端末ＭＴのユーザの身元が保証されたことになる。
【０１２０】
なお、認証後において、携帯端末ＭＴは、たとえば、管理サーバ１０１のＳＳＬサーバ証明書に含まれる公開鍵を用いてパケットを暗号化して管理サーバ１０１との通信を行う。これにより、管理サーバ１０１と携帯端末ＭＴとの間でセキュアな通信を行うことができる。なお、ここでは、ＳＳＬによるセキュア通信を記述したが、それ以外のセキュア通信や専用線通信などを用いてもよい。
【０１２１】
（ノードＮの鍵設定処理手順）
図２５は、実施の形態１にかかるノードＮの鍵設定処理手順の一例を示すフローチャートである。図２５のフローチャートにおいて、まず、ノードＮは、パケット受信部１９０１により、アドホックネットワークＡｉ内のゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを受信したか否かを判断する（ステップＳ２５０１）。
【０１２２】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ２５０１：Ｎｏ）、受信した場合（ステップＳ２５０１：Ｙｅｓ）、ノードＮは、検知部１９０２により、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知したか否かを判断する（ステップＳ２５０２）。
【０１２３】
ここで、携帯端末ＭＴとの接続が検知されるのを待って（ステップＳ２５０２：Ｎｏ）、検知された場合（ステップＳ２５０２：Ｙｅｓ）、ノードＮは、パケット送信部１９０３により、携帯端末ＭＴを介して、受信された暗号化パケットＳＰｉを管理サーバ１０１に送信する（ステップＳ２５０３）。
【０１２４】
このあと、ノードＮは、鍵受信部１９０４により、携帯端末ＭＴを介して、送信された暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信したか否かを判断する（ステップＳ２５０４）。
【０１２５】
ここで、暗号鍵Ｋｉを受信するのを待って（ステップＳ２５０４：Ｎｏ）、受信した場合（ステップＳ２５０４：Ｙｅｓ）、ノードＮは、設定部１９０５により、受信されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定して（ステップＳ２５０５）、本フローチャートによる一連の処理を終了する。
【０１２６】
これにより、ノードＮは、暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを、暗号化パケットＳＰｉごとに管理サーバ１０１から取得して設定することができる。
【０１２７】
（管理サーバ１０１の鍵提供処理手順）
図２６は、管理サーバ１０１の鍵提供処理手順の一例を示すフローチャートである。図２６のフローチャートにおいて、まず、管理サーバ１０１は、受信部２１０１により、携帯端末ＭＴを介して、暗号化パケットＳＰｉをノードＮから受信したか否かを判断する（ステップＳ１６０１）。
【０１２８】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ１６０１：Ｎｏ）、受信した場合（ステップＳ１６０１：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出する鍵抽出処理を実行する（ステップＳ１６０２）。そして、管理サーバ１０１は、送信部２１０３により、携帯端末ＭＴを介して、抽出された暗号鍵ＫｉをノードＮに送信して（ステップＳ１６０３）、本フローチャートによる一連の処理を終了する。
【０１２９】
これにより、管理サーバ１０１は、ノードＮが属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵ＫｉをノードＮに提供することができる。
【０１３０】
＜鍵抽出処理（その１）手順＞
つぎに、図２６に示したステップＳ２６０２の鍵抽出処理（その１）の具体的な処理手順について説明する。以下に説明する鍵抽出処理（その１）は、暗号化パケットＳＰｉに含まれるＧＷアドレスが暗号化されていない場合の処理である。
【０１３１】
図２７は、実施の形態１にかかるステップＳ２６０２の鍵抽出処理（その１）の具体的な処理手順の一例を示すフローチャートである。図２７のフローチャートにおいて、まず、管理サーバ１０１は、抽出部２１０２により、図２６に示したステップＳ２６０１において受信された暗号化パケットＳＰｉに含まれるＧＷアドレスを特定する（ステップＳ２７０１）。
【０１３２】
つぎに、管理サーバ１０１は、抽出部２１０２により、ゲートウェイＧｉの「ｉ」を「ｉ＝１」で初期化する（ステップＳ２７０２）。このあと、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０を参照して、ゲートウェイＧｉのＧＷアドレスを特定する（ステップＳ２７０３）。そして、管理サーバ１０１は、抽出部２１０２により、ステップＳ２７０１において特定されたＧＷアドレスと、ステップＳ２７０３において特定されたＧＷアドレスとが一致するか否かを判断する（ステップＳ２７０４）。
【０１３３】
ここで、ＧＷアドレスが一致する場合（ステップＳ２７０４：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中からゲートウェイＧｉ固有の暗号鍵Ｋｉを抽出して（ステップＳ２７０５）、図２６に示したステップＳ２６０３に移行する。一方、ＧＷアドレスが不一致の場合（ステップＳ２７０４：Ｎｏ）、管理サーバ１０１は、抽出部２１０２により、ゲートウェイＧｉの「ｉ」をインクリメントして（ステップＳ２７０６）、「ｉ」が「ｎ」より大きいか否かを判断する（ステップＳ２７０７）。
【０１３４】
ここで、「ｉ」が「ｎ」以下の場合（ステップＳ２７０７：Ｎｏ）、ステップＳ２７０３に戻る。一方、「ｉ」が「ｎ」より大きい場合（ステップＳ２７０７：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、エラー処理を実行して（ステップＳ２７０８）、管理サーバ１０１の一連の処理を終了する。
【０１３５】
これにより、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出することができる。なお、ステップＳ２７０８のエラー処理の具体例として、たとえば、抽出部２１０２が、携帯端末ＭＴを介して、暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出できなかった旨のエラーメッセージをノードＮに送信することにしてもよい。
【０１３６】
ステップＳ２７０８のエラー処理は、たとえば、暗号化パケットＳＰｉが改ざんされた場合や暗号化パケットＳＰｉの一部が欠落した場合などに実行される。このエラー処理によれば、ノードＮによる暗号化パケットＳＰｉの再送信を促すことができる。
【０１３７】
＜鍵抽出処理（その２）手順＞
つぎに、図２６に示したステップＳ２６０２の鍵抽出処理（その２）の具体的な処理手順について説明する。以下に説明する鍵抽出処理（その２）は、暗号化パケットＳＰｉに含まれるＧＷアドレスが暗号化されている場合の処理である。
【０１３８】
図２８は、実施の形態１にかかるステップＳ２６０２の鍵抽出処理（その２）の具体的な処理手順の一例を示すフローチャートである。図２８のフローチャートにおいて、まず、管理サーバ１０１は、抽出部２１０２により、ゲートウェイＧｉの「ｉ」を「ｉ＝１」で初期化する（ステップＳ２８０１）。そして、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中のゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて、図２６に示したステップＳ２６０１において受信された暗号化パケットＳＰｉを復号する（ステップＳ２８０２）。
【０１３９】
このあと、管理サーバ１０１は、抽出部２１０２により、暗号化パケットＳＰｉの復号に成功したか否かを判断する（ステップＳ２８０３）。ここで、暗号化パケットＳＰｉの復号に成功した場合（ステップＳ２８０３：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中からゲートウェイＧｉ固有の暗号鍵Ｋｉを抽出して（ステップＳ２８０４）、図２６に示したステップＳ２６０３に移行する。
【０１４０】
一方、暗号化パケットＳＰｉの復号に失敗した場合（ステップＳ２８０３：Ｎｏ）、管理サーバ１０１は、抽出部２１０２により、ゲートウェイＧｉの「ｉ」をインクリメントして（ステップＳ２８０５）、「ｉ」が「ｎ」より大きいか否かを判断する（ステップＳ２８０６）。
【０１４１】
ここで、「ｉ」が「ｎ」以下の場合（ステップＳ２８０６：Ｎｏ）、ステップＳ２８０２に戻る。一方、「ｉ」が「ｎ」より大きい場合（ステップＳ２８０６：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、エラー処理を実行して（ステップＳ２８０７）、管理サーバ１０１の一連の処理を終了する。
【０１４２】
これにより、暗号化パケットＳＰｉのヘッダ部２２１０にＧＷアドレスが含まれていない場合であっても、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出することができる。
【０１４３】
つぎに、新規ノードＮｘの暗号鍵設定後の通信処理と、新規ノードＮｘ以外の他のノードＮの通信処理について説明する。ここでは、新規ノードＮｘとは、複数の暗号鍵が設定されたノードＮであり、他のノードＮとは、単一の暗号鍵が設定されたノードである。
【０１４４】
図２９は、実施の形態１にかかる新規ノードＮｘの暗号鍵設定後の通信処理手順を示すフローチャートである。まず、新規ノードＮｘは、パケットの受信を待ち受け（ステップＳ２９０１：Ｎｏ）、パケットを受信した場合（ステップＳ２９０１：Ｙｅｓ）、新規ノードＮｘは、受信したパケットを復号する暗号鍵を特定する（ステップＳ２９０２）。
【０１４５】
たとえば、新規ノードＮｘは、受信したパケットを送ってきたノードが属するゲートウェイにより、いずれの暗号鍵を使用すればよいかを特定する。図１５の例では、ノードＮ１−３からのパケットであれば、暗号鍵Ｋ１を特定し、ノードＮ２−２からのパケットであれば、暗号鍵Ｋ２を特定する。また、暗号鍵を順次選択して、受信したパケットの復号を試み、復号できた暗号鍵を特定することとしてもよい。
【０１４６】
そして、新規ノードＮｘは、特定した暗号鍵で、受信したパケットが復号できたか否かを判断する（ステップＳ２９０３）。復号できなかった場合（ステップＳ２９０３：Ｎｏ）、受信したパケットは傍受したこととなるため、受信したパケットを破棄して（ステップＳ２９０４）、通信処理を終了する。
【０１４７】
一方、復号できた場合（ステップＳ２９０３：Ｙｅｓ）、受信したパケットの宛先アドレスが自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ２９０５）。自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ２９０５：Ｙｅｓ）、復号されたデータに基づいたデータ処理を実行し（ステップＳ２９０６）、受信したパケットを転送先に転送する（ステップＳ２９０７）。これにより、通信処理を終了する。
【０１４８】
一方、ステップＳ２９０５において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ２９０５：Ｎｏ）、新規ノードＮｘは、受信したパケットを転送先に転送する（ステップＳ２９０７）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルを保持していれば、当該ルーティングテーブルで指定されたノードとなる。ルーティングテーブルがなければ、転送先は通信圏内の全ノードとなる。
【０１４９】
図３０は、実施の形態１にかかる他のノードＮ（新規ノードＮｘではない既設ノード）の暗号鍵設定後の通信処理手順を示すフローチャートである。まず、他のノードＮは、パケットの受信を待ち受け（ステップＳ３００１：Ｎｏ）、パケットを受信した場合（ステップＳ３００１：Ｙｅｓ）、暗号鍵Ｋｉで、受信したパケットが復号できたか否かを判断する（ステップＳ３００２）。なお、暗号鍵Ｋｉが複数ある場合は、復号できるまで試みる。そして、いずれの暗号鍵Ｋｉでも復号できなかった場合（ステップＳ３００２：Ｎｏ）、受信したパケットは傍受したこととなるため、他のノードＮは、受信したパケットを破棄して（ステップＳ３００３）、通信処理を終了する。
【０１５０】
一方、復号できた場合（ステップＳ３００２：Ｙｅｓ）、他のノードＮは、受信したパケットの宛先アドレスが自ノード（他のノードＮ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ３００４）。自ノード（他のノードＮ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ３００４：Ｙｅｓ）、他のノードＮは、復号されたデータに基づいたデータ処理を実行し（ステップＳ３００５）、受信したパケットを転送先に転送する（ステップＳ３００６）。なお、暗号鍵Ｋｉが複数ある場合は、復号データを各暗号鍵Ｋｉで暗号化して転送先に転送することとなる。これにより、通信処理を終了する。
【０１５１】
一方、ステップＳ３００４において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ３００４：Ｎｏ）、他のノードＮは、受信したパケットを転送先に転送する（ステップＳ３００６）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルで規定されたノードとなる。ルーティングテーブルがなければ、転送先は通信圏内の全ノードとなる。
【０１５２】
なお、新規ノードＮｘからパケット送信する場合、暗号鍵ごとにパケットを暗号化して、暗号化パケット群を送信する。この場合、他のノードＮは、その暗号鍵Ｋｉでしか復号できないため、暗号鍵Ｋｉで暗号化された暗号化パケットＳＰｉは、ゲートウェイＧｉにのみ送信され、暗号鍵Ｋｊ（ｊ≠ｉ）で暗号化された暗号化パケットＳＰｊは、ゲートウェイＧｊにのみ送信されることとなる。そして、アドホックネットワークＡｉ内のノードＮが暗号化パケットＳＰｊが受信された場合は、図３０のステップＳ３００３で示したように、破棄される。
【０１５３】
以上説明したように、実施の形態１によれば、アドホックネットワークＡｉ内のノードＮは、携帯端末ＭＴを介して、ゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを管理サーバ１０１に送信することができる。この結果、ノードＮは、携帯端末ＭＴを介して、暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信して設定することができる。
【０１５４】
このように、ノードＮが、セキュア通信のための暗号鍵Ｋｉが未設定でも受信できるゲートウェイＧｉからの暗号化パケットＳＰｉを手掛かりに、携帯端末ＭＴを介して、管理サーバ１０１に鍵要求することで、設定すべき暗号鍵Ｋｉを取得することができる。これにより、ノードＮの初期導入時などにおいて、作業員ＯＰが地理的に絞り込まれた候補となるゲートウェイとノードＮとの通信状況をしらみつぶしに確認するなどの作業が不要となり、ノードＮに対する暗号鍵Ｋｉの設定作業の効率化を図ることができる。また、確認作業のために候補となる各ゲートウェイの暗号鍵を携帯端末ＭＴなどに記録しておく必要がないため、持ち運びの際の情報漏洩のリスクを低減させることができる。
【０１５５】
また、実施の形態１によれば、アドホックネットワークごとにそれぞれ固有の暗号鍵が設定されているため、アドホックネットワークＡｉ内のノード群は同一の暗号鍵Ｋｉを保持している。その一方で、複数のアドホックネットワークと通信可能なノード（新規ノードＮｘ）については、各々のアドホックネットワークの暗号鍵が設定される。このため、いずれかのアドホックネットワークと通信障害が生じて通信できなくても、残余のアドホックネットワーク経由で管理サーバ１０１にデータを送信することができる。
【０１５６】
したがって、セキュリティを維持したまま、複数の暗号鍵が設定されたノードは、通信可能なゲートウェイを自律的に選択でき、ロバスト性の低減を防止することができる。また、暗号鍵が複数設定されているため、暗号鍵が１つ漏洩しても、漏洩していない暗号鍵で通信可能なアドホックネットワーク内のデータは漏洩しない。このため、ゲートウェイごとに１個の暗号鍵しか設定できないアドホックネットワークに比べて、鍵漏洩リスクの低減化を図ることができる。
【０１５７】
また、複数のアドホックネットワークの通信圏内のノード（新規ノードＮｘ）のみ各アドホックネットワークの暗号鍵がすべて設定されるが、他のノードＮは所属するゲートウェイＧｉ固有の暗号鍵Ｋｉが１個だけ設定されるだけである。したがって、アドホックネットワークＡｉ内でのノードＮの処理（暗号化、復号）が１個の暗号鍵Ｋｉで済み、送信するパケットも１個の暗号鍵Ｋｉで暗号化された暗号化パケットＳＰｉだけであるため、通信量の増加を抑制することができる。
【０１５８】
＜実施の形態２：ダウンストリーム型で複数鍵の主副決定＞
つぎに、実施の形態２について説明する。実施の形態１では、新規ノードＮｘに複数の暗号鍵Ｋｉを設定した例について説明したが、実施の形態２では、図５の第５の例で示したように、新規ノードＮｘに設定する複数の暗号鍵を、主鍵と副鍵に分けて設定する。具体的には、通常は主鍵で暗号化および復号をおこない、主鍵で復号できなかった場合に、副鍵を使用することとなる。その後、新規設定済みとなったノードＮｘの配下に新規ノードを設定する。ノードＮｘの配下に新規ノードがある場合は、ノードＮｘを「境界ノード」と称す。
【０１５９】
なお、実施の形態１と同一構成には同一符号を付し、その説明を省略する。また、暗号鍵の主副決定以外は、実施の形態１と共通するため、説明を省略する。
【０１６０】
図３１〜図３６は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図である。
【０１６１】
図３１に示した状態（Ｇ）では、新規設定済みの境界ノードＮｘにおいて、暗号鍵Ｋ１，Ｋ２が設定されており、このうち暗号鍵Ｋ１を主鍵、暗号鍵Ｋ２を副鍵とする。暗号鍵Ｋ１，Ｋ２の主副決定は、境界ノードＮｘが実行してもよく、管理サーバ１０１が実行してもよい。この点については後述する。また、新規ノードＮｙは、境界ノードＮｘの配下に設置された新規ノードである。
【０１６２】
図３２は、状態（Ｇ）の次状態（Ｈ）を示している。（Ｈ）では、ゲートウェイＧ１が、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１を、アドホックネットワークＡ１にブロードキャストしている。同様に、ゲートウェイＧ２が、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２を、アドホックネットワークＡ２にブロードキャストしている。ノードＮｘは、ノードＮ１−３の通信圏内にあるため、ノードＮ１−３がノードＮ１−１から受信した暗号化パケットＳＰ１を受信（傍受）する。
【０１６３】
一方、ノードＮｘは、ノードＮ２−２の通信圏内にあるため、ノードＮ２−２がノードＮ２−１から受信した暗号化パケットＳＰ２を傍受する。ノードＮｘは、暗号鍵Ｋ１が主鍵，暗号鍵Ｋ２が副鍵に設定されているため、暗号化パケットＳＰ１は主鍵で復号できるが、暗号化パケットＳＰ２は主鍵で復号できない。ただし、暗号化パケットＳＰ２は副鍵（暗号鍵Ｋ２）で復号できるが、ブロードキャストの転送は行わず、ノードＮｘでは、暗号化パケットＳＰ２は破棄される（または、暗号鍵Ｋ１で再暗号化されて、ブロードキャストされる）。また、暗号化パケットＳＰ２はノードＮｘで破棄されたため、新規ノードＮｙは、暗号化パケットＳＰ１，ＳＰ２のうち暗号化パケットＳＰ１のみ傍受する。
【０１６４】
図３３は、状態（Ｈ）の次状態（Ｉ）を示している。（Ｉ）では、管理サーバ１０１とセキュアなネットワークＮＷ２を介して接続可能な携帯端末ＭＴが、新規ノードＮｙと接続された状態を示している。
【０１６５】
図３４は、状態（Ｉ）の次状態（Ｊ）を示している。（Ｊ）では、（Ｉ）の状態から、新規ノードＮｙが、傍受した暗号化パケットＳＰ１を、ネットワークＮＷ３を介して携帯端末ＭＴに送信し、携帯端末ＭＴが、新規ノードＮｙから受信した暗号化パケットＳＰ１を、ネットワークＮＷ２を介して管理サーバ１０１に送信している。
【０１６６】
図３５は、状態（Ｊ）の次状態（Ｋ）を示している。（Ｋ）では、管理サーバ１０１が（Ｊ）により受け取った暗号化パケットＳＰ１から、ゲートウェイＧ１を特定する。特定方法については、各種あるが、たとえば、暗号化パケットＳＰ１の暗号化されていないヘッダに、送信元のゲートウェイＧ１のアドレスが記述されている場合は、ヘッダを解析することで、ゲートウェイＧ１のアドレスが特定できる。これにより、管理サーバ１０１は、暗号鍵ＤＢ１１０から、ゲートウェイＧ１のアドレスに関連付けて記憶されている暗号鍵Ｋ１を抽出する。
【０１６７】
また、暗号化パケットＳＰ１のヘッダからゲートウェイＧ１のアドレスを特定できない場合は、暗号鍵ＤＢ１１０内の暗号鍵Ｋ１，Ｋ２，…で、暗号化パケットＳＰ１の復号を試みる。そして、管理サーバ１０１は、復号が成功した暗号鍵Ｋ１を暗号鍵ＤＢ１１０から抽出する。いずれにしても、管理サーバ１０１は、暗号鍵ＤＢ１１０から抽出された暗号鍵Ｋ１を、ネットワークＮＷ２、携帯端末ＭＴ、ネットワークＮＷ３経由で、新規ノードＮｙに送信する。
【０１６８】
図３６は、状態（Ｋ）の次状態（Ｌ）を示している。（Ｌ）では、新規ノードＮｙは、管理サーバ１０１から送信されてきた暗号鍵Ｋ１を受信して、暗号化および復号するための鍵に設定する。したがって、このあと、新規ノードＮｙは、ノードＮｘからの暗号化パケットＳＰ１を暗号鍵Ｋ１で復号することができる。また、新規ノードＮｙからは、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１がノードＮｘに送信される。
【０１６９】
このように、主鍵と副鍵に分けることで、ノードＮｘの配下に設定されるノードＮｙについては、主鍵となる暗号鍵Ｋ１を割り当てるだけでよく、副鍵である暗号鍵Ｋ２を割り当てる必要はない。これにより、新規ノードＮｘの配下のノードＮｙ以降の鍵数を１個にすることができ、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。以降、実施の形態２について詳細に説明する。
【０１７０】
（ノードＮの機能的構成例）
図３７は、実施の形態２にかかるノードＮの機能的構成例を示すブロック図である。図３７において、ノードＮは、図１９に示した各機能部１９０１〜１９０５のほか、記録部３７０６と決定部３７０７を有する。記録部３７０６と決定部３７０７は、具体的には、たとえば、図１７に示したＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されたプログラムをＣＰＵ１７０１に実行させることにより、または、Ｉ／Ｆ１７０４により、その機能を実現する。
【０１７１】
記録部３７０６は、受信された暗号化パケットＳＰｉに関する情報を記録する。具体的には、たとえば、記録部３７０６が、図２０に示した暗号化パケットＳＰｉのヘッダ部２０１０に含まれているホップ数およびＧＷアドレスをパケット情報テーブルに記録する。ここで、パケット情報テーブルについて説明する。
【０１７２】
図３８は、実施の形態２にかかるパケット情報テーブルの記憶内容の一例を示す説明図である。パケット情報テーブル３８００は、たとえば、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置により実現される。図３８において、パケット情報テーブル３８００は、ＩＤ、ホップ数、およびＧＷアドレスのフィールドを有し、各フィールドに情報を設定することで、パケット情報３８００−１〜３８００−５をレコードとして記憶している。
【０１７３】
ここで、ＩＤは、本明細書において説明上用いる暗号化パケットＳＰｉの識別子である。ホップ数は、暗号化パケットＳＰｉを残り何回転送するのかを示す残余の転送回数である。ＧＷアドレスは、ゲートウェイＧｉのアドレスである。なお、各暗号化パケットＳＰｉのパケット情報は、暗号化パケットＳＰｉの受信順にパケット情報テーブル３８００に記憶される。
【０１７４】
図３７の説明に戻り、決定部３７０７は、複数の暗号化パケットＳＰｉが受信された場合、記録された暗号化パケットＳＰｉに関する情報に基づいて、暗号化パケットＳＰｉの優先度を決定する。優先度とは、どのアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを主鍵にすべきかを特定する情報である。優先度の値は、高いほど最優先としてもよく、低いほど最優先としてもよい。ここでは、一例として、優先度の値が高いほど最優先とする。
【０１７５】
そして、パケット送信部１９０３は、携帯端末ＭＴを介して、暗号化パケットＳＰｉを管理サーバ１０１に送信するとともに、優先度も送信する。以下、送信対象となる暗号化パケットＳＰｉの決定例について説明する。
【０１７６】
たとえば、ノードＮの設置場所がアドホックネットワークＡ１，Ａ２の通信圏内にある場合、パケット受信部１９０１が異なるゲートウェイＧ１，Ｇ２からの暗号化パケットＳＰ１，ＳＰ２を受信したものとする。
【０１７７】
この場合、決定部３７０７は、たとえば、パケット情報テーブル３８００を参照して、先着順に応じた優先度を暗号化パケットＳＰｉに割り与える。たとえば、図３８では、最古のパケット情報３８００−１での暗号化パケットＳＰ１から順に最大優先度が割り与える。これにより、管理サーバ１０１において、ノードＮが最初に受信した暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１が主鍵に決定される。
【０１７８】
決定部３７０７は、たとえば、パケット情報テーブル３８００を参照して、ホップ数に応じた優先度を暗号化パケットＳＰｉに割り与えることとしてもよい。具体的には、最小ホップ数から順に優先度を割り与える。たとえば、図３８では、最大ホップ数「１０」であるパケット情報３８００−１での暗号化パケットＳＰ１から順に最大優先度を割り与える。これにより、管理サーバ１０１において、転送回数が最も少ない暗号化パケットＳＰｉを復号できる暗号鍵Ｋ１を、主鍵に決定することができる。
【０１７９】
ここで、暗号化パケットＳＰｉの転送回数が少ないということは、ゲートウェイＧｉが地理的に近い位置にある可能性が高い。このため、転送回数が最も少ない暗号化パケットＳＰｉに最大優先度を与えることで、結果的に、より近傍のゲートウェイＧｉ固有の暗号鍵Ｋｉを主鍵に決定することができ、ゲートウェイＧｉとの通信効率を向上させることができる。
【０１８０】
また、決定部３７０７は、たとえば、パケット情報テーブル３８００を参照して、ゲートウェイＧｉごとのホップ数の平均値に基づいて、暗号化パケットＳＰｉの優先度を決定することにしてもよい。具体的には、まず、決定部３７０７が、パケット情報テーブル３８００を参照して、ＧＷアドレスごとのホップ数の平均値を算出する。
【０１８１】
図３８の例では、ＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』のホップ数の平均値は『６＝（１０＋７＋１）／３』となる。ＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：５６：７８』のホップ数の平均値は『７＝（８＋６）／２』となる。この場合、決定部３７０７は、たとえば、ホップ数の平均値が最大のＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：５６：７８』のゲートウェイＧ２からブロードキャストされた暗号化パケットＳＰ２の優先度を最大にする。これにより、管理サーバ１０１において、統計的に転送回数が最も少ない暗号化パケットＳＰｉを復号できる暗号鍵Ｋｉを、主鍵に決定することができる。
【０１８２】
（ノードＮの鍵設定処理手順）
図３９は、実施の形態２にかかるノードＮの鍵設定処理手順の一例を示すフローチャートである。図３９のフローチャートにおいて、まず、ノードＮは、パケット受信部１９０１により、アドホックネットワークＡｉ内のゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを所定期間内に受信したか否かを判断する（ステップＳ３９０１）。
【０１８３】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ３９０１：Ｎｏ）、受信した場合（ステップＳ３９０１：Ｙｅｓ）、ノードＮは、受信した暗号化パケットＳＰｉごとにパケット情報テーブル３８００にパケット情報を記録する（ステップＳ３９０２）。つぎに、ノードＮは、決定部３７０７により、所定期間内に受信した暗号化パケットＳＰｉごとの優先度を決定する（ステップＳ３９０３）。このあと、ノードＮは、検知部１９０２により、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知したか否かを判断する（ステップＳ３９０４）。
【０１８４】
ここで、携帯端末ＭＴとの接続が検知されるのを待って（ステップＳ３９０４：Ｎｏ）、検知された場合（ステップＳ３９０４：Ｙｅｓ）、ノードＮは、パケット送信部１９０３により、携帯端末ＭＴを介して、受信された複数の暗号化パケットＳＰｉと各々の優先度を管理サーバ１０１に送信する（ステップＳ３９０５）。
【０１８５】
このあと、ノードＮは、鍵受信部１９０４により、携帯端末ＭＴを介して、すべての鍵（主鍵および副鍵）を、管理サーバ１０１から受信したか否かを判断する（ステップＳ３９０６）。新規ノードＮｘの場合は、主鍵と副鍵が管理サーバ１０１から受信するが、新規ノードＮｘ以外の通常のノードＮの場合は、主鍵のみ受信することとなる。
【０１８６】
ここで、すべての鍵（主鍵および副鍵）を受信するのを待って（ステップＳ３９０６：Ｎｏ）、受信した場合（ステップＳ３９０６：Ｙｅｓ）、ノードＮは、設定部１９０５により、受信された主鍵を、パケットを暗号化するための鍵に設定し、副鍵を主鍵が利用できない場合の鍵に設定する（ステップＳ３９０７）。これで、本フローチャートによる一連の処理を終了する。これにより、ノードＮは、主鍵と副鍵とに分類された複数の暗号鍵Ｋｉを設定することができる。なお、上述したように、新規ノードＮｘではない通常のノードＮの場合は、主鍵のみが設定され、副鍵は設定されない。
【０１８７】
（管理サーバ１０１の機能的構成例）
図４０は、実施の形態２にかかる管理サーバ１０１の機能的構成を示すブロック図である。図４０において、管理サーバ１０１は、受信部２１０１、抽出部２１０２、および送信部２１０３のほか、決定部４０００を含む構成である。決定部４０００は、具体的には、たとえば、図１６に示したＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されたプログラムをＣＰＵ１６０１に実行させることにより、または、Ｉ／Ｆ１６０８により、その機能を実現する。また、決定部４０００の処理結果は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶される。
【０１８８】
決定部４０００は、複数の暗号化パケットＳＰｉの各々の着順に基づいて、抽出部２１０２によって抽出された複数の暗号鍵Ｋｉの中から、主鍵と副鍵を決定する。具体的には、たとえば、決定部４０００は、ノードＮから送信されてきた着順に応じた優先度に従って、主鍵と副鍵とを決定する。
【０１８９】
また、決定部４０００は、複数の暗号化パケットＳＰｉについてのそれぞれのアドホックネットワークＡｉ内での転送回数に基づいて、抽出部２１０２によって抽出された複数の暗号鍵Ｋｉの中から、主鍵と副鍵を決定することとしてもよい。具体的には、たとえば、決定部４０００は、ノードＮから送信されてきたホップ数に応じた優先度に従って、主鍵と副鍵とを決定する。
【０１９０】
決定部４０００は、いずれの優先度であっても、以下のようにして、主鍵と副鍵とを決定する。たとえば、暗号化パケットＳＰ１〜ＳＰ３とその優先度が送信されてきたものとする。暗号化パケットＳＰ１〜ＳＰ３のうち、暗号化パケットＳＰ１の優先度が最大である場合、暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１を、主鍵に決定する。そして、決定部４０００は、残りの暗号化パケットＳＰ２，ＳＰ３をそれぞれ復号できる暗号鍵Ｋ２，Ｋ３を副鍵に決定する。なお、副鍵は、少なくとも１つあればよい。
【０１９１】
また、ノードＮに記録部３７０６および決定部３７０７がない場合は、決定部４０００は、管理サーバ１０１での暗号化パケットＳＰｉの各々の着順で、主鍵と副鍵とを決定することとしてもよい。たとえば、暗号化パケットＳＰ１〜ＳＰ３が送信されてきたものとする。暗号化パケットＳＰ１〜ＳＰ３のうち、暗号化パケットＳＰ１が１着、暗号化パケットＳＰ２が２着、暗号化パケットＳＰ３が３着とすると、暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１を主鍵、暗号化パケットＳＰ２，ＳＰ３を復号できる暗号鍵Ｋ２，Ｋ３を副鍵に決定する。これにより、管理サーバ１０１において、ノードＮが最初に受信した暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１が主鍵に決定される。なお、副鍵は、少なくとも１つあればよい。
【０１９２】
同様に、暗号化パケットＳＰｉの各々のホップ数で、主鍵と副鍵を決定してもよい。たとえば、暗号化パケットＳＰ１〜ＳＰ３が送信されてきたものとする。また、最大ホップ数を「１０」とする。ここで、暗号化パケットＳＰ１〜ＳＰ３のうち、暗号化パケットＳＰ１のホップ数が「７」、暗号化パケットＳＰ２のホップ数が「５」、暗号化パケットＳＰ３のホップ数が「３」とすると、暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１を主鍵、暗号化パケットＳＰ２，ＳＰ３を復号できる暗号鍵Ｋ２，Ｋ３を副鍵に決定する。これにより、管理サーバ１０１において、転送回数が最も少ない暗号化パケットＳＰｉを復号できる暗号鍵Ｋ１を、主鍵に決定することができる。なお、副鍵は、少なくとも１つあればよい。
【０１９３】
またこの場合、ノードＮにおいて記録部３７０６および決定部３７０７が不要となるため、鍵設定処理の高速化を図ることができる。
【０１９４】
また、管理サーバ１０１では、送信部２１０３は、決定部４０００により主鍵と副鍵が決定されると、主鍵と副鍵を、携帯端末ＭＴ経由でノードＮに送信する。これにより、ノードＮにおいて、主鍵と副鍵が設定されることとなる。
【０１９５】
（管理サーバ１０１の鍵提供処理手順）
図４１は、実施の形態２にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャートである。図４１のフローチャートにおいて、まず、管理サーバ１０１は、受信部２１０１により、携帯端末ＭＴを介して、暗号化パケットＳＰｉをノードＮから受信したか否かを判断する（ステップＳ４１０１）。優先度を用いて決定する場合は、優先度も受信したか否かを判断する。
【０１９６】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ４１０１：Ｎｏ）、受信した場合（ステップＳ４１０１：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出する鍵抽出処理を実行する（ステップＳ４１０２）。鍵抽出処理（ステップＳ４１０２）では、図２７または図２８に示したいずれかの処理が実行される。
【０１９７】
そして、管理サーバ１０１は、決定部４０００により、抽出された暗号鍵Ｋｉごとに、上述した主／副決定を実行する（ステップＳ４１０３）。このあと、管理サーバ１０１は、送信部２１０３により、携帯端末ＭＴを介して、主鍵と副鍵をノードＮに送信して（ステップＳ４１０４）、本フローチャートによる一連の処理を終了する。
【０１９８】
これにより、管理サーバ１０１は、ノードＮが属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを主鍵と副鍵とに分類してノードＮに提供することができる。
【０１９９】
図４２および図４３は、実施の形態２にかかるダウンストリーム型により導入された新規ノードＮｙの通信例を示す説明図である。
【０２００】
図４２に示した状態（Ｍ）は、図３６に示した状態（Ｌ）後における通信例１を示している。ここでは、例として、暗号鍵Ｋ１を主鍵、暗号鍵Ｋ２を副鍵とする。新規ノードＮｙとノードＮｘは、主鍵である暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１を送受信可能である。ノードＮｘとノードＮ１−３は、主鍵である暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１を送受信可能である。
【０２０１】
ノードＮ２−２は、暗号鍵Ｋ２しか保持していないため、ノードＮｘからの暗号化パケットＳＰ１を傍受できるが復号できない。したがって、ノードＮ２−２は、ノードＮｘからの暗号化パケットＳＰ１を破棄する。
【０２０２】
図４３に示した状態（Ｎ）は、図３６に示した状態（Ｌ）後における通信例２を示している。ノードＮ２−２が、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２を、ノードＮｘに送信した場合、ノードＮｘは、主鍵（暗号鍵Ｋ１）では、受信した暗号化パケットＳＰ２を復号できない。この場合、ノードＮｘは、副鍵（暗号鍵Ｋ２）で復号を試みる。
【０２０３】
ノードＮｘでは、暗号鍵Ｋ２で暗号化パケットＳＰ２を復号できるため、復号データを主鍵（暗号鍵Ｋ１）で再暗号化する。そして、ノードＮｘは、再暗号化された暗号化パケットＳＰ１を、新規ノードＮｙおよびノードＮ１−３に送信することとなる。
【０２０４】
このように、ノードＮｘでは主鍵で復号できなくても副鍵で復号できれば、復号データを主鍵で暗号化して、パケット転送をおこなうことができる。したがって、新規ノードＮｘの配下のノードＮｙ以降の鍵数が１個であっても、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。
【０２０５】
（ノードＮｘの通信処理）
つぎに、複数のアドホックネットワークの境界に位置する境界ノードＮｘの通信処理について説明する。
【０２０６】
図４４は、実施の形態２にかかる境界ノードＮｘの通信処理手順を示すフローチャートである。まず、境界ノードＮｘは、パケットの受信を待ち受け（ステップＳ４４０１：Ｎｏ）、パケットを受信した場合（ステップＳ４４０１：Ｙｅｓ）、境界ノードＮｘは、主鍵で復号できたか否かを判断する（ステップＳ４４０２）。
【０２０７】
復号できた場合（ステップＳ４４０２：Ｙｅｓ）、境界ノードＮｘは、受信したパケットの宛先アドレスが自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ４４０３）。自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ４４０３：Ｙｅｓ）、境界ノードＮｘは、復号されたデータに基づいたデータ処理を実行し（ステップＳ４４０４）、受信したパケットを転送先に転送する（ステップＳ４４０５）。
【０２０８】
なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルを保持していれば、当該ルーティングテーブルで指定されたノードとなる。ルーティングテーブルがなければ、転送先は通信圏内の全ノードとなる。これにより、通信処理を終了する。
【０２０９】
一方、ステップＳ４４０３において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ４４０３：Ｎｏ）、境界ノードＮｘは、受信したパケットを転送先に転送する（ステップＳ４４０５）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルで規定されたノードとなる。
【０２１０】
また、ステップＳ４４０２において主鍵で復号できなかった場合（ステップＳ４４０２：Ｎｏ）、境界ノードＮｘは、いずれかの副鍵で復号できたか否かを判断する（ステップＳ４４０６）。
【０２１１】
復号できた場合（ステップＳ４４０６：Ｙｅｓ）、境界ノードＮｘは、受信したパケットの宛先アドレスが自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ４４０７）。自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ４４０７：Ｙｅｓ）、境界ノードＮｘは、復号されたデータに基づいたデータ処理を実行する（ステップＳ４４０８）。そして、境界ノードＮｘは、復号データを主鍵で暗号化し（ステップＳ４４０９）、主鍵で暗号化されたパケットを転送先に転送する（ステップＳ４４１０）。これにより、通信処理を終了する。
【０２１２】
一方、ステップＳ４４０７において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ４４０７：Ｎｏ）、境界ノードＮｘは、復号データを主鍵で暗号化し（ステップＳ４４０９）、主鍵で暗号化されたパケットを転送先に転送する（ステップＳ４４１０）。これにより、通信処理を終了する。
【０２１３】
また、ステップＳ４４０６において、いずれの副鍵でも復号できなかった場合（ステップＳ４４０６：Ｎｏ）、受信したパケットは傍受したこととなるため、境界ノードＮｘは、受信したパケットを破棄して（ステップＳ４４１１）、通信処理を終了する。
【０２１４】
以上のことから、実施の形態２にかかる鍵設定方法、ノード、およびネットワークシステムによれば、実施の形態１と同様、アドホックネットワーク内のノードに対する暗号鍵の設定作業にかかる作業員の作業負担の軽減化および作業時間の短縮化を図ることができる。
【０２１５】
また、境界ノードＮｘに設定された複数の暗号鍵を主鍵と副鍵に分類して使用することで、ノードＮｘの配下に設定される新規ノードＮｙについては、主鍵（たとえば、暗号鍵Ｋ１）を割り当てるだけでよく、副鍵（たとえば、暗号鍵Ｋ２）を割り当てる必要はない。これにより、新規ノードＮｘの配下のノードＮｙ以降の鍵数を１個にすることができ、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡｉ内の通信量の増加を抑制することができる。
【０２１６】
＜実施の形態３：アップストリーム型で複数鍵設定＞
まず、実施の形態３について説明する。実施の形態３は、図４に示した第４の例について、いわゆるアップストリーム型で新規ノード（図４ではノードＮｃ）に複数の暗号鍵を設定する処理である。以下、図４５〜図６８を用いて説明する。なお、実施の形態１，２と同一構成には同一符号を付し、その説明を省略する。
【０２１７】
（ネットワークシステムの一実施例）
図４５は、実施の形態３にかかるネットワークシステム１００の一実施例を示す説明図である。図４５に示すネットワークシステム１００において、管理サーバ１０１は、暗号鍵ＤＢ１１０を備える必要はない。アップストリーム型では、新規ノードから依頼がある都度、該当するゲートウェイＧｉがゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１にアップロードする。そして、新規ノードに接続された携帯端末ＭＴを介して、管理サーバ１０１が、暗号鍵Ｋｉを新規ノードに供給することとなる。
【０２１８】
（新規ノードＮの導入時における暗号鍵Ｋｉの設定例）
つぎに、図４５に示したネットワークシステム１００への新規ノードの導入時における暗号鍵Ｋｉの設定例について説明する。実施の形態３では、新規ノードに対し、複数の暗号鍵を設定するが、ここでは、まず、１個の暗号鍵を設定する例について説明し、そのあとで、複数の鍵の設定例（図４８〜図５２）について説明する。なお、複数の鍵の設定例（図４８〜図５２）においても、個々の鍵の設定については、以下の図４６、図４７に示す設定となる。また、管理サーバ１０１と携帯端末ＭＴとの間の通信方式は、実施の形態１，２（図２３、図２４を参照）と同一であるため省略する。
【０２１９】
図４６は、実施の形態３にかかるネットワークシステム１００への新規ノードの導入例を示す説明図である。図４６において、ネットワークシステム１００のアドホックネットワークＡｉ内に新規ノードＮｉ−ｘが導入されている。なお、図４６では、アドホックネットワークＡｉ内のノードＮｉ−１〜Ｎｉ−ｍｉのうち、代表としてノードＮｉ−１〜Ｎｉ−３を示している。
【０２２０】
新規ノードＮｉ−ｘの導入時は、作業員ＯＰは新規ノードＮｉ−ｘがどのアドホックネットワークＡｉに属しているのかわからない。そこで、実施の形態３では、作業員ＯＰが使用する携帯端末ＭＴを利用して、新規ノードＮｉ−ｘに設定すべき暗号鍵Ｋｉの取得要求を、アドホックネットワークＡｉにアップロードする。このとき、ゲートウェイＧｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１にアップロードする。そして、新規ノードＮｉ−ｘは、管理サーバ１０１にアップロードされた暗号鍵Ｋｉを、携帯端末ＭＴを介して管理サーバ１０１から取得して、新規ノードＮｉ−ｘに自動設定する。以下、新規ノードＮｉ−ｘの導入時におけるネットワークシステム１００の動作例について説明する。
【０２２１】
図４７は、実施の形態３にかかる新規ノードの導入時におけるネットワークシステム１００の動作例を示すシーケンス図である。図４７のシーケンスにおいて、（１）携帯端末ＭＴは、ネットワークＮＷ２を介して管理サーバ１０１に接続する。この際、携帯端末ＭＴは、たとえば、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）を用いて、管理サーバ１０１とセキュアな通信を行う。なお、管理サーバ１０１と携帯端末ＭＴとの間でセキュア通信を実現するための通信方式については、図２３および図２４と同様であるため、省略する。
【０２２２】
（２）携帯端末ＭＴは、有線または無線のネットワークＮＷ３を介して新規ノードＮｉ−ｘに接続する。具体的には、たとえば、作業員ＯＰが、ＵＳＢケーブルを用いて、携帯端末ＭＴと新規ノードＮｉ−ｘとを接続することで、携帯端末ＭＴと新規ノードＮｉ−ｘとの間にネットワークＮＷ３が確立される。
【０２２３】
（３）新規ノードＮｉ−ｘは、携帯端末ＭＴとの接続を検知すると、アドホックネットワークＡｉ内でマルチホップ通信により送受信されるパケットを暗号化するための鍵の取得要求をアドホックネットワークＡｉにブロードキャストする。ここでは、鍵の取得要求が、新規ノードＮｉ−ｘの通信圏内に存在するノードＮｉ−３に送信される。
【０２２４】
（４）ノードＮｉ−３は、新規ノードＮｉ−ｘからの鍵の取得要求を通信圏内のノードＮｉ−１に送信する。（５）ノードＮｉ−１は、ノードＮｉ−３からの鍵の取得要求を通信圏内のゲートウェイＧｉに送信する。この結果、新規ノードＮからの鍵の取得要求がアドホックネットワークＡｉ内のゲートウェイＧｉに転送される。
【０２２５】
（６）ゲートウェイＧｉは、新規ノードＮｉ−ｘからの鍵の取得要求を受信すると、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。（７）管理サーバ１０１は、ネットワークＮＷ２を介して、ゲートウェイＧｉからのゲートウェイＧｉ固有の暗号鍵Ｋｉを携帯端末ＭＴに送信する。
【０２２６】
（８）携帯端末ＭＴは、ネットワークＮＷ３を介して、管理サーバ１０１からのゲートウェイＧｉ固有の暗号鍵Ｋｉを新規ノードＮｉ−ｘに送信する。（９）新規ノードＮｉ−ｘは、携帯端末ＭＴからの暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。
【０２２７】
なお、携帯端末ＭＴと新規ノードＮｉ−ｘとの接続は、新規ノードＮｉ−ｘに対する暗号鍵Ｋｉの設定が終了するまで維持する。また、暗号鍵Ｋｉの設定が終了して携帯端末ＭＴと新規ノードＮｉ−ｘとの接続を切断すると、携帯端末ＭＴの中から暗号鍵Ｋｉが自動で削除されるようにしてもよい。これにより、携帯端末ＭＴの紛失時などにおけるリスクを低減させることができる。
【０２２８】
このように、新規ノードＮｉ−ｘの導入時では、作業員ＯＰの携帯端末ＭＴを介して、新規ノードＮｉ−ｘと管理サーバ１０１との一時的な通信路を確立することができる。また、新規ノードＮｉ−ｘからブロードキャストされた鍵の取得要求がゲートウェイＧｉに転送された結果、ゲートウェイＧｉから管理サーバ１０１に送信された暗号鍵Ｋｉを、携帯端末ＭＴを介して管理サーバ１０１から新規ノードＮｉ−ｘに提供することができる。これにより、新規ノードＮｉ−ｘに設定すべき暗号鍵Ｋｉを容易に取得することができ、新規ノードＮｉ−ｘが用いる暗号鍵Ｋｉの設定作業の効率化を図ることができる。
【０２２９】
図４８〜図５２は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図である。図４８〜図５２では、図１０〜図１５と同様、例として２つのアドホックネットワークＡ１，Ａ２の境界に、新規ノードＮｘを導入する例について説明する。
【０２３０】
図４８は、初期状態（Ａ）を示している。アドホックネットワークＡ１内のノードを、ノードＮ１−１〜Ｎ１−４とし、アドホックネットワークＡ２内のノードを、ノードＮ２−１〜Ｎ２−３とする。アドホックネットワークＡ１内のゲートウェイＧ１およびノードＮ１−１〜Ｎ１−４は、ゲートウェイＧ１固有の暗号鍵Ｋ１を保持している。アドホックネットワークＡ２内のゲートウェイＧ２およびノードＮ２−１〜Ｎ２−３は、ゲートウェイＧ２固有の暗号鍵Ｋ２を保持している。新規ノードＮｘは、ノードＮ１−３およびノードＮ２−２の通信圏内に設置されているものとする。管理サーバ１０１には、暗号鍵ＤＢ１１０はない。
【０２３１】
図４９は、初期状態（Ａ）の次状態（Ｂ）を示している。（Ｂ）では、管理サーバ１０１とセキュアなネットワークＮＷ２を介して接続可能な携帯端末ＭＴが、新規ノードＮｘと接続された状態を示している。
【０２３２】
図５０は、状態（Ｂ）の次状態（Ｃ）を示している。（Ｃ）では、（Ｂ）の状態から、新規ノードＮｘが、アドホックネットワークＡ１，Ａ２に対しゲートウェイ探索フレーム（以下、「ＧＷ探索フレーム」）ＴＦをブロードキャストしている。ＧＷ探索フレームＴＦは、ゲートウェイを探索するパケットであり、ＧＷ探索フレームＴＦを受信したゲートウェイＧｉは、管理サーバ１０１にゲートウェイＧｉ固有の暗号鍵Ｋｉをアップロードする。
【０２３３】
新規ノードＮｘの通信圏内にあるノードＮ１−３は、暗号鍵Ｋ１で復号できないパケットを受信した場合は、傍受したとして当該パケットを破棄するが、新規ノードＮｘからＧＷ探索フレームＴＦを受信した場合、暗号鍵Ｋ１でＧＷ探索フレームＴＦを暗号化する。そして、ノードＮ１−３は、暗号化ＧＷ探索フレームＫ１（ＴＦ）をアドホックネットワークＡ１内にブロードキャストする。これにより、暗号化ＧＷ探索フレームＫ１（ＴＦ）がノードＮ１−１〜Ｎ１−４およびゲートウェイＧ１に行き渡ることとなる。
【０２３４】
同様に、新規ノードＮｘの通信圏内にあるノードＮ２−２は、暗号鍵Ｋ２で復号できないパケットを受信した場合は、傍受したとして当該パケットを破棄するが、新規ノードＮｘからＧＷ探索フレームＴＦを受信した場合、暗号鍵Ｋ２でＧＷ探索フレームＴＦを暗号化する。そして、ノードＮ２−２は、暗号化ＧＷ探索フレームＫ２（ＴＦ）をアドホックネットワークＡ２内にブロードキャストする。これにより、暗号化ＧＷ探索フレームＫ２（ＴＦ）がノードＮ２−１〜Ｎ２−３およびゲートウェイＧ２に行き渡ることとなる。
【０２３５】
ゲートウェイＧ１は、暗号化ＧＷ探索フレームＫ１（ＴＦ）を受信すると、暗号鍵Ｋ１で復号し、ＧＷ探索フレームＴＦでの指示内容にしたがって、管理サーバ１０１に暗号鍵Ｋ１をアップロードする。同様に、ゲートウェイＧ２は、暗号化ＧＷ探索フレームＫ２（ＴＦ）を受信すると、暗号鍵Ｋ２で復号し、ＧＷ探索フレームの指示内容にしたがって、管理サーバ１０１に暗号鍵Ｋ２をアップロードする。これにより、管理サーバ１０１では、携帯端末ＭＴの識別子（たとえば、後述する『Ｄ１』）とゲートウェイＧ１，Ｇ２の暗号鍵Ｋ１，Ｋ２とを関連付けたテーブルＴが作成される。
【０２３６】
図５１は、状態（Ｃ）の次状態（Ｄ）を示している。（Ｄ）では、管理サーバ１０１が（Ｃ）により受け取った暗号鍵Ｋ１，Ｋ２を、テーブルＴにより暗号鍵Ｋ１，Ｋ２に関連付けされている携帯端末ＭＴに、ネットワークＮＷ２を介して送信する。携帯端末ＭＴは、管理サーバ１０１から受信した暗号鍵Ｋ１，Ｋ２を、ネットワークＮＷ３経由で、新規ノードＮｘに送信する。
【０２３７】
図５２は、状態（Ｄ）の次状態（Ｅ）を示している。（Ｅ）では、新規ノードＮｘは、管理サーバ１０１から送信されてきた暗号鍵Ｋ１，Ｋ２を受信して、暗号化および復号するための鍵に設定する。したがって、このあと、新規ノードＮｘは、ノードＮ１−３からの暗号化パケットＳＰ１を暗号鍵Ｋ１で復号することができる。また、新規ノードＮｘは、ノードＮ２−２からの暗号化パケットＳＰ２を暗号鍵Ｋ２で復号することができる。また、新規ノードＮｘからは、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１がノードＮ１−３に送信され、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２がノードＮ２−２に送信される。
【０２３８】
なお、新規ノードＮｘからの暗号化パケットＳＰ１は、ノードＮ２−２に傍受されるが、ノードＮ２−２は暗号鍵Ｋ１を保持していないため、復号できず、これ以上、暗号化パケットＳＰ１を転送しない。同様に、新規ノードＮｘからの暗号化パケットＳＰ２は、ノードＮ１−３に傍受されるが、ノードＮ１−３は暗号鍵Ｋ２を保持していないため、復号できず、これ以上、暗号化パケットＳＰ２を転送しない。したがって、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。
【０２３９】
なお、以下の説明において、「ノードＮ」とは、ネットワークシステム１００のアドホックネットワークＡ１〜ＡｎのいずれかのアドホックネットワークＡｉ内でマルチホップ通信によりパケットを送受信するノードを示す。また、「ノード等」とは、ネットワークシステム１００のゲートウェイＧ１〜ＧｎおよびノードＮを示す。また、管理サーバ１０１およびノード等のハードウェア構成例は、実施の形態１，２と同一であるため、説明を省略する。
【０２４０】
（ノードＮの機能的構成例）
図５３は、実施の形態３にかかるノードの機能的構成例を示すブロック図である。図５３において、ノードＮは、検知部５３０１と、受付部５３０２と、フレーム送信部５３０３と、鍵受信部５３０４と、設定部５３０５と、フレーム受信部５３０６と、暗号化／復号処理部５３０７と、を含む構成である。各機能部（検知部５３０１〜暗号化／復号処理部５３０７）は、具体的には、たとえば、図１７に示したＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されたプログラムをＣＰＵ１７０１に実行させることにより、または、Ｉ／Ｆ１７０４により、その機能を実現する。また、各機能部（検知部５３０１〜暗号化／復号処理部５３０７）の処理結果は、特に指定する場合を除いて、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶される。
【０２４１】
検知部５３０１は、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知する。具体的には、たとえば、作業員ＯＰがＵＳＢケーブルを用いて携帯端末ＭＴとノードＮとを接続した結果、検知部５３０１が、ＵＳＢケーブルを介した携帯端末ＭＴとの接続を検知する。
【０２４２】
受付部５３０２は、検知部５３０１によって接続が検知された携帯端末ＭＴから、鍵の取得要求の送信指示を受け付ける。ここで、鍵の取得要求は、アドホックネットワークＡｉ内でマルチホップ通信によりノード間で送受信されるパケットを暗号化するための暗号鍵Ｋｉの取得要求である。
【０２４３】
鍵の取得要求は、たとえば、ノードＮが所属するアドホックネットワークＡｉ内のゲートウェイＧｉを探索して、ゲートウェイＧｉからゲートウェイＧｉ固有の暗号鍵Ｋｉを提供してもらうＧＷ探索フレームＴＦである。
【０２４４】
具体的には、たとえば、受付部５３０２が、ＵＳＢケーブルなどのネットワークＮＷ３を介して、携帯端末ＭＴからＧＷ探索フレームＴＦの送信指示を受け付ける。ここで、ＧＷ探索フレームＴＦの送信指示データの具体例について説明する。
【０２４５】
図５４は、実施の形態３にかかるＧＷ探索フレームＴＦの送信指示データの具体例を示す説明図である。図５４において、送信指示データ５４００は、コマンドおよびユーザＩＤを有している。コマンドは、ノードＮに対する指示内容を示している。ここでは、ノードＮが所属するアドホックネットワークＡｉ内のゲートウェイＧｉの探索指示を表す『ｓｅａｒｃｈ  ｇｗ』が記述されている。ユーザＩＤは、携帯端末ＭＴの識別子である。ここでは、『Ｄ１』が記述されている。
【０２４６】
図５３の説明に戻り、フレーム送信部５３０３は、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストする。ＧＷ探索フレームＴＦは、たとえば、フレームの種別、携帯端末ＭＴの識別子、ノードＮの識別子を含む情報であり、暗号化されていないノーマルフレームである。
【０２４７】
ここで、携帯端末ＭＴの識別子は、たとえば、上記受付部５３０２によって受け付けたＧＷ探索フレームＴＦの送信指示データ５４００から特定される。また、ノードＮの識別子は、たとえば、予め設定されてＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されている。具体的には、たとえば、フレーム送信部５３０３が、携帯端末ＭＴとの接続が検知された場合に、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストすることにしてもよい。
【０２４８】
また、フレーム送信部５３０３は、たとえば、携帯端末ＭＴからＧＷ探索フレームＴＦの送信指示データ５４００を受け付けた場合に、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストすることにしてもよい。すなわち、携帯端末ＭＴとの接続が検知され、かつ、ＧＷ探索フレームＴＦの送信指示データ５４００を受け付けた場合に、フレーム送信部５３０３が、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストする。
【０２４９】
これにより、携帯端末ＭＴを利用して、ノードＮに対して鍵設定とは異なる設定作業などを行う際に、携帯端末ＭＴとの接続が検知された時点で、ノードＮからＧＷ探索フレームＴＦがブロードキャストされることを防ぐことができる。ここで、ＧＷ探索フレームＴＦの具体例について説明する。
【０２５０】
図５５は、実施の形態３にかかるＧＷ探索フレームＴＦのデータ構造の一例を示す説明図である。図５５において、ＧＷ探索フレームＴＦは、ヘッダ部５５１０とペイロード部５５２０とを含む構成である。ヘッダ部５５１０には、宛先アドレス、差出アドレス、種別、サイズおよびホップ数が記述されている。ペイロード部５５２０には、ユーザＩＤおよびノードＩＤが記述されている。
【０２５１】
ここで、宛先アドレスは、送信先のアドレスである。ここでは、ブロードキャスト用のＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス『ＦＦ：ＦＦ：ＦＦ：ＦＦ：ＦＦ：ＦＦ』が記述されている。差出アドレスは、送信元のアドレスである。ここでは、アドホックネットワークＡ１内のノードＮとは異なる他のノードＮのＭＡＣアドレスが記述されている。種別は、フレームの種別である。ここでは、ＧＷ探索フレームを示す『２』が記述されている。サイズは、フレームのデータサイズ（バイト）である。
【０２５２】
ホップ数は、暗号鍵Ｋｉで暗号化された暗号化ＧＷ探索フレームＫｉ（ＴＦ）をノード間で残り何回転送するのかを示す残余の転送回数である。ノードＮからブロードキャストされるＧＷ探索フレームＴＦのホップ数の最大値は予め設定されている。ホップ数は暗号化ＧＷ探索フレームＫｉ（ＴＦ）の転送時にデクリメントされ、ホップ数が『０』となった暗号化ＧＷ探索フレームＫｉ（ＴＦ）は棄却される。ここでは、ＧＷ探索フレームＴＦのホップ数『１０』が記述されている。
【０２５３】
ユーザＩＤは、ノードＮに接続されている携帯端末ＭＴの識別子である。ここでは、ユーザＩＤ『Ｄ１』が記述されている。ノードＩＤは、ノードＮの識別子である。ここでは、ノードＩＤ『Ｎｘ』が記述されている。なお、ここでは宛先アドレスおよび差出アドレスの一例として、ＭＡＣアドレスを用いて説明したが、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスなどのアドレスを用いることにしてもよい。
【０２５４】
図５３の説明に戻り、鍵受信部５３０４は、ノードＮが所属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを、携帯端末ＭＴを介して管理サーバ１０１から受信する。ここで、ゲートウェイＧｉ固有の暗号鍵Ｋｉは、ブロードキャストされた暗号化ＧＷ探索フレームＫｉ（ＴＦ）がゲートウェイＧｉに転送された結果、ゲートウェイＧｉから管理サーバ１０１に送信された鍵である。
【０２５５】
この暗号鍵Ｋｉは、アドホックネットワークＡｉ内のノード間で送受信されるパケットを暗号化するための鍵であり、たとえば、１２８〜２５６ビット程度のバイナリデータである。また、この暗号鍵Ｋｉは、たとえば、パケットを暗号化するとともに、暗号鍵Ｋｉを用いて暗号化されたパケットを復号することができる共通鍵である。
【０２５６】
具体的には、たとえば、ノードＮからブロードキャストされたＧＷ探索フレームＴＦは、アドホックネットワークＡｉを介して、暗号化されて、暗号化ＧＷ探索フレームＫｉ（ＴＦ）がゲートウェイＧｉに転送される。この結果、ゲートウェイＧｉは、ネットワークＮＷ１を介して、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。つぎに、管理サーバ１０１は、ネットワークＮＷ２を介して、ゲートウェイＧｉ固有の暗号鍵Ｋｉを携帯端末ＭＴに送信する。そして、鍵受信部５３０４が、ネットワークＮＷ３を介して、ゲートウェイＧｉ固有の暗号鍵Ｋｉを携帯端末ＭＴから受信する。
【０２５７】
設定部５３０５は、受信されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。これにより、以降においてノードＮが送信対象となるパケットを暗号化、および暗号化されたパケットを復号することが可能となり、アドホックネットワークＡｉ内のノード間でセキュア通信を行うことができる。
【０２５８】
フレーム受信部５３０６は、アドホックネットワークＡｉ内の自ノードとは異なる他ノードからＧＷ探索フレームを受信する。すなわち、新規ノードＮｘからブロードキャストされたＧＷ探索フレームＴＦをフレーム受信部５３０６が受信する。
【０２５９】
暗号化／復号処理部５３０７は、ノードＮが保持する暗号鍵Ｋｉで、フレーム受信部５３０６で受信されたフレームの暗号化／復号を実行する。たとえば、受信されたノーマルフレームのフレーム種別がＧＷ探索フレームＴＦを示す『２』の場合、暗号鍵Ｋｉで暗号化する。そして、フレーム送信部５３０３は、暗号化されたＧＷ探索フレームＴＦをブロードキャストする。また、受信されたノーマルフレームの種別がＧＷ探索フレームＴＦを示す『２』でない場合は、当該ノーマルフレームは破棄される。
【０２６０】
また、ノードＮが、新規ノードＮｘではない既設ノードである場合、フレーム受信部５３０６は、転送されてくる暗号化ＧＷ探索フレームＫｉ（ＴＦ）を受信する場合がある。この場合、暗号化／復号処理部５３０７は、暗号鍵Ｋｉで暗号化ＧＷ探索フレームＫｉ（ＴＦ）をＧＷ探索フレームＴＦに復号する。暗号化／復号処理部５３０７で復号に成功した場合、ヘッダ部５５１０のホップ数がデクリメントされる。そして、フレーム送信部５３０３は、暗号化ＧＷ探索フレームＫｉ（ＴＦ）を転送する。
【０２６１】
なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルを保持していれば、当該ルーティングテーブルで指定されたノードとなる。ルーティングテーブルがなければ、転送先は通信圏内の全ノードとなる。
【０２６２】
（ゲートウェイＧｉの機能的構成例）
図５６は、実施の形態３にかかるゲートウェイＧｉの機能的構成例を示すブロック図である。図５６において、ゲートウェイＧｉは、ＧＷ受信部５６０１と、復号部５６０２と、作成部５６０３と、ＧＷ送信部５６０４と、を含む構成である。各機能部（ＧＷ受信部５６０１〜ＧＷ送信部５６０４）は、具体的には、たとえば、図１７に示したＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されたプログラムをＣＰＵ１７０１に実行させることにより、または、Ｉ／Ｆ１７０４により、その機能を実現する。また、各機能部（ＧＷ受信部５６０１〜ＧＷ送信部５６０３）の処理結果は、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶される。
【０２６３】
ＧＷ受信部５６０１は、アドホックネットワークＡｉを介して、ノードＮからブロードキャストされた、暗号化されたＧＷ探索フレームＴＦを受信する。具体的には、たとえば、ＧＷ受信部５６０１が、新規ノードＮｘからブロードキャストされ、アドホックネットワークＡｉ内で暗号化された暗号化ＧＷ探索フレームＫｉ（ＴＦ）を受信する。
【０２６４】
復号部５６０２は、ＧＷ受信部５６０１によって受信された暗号化ＧＷ探索フレームＫｉ（ＴＦ）を、ゲートウェイＧｉ固有の暗号鍵Ｋｉで復号する。これにより、ＧＷ探索フレームＴＦが得られる。
【０２６５】
作成部５６０３は、復号部５６０２によって暗号化ＧＷ探索フレームＫｉ（ＴＦ）からＧＷ探索フレームＴＦに復号された場合、ゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求を表す鍵通知フレームを作成する。ここで、鍵通知フレームは、たとえば、携帯端末ＭＴの識別子、ノードＮの識別子、ゲートウェイＧｉの識別子およびゲートウェイＧｉ固有の暗号鍵Ｋｉを含む情報である。
【０２６６】
携帯端末ＭＴの識別子およびノードＮの識別子は、復号されたＧＷ探索フレームＴＦから特定される。また、ゲートウェイＧｉ固有の暗号鍵Ｋｉは、たとえば、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されている。具体的には、たとえば、作成部５６０３が、復号されたＧＷ探索フレームＴＦに基づいて、ゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求を表す鍵通知フレームを作成する。ここで、鍵通知フレームの具体例について説明する。
【０２６７】
図５７は、実施の形態３にかかる鍵通知フレームの具体例を示す説明図（その１）である。図５７において、鍵通知フレームＡＦｉは、ユーザＩＤ、ノードＩＤ、ゲートウェイＩＤおよび暗号鍵に関する情報を有している。ここで、ユーザＩＤは、携帯端末ＭＴの識別子である。このユーザＩＤは、図５５に示したＧＷ探索フレームＴＦのペイロード部５５２０から特定されたコードである。ノードＩＤは、ノードＮの識別子である。このノードＩＤは、ＧＷ探索フレームＴＦのペイロード部５５２０から特定されたコードである。ゲートウェイＩＤは、ゲートウェイＧｉの識別子である。暗号鍵は、ゲートウェイＧｉ固有の暗号鍵Ｋｉである。
【０２６８】
ｉ＝１の場合、鍵通知フレームＡＦ１は、ゲートウェイＧ１固有の暗号鍵Ｋ１を携帯端末ＭＴ（ＩＤ：Ｄ１）を介して新規ノードＮｘへ送信させるフレームを意味する。同様に、ｉ＝２の場合、鍵通知フレームＡＦ２は、ゲートウェイＧ２固有の暗号鍵Ｋ２を携帯端末ＭＴ（ＩＤ：Ｄ１）を介して新規ノードＮｘへ送信させるフレームを意味する。したがって、新規ノードＮｘがアドホックネットワークＡ１，Ａ２の境界に設置された場合、新規ノードＮｘは、鍵通知フレームＡＦ１，ＡＦ２により、暗号鍵Ｋ１，Ｋ２を取得することができる。
【０２６９】
図５６の説明に戻り、ＧＷ送信部５６０４は、ネットワークＮＷ１を介して、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。具体的には、たとえば、ＧＷ送信部５６０４が、作成された鍵通知フレームＡＦｉを管理サーバ１０１に送信することにしてもよい。これにより、単にゲートウェイＧｉ固有の暗号鍵Ｋｉのみを送信する場合に比べて、管理サーバ１０１において、暗号鍵Ｋｉの提供先となる携帯端末ＭＴやノードＮを識別することができる。
【０２７０】
また、詳細は後述するが、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持する構成とした場合、鍵通知フレームＡＦｉにゲートウェイＧｉ固有の暗号鍵Ｋｉを含む必要がない。そこで、上記作成部５６０３は、たとえば、ゲートウェイＧｉ固有の暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを作成することにしてもよい。
【０２７１】
図５８は、実施の形態３にかかる鍵通知フレームＡＦｉの具体例を示す説明図（その２）である。図５８において、鍵通知フレームＡＦｉは、ユーザＩＤ、ノードＩＤおよびゲートウェイＩＤに関する情報を有している。すなわち、鍵通知フレームＡＦは、図５７に示した鍵通知フレームＡＦｉの中からゲートウェイＧ１固有の暗号鍵Ｋ１を削除したフレームである。
【０２７２】
管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持する構成とした場合、上記ＧＷ送信部５６０３は、たとえば、ゲートウェイＧ１固有の暗号鍵Ｋ１を含まない鍵通知フレームＡＦｉを管理サーバ１０１に送信する。
【０２７３】
また、暗号化ＧＷ探索フレームＫｉ（ＴＦ）は、複数経路でゲートウェイＧｉに受信される場合があるため、作成部５６０３は、その都度、同一の鍵通知フレームＡＦｉを作成することとなる。このような場合も、作成部５６０３は、初回の暗号化ＧＷ探索フレームＫｉ（ＴＦ）については、図５７に示したように暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを作成し、２回目以降は、図５８に示したような暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを作成することとしてもよい。また、２回目以降は、鍵通知フレームＡＦｉを作成しないこととしてもよい。これにより、ゲートウェイＧｉと管理サーバ１０１間の通信のオーバーヘッドの低減化を図ることができる。
【０２７４】
（管理サーバ１０１の機能的構成）
図５９は、実施の形態３にかかる管理サーバ１０１の機能的構成を示すブロック図である。図５９において、管理サーバ１０１は、ＳＶ受信部５９０１と、ＳＶ送信部５９０２と、判断部５９０３と、抽出部５９０４と、を含む構成である。各機能部（ＳＶ受信部５９０１〜抽出部５９０４）は、具体的には、たとえば、図１６に示したＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されたプログラムをＣＰＵ１６０１に実行させることにより、または、Ｉ／Ｆ１６０８により、その機能を実現する。また、各機能部（ＳＶ受信部５９０１〜抽出部５９０４）の処理結果は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶される。
【０２７５】
ＳＶ受信部５９０１は、ネットワークＮＷ１を介して、ゲートウェイＧｉからゲートウェイＧｉ固有の暗号鍵Ｋｉを受信する。具体的には、たとえば、ＳＶ受信部５９０１が、ネットワークＮＷ１を介して、図５７に示した鍵通知フレームＡＦｉを受信する。鍵通知フレームＡＦｉは、携帯端末ＭＴに対するゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求である。
【０２７６】
ＳＶ送信部５９０２は、受信されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、ネットワークＮＷ２を介して携帯端末ＭＴに送信する。具体的には、たとえば、ＳＶ送信部５９０２が、受信された鍵通知フレームＡＦｉを、ネットワークＮＷ２を介して携帯端末ＭＴに送信する。この結果、携帯端末ＭＴが、鍵通知フレームＡＦｉに含まれる暗号鍵Ｋｉを、ネットワークＮＷ３を介して新規ノードＮｘに送信することになる。
【０２７７】
ここで、管理サーバ１０１は、ネットワークＮＷ２を介して、複数の携帯端末ＭＴと通信可能に接続されている場合がある。この場合、ＳＶ送信部５９０２は、たとえば、鍵通知フレームＡＦｉに含まれるユーザＩＤから送信先の携帯端末ＭＴを識別することができる。鍵通知フレームＡＦｉの例では、ＳＶ送信部５９０２は、ユーザＩＤ『Ｄ１』の携帯端末ＭＴに鍵通知フレームＡＦｉを送信する。
【０２７８】
また、新規ノードＮｘからゲートウェイＧｉに辿り着くまでの経路は複数存在する場合がある。この場合、新規ノードＮｘからブロードキャストされたＧＷ探索フレームＴＦは、暗号化されて、複数の経路を辿ってゲートウェイＧｉに到達する。その結果、ゲートウェイＧｉは、新規ノードＮｘからブロードキャストされたＧＷ探索フレームＴＦを複数回受信することになる。
【０２７９】
この場合、ゲートウェイＧｉは、受信した暗号化ＧＷ探索フレームＫｉ（ＴＦ）をＧＷ探索フレームＴＦに復号する都度、鍵通知フレームＡＦｉを作成して管理サーバ１０１に送信することになる。そして、管理サーバ１０１は、鍵通知フレームＡＦｉを受信する都度、その鍵通知フレームＡＦｉを携帯端末ＭＴに送信することになる。この結果、携帯端末ＭＴは、管理サーバ１０１から同一の鍵通知フレームＡＦｉを複数回受信することになる。
【０２８０】
これでは、作業員ＯＰが同一の携帯端末ＭＴを用いて、複数の新規ノードＮｘの鍵設定を連続して行う場合に、誤った暗号鍵Ｋｉを新規ノードＮｘに設定してしまう可能性がある。たとえば、アドホックネットワークＡ１内のノードＮ１−ｘとアドホックネットワークＡ２内のノードＮ２−ｘの鍵設定を連続して行う場合を想定する。このとき、ノードＮ１−ｘへの暗号鍵Ｋ１の設定が終了し、作業員ＯＰが携帯端末ＭＴをノードＮ２−ｘに接続したあと、管理サーバ１０１から暗号鍵Ｋ１を含む鍵通知フレームを受信した場合、ノードＮ２−ｘに暗号鍵Ｋ１を誤って設定してしまう。
【０２８１】
そこで、管理サーバ１０１において、暗号鍵Ｋｉ（鍵通知フレームＡＦｉ）を送信済みのノードＮを管理することで、同一の鍵通知フレームＡＦｉを重複して携帯端末ＭＴに送信することを防ぐことができる。ここで、鍵通知フレームＡＦｉを送信済みのノードＮを管理するための送信済リストの具体例について説明する。
【０２８２】
図６０は、実施の形態３にかかる送信済リストの具体例を示す説明図である。図６０において、送信済リスト６０００は、暗号鍵Ｋｉを送信済みのノードＮのノードＩＤと、送信済みの暗号鍵Ｋｉとを関連付けて記憶している。送信済リスト６０００は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置により実現される。
【０２８３】
図６０の例では、アドホックネットワークＡ１，Ａ２内の新規ノードＮｘのノードＩＤ『Ｎｘ』と、ノードＮｘに送信された『暗号鍵Ｋ１』とが関連付けて記憶されている。また、アドホックネットワークＡ１，Ａ２内のノードＮｘのノードＩＤ『Ｎｘ』と、ノードＮｘに送信された『暗号鍵Ｋ２』とが関連付けて記憶されている。
【０２８４】
図５９の説明に戻り、判断部５９０３は、暗号鍵Ｋｉを送信済みのノードＮを管理する送信済リスト６０００を参照することにより、携帯端末ＭＴに鍵通知フレームＡＦｉを送信するか否かを判断する。具体的には、たとえば、判断部５９０３が、送信済リスト６０００を参照して、鍵通知フレームＡＦｉに含まれるノードＩＤが登録済みか否かを判断する。
【０２８５】
ここで、鍵通知フレームＡＦｉに含まれるノードＩＤが登録済みの場合、判断部５９０３が、携帯端末ＭＴに鍵通知フレームＡＦｉを送信すべきでないと判断する。この場合、ＳＶ送信部５９０２による鍵通知フレームＡＦｉの送信処理は行われない。たとえば、送信済みリスト６０００の先頭レコードでは、新規ノードＮｘに対し暗号鍵Ｋ１が送信済みとされているため、鍵通知フレームＡＦ１は送信されない。同様に、送信済みリスト６０００の２行目のレコードでは、新規ノードＮｘに対し暗号鍵Ｋ２が送信済みとされているため、鍵通知フレームＡＦ２は送信されない。
【０２８６】
一方、鍵通知フレームＡＦｉに含まれるノードＩＤが未登録の場合、判断部５９０３が、携帯端末ＭＴに鍵通知フレームＡＦｉを送信すべきと判断する。たとえば、図６０において、仮に送信済みリスト６０００の２行目のレコードがないとした場合、鍵通知フレームＡＦ２を送信すべきと判断することとなる。
【０２８７】
また、ＳＶ送信部５９０２は、携帯端末ＭＴに鍵通知フレームＡＦｉを送信する。鍵通知フレームＡＦｉが携帯端末ＭＴに送信されると、たとえば、鍵通知フレームＡＦｉに含まれているノードＩＤおよび暗号鍵Ｋｉが送信済リスト６０００に登録される。鍵通知フレームＡＦｉの例では、ノードＩＤ『Ｎｘ』と暗号鍵『Ｋ１』とが関連付けられて送信済リスト６０００に登録される。これにより、同一の鍵通知フレームＡＦｉを重複して携帯端末ＭＴに送信することを防ぐことができる。
【０２８８】
また、判断部５９０３は、送信済リスト６０００を参照して、鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉのペアが登録済みか否かを判断することにしてもよい。そして、判断部５９０３は、鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉのペアが登録済みの場合、携帯端末ＭＴに鍵通知フレームＡＦｉを送信しないと判断する。
【０２８９】
一方、判断部５９０３は、鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉのペアが未登録、または、ノードＩＤと暗号鍵Ｋｉのいずれかが登録済みの場合、携帯端末ＭＴに鍵通知フレームＡＦｉを送信すると判断する。すなわち、判断部５９０３は、鍵通知フレームＡＦｉに含まれるノードＩＤが登録済みでも暗号鍵Ｋｉが未登録の場合、携帯端末ＭＴに鍵通知フレームＡＦｉを送信すると判断する。これにより、たとえば、アドホックネットワークＡ１内のノードＮに暗号鍵Ｋ１を設定したあと、該ノードＮを他のアドホックネットワークＡ２に属する別の場所に移動させて使用する場合に、ノードＮに設定すべき新たな暗号鍵Ｋ２を提供することができる。
【０２９０】
なお、管理サーバ１０１は、ＳＶ送信部５９０２による鍵通知フレームＡＦｉの携帯端末ＭＴへの送信後において、携帯端末ＭＴとの接続が切断された場合、ゲートウェイＧｉから受信した鍵通知フレームＡＦｉを削除することにしてもよい。
【０２９１】
また、上述した説明では、各ゲートウェイＧｉ固有の暗号鍵Ｋｉを含む鍵通知フレームＡＦｉをゲートウェイＧｉから管理サーバ１０１に送信する場合について説明したが、これに限らない。たとえば、管理サーバ１０１において、ネットワークシステム１００内の各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを予め保持しておく構成としてもよい。ここで、各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持する暗号鍵ＤＢ１１０（データベース）の具体例について説明する。
【０２９２】
図６１は、実施の形態３にかかる暗号鍵ＤＢ１１０の記憶内容の一例を示す説明図である。図６１において、暗号鍵ＤＢ６１００は、ゲートウェイＩＤおよび暗号鍵のフィールドを有し、各フィールドに情報を設定することで、ゲートウェイＧ１〜Ｇｎごとの鍵情報６１００−１〜６１００−ｎをレコードとして記憶している。
【０２９３】
ここで、ゲートウェイＩＤは、ゲートウェイＧｉの識別子である。暗号鍵は、ゲートウェイＧｉ固有の暗号鍵Ｋｉである。鍵情報６１００−１を例に挙げると、ゲートウェイＧ１固有の暗号鍵Ｋ１が記憶されている。なお、暗号鍵ＤＢ６１００は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置により実現される。
【０２９４】
このように、管理サーバ１０１がゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持する場合、ＳＶ受信部５９０１は、ネットワークＮＷ１を介して、ゲートウェイＧｉからゲートウェイＧｉ固有の暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを受信する。具体的には、たとえば、ＳＶ受信部５９０１が、ネットワークＮＷ１を介して、ゲートウェイＧｉから図５８に示した鍵通知フレームＡＦｉを受信する。
【０２９５】
また、抽出部５９０４は、ゲートウェイＧｉ固有の暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉが受信された場合、暗号鍵ＤＢ６１００の中からゲートウェイＧｉ固有の暗号鍵Ｋｉを抽出する。具体的には、たとえば、抽出部５９０４が、暗号鍵ＤＢ６１００の中から、受信された鍵通知フレームＡＦｉに含まれるゲートウェイＩＤ『Ｇ１』と関連付けて記憶されている暗号鍵Ｋ１を抽出する。
【０２９６】
そして、ＳＶ送信部５９０２は、抽出されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、ネットワークＮＷ２を介して携帯端末ＭＴに送信する。このように、ゲートウェイＧｉから暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを送信することで、暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを送信する場合に比べて、ゲートウェイＧｉと管理サーバ１０１との間の通信時におけるデータ量を削減することができる。
【０２９７】
また、管理サーバ１０１への鍵通知フレームの初回送信時のみ、ゲートウェイＧｉに暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを送信させて、それ以降は、暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを送信させることにしてもよい。この場合、管理サーバ１０１は、鍵通知フレームＡＦｉの初回受信時に、鍵通知フレームＡＦｉに含まれる暗号鍵ＫｉをゲートウェイＩＤと関連付けて暗号鍵ＤＢ６１００に登録することにしてもよい。これにより、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを予め保持しておく必要がなくなる。
【０２９８】
なお、ゲートウェイＧｉが暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを管理サーバ１０１に送信する場合は、暗号鍵Ｋｉの抽出処理が不要となるため、管理サーバ１０１は上記抽出部５９０４および暗号鍵ＤＢ６１００を備えない構成としてもよい。
【０２９９】
（ノードＮの鍵設定処理手順）
図６２は、実施の形態３にかかる新規ノードＮｘの鍵設定処理手順の一例を示すフローチャートである。図６２のフローチャートにおいて、まず、検知部５３０１により、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知したか否かを判断する（ステップＳ６２０１）。
【０３００】
ここで、携帯端末ＭＴとの接続を検知するのを待って（ステップＳ６２０１：Ｎｏ）、検知した場合（ステップＳ６２０１：Ｙｅｓ）、ノードＮは、受付部５３０２により、携帯端末ＭＴからＧＷ探索フレームの送信指示を受け付けたか否かを判断する（ステップＳ６２０２）。
【０３０１】
ここで、ＧＷ探索フレームＴＦの送信指示データ５４００を受け付けるのを待って（ステップＳ６２０２：Ｎｏ）、受け付けた場合（ステップＳ６２０２：Ｙｅｓ）、ノードＮは、フレーム送信部５３０３により、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストする（ステップＳ６２０３）。このあと、ＧＷ探索フレームＴＦはアドホックネットワークＡｉで暗号化されて転送され、ゲートウェイＧｉに到達する。そして、ゲートウェイＧｉが鍵通知フレームＡＦｉを管理サーバ１０１に送信することになる。
【０３０２】
このあと、ノードＮは、鍵受信部５３０４により、ノードＮが所属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを携帯端末ＭＴから受信したか否かを判断する（ステップＳ６２０４）。たとえば、図４８に示した例では、新規ノードＮｘは、アドホックネットワークＡ１，Ａ２の境界に設置されている。したがって、ノードＮは、ゲートウェイＧ１固有の暗号鍵Ｋ１とゲートウェイＧ２固有の暗号鍵Ｋ２の両方が受信されたか否かを判断することとなる。より具体的には、この場合、ノードＮは、管理サーバ１０１から鍵通知フレームＡＦ１，ＡＦ２が受信されたか否かを判断する。
【０３０３】
ここで、ゲートウェイＧｉ固有の暗号鍵Ｋｉを受信するのを待って（ステップＳ６２０４：Ｎｏ）、受信した場合（ステップＳ６２０４：Ｙｅｓ）、ノードＮは、設定部５３０５により、受信された複数の暗号鍵Ｋｉの各々を、パケットを暗号化するための鍵に設定して（ステップＳ６２０５）、本フローチャートによる一連の処理を終了する。
【０３０４】
これにより、ノードＮは、アドホックネットワークＡｉ内のノード間で送受信されるパケットを暗号化するためのゲートウェイＧｉ固有の暗号鍵Ｋｉの各々を、携帯端末ＭＴを利用して一時的に確立された通信路（ＮＷ２，ＮＷ３）を介して管理サーバ１０１から取得して設定することができる。なお、ノードＮがアドホックネットワークＡｉ内の既設定ノードである場合の通信処理については、図２５に示した通信処理と同一であるため省略する。
【０３０５】
（ゲートウェイＧｉの鍵通知処理手順）
図６３は、実施の形態３にかかるゲートウェイの鍵通知処理手順の一例を示すフローチャートである。図６３のフローチャートにおいて、まず、ＧＷ受信部５６０１により、アドホックネットワークＡｉからブロードキャストされた暗号化ＧＷ探索フレームＫｉ（ＴＦ）を受信したか否かを判断する（ステップＳ６３０１）。
【０３０６】
ここで、暗号化ＧＷ探索フレームＫｉ（ＴＦ）を受信するのを待って（ステップＳ６３０１：Ｎｏ）、受信した場合（ステップＳ６３０１：Ｙｅｓ）、ゲートウェイＧｉは、復号部５６０２により、暗号化ＧＷ探索フレームＫｉ（ＴＦ）をＧＷ探索フレームＴＦに復号する（ステップＳ６３０２）。そして、ゲートウェイＧｉは、作成部５６０３により、ゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求を表す鍵通知フレームＡＦｉを作成する（ステップＳ６３０３）。
【０３０７】
そして、ゲートウェイＧｉは、ＧＷ送信部５６０４により、ネットワークＮＷ１を介して、作成された鍵通知フレームＡＦｉを管理サーバ１０１に送信して（ステップＳ６３０４）、本フローチャートによる一連の処理を終了する。
【０３０８】
これにより、復号されたＧＷ探索フレームＴＦに応じて、ゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求を表す鍵通知フレームＡＦｉを管理サーバ１０１に送信することができる。
【０３０９】
（管理サーバ１０１の鍵提供処理手順）
つぎに、管理サーバ１０１の鍵提供処理手順について説明する。まず、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持していない場合の鍵提供処理手順について説明する。すなわち、以下に説明する鍵提供処理手順は、ゲートウェイＧｉから管理サーバ１０１に送信される鍵通知フレームＡＦｉにゲートウェイＧｉ固有の暗号鍵Ｋｉが含まれている場合の処理手順である。
【０３１０】
図６４は、実施の形態３にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャート（その１）である。図６４のフローチャートにおいて、まず、管理サーバ１０１は、ＳＶ受信部５９０１により、ネットワークＮＷ１を介して、ゲートウェイＧｉから鍵通知フレームＡＦｉを受信したか否かを判断する（ステップＳ６４０１）。
【０３１１】
ここで、鍵通知フレームＡＦｉを受信するのを待って（ステップＳ６４０１：Ｎｏ）、受信した場合（ステップＳ６４０１：Ｙｅｓ）、管理サーバ１０１は、判断部５９０３により、受信された鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉを特定する（ステップＳ６４０２）。そして、管理サーバ１０１は、判断部５９０３により、特定されたノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録されているか否かを判断する（ステップＳ６４０３）。
【０３１２】
ここで、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に未登録の場合（ステップＳ６４０３：Ｎｏ）、管理サーバ１０１は、ＳＶ送信部５９０２により、受信された鍵通知フレームＡＦｉに含まれるユーザＩＤを特定する（ステップＳ６４０４）。つぎに、管理サーバ１０１は、ＳＶ送信部５９０２により、ネットワークＮＷ２を介して、特定されたユーザＩＤの携帯端末ＭＴに受信された鍵通知フレームＡＦｉを送信する（ステップＳ６４０５）。
【０３１３】
そして、管理サーバ１０１は、判断部５９０３により、ステップＳ６４０２において特定されたノードＩＤと暗号鍵Ｋｉを関連付けて送信済リスト６０００に登録して（ステップＳ６４０６）、本フローチャートによる一連の処理を終了する。一方、ステップＳ６４０３において、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録されている場合（ステップＳ６４０３：Ｙｅｓ）、本フローチャートによる一連の処理を終了する。
【０３１４】
これにより、管理サーバ１０１は、携帯端末ＭＴを利用して一時的に確立された通信路（ＮＷ２，ＮＷ３）を介して、アドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを、暗号鍵Ｋｉごとに新規ノードＮｘに提供することができる。
【０３１５】
つぎに、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持している場合の鍵提供処理手順について説明する。すなわち、以下に説明する鍵提供処理手順は、ゲートウェイＧｉから管理サーバ１０１に送信される鍵通知フレームＡＦｉにゲートウェイＧｉ固有の暗号鍵Ｋｉが含まれていない場合の処理手順である。
【０３１６】
図６５は、実施の形態３にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャート（その２）である。図６５のフローチャートにおいて、まず、管理サーバ１０１は、ＳＶ受信部５９０１により、ネットワークＮＷ１を介して、ゲートウェイＧｉから鍵通知フレームＡＦｉを受信したか否かを判断する（ステップＳ６５０１）。
【０３１７】
ここで、鍵通知フレームＡＦｉを受信するのを待って（ステップＳ６５０１：Ｎｏ）、受信した場合（ステップＳ６５０１：Ｙｅｓ）、管理サーバ１０１は、抽出部５９０４により、受信された鍵通知フレームＡＦｉに含まれるゲートウェイＩＤを特定する（ステップＳ６５０２）。つぎに、管理サーバ１０１は、抽出部５９０４により、暗号鍵ＤＢ６１００の中から、特定されたゲートウェイＩＤと関連付けて記憶されている暗号鍵Ｋｉを抽出する（ステップＳ６５０３）。
【０３１８】
そして、管理サーバ１０１は、判断部５９０３により、受信された鍵通知フレームＡＦｉに含まれるノードＩＤを特定する（ステップＳ６５０４）。そして、管理サーバ１０１は、判断部５９０３により、特定されたノードＩＤと抽出された暗号鍵Ｋｉのペアが送信済リスト６０００に登録されているか否かを判断する（ステップＳ６５０５）。
【０３１９】
ここで、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に未登録の場合（ステップＳ６５０５：Ｎｏ）、管理サーバ１０１は、ＳＶ送信部５９０２により、受信された鍵通知フレームＡＦｉに含まれるユーザＩＤを特定する（ステップＳ６５０６）。つぎに、管理サーバ１０１は、ＳＶ送信部５９０２により、ネットワークＮＷ２を介して、特定されたユーザＩＤの携帯端末ＭＴに抽出された暗号鍵Ｋｉを送信する（ステップＳ６５０７）。
【０３２０】
そして、管理サーバ１０１は、判断部５９０３により、ステップＳ６５０４において特定されたノードＩＤとステップＳ６５０３において抽出された暗号鍵Ｋｉを関連付けて送信済リスト６０００に登録して（ステップＳ６５０８）、本フローチャートによる一連の処理を終了する。
【０３２１】
一方、ステップＳ６５０５において、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録されている場合（ステップＳ６５０５：Ｙｅｓ）、本フローチャートによる一連の処理を終了する。これにより、ゲートウェイＧｉから暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを受信する場合に比べて、ゲートウェイＧｉとの通信時におけるデータ量を削減することができる。
【０３２２】
以上説明したように、実施の形態３によれば、作業員ＯＰの携帯端末ＭＴを介して、新規ノードＮｘと管理サーバ１０１との一時的な通信路を確立することができる。また、携帯端末ＭＴとの接続を契機に、新規ノードＮｘがＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストすることができる。さらに、ＧＷ探索フレームＴＦがゲートウェイＧｉに転送された結果、ゲートウェイＧｉから管理サーバ１０１に送信された暗号鍵Ｋｉを、携帯端末ＭＴを介して新規ノードＮｘが受信することができる。
【０３２３】
これにより、複数のアドホックネットワークＡｉの境界に位置する新規ノードＮｘの鍵設定時に、新規ノードＮｘに設定可能な複数の暗号鍵Ｋｉを容易に取得することができ、新規ノードＮｘが用いる暗号鍵Ｋｉの設定作業の効率化を図ることができる。具体的には、たとえば、新規ノードＮｘの初期導入時などにおいて、作業員ＯＰが地理的に絞り込まれた候補となるゲートウェイＧｉと新規ノードＮｘとの通信状況をしらみつぶしに確認するなどの作業が不要となり、新規ノードＮｘに対する暗号鍵Ｋｉの設定作業の効率化を図ることができる。また、確認作業のために候補となる各ゲートウェイの暗号鍵Ｋｉを携帯端末ＭＴなどに記録しておく必要がないため、持ち運びの際の情報漏洩のリスクを低減させることができる。
【０３２４】
また、携帯端末ＭＴからのＧＷ探索フレームＴＦの送信指示データ５４００を契機に、ＧＷ探索フレームＴＦを新規ノードＮｘからアドホックネットワークＡｉにブロードキャストすることができる。これにより、携帯端末ＭＴを利用して、新規ノードＮｘに対して鍵設定とは異なる設定作業などを行う際に、携帯端末ＭＴとの接続が検知された時点で、新規ノードＮｘからＧＷ探索フレームＴＦがブロードキャストされることを防ぐことができる。
【０３２５】
また、携帯端末ＭＴの識別子を含むＧＷ探索フレームＴＦを新規ノードＮｘからアドホックネットワークＡｉにブロードキャストすることができる。これにより、管理サーバ１０１において、複数の携帯端末ＭＴが通信可能に接続されている場合であっても、鍵通知フレームＡＦｉの送信先となる携帯端末ＭＴを適切に識別することができる。
【０３２６】
また、新規ノードＮｘの識別子を含むＧＷ探索フレームＴＦを新規ノードＮｘからアドホックネットワークＡｉにブロードキャストすることができる。これにより、管理サーバ１０１において、鍵通知フレームＡＦｉを送信済みのノードＮを管理することができ、鍵通知フレームＡＦｉの重複送信を防ぐことができる。
【０３２７】
また、実施の形態３によれば、アドホックネットワークごとにそれぞれ固有の暗号鍵が設定されているため、アドホックネットワーク内のノード群は同一の暗号鍵を保持している。その一方で、複数のアドホックネットワークと通信可能なノード（新規ノードＮｘ）については、各々のアドホックネットワークの暗号鍵が設定される。このため、いずれかのアドホックネットワークと通信障害が生じて通信できなくても、残余のアドホックネットワーク経由で管理サーバ１０１にデータを送信することができる。
【０３２８】
したがって、複数の暗号鍵が設定されたノードは、セキュリティを維持したまま、通信可能なゲートウェイを自律的に選択でき、ロバスト性の低減を防止することができる。また、暗号鍵が複数設定されているため、暗号鍵が１つ漏洩しても、漏洩していない暗号鍵で通信可能なアドホックネットワーク内のデータは漏洩しない。このため、ゲートウェイごとに１個の暗号鍵しか設定できないアドホックネットワークに比べて、鍵漏洩リスクの低減化を図ることができる。
【０３２９】
また、複数のアドホックネットワークの通信圏内のノード（新規ノードＮｘ）のみ各アドホックネットワークの暗号鍵がすべて設定されるが、他のノードは所属するゲートウェイ固有の暗号鍵が１個だけ設定されるだけである。したがって、アドホックネットワーク内でのノードの処理（暗号化、復号）が１個の暗号鍵で済み、送信するパケットも１個の暗号鍵で暗号化された暗号化パケットだけであるため、通信量の増加を抑制することができる。
【０３３０】
＜実施の形態４：アップストリーム型で複数鍵の主副決定＞
つぎに、実施の形態４について説明する。実施の形態３では、新規ノードＮｘに複数の暗号鍵を設定した例について説明したが、実施の形態４では、図５の第５の例で示したように、新規ノードＮｘに設定する複数の暗号鍵Ｋｉを、主鍵と副鍵に分けて設定する。具体的には、通常は主鍵で暗号化および復号をおこない、主鍵で復号できなかった場合に、副鍵を使用することとなる。その後、新規設定済みとなったノードＮｘの配下に新規ノードを設定する。ノードＮｘの配下に新規ノードがある場合は、ノードＮｘを「境界ノード」と称す。
【０３３１】
なお、実施の形態３と同一構成には同一符号を付し、その説明を省略する。また、暗号鍵の主副決定以外は、実施の形態３と共通するため、説明を省略する。
【０３３２】
図６６〜図７０は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図である。
【０３３３】
図６６に示した状態（Ｇ）では、境界ノードＮｘにおいて、暗号鍵Ｋ１，Ｋ２が設定されており、このうち暗号鍵Ｋ１を主鍵、暗号鍵Ｋ２を副鍵とする。暗号鍵Ｋ１，Ｋ２の主副決定は、管理サーバ１０１が実行する。この点については後述する。
【０３３４】
図６７は、状態（Ｇ）の次状態（Ｈ）を示している。（Ｈ）では、管理サーバ１０１とセキュアなネットワークＮＷ２を介して接続可能な携帯端末ＭＴが、ネットワークＮＷ３を介して新規ノードＮｙと接続された状態を示している。
【０３３５】
図６８は、状態（Ｈ）の次状態（Ｉ）を示している。（Ｉ）では、（Ｈ）の状態から、新規ノードＮｙが、アドホックネットワークＡ１，Ａ２に対しＧＷ探索フレームＴＦをブロードキャストしている。ＧＷ探索フレームＴＦを受信したゲートウェイＧｉは、管理サーバ１０１にゲートウェイＧｉ固有の暗号鍵Ｋｉをアップロードする。
【０３３６】
新規ノードＮｙの通信圏内にある境界ノードＮｘは、新規ノードＮｙからＧＷ探索フレームＴＦを受信した場合、ＧＷ探索フレームＴＦを破棄せず、主鍵である暗号鍵Ｋ１でＧＷ探索フレームＴＦを暗号化する。そして、境界ノードＮｘは、暗号化ＧＷ探索フレームＫ１（ＴＦ）をアドホックネットワークＡ１内にブロードキャストする。これにより、暗号化ＧＷ探索フレームＫ１（ＴＦ）がノードＮ１−１〜Ｎ１−４およびゲートウェイＧ１に行き渡ることとなる。
【０３３７】
同様に、境界ノードＮｘは、副鍵である暗号鍵Ｋ２ではＧＷ探索フレームＴＦを暗号化しないため、アドホックネットワークＡ２には送信しない。アドホックネットワークＡ２のノードＮ２−２が、主鍵である暗号鍵Ｋ１で暗号化した暗号化ＧＷ探索フレームＫ１（ＴＦ）を傍受したとしても、ノードＮ２−２では復号できないため、破棄される。
【０３３８】
ゲートウェイＧ１は、暗号化ＧＷ探索フレームＫ１（ＴＦ）を受信すると、暗号鍵Ｋ１で復号し、ＧＷ探索フレームＴＦでの指示内容にしたがって、管理サーバ１０１に暗号鍵Ｋ１をアップロードする。これにより、管理サーバ１０１では、携帯端末ＭＴの識別子（たとえば、後述する『Ｄ１』）とゲートウェイＧ１の暗号鍵Ｋ１とを関連付けたテーブルＴが作成される。
【０３３９】
図６９は、状態（Ｉ）の次状態（Ｊ）を示している。（Ｊ）では、管理サーバ１０１が（Ｉ）により受け取った暗号鍵Ｋ１を、テーブルＴにより暗号鍵Ｋ１に関連付けてされている携帯端末ＭＴに、ネットワークＮＷ２を介して送信する。携帯端末ＭＴは、管理サーバ１０１から受信した暗号鍵Ｋ１を、ネットワークＮＷ３経由で、新規ノードＮｙに送信する。
【０３４０】
図７０は、状態（Ｊ）の次状態（Ｋ）を示している。（Ｋ）では、新規ノードＮｙは、管理サーバ１０１から送信されてきた暗号鍵Ｋ１を受信して、暗号化および復号するための鍵に設定する。したがって、このあと、新規ノードＮｙは、境界ノードＮｘからの暗号化パケットＳＰ１を暗号鍵Ｋ１で復号することができる。また、新規ノードＮｙからは、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１が境界ノードＮｘに送信される。
【０３４１】
このように、境界ノードＮｘの配下の新規ノードＮｙで設定される暗号鍵は、境界ノードＮｘの主鍵のみとなるため、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。
【０３４２】
また、管理サーバ１０１およびノード等のハードウェア構成例は、実施の形態１〜３と同一であるため、説明を省略する。また、境界ノードＮｘの機能的構成については、図５３と同一構成であるため、省略する。また、新規ノードＮｙの機能的構成については、境界ノードＮｘではない通常のノードＮと同一構成であるため、省略する。
【０３４３】
（管理サーバ１０１の機能的構成例）
図７１は、実施の形態４にかかる管理サーバ１０１の機能的構成を示すブロック図である。図７１の管理サーバ１０１は、図５９に示した管理サーバ１０１に決定部７１０１と設定部７１０２とを追加した構成である。決定部７１０１および設定部７１０２は、具体的には、たとえば、図１６に示したＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されたプログラムをＣＰＵ１６０１に実行させることにより、または、Ｉ／Ｆ１６０８により、その機能を実現する。また、決定部７１０１および設定部７１０２の処理結果は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶される。
【０３４４】
決定部７１０１は、各ゲートウェイＧｉからの鍵通知フレームＡＦｉの着順に基づいて、各暗号鍵Ｋｉの中から主鍵と副鍵を決定する。具体的には、決定部７１０１は、先着（１着）の鍵通知フレームＡＦｉ内の暗号鍵Ｋｉを主鍵に決定し、後着（２着以降）の鍵通知フレームＡＦｉ内の暗号鍵Ｋｉを副鍵に決定する。たとえば、ゲートウェイＧ１からの鍵通知フレームＡＦ１が、ゲートウェイＧ２からの鍵通知フレームＡＦ２よりも先に受信された場合、暗号鍵Ｋ１を主鍵に決定し、暗号鍵Ｋ２を副鍵に決定する。
【０３４５】
すなわち、鍵通知フレームＡＦｉの着順が早いということは、それだけ暗号化ＧＷ探索フレームＫｉ（ＴＦ）の転送経路が短く、効率的に通信できると考えられる。したがって、先着の鍵通知フレームＡＦｉの暗号鍵Ｋｉを主鍵とすることで、通信の効率性の向上を図ることができる。
【０３４６】
また、決定部７１０１は、受信された暗号鍵Ｋｉごとの暗号鍵Ｋｉに関する受信回数に基づいて、各暗号鍵Ｋｉの中から主鍵と副鍵を決定することとしてもよい。具体的には、決定部７１０１は、鍵通知フレームＡＦｉのゲートウェイＧｉごとの受信回数が最大となる暗号鍵Ｋｉを、主鍵に決定し、２番目以降の受信回数の暗号鍵Ｋｉを副鍵に決定する。
【０３４７】
たとえば、ゲートウェイＧ１からの鍵通知フレームＡＦ１の受信回数が２回、ゲートウェイＧ２からの鍵通知フレームＡＦ２の受信回数が８回である場合、暗号鍵Ｋ２を主鍵に決定し、暗号鍵Ｋ１を副鍵に決定する。
【０３４８】
すなわち、鍵通知フレームＡＦｉの受信回数が多いということは、それだけアドホックネットワークＡｉ内での暗号化ＧＷ探索フレームＫｉ（ＴＦ）の転送経路が受信回数分存在すると考えられる。したがって、ある経路で通信障害が発生しても代替経路でパケット転送できる頻度が高くなるため、アドホックネットワークＡｉの特徴である自律性やロバスト性を担保することができ、安全に通信をおこなうことができる。なお、いずれの決定方法においても、副鍵については少なくとも１つ決定されていればよい。
【０３４９】
また、設定部７１０２は、決定部７１０１によって主副決定された場合、鍵通知フレームＡＦｉに主／副を示す情報を追加する。以下、追加例について説明する。
【０３５０】
図７２は、実施の形態４にかかる設定部７１０２での鍵通知フレームの設定例１を示す説明図である。図７２において、ゲートウェイＧ１固有の暗号鍵Ｋ１を含む鍵通知フレームＡＦ１を示している。暗号鍵Ｋ１は主鍵に決定されているため、鍵通知フレームＡＦ１には、主副情報として「主」が追加される。
【０３５１】
図７３は、実施の形態４にかかる設定部７１０２での鍵通知フレームの設定例２を示す説明図である。図７３において、ゲートウェイＧ２固有の暗号鍵Ｋ２を含む鍵通知フレームＡＦ２を示している。暗号鍵Ｋ２は副鍵に決定されているため、鍵通知フレームＡＦ２には、主副情報として「副」が追加される。図７２および図７３の鍵通知フレームＡＦ１，ＡＦ２は、境界ノードＮｘを新規設定する場合に、携帯端末ＭＴを介して境界ノードＮｘに送信される。
【０３５２】
（管理サーバ１０１の鍵提供処理手順）
つぎに、管理サーバ１０１の鍵提供処理手順について説明する。まず、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持していない場合の鍵提供処理手順について説明する。すなわち、以下に説明する鍵提供処理手順は、ゲートウェイＧｉから管理サーバ１０１に送信される鍵通知フレームＡＦｉにゲートウェイＧｉ固有の暗号鍵Ｋｉが含まれている場合の処理手順である。
【０３５３】
図７４は、実施の形態４にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャート（その１）である。図７４のフローチャートにおいて、まず、管理サーバ１０１は、ＳＶ受信部５９０１により、ネットワークＮＷ１を介して、ゲートウェイＧｉから鍵通知フレームＡＦｉを受信したか否かを判断する（ステップＳ７４０１）。
【０３５４】
ここで、鍵通知フレームＡＦｉを受信した場合（ステップＳ７４０１：Ｙｅｓ）、管理サーバ１０１は、判断部５９０３により、受信された鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉを特定する（ステップＳ７４０２）。そして、判断部５９０３により、特定されたノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録されているか否かを判断する（ステップＳ７４０３）。
【０３５５】
ここで、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に未登録の場合（ステップＳ７４０３：Ｎｏ）、管理サーバ１０１は、判断部５９０３により、ステップＳ７４０２において特定されたノードＩＤと暗号鍵Ｋｉを関連付けて送信済リスト６０００に登録して（ステップＳ７４０４）、ステップＳ７４０１に戻る。一方、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録済みの場合（ステップＳ７４０３：Ｙｅｓ）、ステップＳ７４０１に戻る。
【０３５６】
また、ステップＳ７４０１において、鍵通知フレームＡＦｉが受信されていない場合（ステップＳ７４０１：Ｎｏ）、管理サーバ１０１は、タイムアウトか否かを判断する（ステップＳ７４０５）。タイムアウトでない場合（ステップＳ７４０５：Ｎｏ）、ステップＳ７４０１に戻る。一方、タイムアウトの場合（ステップＳ７４０５：Ｙｅｓ）、管理サーバ１０１は、決定部７１０１により主副決定をおこなう（ステップＳ７４０６）。
【０３５７】
このあと、管理サーバ１０１は、設定部７１０２により、鍵通知フレームＡＦｉに主副情報を追加し（ステップＳ７４０７）、ＳＶ送信部５９０２により、受信された鍵通知フレームＡＦｉに含まれるユーザＩＤを特定する（ステップＳ７４０８）。そして、管理サーバ１０１は、鍵通知フレームＡＦｉを、新規ノードＮｘに送信し（ステップＳ７４０９）、本フローチャートによる一連の処理を終了する。
【０３５８】
これにより、携帯端末ＭＴを利用して一時的に確立された通信路（ＮＷ２，ＮＷ３）を介して、アドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを、暗号鍵Ｋｉごとに境界ノードＮｘに提供することができる。
【０３５９】
つぎに、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持している場合の鍵提供処理手順について説明する。すなわち、以下に説明する鍵提供処理手順は、ゲートウェイＧｉから管理サーバ１０１に送信される鍵通知フレームにゲートウェイＧｉ固有の暗号鍵Ｋｉが含まれていない場合の処理手順である。
【０３６０】
図７５は、実施の形態４にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャート（その２）である。図７５のフローチャートにおいて、まず、管理サーバ１０１は、ＳＶ受信部５９０１により、ネットワークＮＷ１を介して、ゲートウェイＧｉから鍵通知フレームＡＦｉを受信したか否かを判断する（ステップＳ７５０１）。
【０３６１】
ここで、受信した場合（ステップＳ７５０１：Ｙｅｓ）、管理サーバ１０１は、抽出部５９０４により、受信された鍵通知フレームＡＦｉに含まれるゲートウェイＩＤを特定する（ステップＳ７５０２）。つぎに、管理サーバ１０１は、抽出部５９０４により、暗号鍵ＤＢ６１００の中から、特定されたゲートウェイＩＤと関連付けて記憶されている暗号鍵Ｋｉを抽出する（ステップＳ７５０３）。
【０３６２】
そして、管理サーバ１０１は、判断部５９０３により、受信された鍵通知フレームＡＦｉに含まれるノードＩＤを特定する（ステップＳ７５０４）。そして、管理サーバ１０１は、判断部５９０３により、特定されたノードＩＤと抽出された暗号鍵のペアが送信済リスト６０００に登録されているか否かを判断する（ステップＳ７５０５）。
【０３６３】
ここで、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に未登録の場合（ステップＳ７５０５：Ｎｏ）、管理サーバ１０１は、判断部５９０３により、ステップＳ７５０４において特定されたノードＩＤと暗号鍵Ｋｉを関連付けて送信済リスト６０００に登録して（ステップＳ７５０６）、ステップＳ７５０１に戻る。一方、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録済みの場合（ステップＳ７５０５：Ｙｅｓ）、ステップＳ７５０１に戻る。
【０３６４】
また、ステップＳ７５０１において、鍵通知フレームＡＦｉが受信されていない場合（ステップＳ７５０１：Ｎｏ）、管理サーバ１０１は、タイムアウトか否かを判断する（ステップＳ７５０７）。タイムアウトでない場合（ステップＳ７５０７：Ｎｏ）、ステップＳ７５０１に戻る。一方、タイムアウトの場合（ステップＳ７５０７：Ｙｅｓ）、管理サーバ１０１は、決定部７１０１により主副決定をおこなう（ステップＳ７５０８）。
【０３６５】
このあと、管理サーバ１０１は、設定部７１０２により、鍵通知フレームＡＦｉに主副情報を追加し（ステップＳ７５０９）、ＳＶ送信部５９０２により、受信された鍵通知フレームＡＦｉに含まれるユーザＩＤを特定する（ステップＳ７５１０）。そして、管理サーバ１０１は、主鍵および副鍵ごとに、鍵通知フレームＡＦｉを、新規ノードＮｘに送信し（ステップＳ７５１１）、本フローチャートによる一連の処理を終了する。
【０３６６】
これにより、ゲートウェイＧｉから暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを受信する場合に比べて、ゲートウェイＧｉとの通信時におけるデータ量を削減することができる。
【０３６７】
（ノードＮｘの通信処理）
つぎに、複数のアドホックネットワークＡｉの境界に位置する境界ノードＮｘの通信処理について説明する。
【０３６８】
図７６は、実施の形態４にかかる境界ノードＮｘの通信処理手順を示すフローチャートである。まず、境界ノードＮｘは、パケットの受信を待ち受け（ステップＳ７６０１：Ｎｏ）、パケットを受信した場合（ステップＳ７６０１：Ｙｅｓ）、境界ノードＮｘは、主鍵で復号できたか否かを判断する（ステップＳ７６０２）。
【０３６９】
復号できた場合（ステップＳ７６０２：Ｙｅｓ）、境界ノードＮｘは、受信したパケットの宛先アドレスが自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ７６０３）。自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ７６０３：Ｙｅｓ）、境界ノードＮｘは、復号されたデータに基づいたデータ処理を実行し（ステップＳ７６０４）、受信したパケットを転送先に転送する（ステップＳ７６０５）。これにより、通信処理を終了する。
【０３７０】
一方、ステップＳ７６０３において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ７６０３：Ｎｏ）、境界ノードＮｘは、受信したパケットを転送先に転送する（ステップＳ７６０５）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルで規定されたノードとなる。
【０３７１】
また、ステップＳ７６０２において主鍵で復号できなかった場合（ステップＳ７６０２：Ｎｏ）、境界ノードＮｘは、いずれかの副鍵で復号できたか否かを判断する（ステップＳ７６０６）。
【０３７２】
復号できた場合（ステップＳ７６０６：Ｙｅｓ）、境界ノードＮｘは、受信したパケットの宛先アドレスが自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ７６０７）。自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ７６０７：Ｙｅｓ）、境界ノードＮｘは、復号されたデータに基づいたデータ処理を実行する（ステップＳ７６０８）。そして、境界ノードＮｘは、復号データを主鍵で暗号化し（ステップＳ７６０９）、主鍵で暗号化されたパケットを転送先に転送する（ステップＳ７６１０）。これにより、通信処理を終了する。
【０３７３】
一方、ステップＳ７６０７において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ７６０７：Ｎｏ）、境界ノードＮｘは、復号データを主鍵で暗号化し（ステップＳ７６０９）、主鍵で暗号化されたパケットを転送先に転送する（ステップＳ７６１０）。これにより、通信処理を終了する。
【０３７４】
また、ステップＳ７６０６において、いずれの副鍵でも復号できなかった場合（ステップＳ７６０６：Ｎｏ）、境界ノードＮｘは、受信したパケットがＧＷ探索フレームＴＦであるか否かを判断する（ステップＳ７６１１）。ＧＷ探索フレームＴＦであるか否かは、フレーム種別をチェックすることで特定できる。
【０３７５】
ＧＷ探索フレームＴＦでない場合（ステップＳ７６１１：Ｎｏ）、受信したパケットは傍受したこととなるため、境界ノードＮｘは、受信したパケットを破棄して（ステップＳ７６１２）、通信処理を終了する。
【０３７６】
一方、ステップＳ７６１１において、ＧＷ探索フレームＴＦである場合（ステップＳ７６１１：Ｙｅｓ）、境界ノードＮｘは、ＧＷ探索フレームＴＦを主鍵で暗号化する（ステップＳ７６１３）。そして、新規ノードＮｘは、暗号化ＧＷ探索フレームを転送先に転送する（ステップＳ７６１４）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルで規定されたノードとなる。また、新規ノードＮｙの通信処理は、図３０に示した通信処理と同一内容となるため、省略する。
【０３７７】
以上のことから、実施の形態４にかかる鍵設定方法、ノード、およびネットワークシステムによれば、実施の形態３と同様、アドホックネットワーク内のノードに対する暗号鍵の設定作業にかかる作業員の作業負担の軽減化および作業時間の短縮化を図ることができる。
【０３７８】
また、境界ノードＮｘに設定された複数の暗号鍵を主鍵と副鍵に分類して使用することで、ノードＮｘの配下に設定される新規ノードＮｙについては、主鍵（たとえば、暗号鍵Ｋ１）を割り当てるだけでよく、副鍵（たとえば、暗号鍵Ｋ２）を割り当てる必要はない。これにより、新規ノードＮｘの配下のノードＮｙ以降の鍵数を１個にすることができ、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡｉ内の通信量の増加を抑制することができる。
【０３７９】
以上のことから、本実施の形態１〜４にかかる鍵設定方法、ノード、およびネットワークシステムによれば、アドホックネットワーク内のノードに対する暗号鍵の設定作業にかかる作業員の作業負担の軽減化および作業時間の短縮化を図ることができる。また、ダウンストリーム型またはアップストリーム型のいずれであっても、新規ノードの導入後において、アドホックネットワークの自律性やロバスト性を維持しつつ、鍵漏洩時のリスクの低減と通信の効率化を図ることができる。
【符号の説明】
【０３８０】
１００  ネットワークシステム
１０１  管理サーバ
１１０，６１００  暗号鍵ＤＢ
Ａｉ  アドホックネットワーク
ＡＦｉ  鍵通知フレーム
Ｇｉ  ゲートウェイ
Ｋｉ  暗号鍵
ＭＴ  携帯端末
Ｎ  ノード
ＳＰｉ  暗号化パケット
Ｔ  テーブル
ＴＦ  ＧＷ探索フレーム
【図１】
2012090331.tif 000003
【図２】
2012090331.tif 000004
【図３】
2012090331.tif 000005
【図４】
2012090331.tif 000006
【図５】
2012090331.tif 000007
【図６】
2012090331.tif 000008
【図７】
2012090331.tif 000009
【図８】
2012090331.tif 000010
【図９】
2012090331.tif 000011
【図１０】
2012090331.tif 000012
【図１１】
2012090331.tif 000013
【図１２】
2012090331.tif 000014
【図１３】
2012090331.tif 000015
【図１４】
2012090331.tif 000016
【図１５】
2012090331.tif 000017
【図１６】
2012090331.tif 000018
【図１７】
2012090331.tif 000019
【図１８】
2012090331.tif 000020
【図１９】
2012090331.tif 000021
【図２０】
2012090331.tif 000022
【図２１】
2012090331.tif 000023
【図２２】
2012090331.tif 000024
【図２３】
2012090331.tif 000025
【図２４】
2012090331.tif 000026
【図２５】
2012090331.tif 000027
【図２６】
2012090331.tif 000028
【図２７】
2012090331.tif 000029
【図２８】
2012090331.tif 000030
【図２９】
2012090331.tif 000031
【図３０】
2012090331.tif 000032
【図３１】
2012090331.tif 000033
【図３２】
2012090331.tif 000034
【図３３】
2012090331.tif 000035
【図３４】
2012090331.tif 000036
【図３５】
2012090331.tif 000037
【図３６】
2012090331.tif 000038
【図３７】
2012090331.tif 000039
【図３８】
2012090331.tif 000040
【図３９】
2012090331.tif 000041
【図４０】
2012090331.tif 000042
【図４１】
2012090331.tif 000043
【図４２】
2012090331.tif 000044
【図４３】
2012090331.tif 000045
【図４４】
2012090331.tif 000046
【図４５】
2012090331.tif 000047
【図４６】
2012090331.tif 000048
【図４７】
2012090331.tif 000049
【図４８】
2012090331.tif 000050
【図４９】
2012090331.tif 000051
【図５０】
2012090331.tif 000052
【図５１】
2012090331.tif 000053
【図５２】
2012090331.tif 000054
【図５３】
2012090331.tif 000055
【図５４】
2012090331.tif 000056
【図５５】
2012090331.tif 000057
【図５６】
2012090331.tif 000058
【図５７】
2012090331.tif 000059
【図５８】
2012090331.tif 000060
【図５９】
2012090331.tif 000061
【図６０】
2012090331.tif 000062
【図６１】
2012090331.tif 000063
【図６２】
2012090331.tif 000064
【図６３】
2012090331.tif 000065
【図６４】
2012090331.tif 000066
【図６５】
2012090331.tif 000067
【図６６】
2012090331.tif 000068
【図６７】
2012090331.tif 000069
【図６８】
2012090331.tif 000070
【図６９】
2012090331.tif 000071
【図７０】
2012090331.tif 000072
【図７１】
2012090331.tif 000073
【図７２】
2012090331.tif 000074
【図７３】
2012090331.tif 000075
【図７４】
2012090331.tif 000076
【図７５】
2012090331.tif 000077
【図７６】
2012090331.tif 000078
【手続補正書】
【提出日】平成25年7月9日(2013.7.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のアドホックネットワークの通信圏内にあるノードが、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信工程と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信工程によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信工程と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【請求項２】
前記鍵受信工程は、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定工程は、
前記鍵受信工程によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信工程によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする請求項１に記載の鍵設定方法。
【請求項３】
前記鍵受信工程は、
前記サーバでの前記複数の暗号化パケットの着順に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項２に記載の鍵設定方法。
【請求項４】
前記鍵受信工程は、
前記サーバで得られた前記複数の暗号化パケットの各々の転送回数に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項２に記載の鍵設定方法。
【請求項５】
複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記特定のゲートウェイから同時通報された、前記主鍵を用いて暗号化された特定の暗号化パケットを、前記第１のノードから受信するパケット受信工程と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信工程によって受信された前記特定の暗号化パケットを前記サーバに送信するパケット送信工程と、
前記パケット送信工程によって送信された前記特定の暗号化パケットを復号する前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記主鍵を、前記第２のノードでの暗号化対象データを暗号化し、かつ、前記第２のノードでの復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【請求項６】
複数のアドホックネットワークの通信圏内にあるノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信工程と、
前記送信工程によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【請求項７】
前記鍵受信工程は、
前記サーバに送信された前記各ゲートウェイ固有の鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定工程は、
前記鍵受信工程によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信工程によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする請求項６に記載の鍵設定方法。
【請求項８】
複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信工程と、
前記送信工程によって同時通報された前記取得要求が前記第１のノードにおいて前記主鍵で暗号化されて、前記各ゲートウェイのうち前記特定のゲートウェイにのみ転送された結果、当該特定のゲートウェイから前記サーバに送信された前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記主鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【請求項９】
複数のアドホックネットワークの通信圏内にあるノードであって、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信手段と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【請求項１０】
前記鍵受信手段は、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定手段は、
前記鍵受信手段によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信手段によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする請求項９に記載のノード。
【請求項１１】
前記鍵受信手段は、
前記サーバでの前記複数の暗号化パケットの着順に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項１０に記載のノード。
【請求項１２】
前記鍵受信手段は、
前記サーバで得られた前記複数の暗号化パケットの各々の転送回数に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする請求項１０に記載のノード。
【請求項１３】
複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードであって、
前記特定のゲートウェイから同時通報された、前記主鍵を用いて暗号化された特定の暗号化パケットを、前記第１のノードから受信するパケット受信手段と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された前記特定の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記パケット送信手段によって送信された前記特定の暗号化パケットを復号する前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記主鍵を、前記第２のノードでの暗号化対象データを暗号化し、かつ、前記第２のノードでの復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【請求項１４】
複数のアドホックネットワークの通信圏内にあるノードであって、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【請求項１５】
前記鍵受信手段は、
前記サーバに送信された前記各ゲートウェイ固有の鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定手段は、
前記鍵受信手段によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信手段によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする請求項１４に記載のノード。
【請求項１６】
複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記第１のノードにおいて前記主鍵で暗号化されて、前記各ゲートウェイのうち前記特定のゲートウェイにのみ転送された結果、当該特定のゲートウェイから前記サーバに送信された前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記主鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、
を実行することを特徴とするノード。
【請求項１７】
複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶する記憶手段と、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信したノードから、当該ノードに接続された携帯端末を介して、前記複数の暗号化パケットを受信する受信手段と、
前記受信手段によって受信された前記複数の暗号化パケットを同時通報したゲートウェイに関連付けられている鍵を、前記記憶手段から暗号化パケットごとに抽出する抽出手段と、
前記抽出手段によって抽出された複数の鍵を、前記携帯端末を介して前記ノードに送信する送信手段と、
を備えることを特徴とするサーバ。
【請求項１８】
前記サーバでの前記複数の暗号化パケットの各々の着順に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする請求項１７に記載のサーバ。
【請求項１９】
前記複数の暗号化パケットについてのそれぞれのアドホックネットワーク内での転送回数に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする請求項１７に記載のサーバ。
【請求項２０】
前記複数の暗号化パケットの各々について前記ノードによって決定された優先度に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする請求項１７に記載のサーバ。
【請求項２１】
複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバであって、
前記各ゲートウェイから前記各ゲートウェイ固有の鍵を受信する受信手段と、
暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を前記複数のアドホックネットワークに同時通報したノードに接続された携帯端末を介して、前記受信手段によって受信された各鍵を前記ノードに送信する送信手段と、
を備えることを特徴とするサーバ。
【請求項２２】
前記受信手段によって受信された各鍵の着順に基づいて、前記各鍵の中から主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを前記携帯端末を介して前記ノードに送信することを特徴とする請求項２１に記載のサーバ。
【請求項２３】
前記受信手段によって受信された鍵ごとの前記鍵に関する受信回数に基づいて、前記各鍵の中から主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを前記携帯端末を介して前記ノードに送信することを特徴とする請求項２１に記載のサーバ。
【請求項２４】
複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークと通信可能であり、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶する記憶手段を有するサーバと、を備えるネットワークシステムであって、
前記ノードは、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信手段と、
前記サーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定手段と、を備え、
前記サーバは、
前記ノードが前記パケット送信手段によって送信した前記複数の暗号化パケットを、前記ノードに接続された携帯端末を介して受信する受信手段と、
前記受信手段によって受信された前記複数の暗号化パケットを同時通報したゲートウェイに関連付けられている鍵を、前記記憶手段から暗号化パケットごとに抽出する抽出手段と、
前記抽出手段によって抽出された複数の鍵を、前記携帯端末を介して前記ノードに送信する送信手段と、
を備えることを特徴とするネットワークシステム。
【請求項２５】
複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと、を備えるネットワークシステムであって、
前記ノードは、
前記サーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、を備え、
前記サーバは、
前記各ゲートウェイから前記各ゲートウェイ固有の鍵を受信する受信手段と、
前記ノードに接続された携帯端末を介して、前記受信手段によって受信された各鍵を前記ノードに送信する送信手段と、
を備えることを特徴とするネットワークシステム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを暗号化するための鍵を設定する鍵設定方法、ノード、サーバ、およびネットワークシステムに関する。
【背景技術】
【０００２】
アドホックネットワークは、無線通信でリンクする自己構成型のネットワークの一種である。アドホックネットワークは複数のノードにより構成される。また、アドホックネットワーク内の各ノードは、マルチホップ通信によりパケットの送受信を行う。マルチホップ通信は、互いの通信圏内に存在しないノード同士が、各ノードの通信圏内に存在する別のノードを介して通信を行う技術である。
【０００３】
また、アドホックネットワークとインターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの他のネットワークとを接続する場合、ゲートウェイと呼ばれる中継機器を用いて、ネットワーク間の通信の転送が行われる。
【０００４】
また、アドホックネットワークに属するノード数がある程度以上大きくなると、一つのゲートウェイでは処理が困難になる。そのような場合、ゲートウェイを複数個設けることにより、その処理を分散することが行われる。
【０００５】
上述の通り、アドホックネットワークにおけるマルチホップ通信は、中継するノードが選択した経路を通して、ノード同士の通信が自律的に行われるため、各ノードの状態や通信環境によって、時々刻々と経路が変化する。複数のゲートウェイが存在するアドホックネットワークでも同様で、あるノードが他のネットワークと通信する場合、どのゲートウェイにより中継されるかは、ネットワークの状態により変化するのが一般的である。アドホックネットワークは、このような自由な経路選択による、自律性とロバスト性を持つという特徴を有している。
【０００６】
一方、アドホックネットワークを利用した技術として、各家庭の電力メータに無線通信可能なノードを組み込んで、作業員が現地に出向くことなく、アドホックネットワーク経由でメータ確認などの業務を行うシステムがある。各家庭の電力の使用量などの個人情報を扱うアドホックネットワークでは、秘匿性や改ざん防止の観点からセキュアな通信を行うことが要求される。
【０００７】
そこで、従来では、アドホックネットワーク内のノード間で送受信されるパケットを暗号化することで、セキュアな通信を確保することが行われている。この際、システム内で使用する暗号化用の鍵を１個として、各ノードやゲートウェイがこの鍵を保持することで、セキュアな通信を行うことが一般的に行われている。
【０００８】
しかし、システム内の全ノードで共通の暗号鍵を用いた場合、万一、１個のノードが解析されて鍵が漏洩した場合、システム全体の通信の内容が漏洩する危険性がある。そのため、システム内で使用する鍵を複数にすることで、鍵漏洩時のリスクを低減することが求められている。
【０００９】
また、システムへの新規ノードの初期導入時などにおいて、新規ノードは、暗号鍵が設定されるまでの間、アドホックネットワーク内の他のノードとセキュアな通信を行うことができない。このため、アドホックネットワーク経由で新規ノードに暗号鍵を自動設定することが難しく、作業員が現地に出向いて暗号鍵の設定作業を行っている。
【００１０】
また、セキュア通信に関する先行技術として、たとえば、ブロードキャストにより通信を行うネットワークの暗号鍵を管理する技術がある（たとえば、下記特許文献１参照。）。また、アドホックネットワークにおいて通信開始時の鍵交換を安定して行うための技術がある（たとえば、下記特許文献２参照。）。また、アドホックネットワーク内の各ノードが適応ゲートウェイを選択するための技術がある（たとえば、下記特許文献３参照。）。
【００１１】
また、セキュア通信に関する先行技術として、たとえば、端末が通信制御を行うのに必要な各種の通信制御情報を端末とは異なる他の通信装置を利用して認証サーバから取得する技術がある（たとえば、下記特許文献４参照。）。また、各通信端末が最寄りの通信端末と公開鍵を用いて相互認証を行うアドホックネットワークに関する技術がある（たとえば、下記特許文献５参照。）。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００３−３４８０７２号公報
【特許文献２】特開２００７−８８７９９号公報
【特許文献３】特開２００９−８１８５４号公報
【特許文献４】特開２００６−１３５８７４号公報
【特許文献５】特開２００７−１３３８６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、上述した従来技術では、アドホックネットワーク内の各ノードに設定する暗号鍵をゲートウェイごとに変える場合、新規ノードの初期導入時などにおいて、新規ノードが属するゲートウェイを特定することが難しいという問題があった。たとえば、新規ノードの設置場所の住所から候補となるゲートウェイを絞り込むことはできても、天候や近傍の建物との位置関係などの要因により通信状況が変化する。このため、実際にどのゲートウェイと通信可能であるかを作業員が現地に出向いて確認する必要があり、作業員の暗号鍵の設定作業にかかる作業時間および作業負荷の増大を招くという問題がある。
【００１４】
また、導入された新規ノードにおいて一部の鍵しか設定されないと、アドホックネットワークの特徴の一つである自律的なゲートウェイの選択ができず、ロバスト性が低減することにより、通信効率の低減を招く可能性があるという問題がある。
【００１５】
また、システム内で共通の暗号鍵を使用する場合、何らかの理由（たとえば、ノードの物理解析）によって暗号鍵が漏洩してしまうと、その影響はシステム全体に及ぶことになる。したがって、システム内のすべての通信の内容が漏洩する危険性が生じるという問題がある。そのため、システム内で使用する鍵を複数にすることで、鍵漏洩時のリスクを低減することが求められている。
【００１６】
一方、システム内の全ノードで複数の鍵を設定すると、鍵ごとに暗号化及び復号の処理をおこなって、鍵ごとに暗号化されたパケットがアドホックネットワーク内で流通してしまい、アドホックネットワークが破綻する可能性がある。
【００１７】
本発明は、１つの側面では、アドホックネットワーク内のノードが用いる暗号鍵の設定作業の効率化を図ることを目的とする。また、他の側面では、新規ノードの導入後において、アドホックネットワークの自律性やロバスト性を維持しつつ、鍵漏洩時のリスクの低減と通信の効率化を図ることを目的とする。
【課題を解決するための手段】
【００１８】
本発明の一態様として、複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークと通信可能であり、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶する記憶手段を有するサーバと、を備えるネットワークシステムであって、前記ノードは、前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信し、前記サーバと通信可能な携帯端末との接続を検知し、前記携帯端末との接続が検知された場合、前記携帯端末を介して、複数の暗号化パケットを前記サーバに送信し、前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信し、複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定し、前記サーバは、前記ノードが送信した前記複数の暗号化パケットを、前記ノードに接続された携帯端末を介して受信し、前記複数の暗号化パケットを同時通報したゲートウェイに関連付けられている鍵を、前記記憶手段から暗号化パケットごとに抽出し、抽出された複数の鍵を、前記携帯端末を介して前記ノードに送信する鍵設定方法、ノード、サーバ、およびネットワークシステムが提案される。
【００１９】
また、本発明の他の態様として、複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと、を備えるネットワークシステムであって、前記ノードは、前記サーバと通信可能な携帯端末との接続を検知し、前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報し、同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信し、受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定し、前記サーバは、前記各ゲートウェイから前記各ゲートウェイ固有の鍵を受信し、前記ノードに接続された携帯端末を介して、受信された各鍵を前記ノードに送信する鍵設定方法、ノード、およびネットワークシステムが提案される。
【発明の効果】
【００２０】
本鍵設定方法、ノード、サーバ、およびネットワークシステムによれば、アドホックネットワーク内のノードが用いる暗号鍵の設定作業の効率化を図ることができるという効果を奏する。また、新規ノードの導入後において、アドホックネットワークの自律性やロバスト性を維持しつつ、鍵漏洩時のリスクの低減と通信の効率化を図ることができるという効果を奏する。
【図面の簡単な説明】
【００２１】
【図１】図１は、ネットワークシステムの第１の例を示す説明図である。
【図２】図２は、ネットワークシステムの第２の例を示す説明図である。
【図３】図３は、ネットワークシステムの第３の例を示す説明図である。
【図４】図４は、ネットワークシステムの第４の例を示す説明図である。
【図５】図５は、ネットワークシステムの第５の例を示す説明図である。
【図６】図６は、実施の形態１にかかるネットワークシステムの一実施例を示す説明図である。
【図７】図７は、実施の形態１にかかるネットワークシステムへの新規ノードの導入例を示す説明図である。
【図８】図８は、実施の形態１にかかる新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図（その１）である。
【図９】図９は、実施の形態１にかかる新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図（その２）である。
【図１０】図１０は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その１）である。
【図１１】図１１は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その２）である。
【図１２】図１２は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その３）である。
【図１３】図１３は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その４）である。
【図１４】図１４は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その５）である。
【図１５】図１５は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その６）である。
【図１６】図１６は、実施の形態１にかかる管理サーバのハードウェア構成例を示すブロック図である。
【図１７】図１７は、実施の形態１にかかるノード等のハードウェア構成例を示すブロック図である。
【図１８】図１８は、実施の形態１にかかる暗号鍵ＤＢの記憶内容の一例を示す説明図である。
【図１９】図１９は、実施の形態１にかかるノードの機能的構成例を示すブロック図である。
【図２０】図２０は、実施の形態１にかかる暗号化パケットのデータ構造の一例を示す説明図（その１）である。
【図２１】図２１は、実施の形態１にかかる管理サーバの機能的構成を示すブロック図である。
【図２２】図２２は、実施の形態１にかかる暗号化パケットのデータ構造の一例を示す説明図（その２）である。
【図２３】図２３は、管理サーバの認証情報の一例を示す説明図である。
【図２４】図２４は、携帯端末の認証情報の一例を示す説明図である。
【図２５】図２５は、実施の形態１にかかるノードの鍵設定処理手順の一例を示すフローチャートである。
【図２６】図２６は、実施の形態１にかかる管理サーバの鍵提供処理手順の一例を示すフローチャートである。
【図２７】図２７は、実施の形態１にかかるステップＳ２６０２の鍵抽出処理（その１）の具体的な処理手順の一例を示すフローチャートである。
【図２８】図２８は、実施の形態１にかかるステップＳ２６０２の鍵抽出処理（その２）の具体的な処理手順の一例を示すフローチャートである。
【図２９】図２９は、実施の形態１にかかる新規ノードの暗号鍵設定後の通信処理手順を示すフローチャートである。
【図３０】図３０は、実施の形態１にかかる他のノードの暗号鍵設定後の通信処理手順を示すフローチャートである。
【図３１】図３１は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その１）である。
【図３２】図３２は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その２）である。
【図３３】図３３は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その３）である。
【図３４】図３４は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その４）である。
【図３５】図３５は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その５）である。
【図３６】図３６は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その６）である。
【図３７】図３７は、実施の形態２にかかるノードの機能的構成例を示すブロック図である。
【図３８】図３８は、実施の形態２にかかるパケット情報テーブルの記憶内容の一例を示す説明図である。
【図３９】図３９は、実施の形態２にかかるノードの鍵設定処理手順の一例を示すフローチャートである。
【図４０】図４０は、実施の形態２にかかる管理サーバの機能的構成を示すブロック図である。
【図４１】図４１は、実施の形態２にかかる管理サーバの鍵提供処理手順の一例を示すフローチャートである。
【図４２】図４２は、実施の形態２にかかるダウンストリーム型により導入された新規ノードの通信例を示す説明図（その１）である。
【図４３】図４３は、実施の形態２にかかるダウンストリーム型により導入された新規ノードの通信例を示す説明図（その２）である。
【図４４】図４４は、実施の形態２にかかる境界ノードＮｘの通信処理手順を示すフローチャートである。
【図４５】図４５は、実施の形態３にかかるネットワークシステムの一実施例を示す説明図である。
【図４６】図４６は、実施の形態３にかかるネットワークシステムへの新規ノードの導入例を示す説明図である。
【図４７】図４７は、実施の形態３にかかる新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図である。
【図４８】図４８は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その１）である。
【図４９】図４９は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その２）である。
【図５０】図５０は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その３）である。
【図５１】図５１は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その４）である。
【図５２】図５２は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図（その５）である。
【図５３】図５３は、実施の形態３にかかるノードの機能的構成例を示すブロック図である。
【図５４】図５４は、実施の形態３にかかるＧＷ探索フレームの送信指示の具体例を示す説明図である。
【図５５】図５５は、実施の形態３にかかるＧＷ探索フレームのデータ構造の一例を示す説明図である。
【図５６】図５６は、実施の形態３にかかるゲートウェイの機能的構成例を示すブロック図である。
【図５７】図５７は、実施の形態３にかかる鍵通知フレームの具体例を示す説明図（その１）である。
【図５８】図５８は、実施の形態３にかかる鍵通知フレームの具体例を示す説明図（その２）である。
【図５９】図５９は、実施の形態３にかかる管理サーバの機能的構成を示すブロック図である。
【図６０】図６０は、実施の形態３にかかる送信済リストの具体例を示す説明図である。
【図６１】図６１は、実施の形態３にかかる暗号鍵ＤＢの記憶内容の一例を示す説明図である。
【図６２】図６２は、実施の形態３にかかる新規ノードの鍵設定処理手順の一例を示すフローチャートである。
【図６３】図６３は、実施の形態３にかかるゲートウェイの鍵通知処理手順の一例を示すフローチャートである。
【図６４】図６４は、実施の形態３にかかる管理サーバの鍵提供処理手順の一例を示すフローチャート（その１）である。
【図６５】図６５は、実施の形態３にかかる管理サーバの鍵提供処理手順の一例を示すフローチャート（その２）である。
【図６６】図６６は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その１）である。
【図６７】図６７は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その２）である。
【図６８】図６８は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その３）である。
【図６９】図６９は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その４）である。
【図７０】図７０は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図（その５）である。
【図７１】図７１は、実施の形態４にかかる管理サーバの機能的構成を示すブロック図である。
【図７２】図７２は、実施の形態４にかかる設定部での鍵通知フレームの設定例１を示す説明図である。
【図７３】図７３は、実施の形態４にかかる設定部での鍵通知フレームの設定例２を示す説明図である。
【図７４】図７４は、実施の形態４にかかる管理サーバの鍵提供処理手順の一例を示すフローチャート（その１）である。
【図７５】図７５は、実施の形態４にかかる管理サーバの鍵提供処理手順の一例を示すフローチャート（その２）である。
【図７６】図７６は、実施の形態４にかかる境界ノードの通信処理手順を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下に添付図面を参照して、本発明にかかる鍵設定方法、ノード、およびネットワークシステムの実施の形態を詳細に説明する。アドホックネットワークとは、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）のようなアクセスポイントを必要としない、無線で接続できるノード群で構成された自立分散型無線ネットワークである。なお、本明細書では、ゲートウェイ（いわゆるシンクノード）もアドホックネットワークに含まれるものとする。
【００２３】
アドホックネットワークでは、当該アドホックネットワーク内の各ノードに設定する暗号鍵を、セキュリティ等のため、ゲートウェイごとに変える場合がある。このようにゲートウェイごとに暗号鍵を変える場合、セキュリティを考慮しないアドホックネットワークや、１個の暗号鍵を全ノードが共有するアドホックネットワークでは可能であった、自律的なゲートウェイの選択が行えないという状況が発生する。そのため、アドホックネットワークの特徴の一つであるロバスト性が低減することにより、通信効率の低減を招く可能性がある。
【００２４】
図１は、ネットワークシステムの第１の例を示す説明図である。第１の例は、セキュリティを考慮しない、すなわち、暗号鍵がないネットワークシステムを示している。図１では、管理サーバ１０１とゲートウェイ群（Ｇａ，Ｇｂ）とがネットワークＮＷ１を介して通信可能とする。図１では、説明を単純化するため、ゲートウェイ数を２個、ノード数を３個とする。セキュリティを考慮していないため、暗号鍵はないものとする。
【００２５】
ノードＮｃは、ノードＮａ，Ｎｂの通信圏内にある。ノードＮｃは、通信状況などに応じて、ノードＮａまたはノードＮｂと通信することで、いずれか一方のゲートウェイ（ＧａまたはＧｂ）を経由してネットワークＮＷ１を介して管理サーバ１０１と通信が可能である。第１の例では、自律的なゲートウェイの選択はできるが、暗号鍵が使用されていないため、セキュリティに問題がある。
【００２６】
図２は、ネットワークシステムの第２の例を示す説明図である。第２の例は、セキュリティを考慮した、すなわち、暗号鍵があるネットワークシステムを示している。図１と同一構成には同一符号を付し、その説明を省略する。図２では、一方で、セキュリティを考慮するため、ゲートウェイＧａの配下にノードＮａ，Ｎｃ、ゲートウェイＧｂの配下にノードＮｂが所属するものとする。
【００２７】
すなわち、図２では、ゲートウェイＧａ，ノードＮａ，ＮｃからなるアドホックネットワークＡａは、暗号鍵Ｋａを保持する。アドホックネットワークＡａ内では、暗号化パケットＳＰａが送信される。また、ゲートウェイＧｂとノードＮｂからなるアドホックネットワークＡｂは、暗号鍵Ｋｂを保持する。アドホックネットワークＡｂ内では、暗号化パケットＳＰｂが送信される。この場合、ノードＮｃは、アドホックネットワークＡｂのゲートウェイＧｂとは通信することができなくなる。
【００２８】
ここで、図１および図２において、ある時点で、ノードＮａ，Ｎｃ間の通信だけが天候等の影響で途切れた場合、図１では、ノードＮｃはノードＮｂ経由で通信が可能であるが、図２では、ノードＮｃは暗号化パケットＳＰｂによる通信自体が遮断されてしまう。したがって、図２のように、セキュリティを考慮する場合は、自律的なゲートウェイの選択が行えず、ロバスト性が低減し、通信効率の低減を招くこととなる。
【００２９】
一方、ロバスト性の低減防止のため、アドホックネットワークの各ノードに複数の暗号鍵を設定することも考えられる。
【００３０】
図３は、ネットワークシステムの第３の例を示す説明図である。第３の例は、セキュリティを考慮し、かつ、ロバスト性を維持したネットワークシステムを示している。図１および図２と同一構成には同一符号を付し、その説明を省略する。図３では、ゲートウェイＧａ，Ｇｂ，ノードＮａ〜Ｎｃが、それぞれ暗号鍵Ｋａ，Ｋｂを保持している。
【００３１】
ここで、ある時点で、ノードＮａ，Ｎｃ間の通信だけが天候等の影響で途切れた場合であっても、図３では、ノードＮｃは暗号化パケットＳＰｂによる通信を行うことができる。しかしながら、ｎ個のノードで暗号鍵を複数個（ｍ個）設定すると、各ノードでは、複数の暗号鍵を使用する処理量がｍ倍になる。さらに、通信量は、最悪でｎm（ｎのｍ乗）倍となり、アドホックネットワークが破綻する可能性があり、ゲートウェイ数が増加するほど顕著になる。
【００３２】
たとえば、図３の場合、各ノードＮａ〜Ｎｃでの処理量は２倍になり、通信量は最悪で３2＝９倍になる。したがって、図２のように、ゲートウェイＧａ，Ｇｂ毎に暗号鍵Ｋａ，Ｋｂを１個設定するアドホックネットワークＡａ，Ａｂにおいて、複数の暗号鍵を保持するノードの数は最小にする必要がある。
【００３３】
このように、本実施の形態では、ゲートウェイごとにセキュリティを考慮して（暗号鍵を設定して）アドホックネットワークが構築されてはいるが、複数のアドホックネットワークの通信圏内に新規設定されるノードについてのみ、複数の暗号鍵を持たせる。
【００３４】
図４は、ネットワークシステムの第４の例を示す説明図である。第４の例は、セキュリティを考慮し、ロバスト性を維持し、かつ、通信効率性のよいネットワークシステムを示している。図１〜図３と同一構成には同一符号を付し、その説明を省略する。図４では、アドホックネットワークＡａ内のゲートウェイＧａおよびノードＮａは、暗号鍵Ｋａを保持している。アドホックネットワークＡｂ内のゲートウェイＧｂおよびノードＮｂは、暗号鍵Ｋｂを保持している。アドホックネットワークＡａ，Ａｂの両方の通信圏内のノードＮｃのみ暗号鍵Ｋａ，Ｋｂを保持する。
【００３５】
第４の例では、各アドホックネットワークＡａ，Ａｂでは、それぞれ固有の暗号鍵Ｋａ，Ｋｂが設定されている。したがって、セキュリティを維持することができる。
【００３６】
また、ノードＮｃには、暗号鍵Ｋａ，Ｋｂが設定されているため、ノードＮａ，Ｎｂのいずれか一方との通信が遮断されても、他方の経路で通信が可能となる。したがって、ゲートウェイを自律的に選択でき、ロバスト性の低減を防止することができる。また、ノードＮｃには、暗号鍵Ｋａ，Ｋｂが設定されているため、鍵漏洩リスクの低減化を図ることができる。
【００３７】
また、ゲートウェイＧａおよびノードＮａは暗号鍵Ｋａ、ゲートウェイＧｂおよびノードＮｂは暗号鍵Ｋｂしか保持していないため、各ノードでの処理量や通信量が増加しないため、アドホックネットワークＡａ，Ａｂ自体が破綻をきたすことはない。したがって、アドホックネットワークＡａ，Ａｂ内での通信の効率性の向上を図ることができる。
【００３８】
図５は、ネットワークシステムの第５の例を示す説明図である。第５の例は、図４に示した第４の例のノードＮｃの配下に、ノードＮｄを追加した例である。また、ノードＮｃは、ゲートウェイＧａ，Ｇｂを自律的に選択可能とするため、暗号鍵Ｋａ，Ｋｂを保持しているが、第５の例では、一方を主鍵（たとえば、暗号鍵Ｋａ）とし、他方を副鍵（たとえば、暗号鍵Ｋｂ）とする。したがって、ノードＮｃは、通常は主鍵である暗号鍵Ｋａを用いるため暗号化パケットＳＰａはゲートウェイＧａに転送されることになるが、ノードＮａとの間で通信障害が発生すると、副鍵である暗号鍵Ｋｂを用いて暗号化パケットＳＰｂがゲートウェイＧｂに転送されることになる。
【００３９】
この場合、ノードＮｃの配下に設置されるノードＮｄには、主鍵である暗号鍵Ｋａのみ設定される。これにより、暗号鍵が複数個となるノード数を制限することができ、第４の例と同様、アドホックネットワークＡａ，Ａｂ内での通信の効率性の向上を図ることができる。
【００４０】
以下の実施の形態では、第４の例で示したようなアドホックネットワークＡａ，Ａｂの境界において、ノードＮｃ（境界ノード）を新規ノードとして設置して、複数の暗号鍵を設定する鍵設定例について説明する。また、ノードＮｃについて鍵設定が行われたあと、その配下にノードＮｄが新規ノードとして設置された場合に、主鍵のみを設定する鍵設定例について説明する。
【００４１】
また、鍵設定処理には、ダウンストリーム型とアップストリーム型の２種類がある。ダウンストリーム型とは、新規ノードに対し上流側（ゲートウェイ）からパケットをブロードキャストすることで、鍵設定を行う処理である。一方、アップストリーム型とは、新規ノードから上流側（ゲートウェイ）に対しパケットをアップロードすることで、鍵設定を行う処理である。以降、ダウンストリーム型については、図６〜図４５を用いて説明する。一方、アップストリーム型については、図４６〜図７６を用いて説明する。
【００４２】
＜実施の形態１：ダウンストリーム型で複数鍵設定＞
まず、実施の形態１について説明する。実施の形態１は、図４に示した第４の例について、いわゆるダウンストリーム型で新規ノード（図４ではノードＮｃ）に複数の暗号鍵を設定する処理である。以下、図６〜図３０を用いて説明する。
【００４３】
（ネットワークシステムの一実施例）
図６は、実施の形態１にかかるネットワークシステムの一実施例を示す説明図である。図６において、ネットワークシステム１００は、管理サーバ１０１と、ゲートウェイＧ１〜Ｇｎと、ノードＮ１−１〜Ｎ１−ｍ１，…，Ｎｉ−１〜Ｎｉ−ｍｉ，…，Ｎｎ−１〜Ｎｎ−ｍｎと、を含む構成である。
【００４４】
ネットワークシステム１００において、管理サーバ１０１とゲートウェイＧ１〜Ｇｎは、インターネット、ＬＡＮ、ＷＡＮなどのネットワークＮＷ１を介して相互に通信可能に接続されている。また、ゲートウェイＧｉとノードＮｉ−１〜Ｎｉ−ｍｉは、アドホックネットワークＡｉを介して接続されている（ｉ＝１，２，…，ｎ）。
【００４５】
ここで、管理サーバ１０１は、暗号鍵ＤＢ（データベース）１１０を備え、各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵を管理するコンピュータである。ゲートウェイＧｉ固有の暗号鍵（以下、「暗号鍵Ｋｉ」という）は、ゲートウェイＧｉが属するアドホックネットワークＡｉ内のノード間で送受信されるパケットを暗号化するための鍵情報である。なお、暗号鍵ＤＢ１１０についての詳細な説明は、図１８を用いて後述する。
【００４６】
ゲートウェイＧｉは、アドホックネットワークＡｉとネットワークＮＷ１とを接続する中継機器である。ゲートウェイＧｉは、アドホックネットワークＡｉのプロトコルとネットワークＮＷ１のプロトコルの両方を理解し、アドホックネットワークＡｉとネットワークＮＷ１との間の通信の転送を行う。
【００４７】
ノードＮｉ−１〜Ｎｉ−ｍｉは、所定の通信圏内の他ノードとマルチホップ通信を行う無線通信装置である。アドホックネットワークＡｉでは、すべてのノードＮｉ−１〜Ｎｉ−ｍｉがゲートウェイＧｉと直接通信できる必要はなく、一部のノードがゲートウェイＧｉと通信可能であればよい。
【００４８】
ネットワークシステム１００は、たとえば、各家庭の電力やガスの使用量を収集するシステムに適用することができる。具体的には、たとえば、各家庭の電力メータやガスメータに各ノードＮｉ−１〜Ｎｉ−ｍｉを組み込むことで、アドホックネットワークＡｉ内のノード間で各家庭の電力やガスの使用量を送受信する。なお、各家庭の電力やガスの使用量は、各ノードＮｉ−１〜Ｎｉ−ｍｉが計測してもよく、また、各ノードＮｉ−１〜Ｎｉ−ｍｉが電力メータやガスメータから取得してもよい。
【００４９】
ゲートウェイＧｉは、アドホックネットワークＡｉ内のノードＮｉ−１〜Ｎｉ−ｍｉから受信した各家庭の電力やガスの使用量を、ネットワークＮＷ１を介して電力会社やガス会社のサーバ（たとえば、管理サーバ１０１）に送信する。これにより、作業員が現地に出向くことなく電力やガスの使用量を収集することができる。
【００５０】
また、ネットワークシステム１００では、アドホックネットワークＡｉごとにゲートウェイＧｉ固有の暗号鍵Ｋｉを用いてパケットを暗号化する。これにより、アドホックネットワークＡｉのセキュア通信（データ秘匿性、改ざん防止など）を確保する。また、アドホックネットワークＡｉごとに暗号鍵Ｋｉを変えることで、鍵漏洩時のリスクを低減させる。
【００５１】
なお、各ノードは1つのアドホックネットワークに属する構成を記述しているが、複数のアドホックネットワーク、ゲートウェイに所属するノードがある構成としてもよい。その場合、複数のアドホックネットワークに属するノードは、対応する複数のゲートウェイ鍵を保持する。
【００５２】
（新規ノードの導入時における暗号鍵Ｋｉの設定例）
つぎに、図６に示したネットワークシステム１００への新規ノードの導入時における暗号鍵Ｋｉの設定例について説明する。実施の形態１では、新規ノードに対し、複数の暗号鍵を設定するが、ここでは、まず、１個の暗号鍵を設定する例について説明し、そのあとで、複数の鍵の設定例（図１０〜図１５）について説明する。なお、複数の鍵の設定例（図１０〜図１５）においても、個々の鍵の設定については、以下の図７〜図９に示す設定となる。
【００５３】
図７は、実施の形態１にかかるネットワークシステム１００への新規ノードの導入例を示す説明図である。図７において、ネットワークシステム１００のアドホックネットワークＡｉ内に新規ノードＮｉ−ｘが導入されている。なお、図７では、アドホックネットワークＡｉ内のノードＮｉ−１〜Ｎｉ−ｍｉのうち、代表としてノードＮｉ−１〜Ｎｉ−３を示している。
【００５４】
新規ノードＮｉ−ｘの導入時は、作業員ＯＰは新規ノードＮｉ−ｘがどのアドホックネットワークＡｉに属しているのかわからない。そこで、新規ノードＮｉ−ｘが傍受した、ゲートウェイＧｉからの暗号化パケットを、作業員ＯＰが使用する携帯端末ＭＴを利用して、管理サーバ１０１に送信することで、新規ノードＮｉ−ｘに設定すべき暗号鍵Ｋｉを管理サーバ１０１に問い合わせる。これにより、適切な暗号鍵Ｋｉを管理サーバ１０１から取得して新規ノードＮｉ−ｘに自動設定される。
【００５５】
ここで、携帯端末ＭＴは、作業員ＯＰが使用する携帯型の通信装置であり、たとえば、携帯電話機、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍ）電話機、スマートフォン、ノート型のパーソナル・コンピュータなどである。携帯端末ＭＴは、直接通信できない新規ノードＮｉ−ｘと管理サーバ１０１との間の通信を中継する。
【００５６】
図８および図９は、実施の形態１にかかる新規ノードＮｉ−ｘの導入時におけるネットワークシステム１００の動作例を示すシーケンス図である。図８のシーケンスは、たとえば、作業員ＯＰが現地（新規ノードＮｉ−ｘの設置場所）に出向くまでに行われる動作例である。図９のシーケンスは、たとえば、作業員ＯＰが現地に出向いたあとに行われる動作例である。
【００５７】
図８のシーケンスにおいて、（１）ゲートウェイＧｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。（２）管理サーバ１０１は、ゲートウェイＧｉ固有の暗号鍵ＫｉとゲートウェイＧｉのアドレスとを関連付けて暗号鍵ＤＢ１１０に登録する。
【００５８】
（３）ゲートウェイＧｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて暗号化されたパケット（以下、「暗号化パケットＳＰｉ」という）をアドホックネットワークＡｉにブロードキャスト（同時通報）する。暗号化パケットＳＰｉには、たとえば、ゲートウェイＧｉのアドレスが含まれている。
【００５９】
（４）ノードＮｉ−１は、ゲートウェイＧｉからの暗号化パケットＳＰｉを通信圏内のノードＮｉ−３に送信する。（５）ノードＮｉ−３は、ノードＮｉ−１からの暗号化パケットＳＰｉを通信圏内の新規ノードＮｉ−ｘに送信する。（６）新規ノードＮｉ−ｘは、ノードＮｉ−３からの暗号化パケットＳＰｉを記録する。ただし、この時点では、新規ノードＮｉ−ｘは、暗号鍵Ｋｉが未設定のため、暗号化パケットＳＰｉを復号することはできない。
【００６０】
図９のシーケンスにおいて、（７）携帯端末ＭＴは、携帯電話網やインターネットなどのネットワークＮＷ２を介して管理サーバ１０１に接続する。この際、携帯端末ＭＴは、たとえば、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）を用いて、管理サーバ１０１とセキュアな通信を行う。なお、管理サーバ１０１と携帯端末ＭＴとの間でセキュア通信を実現するための通信方式については、図２３および図２４を用いて後述する。
【００６１】
（８）携帯端末ＭＴは、有線または無線のネットワークＮＷ３を介して新規ノードＮｉ−ｘに接続する。具体的には、たとえば、作業員ＯＰが、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ケーブルを用いて、携帯端末ＭＴと新規ノードＮｉ−ｘとを接続することで、携帯端末ＭＴと新規ノードＮｉ−ｘとの間にネットワークＮＷ３が確立される。
【００６２】
（９）新規ノードＮｉ−ｘは、ネットワークＮＷ３を介して、図８に示した（６）において記録した暗号化パケットＳＰｉを携帯端末ＭＴに送信する。（１０）携帯端末ＭＴは、ネットワークＮＷ２を介して、新規ノードＮｉ−ｘからの暗号化パケットＳＰｉを管理サーバ１０１に送信する。
【００６３】
（１１）管理サーバ１０１は、携帯端末ＭＴからの暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを暗号鍵ＤＢ１１０の中から抽出する。具体的には、たとえば、管理サーバ１０１は、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰｉに含まれるゲートウェイＧｉのアドレスと関連付けて記憶されている暗号鍵Ｋｉを抽出する。
【００６４】
（１２）管理サーバ１０１は、ネットワークＮＷ２を介して、抽出された暗号鍵Ｋｉを携帯端末ＭＴに送信する。（１３）携帯端末ＭＴは、ネットワークＮＷ３を介して、管理サーバ１０１からの暗号鍵Ｋｉを新規ノードＮｉ−ｘに送信する。（１４）新規ノードＮｉ−ｘは、携帯端末ＭＴからの暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。
【００６５】
このように、新規ノードＮｉ−ｘが、セキュア通信のための暗号鍵Ｋｉが未設定でも受信できるゲートウェイＧｉからの暗号化パケットＳＰｉを手掛かりに、携帯端末ＭＴを介して、管理サーバ１０１に鍵要求することで、設定すべき暗号鍵Ｋｉを取得することができる。つぎに、複数のアドホックネットワークの境界（通信圏内）に、新規ノードを導入する例について説明する。
【００６６】
図１０〜図１５は、実施の形態１にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図である。図１０〜図１５では、例として２つのアドホックネットワークＡ１，Ａ２の境界に、新規ノードＮｘを導入する例について説明する。
【００６７】
図１０は、初期状態（Ａ）を示している。アドホックネットワークＡ１内のノードを、ノードＮ１−１〜Ｎ１−４とし、アドホックネットワークＡ２内のノードを、ノードＮ２−１〜Ｎ２−３とする。アドホックネットワークＡ１内のゲートウェイＧ１およびノードＮ１−１〜Ｎ１−４は、ゲートウェイＧ１固有の暗号鍵Ｋ１を保持している。アドホックネットワークＡ２内のゲートウェイＧ２およびノードＮ２−１〜Ｎ２−３は、ゲートウェイＧ２固有の暗号鍵Ｋ２を保持している。
【００６８】
新規ノードＮｘは、ノードＮ１−３およびノードＮ２−２の通信圏内に設置されているものとする。また、管理サーバ１０１の暗号鍵ＤＢ１１０には、ゲートウェイＧ１のアドレスに関連付けて暗号鍵Ｋ１が、ゲートウェイＧ２のアドレスに関連付けて暗号鍵Ｋ２が格納されているものとする。
【００６９】
図１１は、初期状態（Ａ）の次状態（Ｂ）を示している。（Ｂ）では、図８に示したように、ゲートウェイＧ１が、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１を、アドホックネットワークＡ１にブロードキャストしている。同様に、ゲートウェイＧ２が、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２を、アドホックネットワークＡ２にブロードキャストしている。新規ノードＮｘは、ノードＮ１−３の通信圏内にあるため、ノードＮ１−３がノードＮ１−１から受信した暗号化パケットＳＰ１を傍受する。
【００７０】
同様に、新規ノードＮｘは、ノードＮ２−２の通信圏内にあるため、ノードＮ２−２がノードＮ２−１から受信した暗号化パケットＳＰ２を傍受する。新規ノードＮｘは、この段階では暗号鍵Ｋ１，Ｋ２が未設定なため、傍受した暗号化パケットＳＰ１，ＳＰ２を復号することができない。
【００７１】
図１２は、状態（Ｂ）の次状態（Ｃ）を示している。（Ｃ）では、図７および図９に示したように、管理サーバ１０１とセキュアなネットワークＮＷ２を介して接続可能な携帯端末ＭＴが、新規ノードＮｘと接続された状態を示している。
【００７２】
図１３は、状態（Ｃ）の次状態（Ｄ）を示している。（Ｄ）では、（Ｃ）の状態から、新規ノードＮｘが、傍受した暗号化パケットＳＰ１，ＳＰ２を、ネットワークＮＷ３を介して携帯端末ＭＴに送信し、携帯端末ＭＴが、新規ノードＮｘから受信した暗号化パケットＳＰ１，ＳＰ２を、ネットワークＮＷ２を介して管理サーバ１０１に送信している。
【００７３】
図１４は、状態（Ｄ）の次状態（Ｅ）を示している。（Ｅ）では、管理サーバ１０１が（Ｄ）により受け取った暗号化パケットＳＰ１，ＳＰ２から、ゲートウェイＧ１、Ｇ２を特定する。特定方法については、各種あるが、たとえば、暗号化パケットＳＰ１，ＳＰ２の暗号化されていないヘッダに、送信元のゲートウェイＧ１，Ｇ２のアドレスが記述されている場合は、ヘッダを解析することで、ゲートウェイＧ１，Ｇ２のアドレスが特定できる。これにより、管理サーバ１０１は、暗号鍵ＤＢ１１０から、ゲートウェイＧ１，Ｇ２のアドレスに関連付けて記憶されている暗号鍵Ｋ１，Ｋ２を抽出する。
【００７４】
また、暗号化パケットＳＰ１，ＳＰ２のヘッダからゲートウェイＧ１，Ｇ２のアドレスを特定できない場合は、暗号鍵ＤＢ１１０内の暗号鍵Ｋ１，Ｋ２，…で、暗号化パケットＳＰ１，ＳＰ２の復号を試みる。そして、管理サーバ１０１は、復号が成功した暗号鍵Ｋ１，Ｋ２を暗号鍵ＤＢ１１０から抽出する。いずれにしても、管理サーバ１０１は、暗号鍵ＤＢ１１０から抽出された暗号鍵Ｋ１，Ｋ２を、ネットワークＮＷ２、携帯端末ＭＴ、ネットワークＮＷ３経由で、新規ノードＮｘに送信する。
【００７５】
図１５は、状態（Ｅ）の次状態（Ｆ）を示している。（Ｆ）では、新規ノードＮｘは、管理サーバ１０１から送信されてきた暗号鍵Ｋ１，Ｋ２を受信して、暗号化および復号するための鍵に設定する。したがって、このあと、新規ノードＮｘは、ノードＮ１−３からの暗号化パケットＳＰ１を暗号鍵Ｋ１で復号することができる。また、新規ノードＮｘは、ノードＮ２−２からの暗号化パケットＳＰ２を暗号鍵Ｋ２で復号することができる。また、新規ノードＮｘからは、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１がノードＮ１−３に送信され、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２がノードＮ２−２に送信される。
【００７６】
なお、新規ノードＮｘからの暗号化パケットＳＰ１は、ノードＮ２−２に傍受されるが、ノードＮ２−２は暗号鍵Ｋ１を保持していないため、復号できず、これ以上、暗号化パケットＳＰ１を転送しない。同様に、新規ノードＮｘからの暗号化パケットＳＰ２は、ノードＮ１−３に傍受されるが、ノードＮ１−３は暗号鍵Ｋ２を保持していないため、復号できず、これ以上、暗号化パケットＳＰ２を転送しない。したがって、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。
【００７７】
なお、以下の説明において、「ノードＮ」とは、ネットワークシステム１００のアドホックネットワークＡ１〜ＡｎのいずれかのアドホックネットワークＡｉ内でマルチホップ通信によりパケットを送受信するノードを示す。また、「ノード等」とは、ネットワークシステム１００のゲートウェイＧ１〜ＧｎおよびノードＮを示す。
【００７８】
（管理サーバ１０１のハードウェア構成例）
図１６は、実施の形態１にかかる管理サーバ１０１のハードウェア構成例を示すブロック図である。図１６において、管理サーバ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１６０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）１６０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１６０３と、磁気ディスクドライブ１６０４と、磁気ディスク１６０５と、光ディスクドライブ１６０６と、光ディスク１６０７と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）１６０８と、ディスプレイ１６０９と、キーボード１６１０と、マウス１６１１と、を備えている。また、ＣＰＵ１６０１〜マウス１６１１はバス１６００によってそれぞれ接続されている。
【００７９】
ここで、ＣＰＵ１６０１は、管理サーバ１０１の全体の制御を司る。ＲＯＭ１６０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１６０３は、ＣＰＵ１６０１のワークエリアとして使用される。磁気ディスクドライブ１６０４は、ＣＰＵ１６０１の制御に従って磁気ディスク１６０５に対するデータのリード／ライトを制御する。磁気ディスク１６０５は、磁気ディスクドライブ１６０４の制御で書き込まれたデータを記憶する。
【００８０】
光ディスクドライブ１６０６は、ＣＰＵ１６０１の制御に従って光ディスク１６０７に対するデータのリード／ライトを制御する。光ディスク１６０７は、光ディスクドライブ１６０６の制御で書き込まれたデータを記憶したり、光ディスク１６０７に記憶されたデータをコンピュータに読み取らせたりする。
【００８１】
Ｉ／Ｆ１６０８は、通信回線を通じてネットワークＮＷ１，ＮＷ２に接続され、このネットワークＮＷ１，ＮＷ２を介して他の装置（たとえば、ゲートウェイＧｉ、携帯端末ＭＴ）に接続される。Ｉ／Ｆ１６０８は、ネットワークＮＷ１，ＮＷ２と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ１６０８には、たとえば、モデムやＬＡＮアダプタなどを採用することができる。
【００８２】
ディスプレイ１６０９は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ１６０９は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００８３】
キーボード１６１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス１６１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。なお、携帯端末ＭＴについても、図１６に示した管理サーバ１０１と同様のハードウェア構成により実現できる。
【００８４】
（ノード等のハードウェア構成例）
図１７は、実施の形態１にかかるノード等のハードウェア構成例を示すブロック図である。図１７において、ノード等は、ＣＰＵ１７０１と、ＲＡＭ１７０２と、フラッシュメモリ１７０３と、Ｉ／Ｆ１７０４と、暗号化回路１７０５と、を備えている。ＣＰＵ１７０１〜暗号化回路１７０５は、バス１７００によってそれぞれ接続されている。
【００８５】
ここで、ＣＰＵ１７０１は、ノード等の全体の制御を司る。ＲＡＭ１７０２は、ＣＰＵ１７０１のワークエリアとして使用される。フラッシュメモリ１７０３は、プログラムや暗号鍵などの鍵情報を記憶している。Ｉ／Ｆ１７０４は、マルチホップ通信によりパケットを送受信する。また、ゲートウェイＧｉのＩ／Ｆ１７０４は、通信回線を通じてネットワークＮＷ１に接続され、このネットワークＮＷ１を介して管理サーバ１０１に接続される。
【００８６】
暗号化回路１７０５は、データを暗号化する場合に暗号鍵によりデータを暗号化する回路である。暗号化をソフトウェア的に実行する場合は、暗号化回路１７０５に相当するプログラムをフラッシュメモリ１７０３に記憶させておくことで、暗号化回路１７０５は不要となる。
【００８７】
（暗号鍵ＤＢ１１０の記憶内容）
図１８は、暗号鍵ＤＢ１１０の記憶内容の一例を示す説明図である。図１８において、暗号鍵ＤＢ１１０は、ＩＤ、ＧＷアドレスおよび暗号鍵のフィールドを有し、各フィールドに情報を設定することで、ゲートウェイＧ１〜Ｇｎごとの鍵情報１８００−１〜１８００−ｎをレコードとして記憶している。
【００８８】
ここで、ＩＤは、本明細書において説明上用いる各ゲートウェイＧｉの識別子である。ＧＷアドレスは、ゲートウェイＧｉのアドレスである。ＧＷアドレスとしては、たとえば、ゲートウェイＧｉのＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスやＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスを用いることができる。暗号鍵は、各ゲートウェイＧｉ固有の暗号鍵Ｋｉであり、具体的には、たとえば、１２８〜２５６ビット程度のバイナリデータである。
【００８９】
鍵情報１８００−１を例に挙げると、ゲートウェイＧ１のＧＷアドレスは『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』、暗号鍵は『暗号鍵Ｋ１』である。なお、暗号鍵ＤＢ１１０は、たとえば、図１６に示した管理サーバ１０１のＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置により実現される。
【００９０】
暗号鍵ＤＢ１１０の記憶内容は、図８のシーケンスで説明したように、管理サーバ１０１がゲートウェイＧｉ固有の暗号鍵ＫｉをゲートウェイＧｉから受信することで更新してもよい。また、図１６に示したキーボード１６１０やマウス１６１１を用いたユーザの操作入力により、暗号鍵ＤＢ１１０の記憶内容を更新することにしてもよい。
【００９１】
（ノードＮの機能的構成例）
図１９は、実施の形態１にかかるノードＮの機能的構成例を示すブロック図である。図１９において、ノードＮは、パケット受信部１９０１と、検知部１９０２と、パケット送信部１９０３と、鍵受信部１９０４と、設定部１９０５と、を含む構成である。各機能部（パケット受信部１９０１〜設定部１９０５）は、具体的には、たとえば、図１７に示したＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されたプログラムをＣＰＵ１７０１に実行させることにより、または、Ｉ／Ｆ１７０４により、その機能を実現する。また、各機能部（パケット受信部１９０１〜設定部１９０５）の処理結果は、特に指定する場合を除いて、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶される。
【００９２】
パケット受信部１９０１は、アドホックネットワークＡｉ内のゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを受信する。暗号化パケットＳＰｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて暗号化されたパケットである。この暗号化パケットＳＰｉは、たとえば、アドホックネットワークＡｉ内のノード等で同期をとるためにゲートウェイＧｉからブロードキャストされるパケットである。
【００９３】
具体的には、たとえば、パケット受信部１９０１が、アドホックネットワークＡｉ内の他のノードＮからマルチホップ通信により暗号化パケットＳＰｉを受信する。ただし、ノードＮの通信圏内にゲートウェイＧｉが存在していれば、パケット受信部１９０１は、ゲートウェイＧｉから暗号化パケットＳＰｉを直接受信する場合もある。ここで、暗号化パケットＳＰｉのデータ構造について説明する。
【００９４】
図２０は、実施の形態１にかかる暗号化パケットのデータ構造の一例を示す説明図（その１）である。図２０において、暗号化パケットＳＰｉは、ヘッダ部２０１０とペイロード部２０２０とを含む構成である。ヘッダ部２０１０には、宛先アドレス、差出アドレス、ホップ数およびＧＷアドレスが記述されている。ペイロード部２０２０には、暗号化されたデータ本体が記述されている（図２０中ハッチ部分）。
【００９５】
ここで、宛先アドレスは、送信先のアドレスである。暗号化パケットＳＰｉがゲートウェイＧｉからのブロードキャストパケットである場合、宛先アドレスには、ブロードキャスト用のＭＡＣアドレス『００：００：００：００：００：００』が記述される。差出アドレスは、送信元のアドレスである。ここでは、アドホックネットワークＡｉ内のノードＮ（新規ノードＮｘ除く）のＭＡＣアドレスが記述されている。
【００９６】
ホップ数は、暗号化パケットＳＰｉを残り何回転送するのかを示す残余の転送回数である。ゲートウェイＧｉからブロードキャストされる暗号化パケットＳＰｉのホップ数の最大値は予め設定されている。このホップ数は暗号化パケットＳＰｉの転送時にデクリメントされ、ホップ数が『０』となった暗号化パケットＳＰｉは棄却される。ここでは、暗号化パケットＳＰ１のホップ数『１０』が記述されている。
【００９７】
ＧＷアドレスは、ゲートウェイＧｉのアドレスである。ここでは、ゲートウェイＧ１のＭＡＣアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』が記述されている。なお、ここでは宛先アドレス、差出アドレスおよびＧＷアドレスの一例として、ＭＡＣアドレスを用いて説明したが、ＩＰアドレスなどのアドレスを用いることにしてもよい。
【００９８】
図１９の説明に戻り、検知部１９０２は、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知する。具体的には、たとえば、作業員ＯＰがＵＳＢケーブルを用いて携帯端末ＭＴと新規ノードＮｘとを接続した結果、検知部１９０２が、ＵＳＢケーブルを介した携帯端末ＭＴとの接続を検知する。
【００９９】
パケット送信部１９０３は、携帯端末ＭＴとの接続が検知された場合、携帯端末ＭＴを介して、受信された暗号化パケットＳＰｉを管理サーバ１０１に送信する。具体的には、たとえば、パケット送信部１９０３が、ＵＳＢケーブルなどのネットワークＮＷ３を介して、暗号化パケットＳＰｉを携帯端末ＭＴに送信する。この結果、携帯端末ＭＴが、ネットワークＮＷ２を介して、ノードＮからの暗号化パケットＳＰｉを管理サーバ１０１に送信する。
【０１００】
鍵受信部１９０４は、携帯端末ＭＴを介して、送信された暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信する。この暗号鍵Ｋｉは、たとえば、パケットを暗号化するとともに、暗号鍵Ｋｉを用いて暗号化された暗号化パケットＳＰｉを復号することができる共通鍵である。
【０１０１】
設定部１９０５は、受信された各ゲートウェイＧｉ固有の暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。具体的には、たとえば、設定部１９０５は、特定の記憶領域に各暗号鍵Ｋｉを書き込む。特定の記憶領域のアドレスは、パケットを暗号化する際、または暗号化パケットＳＰｉを復号する際に指定されるアドレスである。これにより、以降においてノードＮが送信対象となるパケットを暗号化、および暗号化パケットＳＰｉを復号することが暗号鍵Ｋｉごとに可能となり、アドホックネットワークＡｉ内のノード間でセキュア通信を行うことができる。
【０１０２】
（管理サーバ１０１の機能的構成）
図２１は、実施の形態１にかかる管理サーバ１０１の機能的構成を示すブロック図である。図２１において、管理サーバ１０１は、受信部２１０１と、抽出部２１０２と、送信部２１０３と、を含む構成である。各機能部（受信部２１０１〜送信部２１０３）は、具体的には、たとえば、図１６に示したＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されたプログラムをＣＰＵ１６０１に実行させることにより、または、Ｉ／Ｆ１６０８により、その機能を実現する。また、各機能部（受信部２１０１〜送信部２１０３）の処理結果は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶される。
【０１０３】
受信部２１０１は、携帯端末ＭＴを介して、暗号化パケットＳＰｉをノードＮから受信する。具体的には、たとえば、受信部２１０１が、ネットワークＮＷ２を介して、ノードＮからの暗号化パケットＳＰｉを携帯端末ＭＴから受信する。
【０１０４】
抽出部２１０２は、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出する。具体的には、たとえば、抽出部２１０２が、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰｉに含まれるゲートウェイＧｉのアドレスと関連付けて記憶されている暗号鍵Ｋｉを抽出する。
【０１０５】
ここで、受信部２１０１によって暗号化パケットＳＰ１が受信されたとする。この場合、抽出部２１０２が、たとえば、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰ１に含まれるＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』と関連付けて記憶されている暗号鍵Ｋ１を抽出する。
【０１０６】
送信部２１０３は、携帯端末ＭＴを介して、抽出された暗号鍵ＫｉをノードＮに送信する。具体的には、たとえば、ネットワークＮＷ２を介して、抽出された暗号鍵Ｋ１を携帯端末ＭＴに送信する。この結果、携帯端末ＭＴが、ネットワークＮＷ３を介して、管理サーバ１０１からの暗号鍵Ｋ１をノードＮに送信する。
【０１０７】
また、図２０に示した暗号化パケットＳＰ１のようにＧＷアドレスがヘッダ部２０１０に含まれていれば、上述したように、ＧＷアドレスを手掛かりに暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出することができる。これに対して、ＧＷアドレスがペイロード部２０２０に含まれる場合がある。
【０１０８】
図２２は、実施の形態１にかかる暗号化パケットのデータ構造の一例を示す説明図（その２）である。図２２において、暗号化パケットＳＰｉは、ヘッダ部２２１０とペイロード部２２２０とを含む構成である。ヘッダ部２２１０には、宛先アドレス、差出アドレスおよびホップ数が記述されている。ペイロード部２２２０には、暗号化されたＧＷアドレスおよびデータ本体が記述されている（図２２中ハッチ部分）。
【０１０９】
この場合、ＧＷアドレスを手掛かりに暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出することはできない。そこで、抽出部２１０２は、暗号鍵ＤＢ１１０に登録されている暗号鍵Ｋｉごとに、暗号鍵Ｋｉを用いて暗号化パケットＳＰｉの復号処理を実行する。そして、抽出部２１０２は、暗号化パケットＳＰｉの復号に成功した暗号鍵Ｋｉを抽出する。
【０１１０】
復号の成否は、暗号化パケットＳＰｉを復号した復号後のパケットのフォーマットに基づいて判断することができる。具体的には、たとえば、抽出部２１０２は、暗号化パケットＳＰｉを復号した復号後のパケットが、予め規定されたフォーマットのデータの場合、暗号化パケットＳＰｉの復号が成功したと判断する。これにより、暗号化パケットＳＰｉのヘッダ部２２１０にＧＷアドレスが含まれていない場合であっても、暗号鍵ＤＢ１１０の中から新規ノードＮｘに設定すべき適切な暗号鍵Ｋｉを抽出することができる。
【０１１１】
なお、上述した説明では、管理サーバ１０１が暗号化パケットＳＰｉを受信した時点において、暗号鍵ＤＢ１１０にゲートウェイＧｉ固有の暗号鍵Ｋｉが登録済みの場合を想定したが、これに限らない。たとえば、管理サーバ１０１が、暗号化パケットＳＰｉを受信したあとゲートウェイＧｉに問い合わせることで、ゲートウェイＧｉ固有の暗号鍵Ｋｉを取得することにしてもよい。これにより、ネットワークシステム１００内のすべてのゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを管理サーバ１０１が予め保持しておく必要がなくなる。
【０１１２】
（管理サーバ１０１と携帯端末ＭＴとの間の通信方式）
ここで、管理サーバ１０１と携帯端末ＭＴとの間の通信方式の一実施例について説明する。まず、携帯端末ＭＴからみた管理サーバ１０１のサーバ認証について説明する。具体的には、たとえば、まず、携帯端末ＭＴが、予め決められたＩＰアドレスを用いて管理サーバ１０１に接続する。
【０１１３】
そして、携帯端末ＭＴが、管理サーバ１０１からＳＳＬサーバ証明書を受信する。受信されたＳＳＬサーバ証明書は、たとえば、管理サーバ１０１のＩＰアドレスと関連付けて携帯端末ＭＴのＲＡＭ１７０２やフラッシュメモリ１７０３などの記憶装置に記憶される。
【０１１４】
図２３は、管理サーバ１０１の認証情報の一例を示す説明図である。図２３において、管理サーバ１０１の認証情報２３００は、ＩＰアドレスおよびＳＳＬサーバ証明書を有する。ＩＰアドレスは、管理サーバ１０１のＩＰアドレスである。Ｘ．５０９証明書は、管理サーバ１０１のＳＳＬサーバ証明書（公開鍵証明書）である。
【０１１５】
携帯端末ＭＴは、予め自端末に組み込まれている公開鍵を用いて、ＳＳＬサーバ証明書を復号することでサーバ認証を行う。公開鍵は、たとえば、第三者認証機関によって発行されたものである。この公開鍵を用いてＳＳＬサーバ証明書を正しく復号できれば、ＳＳＬサーバ証明書が第三者認証機関によって証明された正しい証明書であることがわかり、ひいては管理サーバ１０１の身元が保証されたことになる。
【０１１６】
つぎに、管理サーバ１０１からみた携帯端末ＭＴのユーザ認証について説明する。ここでは、携帯端末ＭＴの認証情報を用いて、携帯端末ＭＴのユーザ認証を行う場合を例に挙げて説明する。認証情報は、たとえば、管理サーバ１０１のＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されている。
【０１１７】
図２４は、携帯端末ＭＴの認証情報の一例を示す説明図である。図２４において、携帯端末ＭＴの認証情報２４００は、ユーザＩＤおよびパスワードを有する。ユーザＩＤは、携帯端末ＭＴの識別子である。パスワードは、携帯端末ＭＴを使用するユーザを認証するためのデータである。
【０１１８】
具体的には、たとえば、まず、携帯端末ＭＴが、ユーザＩＤおよびパスワードのペアを管理サーバ１０１に送信する。このユーザＩＤおよびパスワードは、携帯端末ＭＴのフラッシュメモリ１８０３に予め登録されていてもよく、また、携帯端末ＭＴの入力装置（不図示）を用いたユーザの操作入力により受け付けてもよい。
【０１１９】
このあと、管理サーバ１０１は、携帯端末ＭＴからのユーザＩＤおよびパスワードのペアを、認証情報２４００のユーザＩＤおよびパスワードのペアと一致判定する。ここで、認証情報２４００のユーザＩＤおよびパスワードと一致すれば、携帯端末ＭＴのユーザの身元が保証されたことになる。
【０１２０】
なお、認証後において、携帯端末ＭＴは、たとえば、管理サーバ１０１のＳＳＬサーバ証明書に含まれる公開鍵を用いてパケットを暗号化して管理サーバ１０１との通信を行う。これにより、管理サーバ１０１と携帯端末ＭＴとの間でセキュアな通信を行うことができる。なお、ここでは、ＳＳＬによるセキュア通信を記述したが、それ以外のセキュア通信や専用線通信などを用いてもよい。
【０１２１】
（ノードＮの鍵設定処理手順）
図２５は、実施の形態１にかかるノードＮの鍵設定処理手順の一例を示すフローチャートである。図２５のフローチャートにおいて、まず、ノードＮは、パケット受信部１９０１により、アドホックネットワークＡｉ内のゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを受信したか否かを判断する（ステップＳ２５０１）。
【０１２２】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ２５０１：Ｎｏ）、受信した場合（ステップＳ２５０１：Ｙｅｓ）、ノードＮは、検知部１９０２により、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知したか否かを判断する（ステップＳ２５０２）。
【０１２３】
ここで、携帯端末ＭＴとの接続が検知されるのを待って（ステップＳ２５０２：Ｎｏ）、検知された場合（ステップＳ２５０２：Ｙｅｓ）、ノードＮは、パケット送信部１９０３により、携帯端末ＭＴを介して、受信された暗号化パケットＳＰｉを管理サーバ１０１に送信する（ステップＳ２５０３）。
【０１２４】
このあと、ノードＮは、鍵受信部１９０４により、携帯端末ＭＴを介して、送信された暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信したか否かを判断する（ステップＳ２５０４）。
【０１２５】
ここで、暗号鍵Ｋｉを受信するのを待って（ステップＳ２５０４：Ｎｏ）、受信した場合（ステップＳ２５０４：Ｙｅｓ）、ノードＮは、設定部１９０５により、受信されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定して（ステップＳ２５０５）、本フローチャートによる一連の処理を終了する。
【０１２６】
これにより、ノードＮは、暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを、暗号化パケットＳＰｉごとに管理サーバ１０１から取得して設定することができる。
【０１２７】
（管理サーバ１０１の鍵提供処理手順）
図２６は、管理サーバ１０１の鍵提供処理手順の一例を示すフローチャートである。図２６のフローチャートにおいて、まず、管理サーバ１０１は、受信部２１０１により、携帯端末ＭＴを介して、暗号化パケットＳＰｉをノードＮから受信したか否かを判断する（ステップＳ１６０１）。
【０１２８】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ１６０１：Ｎｏ）、受信した場合（ステップＳ１６０１：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出する鍵抽出処理を実行する（ステップＳ１６０２）。そして、管理サーバ１０１は、送信部２１０３により、携帯端末ＭＴを介して、抽出された暗号鍵ＫｉをノードＮに送信して（ステップＳ１６０３）、本フローチャートによる一連の処理を終了する。
【０１２９】
これにより、管理サーバ１０１は、ノードＮが属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵ＫｉをノードＮに提供することができる。
【０１３０】
＜鍵抽出処理（その１）手順＞
つぎに、図２６に示したステップＳ２６０２の鍵抽出処理（その１）の具体的な処理手順について説明する。以下に説明する鍵抽出処理（その１）は、暗号化パケットＳＰｉに含まれるＧＷアドレスが暗号化されていない場合の処理である。
【０１３１】
図２７は、実施の形態１にかかるステップＳ２６０２の鍵抽出処理（その１）の具体的な処理手順の一例を示すフローチャートである。図２７のフローチャートにおいて、まず、管理サーバ１０１は、抽出部２１０２により、図２６に示したステップＳ２６０１において受信された暗号化パケットＳＰｉに含まれるＧＷアドレスを特定する（ステップＳ２７０１）。
【０１３２】
つぎに、管理サーバ１０１は、抽出部２１０２により、ゲートウェイＧｉの「ｉ」を「ｉ＝１」で初期化する（ステップＳ２７０２）。このあと、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０を参照して、ゲートウェイＧｉのＧＷアドレスを特定する（ステップＳ２７０３）。そして、管理サーバ１０１は、抽出部２１０２により、ステップＳ２７０１において特定されたＧＷアドレスと、ステップＳ２７０３において特定されたＧＷアドレスとが一致するか否かを判断する（ステップＳ２７０４）。
【０１３３】
ここで、ＧＷアドレスが一致する場合（ステップＳ２７０４：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中からゲートウェイＧｉ固有の暗号鍵Ｋｉを抽出して（ステップＳ２７０５）、図２６に示したステップＳ２６０３に移行する。一方、ＧＷアドレスが不一致の場合（ステップＳ２７０４：Ｎｏ）、管理サーバ１０１は、抽出部２１０２により、ゲートウェイＧｉの「ｉ」をインクリメントして（ステップＳ２７０６）、「ｉ」が「ｎ」より大きいか否かを判断する（ステップＳ２７０７）。
【０１３４】
ここで、「ｉ」が「ｎ」以下の場合（ステップＳ２７０７：Ｎｏ）、ステップＳ２７０３に戻る。一方、「ｉ」が「ｎ」より大きい場合（ステップＳ２７０７：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、エラー処理を実行して（ステップＳ２７０８）、管理サーバ１０１の一連の処理を終了する。
【０１３５】
これにより、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出することができる。なお、ステップＳ２７０８のエラー処理の具体例として、たとえば、抽出部２１０２が、携帯端末ＭＴを介して、暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出できなかった旨のエラーメッセージをノードＮに送信することにしてもよい。
【０１３６】
ステップＳ２７０８のエラー処理は、たとえば、暗号化パケットＳＰｉが改ざんされた場合や暗号化パケットＳＰｉの一部が欠落した場合などに実行される。このエラー処理によれば、ノードＮによる暗号化パケットＳＰｉの再送信を促すことができる。
【０１３７】
＜鍵抽出処理（その２）手順＞
つぎに、図２６に示したステップＳ２６０２の鍵抽出処理（その２）の具体的な処理手順について説明する。以下に説明する鍵抽出処理（その２）は、暗号化パケットＳＰｉに含まれるＧＷアドレスが暗号化されている場合の処理である。
【０１３８】
図２８は、実施の形態１にかかるステップＳ２６０２の鍵抽出処理（その２）の具体的な処理手順の一例を示すフローチャートである。図２８のフローチャートにおいて、まず、管理サーバ１０１は、抽出部２１０２により、ゲートウェイＧｉの「ｉ」を「ｉ＝１」で初期化する（ステップＳ２８０１）。そして、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中のゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて、図２６に示したステップＳ２６０１において受信された暗号化パケットＳＰｉを復号する（ステップＳ２８０２）。
【０１３９】
このあと、管理サーバ１０１は、抽出部２１０２により、暗号化パケットＳＰｉの復号に成功したか否かを判断する（ステップＳ２８０３）。ここで、暗号化パケットＳＰｉの復号に成功した場合（ステップＳ２８０３：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中からゲートウェイＧｉ固有の暗号鍵Ｋｉを抽出して（ステップＳ２８０４）、図２６に示したステップＳ２６０３に移行する。
【０１４０】
一方、暗号化パケットＳＰｉの復号に失敗した場合（ステップＳ２８０３：Ｎｏ）、管理サーバ１０１は、抽出部２１０２により、ゲートウェイＧｉの「ｉ」をインクリメントして（ステップＳ２８０５）、「ｉ」が「ｎ」より大きいか否かを判断する（ステップＳ２８０６）。
【０１４１】
ここで、「ｉ」が「ｎ」以下の場合（ステップＳ２８０６：Ｎｏ）、ステップＳ２８０２に戻る。一方、「ｉ」が「ｎ」より大きい場合（ステップＳ２８０６：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、エラー処理を実行して（ステップＳ２８０７）、管理サーバ１０１の一連の処理を終了する。
【０１４２】
これにより、暗号化パケットＳＰｉのヘッダ部２２１０にＧＷアドレスが含まれていない場合であっても、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出することができる。
【０１４３】
つぎに、新規ノードＮｘの暗号鍵設定後の通信処理と、新規ノードＮｘ以外の他のノードＮの通信処理について説明する。ここでは、新規ノードＮｘとは、複数の暗号鍵が設定されたノードＮであり、他のノードＮとは、単一の暗号鍵が設定されたノードである。
【０１４４】
図２９は、実施の形態１にかかる新規ノードＮｘの暗号鍵設定後の通信処理手順を示すフローチャートである。まず、新規ノードＮｘは、パケットの受信を待ち受け（ステップＳ２９０１：Ｎｏ）、パケットを受信した場合（ステップＳ２９０１：Ｙｅｓ）、新規ノードＮｘは、受信したパケットを復号する暗号鍵を特定する（ステップＳ２９０２）。
【０１４５】
たとえば、新規ノードＮｘは、受信したパケットを送ってきたノードが属するゲートウェイにより、いずれの暗号鍵を使用すればよいかを特定する。図１５の例では、ノードＮ１−３からのパケットであれば、暗号鍵Ｋ１を特定し、ノードＮ２−２からのパケットであれば、暗号鍵Ｋ２を特定する。また、暗号鍵を順次選択して、受信したパケットの復号を試み、復号できた暗号鍵を特定することとしてもよい。
【０１４６】
そして、新規ノードＮｘは、特定した暗号鍵で、受信したパケットが復号できたか否かを判断する（ステップＳ２９０３）。復号できなかった場合（ステップＳ２９０３：Ｎｏ）、受信したパケットは傍受したこととなるため、受信したパケットを破棄して（ステップＳ２９０４）、通信処理を終了する。
【０１４７】
一方、復号できた場合（ステップＳ２９０３：Ｙｅｓ）、受信したパケットの宛先アドレスが自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ２９０５）。自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ２９０５：Ｙｅｓ）、復号されたデータに基づいたデータ処理を実行し（ステップＳ２９０６）、受信したパケットを転送先に転送する（ステップＳ２９０７）。これにより、通信処理を終了する。
【０１４８】
一方、ステップＳ２９０５において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ２９０５：Ｎｏ）、新規ノードＮｘは、受信したパケットを転送先に転送する（ステップＳ２９０７）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルを保持していれば、当該ルーティングテーブルで指定されたノードとなる。ルーティングテーブルがなければ、転送先は通信圏内の全ノードとなる。
【０１４９】
図３０は、実施の形態１にかかる他のノードＮ（新規ノードＮｘではない既設ノード）の暗号鍵設定後の通信処理手順を示すフローチャートである。まず、他のノードＮは、パケットの受信を待ち受け（ステップＳ３００１：Ｎｏ）、パケットを受信した場合（ステップＳ３００１：Ｙｅｓ）、暗号鍵Ｋｉで、受信したパケットが復号できたか否かを判断する（ステップＳ３００２）。なお、暗号鍵Ｋｉが複数ある場合は、復号できるまで試みる。そして、いずれの暗号鍵Ｋｉでも復号できなかった場合（ステップＳ３００２：Ｎｏ）、受信したパケットは傍受したこととなるため、他のノードＮは、受信したパケットを破棄して（ステップＳ３００３）、通信処理を終了する。
【０１５０】
一方、復号できた場合（ステップＳ３００２：Ｙｅｓ）、他のノードＮは、受信したパケットの宛先アドレスが自ノード（他のノードＮ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ３００４）。自ノード（他のノードＮ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ３００４：Ｙｅｓ）、他のノードＮは、復号されたデータに基づいたデータ処理を実行し（ステップＳ３００５）、受信したパケットを転送先に転送する（ステップＳ３００６）。なお、暗号鍵Ｋｉが複数ある場合は、復号データを各暗号鍵Ｋｉで暗号化して転送先に転送することとなる。これにより、通信処理を終了する。
【０１５１】
一方、ステップＳ３００４において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ３００４：Ｎｏ）、他のノードＮは、受信したパケットを転送先に転送する（ステップＳ３００６）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルで規定されたノードとなる。ルーティングテーブルがなければ、転送先は通信圏内の全ノードとなる。
【０１５２】
なお、新規ノードＮｘからパケット送信する場合、暗号鍵ごとにパケットを暗号化して、暗号化パケット群を送信する。この場合、他のノードＮは、その暗号鍵Ｋｉでしか復号できないため、暗号鍵Ｋｉで暗号化された暗号化パケットＳＰｉは、ゲートウェイＧｉにのみ送信され、暗号鍵Ｋｊ（ｊ≠ｉ）で暗号化された暗号化パケットＳＰｊは、ゲートウェイＧｊにのみ送信されることとなる。そして、アドホックネットワークＡｉ内のノードＮが暗号化パケットＳＰｊが受信された場合は、図３０のステップＳ３００３で示したように、破棄される。
【０１５３】
以上説明したように、実施の形態１によれば、アドホックネットワークＡｉ内のノードＮは、携帯端末ＭＴを介して、ゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを管理サーバ１０１に送信することができる。この結果、ノードＮは、携帯端末ＭＴを介して、暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信して設定することができる。
【０１５４】
このように、ノードＮが、セキュア通信のための暗号鍵Ｋｉが未設定でも受信できるゲートウェイＧｉからの暗号化パケットＳＰｉを手掛かりに、携帯端末ＭＴを介して、管理サーバ１０１に鍵要求することで、設定すべき暗号鍵Ｋｉを取得することができる。これにより、ノードＮの初期導入時などにおいて、作業員ＯＰが地理的に絞り込まれた候補となるゲートウェイとノードＮとの通信状況をしらみつぶしに確認するなどの作業が不要となり、ノードＮに対する暗号鍵Ｋｉの設定作業の効率化を図ることができる。また、確認作業のために候補となる各ゲートウェイの暗号鍵を携帯端末ＭＴなどに記録しておく必要がないため、持ち運びの際の情報漏洩のリスクを低減させることができる。
【０１５５】
また、実施の形態１によれば、アドホックネットワークごとにそれぞれ固有の暗号鍵が設定されているため、アドホックネットワークＡｉ内のノード群は同一の暗号鍵Ｋｉを保持している。その一方で、複数のアドホックネットワークと通信可能なノード（新規ノードＮｘ）については、各々のアドホックネットワークの暗号鍵が設定される。このため、いずれかのアドホックネットワークと通信障害が生じて通信できなくても、残余のアドホックネットワーク経由で管理サーバ１０１にデータを送信することができる。
【０１５６】
したがって、セキュリティを維持したまま、複数の暗号鍵が設定されたノードは、通信可能なゲートウェイを自律的に選択でき、ロバスト性の低減を防止することができる。また、暗号鍵が複数設定されているため、暗号鍵が１つ漏洩しても、漏洩していない暗号鍵で通信可能なアドホックネットワーク内のデータは漏洩しない。このため、ゲートウェイごとに１個の暗号鍵しか設定できないアドホックネットワークに比べて、鍵漏洩リスクの低減化を図ることができる。
【０１５７】
また、複数のアドホックネットワークの通信圏内のノード（新規ノードＮｘ）のみ各アドホックネットワークの暗号鍵がすべて設定されるが、他のノードＮは所属するゲートウェイＧｉ固有の暗号鍵Ｋｉが１個だけ設定されるだけである。したがって、アドホックネットワークＡｉ内でのノードＮの処理（暗号化、復号）が１個の暗号鍵Ｋｉで済み、送信するパケットも１個の暗号鍵Ｋｉで暗号化された暗号化パケットＳＰｉだけであるため、通信量の増加を抑制することができる。
【０１５８】
＜実施の形態２：ダウンストリーム型で複数鍵の主副決定＞
つぎに、実施の形態２について説明する。実施の形態１では、新規ノードＮｘに複数の暗号鍵Ｋｉを設定した例について説明したが、実施の形態２では、図５の第５の例で示したように、新規ノードＮｘに設定する複数の暗号鍵を、主鍵と副鍵に分けて設定する。具体的には、通常は主鍵で暗号化および復号をおこない、主鍵で復号できなかった場合に、副鍵を使用することとなる。その後、新規設定済みとなったノードＮｘの配下に新規ノードを設定する。ノードＮｘの配下に新規ノードがある場合は、ノードＮｘを「境界ノード」と称す。
【０１５９】
なお、実施の形態１と同一構成には同一符号を付し、その説明を省略する。また、暗号鍵の主副決定以外は、実施の形態１と共通するため、説明を省略する。
【０１６０】
図３１〜図３６は、実施の形態２にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図である。
【０１６１】
図３１に示した状態（Ｇ）では、新規設定済みの境界ノードＮｘにおいて、暗号鍵Ｋ１，Ｋ２が設定されており、このうち暗号鍵Ｋ１を主鍵、暗号鍵Ｋ２を副鍵とする。暗号鍵Ｋ１，Ｋ２の主副決定は、境界ノードＮｘが実行してもよく、管理サーバ１０１が実行してもよい。この点については後述する。また、新規ノードＮｙは、境界ノードＮｘの配下に設置された新規ノードである。
【０１６２】
図３２は、状態（Ｇ）の次状態（Ｈ）を示している。（Ｈ）では、ゲートウェイＧ１が、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１を、アドホックネットワークＡ１にブロードキャストしている。同様に、ゲートウェイＧ２が、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２を、アドホックネットワークＡ２にブロードキャストしている。ノードＮｘは、ノードＮ１−３の通信圏内にあるため、ノードＮ１−３がノードＮ１−１から受信した暗号化パケットＳＰ１を受信（傍受）する。
【０１６３】
一方、ノードＮｘは、ノードＮ２−２の通信圏内にあるため、ノードＮ２−２がノードＮ２−１から受信した暗号化パケットＳＰ２を傍受する。ノードＮｘは、暗号鍵Ｋ１が主鍵，暗号鍵Ｋ２が副鍵に設定されているため、暗号化パケットＳＰ１は主鍵で復号できるが、暗号化パケットＳＰ２は主鍵で復号できない。ただし、暗号化パケットＳＰ２は副鍵（暗号鍵Ｋ２）で復号できるが、ブロードキャストの転送は行わず、ノードＮｘでは、暗号化パケットＳＰ２は破棄される（または、暗号鍵Ｋ１で再暗号化されて、ブロードキャストされる）。また、暗号化パケットＳＰ２はノードＮｘで破棄されたため、新規ノードＮｙは、暗号化パケットＳＰ１，ＳＰ２のうち暗号化パケットＳＰ１のみ傍受する。
【０１６４】
図３３は、状態（Ｈ）の次状態（Ｉ）を示している。（Ｉ）では、管理サーバ１０１とセキュアなネットワークＮＷ２を介して接続可能な携帯端末ＭＴが、新規ノードＮｙと接続された状態を示している。
【０１６５】
図３４は、状態（Ｉ）の次状態（Ｊ）を示している。（Ｊ）では、（Ｉ）の状態から、新規ノードＮｙが、傍受した暗号化パケットＳＰ１を、ネットワークＮＷ３を介して携帯端末ＭＴに送信し、携帯端末ＭＴが、新規ノードＮｙから受信した暗号化パケットＳＰ１を、ネットワークＮＷ２を介して管理サーバ１０１に送信している。
【０１６６】
図３５は、状態（Ｊ）の次状態（Ｋ）を示している。（Ｋ）では、管理サーバ１０１が（Ｊ）により受け取った暗号化パケットＳＰ１から、ゲートウェイＧ１を特定する。特定方法については、各種あるが、たとえば、暗号化パケットＳＰ１の暗号化されていないヘッダに、送信元のゲートウェイＧ１のアドレスが記述されている場合は、ヘッダを解析することで、ゲートウェイＧ１のアドレスが特定できる。これにより、管理サーバ１０１は、暗号鍵ＤＢ１１０から、ゲートウェイＧ１のアドレスに関連付けて記憶されている暗号鍵Ｋ１を抽出する。
【０１６７】
また、暗号化パケットＳＰ１のヘッダからゲートウェイＧ１のアドレスを特定できない場合は、暗号鍵ＤＢ１１０内の暗号鍵Ｋ１，Ｋ２，…で、暗号化パケットＳＰ１の復号を試みる。そして、管理サーバ１０１は、復号が成功した暗号鍵Ｋ１を暗号鍵ＤＢ１１０から抽出する。いずれにしても、管理サーバ１０１は、暗号鍵ＤＢ１１０から抽出された暗号鍵Ｋ１を、ネットワークＮＷ２、携帯端末ＭＴ、ネットワークＮＷ３経由で、新規ノードＮｙに送信する。
【０１６８】
図３６は、状態（Ｋ）の次状態（Ｌ）を示している。（Ｌ）では、新規ノードＮｙは、管理サーバ１０１から送信されてきた暗号鍵Ｋ１を受信して、暗号化および復号するための鍵に設定する。したがって、このあと、新規ノードＮｙは、ノードＮｘからの暗号化パケットＳＰ１を暗号鍵Ｋ１で復号することができる。また、新規ノードＮｙからは、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１がノードＮｘに送信される。
【０１６９】
このように、主鍵と副鍵に分けることで、ノードＮｘの配下に設定されるノードＮｙについては、主鍵となる暗号鍵Ｋ１を割り当てるだけでよく、副鍵である暗号鍵Ｋ２を割り当てる必要はない。これにより、新規ノードＮｘの配下のノードＮｙ以降の鍵数を１個にすることができ、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。以降、実施の形態２について詳細に説明する。
【０１７０】
（ノードＮの機能的構成例）
図３７は、実施の形態２にかかるノードＮの機能的構成例を示すブロック図である。図３７において、ノードＮは、図１９に示した各機能部１９０１〜１９０５のほか、記録部３７０６と決定部３７０７を有する。記録部３７０６と決定部３７０７は、具体的には、たとえば、図１７に示したＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されたプログラムをＣＰＵ１７０１に実行させることにより、または、Ｉ／Ｆ１７０４により、その機能を実現する。
【０１７１】
記録部３７０６は、受信された暗号化パケットＳＰｉに関する情報を記録する。具体的には、たとえば、記録部３７０６が、図２０に示した暗号化パケットＳＰｉのヘッダ部２０１０に含まれているホップ数およびＧＷアドレスをパケット情報テーブルに記録する。ここで、パケット情報テーブルについて説明する。
【０１７２】
図３８は、実施の形態２にかかるパケット情報テーブルの記憶内容の一例を示す説明図である。パケット情報テーブル３８００は、たとえば、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置により実現される。図３８において、パケット情報テーブル３８００は、ＩＤ、ホップ数、およびＧＷアドレスのフィールドを有し、各フィールドに情報を設定することで、パケット情報３８００−１〜３８００−５をレコードとして記憶している。
【０１７３】
ここで、ＩＤは、本明細書において説明上用いる暗号化パケットＳＰｉの識別子である。ホップ数は、暗号化パケットＳＰｉを残り何回転送するのかを示す残余の転送回数である。ＧＷアドレスは、ゲートウェイＧｉのアドレスである。なお、各暗号化パケットＳＰｉのパケット情報は、暗号化パケットＳＰｉの受信順にパケット情報テーブル３８００に記憶される。
【０１７４】
図３７の説明に戻り、決定部３７０７は、複数の暗号化パケットＳＰｉが受信された場合、記録された暗号化パケットＳＰｉに関する情報に基づいて、暗号化パケットＳＰｉの優先度を決定する。優先度とは、どのアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを主鍵にすべきかを特定する情報である。優先度の値は、高いほど最優先としてもよく、低いほど最優先としてもよい。ここでは、一例として、優先度の値が高いほど最優先とする。
【０１７５】
そして、パケット送信部１９０３は、携帯端末ＭＴを介して、暗号化パケットＳＰｉを管理サーバ１０１に送信するとともに、優先度も送信する。以下、送信対象となる暗号化パケットＳＰｉの決定例について説明する。
【０１７６】
たとえば、ノードＮの設置場所がアドホックネットワークＡ１，Ａ２の通信圏内にある場合、パケット受信部１９０１が異なるゲートウェイＧ１，Ｇ２からの暗号化パケットＳＰ１，ＳＰ２を受信したものとする。
【０１７７】
この場合、決定部３７０７は、たとえば、パケット情報テーブル３８００を参照して、先着順に応じた優先度を暗号化パケットＳＰｉに割り与える。たとえば、図３８では、最古のパケット情報３８００−１での暗号化パケットＳＰ１から順に最大優先度が割り与える。これにより、管理サーバ１０１において、ノードＮが最初に受信した暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１が主鍵に決定される。
【０１７８】
決定部３７０７は、たとえば、パケット情報テーブル３８００を参照して、ホップ数に応じた優先度を暗号化パケットＳＰｉに割り与えることとしてもよい。具体的には、最小ホップ数から順に優先度を割り与える。たとえば、図３８では、最大ホップ数「１０」であるパケット情報３８００−１での暗号化パケットＳＰ１から順に最大優先度を割り与える。これにより、管理サーバ１０１において、転送回数が最も少ない暗号化パケットＳＰｉを復号できる暗号鍵Ｋ１を、主鍵に決定することができる。
【０１７９】
ここで、暗号化パケットＳＰｉの転送回数が少ないということは、ゲートウェイＧｉが地理的に近い位置にある可能性が高い。このため、転送回数が最も少ない暗号化パケットＳＰｉに最大優先度を与えることで、結果的に、より近傍のゲートウェイＧｉ固有の暗号鍵Ｋｉを主鍵に決定することができ、ゲートウェイＧｉとの通信効率を向上させることができる。
【０１８０】
また、決定部３７０７は、たとえば、パケット情報テーブル３８００を参照して、ゲートウェイＧｉごとのホップ数の平均値に基づいて、暗号化パケットＳＰｉの優先度を決定することにしてもよい。具体的には、まず、決定部３７０７が、パケット情報テーブル３８００を参照して、ＧＷアドレスごとのホップ数の平均値を算出する。
【０１８１】
図３８の例では、ＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』のホップ数の平均値は『６＝（１０＋７＋１）／３』となる。ＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：５６：７８』のホップ数の平均値は『７＝（８＋６）／２』となる。この場合、決定部３７０７は、たとえば、ホップ数の平均値が最大のＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：５６：７８』のゲートウェイＧ２からブロードキャストされた暗号化パケットＳＰ２の優先度を最大にする。これにより、管理サーバ１０１において、統計的に転送回数が最も少ない暗号化パケットＳＰｉを復号できる暗号鍵Ｋｉを、主鍵に決定することができる。
【０１８２】
（ノードＮの鍵設定処理手順）
図３９は、実施の形態２にかかるノードＮの鍵設定処理手順の一例を示すフローチャートである。図３９のフローチャートにおいて、まず、ノードＮは、パケット受信部１９０１により、アドホックネットワークＡｉ内のゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを所定期間内に受信したか否かを判断する（ステップＳ３９０１）。
【０１８３】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ３９０１：Ｎｏ）、受信した場合（ステップＳ３９０１：Ｙｅｓ）、ノードＮは、受信した暗号化パケットＳＰｉごとにパケット情報テーブル３８００にパケット情報を記録する（ステップＳ３９０２）。つぎに、ノードＮは、決定部３７０７により、所定期間内に受信した暗号化パケットＳＰｉごとの優先度を決定する（ステップＳ３９０３）。このあと、ノードＮは、検知部１９０２により、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知したか否かを判断する（ステップＳ３９０４）。
【０１８４】
ここで、携帯端末ＭＴとの接続が検知されるのを待って（ステップＳ３９０４：Ｎｏ）、検知された場合（ステップＳ３９０４：Ｙｅｓ）、ノードＮは、パケット送信部１９０３により、携帯端末ＭＴを介して、受信された複数の暗号化パケットＳＰｉと各々の優先度を管理サーバ１０１に送信する（ステップＳ３９０５）。
【０１８５】
このあと、ノードＮは、鍵受信部１９０４により、携帯端末ＭＴを介して、すべての鍵（主鍵および副鍵）を、管理サーバ１０１から受信したか否かを判断する（ステップＳ３９０６）。新規ノードＮｘの場合は、主鍵と副鍵が管理サーバ１０１から受信するが、新規ノードＮｘ以外の通常のノードＮの場合は、主鍵のみ受信することとなる。
【０１８６】
ここで、すべての鍵（主鍵および副鍵）を受信するのを待って（ステップＳ３９０６：Ｎｏ）、受信した場合（ステップＳ３９０６：Ｙｅｓ）、ノードＮは、設定部１９０５により、受信された主鍵を、パケットを暗号化するための鍵に設定し、副鍵を主鍵が利用できない場合の鍵に設定する（ステップＳ３９０７）。これで、本フローチャートによる一連の処理を終了する。これにより、ノードＮは、主鍵と副鍵とに分類された複数の暗号鍵Ｋｉを設定することができる。なお、上述したように、新規ノードＮｘではない通常のノードＮの場合は、主鍵のみが設定され、副鍵は設定されない。
【０１８７】
（管理サーバ１０１の機能的構成例）
図４０は、実施の形態２にかかる管理サーバ１０１の機能的構成を示すブロック図である。図４０において、管理サーバ１０１は、受信部２１０１、抽出部２１０２、および送信部２１０３のほか、決定部４０００を含む構成である。決定部４０００は、具体的には、たとえば、図１６に示したＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されたプログラムをＣＰＵ１６０１に実行させることにより、または、Ｉ／Ｆ１６０８により、その機能を実現する。また、決定部４０００の処理結果は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶される。
【０１８８】
決定部４０００は、複数の暗号化パケットＳＰｉの各々の着順に基づいて、抽出部２１０２によって抽出された複数の暗号鍵Ｋｉの中から、主鍵と副鍵を決定する。具体的には、たとえば、決定部４０００は、ノードＮから送信されてきた着順に応じた優先度に従って、主鍵と副鍵とを決定する。
【０１８９】
また、決定部４０００は、複数の暗号化パケットＳＰｉについてのそれぞれのアドホックネットワークＡｉ内での転送回数に基づいて、抽出部２１０２によって抽出された複数の暗号鍵Ｋｉの中から、主鍵と副鍵を決定することとしてもよい。具体的には、たとえば、決定部４０００は、ノードＮから送信されてきたホップ数に応じた優先度に従って、主鍵と副鍵とを決定する。
【０１９０】
決定部４０００は、いずれの優先度であっても、以下のようにして、主鍵と副鍵とを決定する。たとえば、暗号化パケットＳＰ１〜ＳＰ３とその優先度が送信されてきたものとする。暗号化パケットＳＰ１〜ＳＰ３のうち、暗号化パケットＳＰ１の優先度が最大である場合、暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１を、主鍵に決定する。そして、決定部４０００は、残りの暗号化パケットＳＰ２，ＳＰ３をそれぞれ復号できる暗号鍵Ｋ２，Ｋ３を副鍵に決定する。なお、副鍵は、少なくとも１つあればよい。
【０１９１】
また、ノードＮに記録部３７０６および決定部３７０７がない場合は、決定部４０００は、管理サーバ１０１での暗号化パケットＳＰｉの各々の着順で、主鍵と副鍵とを決定することとしてもよい。たとえば、暗号化パケットＳＰ１〜ＳＰ３が送信されてきたものとする。暗号化パケットＳＰ１〜ＳＰ３のうち、暗号化パケットＳＰ１が１着、暗号化パケットＳＰ２が２着、暗号化パケットＳＰ３が３着とすると、暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１を主鍵、暗号化パケットＳＰ２，ＳＰ３を復号できる暗号鍵Ｋ２，Ｋ３を副鍵に決定する。これにより、管理サーバ１０１において、ノードＮが最初に受信した暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１が主鍵に決定される。なお、副鍵は、少なくとも１つあればよい。
【０１９２】
同様に、暗号化パケットＳＰｉの各々のホップ数で、主鍵と副鍵を決定してもよい。たとえば、暗号化パケットＳＰ１〜ＳＰ３が送信されてきたものとする。また、最大ホップ数を「１０」とする。ここで、暗号化パケットＳＰ１〜ＳＰ３のうち、暗号化パケットＳＰ１のホップ数が「７」、暗号化パケットＳＰ２のホップ数が「５」、暗号化パケットＳＰ３のホップ数が「３」とすると、暗号化パケットＳＰ１を復号できる暗号鍵Ｋ１を主鍵、暗号化パケットＳＰ２，ＳＰ３を復号できる暗号鍵Ｋ２，Ｋ３を副鍵に決定する。これにより、管理サーバ１０１において、転送回数が最も少ない暗号化パケットＳＰｉを復号できる暗号鍵Ｋ１を、主鍵に決定することができる。なお、副鍵は、少なくとも１つあればよい。
【０１９３】
またこの場合、ノードＮにおいて記録部３７０６および決定部３７０７が不要となるため、鍵設定処理の高速化を図ることができる。
【０１９４】
また、管理サーバ１０１では、送信部２１０３は、決定部４０００により主鍵と副鍵が決定されると、主鍵と副鍵を、携帯端末ＭＴ経由でノードＮに送信する。これにより、ノードＮにおいて、主鍵と副鍵が設定されることとなる。
【０１９５】
（管理サーバ１０１の鍵提供処理手順）
図４１は、実施の形態２にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャートである。図４１のフローチャートにおいて、まず、管理サーバ１０１は、受信部２１０１により、携帯端末ＭＴを介して、暗号化パケットＳＰｉをノードＮから受信したか否かを判断する（ステップＳ４１０１）。優先度を用いて決定する場合は、優先度も受信したか否かを判断する。
【０１９６】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ４１０１：Ｎｏ）、受信した場合（ステップＳ４１０１：Ｙｅｓ）、管理サーバ１０１は、抽出部２１０２により、暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出する鍵抽出処理を実行する（ステップＳ４１０２）。鍵抽出処理（ステップＳ４１０２）では、図２７または図２８に示したいずれかの処理が実行される。
【０１９７】
そして、管理サーバ１０１は、決定部４０００により、抽出された暗号鍵Ｋｉごとに、上述した主／副決定を実行する（ステップＳ４１０３）。このあと、管理サーバ１０１は、送信部２１０３により、携帯端末ＭＴを介して、主鍵と副鍵をノードＮに送信して（ステップＳ４１０４）、本フローチャートによる一連の処理を終了する。
【０１９８】
これにより、管理サーバ１０１は、ノードＮが属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを主鍵と副鍵とに分類してノードＮに提供することができる。
【０１９９】
図４２および図４３は、実施の形態２にかかるダウンストリーム型により導入された新規ノードＮｙの通信例を示す説明図である。
【０２００】
図４２に示した状態（Ｍ）は、図３６に示した状態（Ｌ）後における通信例１を示している。ここでは、例として、暗号鍵Ｋ１を主鍵、暗号鍵Ｋ２を副鍵とする。新規ノードＮｙとノードＮｘは、主鍵である暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１を送受信可能である。ノードＮｘとノードＮ１−３は、主鍵である暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１を送受信可能である。
【０２０１】
ノードＮ２−２は、暗号鍵Ｋ２しか保持していないため、ノードＮｘからの暗号化パケットＳＰ１を傍受できるが復号できない。したがって、ノードＮ２−２は、ノードＮｘからの暗号化パケットＳＰ１を破棄する。
【０２０２】
図４３に示した状態（Ｎ）は、図３６に示した状態（Ｌ）後における通信例２を示している。ノードＮ２−２が、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２を、ノードＮｘに送信した場合、ノードＮｘは、主鍵（暗号鍵Ｋ１）では、受信した暗号化パケットＳＰ２を復号できない。この場合、ノードＮｘは、副鍵（暗号鍵Ｋ２）で復号を試みる。
【０２０３】
ノードＮｘでは、暗号鍵Ｋ２で暗号化パケットＳＰ２を復号できるため、復号データを主鍵（暗号鍵Ｋ１）で再暗号化する。そして、ノードＮｘは、再暗号化された暗号化パケットＳＰ１を、新規ノードＮｙおよびノードＮ１−３に送信することとなる。
【０２０４】
このように、ノードＮｘでは主鍵で復号できなくても副鍵で復号できれば、復号データを主鍵で暗号化して、パケット転送を行うことができる。したがって、新規ノードＮｘの配下のノードＮｙ以降の鍵数が１個であっても、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。
【０２０５】
（ノードＮｘの通信処理）
つぎに、複数のアドホックネットワークの境界に位置する境界ノードＮｘの通信処理について説明する。
【０２０６】
図４４は、実施の形態２にかかる境界ノードＮｘの通信処理手順を示すフローチャートである。まず、境界ノードＮｘは、パケットの受信を待ち受け（ステップＳ４４０１：Ｎｏ）、パケットを受信した場合（ステップＳ４４０１：Ｙｅｓ）、境界ノードＮｘは、主鍵で復号できたか否かを判断する（ステップＳ４４０２）。
【０２０７】
復号できた場合（ステップＳ４４０２：Ｙｅｓ）、境界ノードＮｘは、受信したパケットの宛先アドレスが自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ４４０３）。自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ４４０３：Ｙｅｓ）、境界ノードＮｘは、復号されたデータに基づいたデータ処理を実行し（ステップＳ４４０４）、受信したパケットを転送先に転送する（ステップＳ４４０５）。
【０２０８】
なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルを保持していれば、当該ルーティングテーブルで指定されたノードとなる。ルーティングテーブルがなければ、転送先は通信圏内の全ノードとなる。これにより、通信処理を終了する。
【０２０９】
一方、ステップＳ４４０３において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ４４０３：Ｎｏ）、境界ノードＮｘは、受信したパケットを転送先に転送する（ステップＳ４４０５）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルで規定されたノードとなる。
【０２１０】
また、ステップＳ４４０２において主鍵で復号できなかった場合（ステップＳ４４０２：Ｎｏ）、境界ノードＮｘは、いずれかの副鍵で復号できたか否かを判断する（ステップＳ４４０６）。
【０２１１】
復号できた場合（ステップＳ４４０６：Ｙｅｓ）、境界ノードＮｘは、受信したパケットの宛先アドレスが自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ４４０７）。自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ４４０７：Ｙｅｓ）、境界ノードＮｘは、復号されたデータに基づいたデータ処理を実行する（ステップＳ４４０８）。そして、境界ノードＮｘは、復号データを主鍵で暗号化し（ステップＳ４４０９）、主鍵で暗号化されたパケットを転送先に転送する（ステップＳ４４１０）。これにより、通信処理を終了する。
【０２１２】
一方、ステップＳ４４０７において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ４４０７：Ｎｏ）、境界ノードＮｘは、復号データを主鍵で暗号化し（ステップＳ４４０９）、主鍵で暗号化されたパケットを転送先に転送する（ステップＳ４４１０）。これにより、通信処理を終了する。
【０２１３】
また、ステップＳ４４０６において、いずれの副鍵でも復号できなかった場合（ステップＳ４４０６：Ｎｏ）、受信したパケットは傍受したこととなるため、境界ノードＮｘは、受信したパケットを破棄して（ステップＳ４４１１）、通信処理を終了する。
【０２１４】
以上のことから、実施の形態２にかかる鍵設定方法、ノード、およびネットワークシステムによれば、実施の形態１と同様、アドホックネットワーク内のノードに対する暗号鍵の設定作業にかかる作業員の作業負担の軽減化および作業時間の短縮化を図ることができる。
【０２１５】
また、境界ノードＮｘに設定された複数の暗号鍵を主鍵と副鍵に分類して使用することで、ノードＮｘの配下に設定される新規ノードＮｙについては、主鍵（たとえば、暗号鍵Ｋ１）を割り当てるだけでよく、副鍵（たとえば、暗号鍵Ｋ２）を割り当てる必要はない。これにより、新規ノードＮｘの配下のノードＮｙ以降の鍵数を１個にすることができ、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡｉ内の通信量の増加を抑制することができる。
【０２１６】
＜実施の形態３：アップストリーム型で複数鍵設定＞
まず、実施の形態３について説明する。実施の形態３は、図４に示した第４の例について、いわゆるアップストリーム型で新規ノード（図４ではノードＮｃ）に複数の暗号鍵を設定する処理である。以下、図４５〜図６８を用いて説明する。なお、実施の形態１，２と同一構成には同一符号を付し、その説明を省略する。
【０２１７】
（ネットワークシステムの一実施例）
図４５は、実施の形態３にかかるネットワークシステム１００の一実施例を示す説明図である。図４５に示すネットワークシステム１００において、管理サーバ１０１は、暗号鍵ＤＢ１１０を備える必要はない。アップストリーム型では、新規ノードから依頼がある都度、該当するゲートウェイＧｉがゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１にアップロードする。そして、新規ノードに接続された携帯端末ＭＴを介して、管理サーバ１０１が、暗号鍵Ｋｉを新規ノードに供給することとなる。
【０２１８】
（新規ノードＮの導入時における暗号鍵Ｋｉの設定例）
つぎに、図４５に示したネットワークシステム１００への新規ノードの導入時における暗号鍵Ｋｉの設定例について説明する。実施の形態３では、新規ノードに対し、複数の暗号鍵を設定するが、ここでは、まず、１個の暗号鍵を設定する例について説明し、そのあとで、複数の鍵の設定例（図４８〜図５２）について説明する。なお、複数の鍵の設定例（図４８〜図５２）においても、個々の鍵の設定については、以下の図４６、図４７に示す設定となる。また、管理サーバ１０１と携帯端末ＭＴとの間の通信方式は、実施の形態１，２（図２３、図２４を参照）と同一であるため省略する。
【０２１９】
図４６は、実施の形態３にかかるネットワークシステム１００への新規ノードの導入例を示す説明図である。図４６において、ネットワークシステム１００のアドホックネットワークＡｉ内に新規ノードＮｉ−ｘが導入されている。なお、図４６では、アドホックネットワークＡｉ内のノードＮｉ−１〜Ｎｉ−ｍｉのうち、代表としてノードＮｉ−１〜Ｎｉ−３を示している。
【０２２０】
新規ノードＮｉ−ｘの導入時は、作業員ＯＰは新規ノードＮｉ−ｘがどのアドホックネットワークＡｉに属しているのかわからない。そこで、実施の形態３では、作業員ＯＰが使用する携帯端末ＭＴを利用して、新規ノードＮｉ−ｘに設定すべき暗号鍵Ｋｉの取得要求を、アドホックネットワークＡｉにアップロードする。このとき、ゲートウェイＧｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１にアップロードする。そして、新規ノードＮｉ−ｘは、管理サーバ１０１にアップロードされた暗号鍵Ｋｉを、携帯端末ＭＴを介して管理サーバ１０１から取得して、新規ノードＮｉ−ｘに自動設定する。以下、新規ノードＮｉ−ｘの導入時におけるネットワークシステム１００の動作例について説明する。
【０２２１】
図４７は、実施の形態３にかかる新規ノードの導入時におけるネットワークシステム１００の動作例を示すシーケンス図である。図４７のシーケンスにおいて、（１）携帯端末ＭＴは、ネットワークＮＷ２を介して管理サーバ１０１に接続する。この際、携帯端末ＭＴは、たとえば、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）を用いて、管理サーバ１０１とセキュアな通信を行う。なお、管理サーバ１０１と携帯端末ＭＴとの間でセキュア通信を実現するための通信方式については、図２３および図２４と同様であるため、省略する。
【０２２２】
（２）携帯端末ＭＴは、有線または無線のネットワークＮＷ３を介して新規ノードＮｉ−ｘに接続する。具体的には、たとえば、作業員ＯＰが、ＵＳＢケーブルを用いて、携帯端末ＭＴと新規ノードＮｉ−ｘとを接続することで、携帯端末ＭＴと新規ノードＮｉ−ｘとの間にネットワークＮＷ３が確立される。
【０２２３】
（３）新規ノードＮｉ−ｘは、携帯端末ＭＴとの接続を検知すると、アドホックネットワークＡｉ内でマルチホップ通信により送受信されるパケットを暗号化するための鍵の取得要求をアドホックネットワークＡｉにブロードキャストする。ここでは、鍵の取得要求が、新規ノードＮｉ−ｘの通信圏内に存在するノードＮｉ−３に送信される。
【０２２４】
（４）ノードＮｉ−３は、新規ノードＮｉ−ｘからの鍵の取得要求を通信圏内のノードＮｉ−１に送信する。（５）ノードＮｉ−１は、ノードＮｉ−３からの鍵の取得要求を通信圏内のゲートウェイＧｉに送信する。この結果、新規ノードＮからの鍵の取得要求がアドホックネットワークＡｉ内のゲートウェイＧｉに転送される。
【０２２５】
（６）ゲートウェイＧｉは、新規ノードＮｉ−ｘからの鍵の取得要求を受信すると、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。（７）管理サーバ１０１は、ネットワークＮＷ２を介して、ゲートウェイＧｉからのゲートウェイＧｉ固有の暗号鍵Ｋｉを携帯端末ＭＴに送信する。
【０２２６】
（８）携帯端末ＭＴは、ネットワークＮＷ３を介して、管理サーバ１０１からのゲートウェイＧｉ固有の暗号鍵Ｋｉを新規ノードＮｉ−ｘに送信する。（９）新規ノードＮｉ−ｘは、携帯端末ＭＴからの暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。
【０２２７】
なお、携帯端末ＭＴと新規ノードＮｉ−ｘとの接続は、新規ノードＮｉ−ｘに対する暗号鍵Ｋｉの設定が終了するまで維持する。また、暗号鍵Ｋｉの設定が終了して携帯端末ＭＴと新規ノードＮｉ−ｘとの接続を切断すると、携帯端末ＭＴの中から暗号鍵Ｋｉが自動で削除されるようにしてもよい。これにより、携帯端末ＭＴの紛失時などにおけるリスクを低減させることができる。
【０２２８】
このように、新規ノードＮｉ−ｘの導入時では、作業員ＯＰの携帯端末ＭＴを介して、新規ノードＮｉ−ｘと管理サーバ１０１との一時的な通信路を確立することができる。また、新規ノードＮｉ−ｘからブロードキャストされた鍵の取得要求がゲートウェイＧｉに転送された結果、ゲートウェイＧｉから管理サーバ１０１に送信された暗号鍵Ｋｉを、携帯端末ＭＴを介して管理サーバ１０１から新規ノードＮｉ−ｘに提供することができる。これにより、新規ノードＮｉ−ｘに設定すべき暗号鍵Ｋｉを容易に取得することができ、新規ノードＮｉ−ｘが用いる暗号鍵Ｋｉの設定作業の効率化を図ることができる。
【０２２９】
図４８〜図５２は、実施の形態３にかかるダウンストリーム型による複数のアドホックネットワークの境界（通信圏内）での新規ノードの導入例を示す説明図である。図４８〜図５２では、図１０〜図１５と同様、例として２つのアドホックネットワークＡ１，Ａ２の境界に、新規ノードＮｘを導入する例について説明する。
【０２３０】
図４８は、初期状態（Ａ）を示している。アドホックネットワークＡ１内のノードを、ノードＮ１−１〜Ｎ１−４とし、アドホックネットワークＡ２内のノードを、ノードＮ２−１〜Ｎ２−３とする。アドホックネットワークＡ１内のゲートウェイＧ１およびノードＮ１−１〜Ｎ１−４は、ゲートウェイＧ１固有の暗号鍵Ｋ１を保持している。アドホックネットワークＡ２内のゲートウェイＧ２およびノードＮ２−１〜Ｎ２−３は、ゲートウェイＧ２固有の暗号鍵Ｋ２を保持している。新規ノードＮｘは、ノードＮ１−３およびノードＮ２−２の通信圏内に設置されているものとする。管理サーバ１０１には、暗号鍵ＤＢ１１０はない。
【０２３１】
図４９は、初期状態（Ａ）の次状態（Ｂ）を示している。（Ｂ）では、管理サーバ１０１とセキュアなネットワークＮＷ２を介して接続可能な携帯端末ＭＴが、新規ノードＮｘと接続された状態を示している。
【０２３２】
図５０は、状態（Ｂ）の次状態（Ｃ）を示している。（Ｃ）では、（Ｂ）の状態から、新規ノードＮｘが、アドホックネットワークＡ１，Ａ２に対しゲートウェイ探索フレーム（以下、「ＧＷ探索フレーム」）ＴＦをブロードキャストしている。ＧＷ探索フレームＴＦは、ゲートウェイを探索するパケットであり、ＧＷ探索フレームＴＦを受信したゲートウェイＧｉは、管理サーバ１０１にゲートウェイＧｉ固有の暗号鍵Ｋｉをアップロードする。
【０２３３】
新規ノードＮｘの通信圏内にあるノードＮ１−３は、暗号鍵Ｋ１で復号できないパケットを受信した場合は、傍受したとして当該パケットを破棄するが、新規ノードＮｘからＧＷ探索フレームＴＦを受信した場合、暗号鍵Ｋ１でＧＷ探索フレームＴＦを暗号化する。そして、ノードＮ１−３は、暗号化ＧＷ探索フレームＫ１（ＴＦ）をアドホックネットワークＡ１内にブロードキャストする。これにより、暗号化ＧＷ探索フレームＫ１（ＴＦ）がノードＮ１−１〜Ｎ１−４およびゲートウェイＧ１に行き渡ることとなる。
【０２３４】
同様に、新規ノードＮｘの通信圏内にあるノードＮ２−２は、暗号鍵Ｋ２で復号できないパケットを受信した場合は、傍受したとして当該パケットを破棄するが、新規ノードＮｘからＧＷ探索フレームＴＦを受信した場合、暗号鍵Ｋ２でＧＷ探索フレームＴＦを暗号化する。そして、ノードＮ２−２は、暗号化ＧＷ探索フレームＫ２（ＴＦ）をアドホックネットワークＡ２内にブロードキャストする。これにより、暗号化ＧＷ探索フレームＫ２（ＴＦ）がノードＮ２−１〜Ｎ２−３およびゲートウェイＧ２に行き渡ることとなる。
【０２３５】
ゲートウェイＧ１は、暗号化ＧＷ探索フレームＫ１（ＴＦ）を受信すると、暗号鍵Ｋ１で復号し、ＧＷ探索フレームＴＦでの指示内容にしたがって、管理サーバ１０１に暗号鍵Ｋ１をアップロードする。同様に、ゲートウェイＧ２は、暗号化ＧＷ探索フレームＫ２（ＴＦ）を受信すると、暗号鍵Ｋ２で復号し、ＧＷ探索フレームの指示内容にしたがって、管理サーバ１０１に暗号鍵Ｋ２をアップロードする。これにより、管理サーバ１０１では、携帯端末ＭＴの識別子（たとえば、後述する『Ｄ１』）とゲートウェイＧ１，Ｇ２の暗号鍵Ｋ１，Ｋ２とを関連付けたテーブルＴが作成される。
【０２３６】
図５１は、状態（Ｃ）の次状態（Ｄ）を示している。（Ｄ）では、管理サーバ１０１が（Ｃ）により受け取った暗号鍵Ｋ１，Ｋ２を、テーブルＴにより暗号鍵Ｋ１，Ｋ２に関連付けされている携帯端末ＭＴに、ネットワークＮＷ２を介して送信する。携帯端末ＭＴは、管理サーバ１０１から受信した暗号鍵Ｋ１，Ｋ２を、ネットワークＮＷ３経由で、新規ノードＮｘに送信する。
【０２３７】
図５２は、状態（Ｄ）の次状態（Ｅ）を示している。（Ｅ）では、新規ノードＮｘは、管理サーバ１０１から送信されてきた暗号鍵Ｋ１，Ｋ２を受信して、暗号化および復号するための鍵に設定する。したがって、このあと、新規ノードＮｘは、ノードＮ１−３からの暗号化パケットＳＰ１を暗号鍵Ｋ１で復号することができる。また、新規ノードＮｘは、ノードＮ２−２からの暗号化パケットＳＰ２を暗号鍵Ｋ２で復号することができる。また、新規ノードＮｘからは、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１がノードＮ１−３に送信され、暗号鍵Ｋ２で暗号化された暗号化パケットＳＰ２がノードＮ２−２に送信される。
【０２３８】
なお、新規ノードＮｘからの暗号化パケットＳＰ１は、ノードＮ２−２に傍受されるが、ノードＮ２−２は暗号鍵Ｋ１を保持していないため、復号できず、これ以上、暗号化パケットＳＰ１を転送しない。同様に、新規ノードＮｘからの暗号化パケットＳＰ２は、ノードＮ１−３に傍受されるが、ノードＮ１−３は暗号鍵Ｋ２を保持していないため、復号できず、これ以上、暗号化パケットＳＰ２を転送しない。したがって、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。
【０２３９】
なお、以下の説明において、「ノードＮ」とは、ネットワークシステム１００のアドホックネットワークＡ１〜ＡｎのいずれかのアドホックネットワークＡｉ内でマルチホップ通信によりパケットを送受信するノードを示す。また、「ノード等」とは、ネットワークシステム１００のゲートウェイＧ１〜ＧｎおよびノードＮを示す。また、管理サーバ１０１およびノード等のハードウェア構成例は、実施の形態１，２と同一であるため、説明を省略する。
【０２４０】
（ノードＮの機能的構成例）
図５３は、実施の形態３にかかるノードの機能的構成例を示すブロック図である。図５３において、ノードＮは、検知部５３０１と、受付部５３０２と、フレーム送信部５３０３と、鍵受信部５３０４と、設定部５３０５と、フレーム受信部５３０６と、暗号化／復号処理部５３０７と、を含む構成である。各機能部（検知部５３０１〜暗号化／復号処理部５３０７）は、具体的には、たとえば、図１７に示したＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されたプログラムをＣＰＵ１７０１に実行させることにより、または、Ｉ／Ｆ１７０４により、その機能を実現する。また、各機能部（検知部５３０１〜暗号化／復号処理部５３０７）の処理結果は、特に指定する場合を除いて、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶される。
【０２４１】
検知部５３０１は、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知する。具体的には、たとえば、作業員ＯＰがＵＳＢケーブルを用いて携帯端末ＭＴとノードＮとを接続した結果、検知部５３０１が、ＵＳＢケーブルを介した携帯端末ＭＴとの接続を検知する。
【０２４２】
受付部５３０２は、検知部５３０１によって接続が検知された携帯端末ＭＴから、鍵の取得要求の送信指示を受け付ける。ここで、鍵の取得要求は、アドホックネットワークＡｉ内でマルチホップ通信によりノード間で送受信されるパケットを暗号化するための暗号鍵Ｋｉの取得要求である。
【０２４３】
鍵の取得要求は、たとえば、ノードＮが所属するアドホックネットワークＡｉ内のゲートウェイＧｉを探索して、ゲートウェイＧｉからゲートウェイＧｉ固有の暗号鍵Ｋｉを提供してもらうＧＷ探索フレームＴＦである。
【０２４４】
具体的には、たとえば、受付部５３０２が、ＵＳＢケーブルなどのネットワークＮＷ３を介して、携帯端末ＭＴからＧＷ探索フレームＴＦの送信指示を受け付ける。ここで、ＧＷ探索フレームＴＦの送信指示データの具体例について説明する。
【０２４５】
図５４は、実施の形態３にかかるＧＷ探索フレームＴＦの送信指示データの具体例を示す説明図である。図５４において、送信指示データ５４００は、コマンドおよびユーザＩＤを有している。コマンドは、ノードＮに対する指示内容を示している。ここでは、ノードＮが所属するアドホックネットワークＡｉ内のゲートウェイＧｉの探索指示を表す『ｓｅａｒｃｈ  ｇｗ』が記述されている。ユーザＩＤは、携帯端末ＭＴの識別子である。ここでは、『Ｄ１』が記述されている。
【０２４６】
図５３の説明に戻り、フレーム送信部５３０３は、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストする。ＧＷ探索フレームＴＦは、たとえば、フレームの種別、携帯端末ＭＴの識別子、ノードＮの識別子を含む情報であり、暗号化されていないノーマルフレームである。
【０２４７】
ここで、携帯端末ＭＴの識別子は、たとえば、上記受付部５３０２によって受け付けたＧＷ探索フレームＴＦの送信指示データ５４００から特定される。また、ノードＮの識別子は、たとえば、予め設定されてＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されている。具体的には、たとえば、フレーム送信部５３０３が、携帯端末ＭＴとの接続が検知された場合に、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストすることにしてもよい。
【０２４８】
また、フレーム送信部５３０３は、たとえば、携帯端末ＭＴからＧＷ探索フレームＴＦの送信指示データ５４００を受け付けた場合に、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストすることにしてもよい。すなわち、携帯端末ＭＴとの接続が検知され、かつ、ＧＷ探索フレームＴＦの送信指示データ５４００を受け付けた場合に、フレーム送信部５３０３が、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストする。
【０２４９】
これにより、携帯端末ＭＴを利用して、ノードＮに対して鍵設定とは異なる設定作業などを行う際に、携帯端末ＭＴとの接続が検知された時点で、ノードＮからＧＷ探索フレームＴＦがブロードキャストされることを防ぐことができる。ここで、ＧＷ探索フレームＴＦの具体例について説明する。
【０２５０】
図５５は、実施の形態３にかかるＧＷ探索フレームＴＦのデータ構造の一例を示す説明図である。図５５において、ＧＷ探索フレームＴＦは、ヘッダ部５５１０とペイロード部５５２０とを含む構成である。ヘッダ部５５１０には、宛先アドレス、差出アドレス、種別、サイズおよびホップ数が記述されている。ペイロード部５５２０には、ユーザＩＤおよびノードＩＤが記述されている。
【０２５１】
ここで、宛先アドレスは、送信先のアドレスである。ここでは、ブロードキャスト用のＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス『ＦＦ：ＦＦ：ＦＦ：ＦＦ：ＦＦ：ＦＦ』が記述されている。差出アドレスは、送信元のアドレスである。ここでは、アドホックネットワークＡ１内のノードＮとは異なる他のノードＮのＭＡＣアドレスが記述されている。種別は、フレームの種別である。ここでは、ＧＷ探索フレームを示す『２』が記述されている。サイズは、フレームのデータサイズ（バイト）である。
【０２５２】
ホップ数は、暗号鍵Ｋｉで暗号化された暗号化ＧＷ探索フレームＫｉ（ＴＦ）をノード間で残り何回転送するのかを示す残余の転送回数である。ノードＮからブロードキャストされるＧＷ探索フレームＴＦのホップ数の最大値は予め設定されている。ホップ数は暗号化ＧＷ探索フレームＫｉ（ＴＦ）の転送時にデクリメントされ、ホップ数が『０』となった暗号化ＧＷ探索フレームＫｉ（ＴＦ）は棄却される。ここでは、ＧＷ探索フレームＴＦのホップ数『１０』が記述されている。
【０２５３】
ユーザＩＤは、ノードＮに接続されている携帯端末ＭＴの識別子である。ここでは、ユーザＩＤ『Ｄ１』が記述されている。ノードＩＤは、ノードＮの識別子である。ここでは、ノードＩＤ『Ｎｘ』が記述されている。なお、ここでは宛先アドレスおよび差出アドレスの一例として、ＭＡＣアドレスを用いて説明したが、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスなどのアドレスを用いることにしてもよい。
【０２５４】
図５３の説明に戻り、鍵受信部５３０４は、ノードＮが所属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを、携帯端末ＭＴを介して管理サーバ１０１から受信する。ここで、ゲートウェイＧｉ固有の暗号鍵Ｋｉは、ブロードキャストされた暗号化ＧＷ探索フレームＫｉ（ＴＦ）がゲートウェイＧｉに転送された結果、ゲートウェイＧｉから管理サーバ１０１に送信された鍵である。
【０２５５】
この暗号鍵Ｋｉは、アドホックネットワークＡｉ内のノード間で送受信されるパケットを暗号化するための鍵であり、たとえば、１２８〜２５６ビット程度のバイナリデータである。また、この暗号鍵Ｋｉは、たとえば、パケットを暗号化するとともに、暗号鍵Ｋｉを用いて暗号化されたパケットを復号することができる共通鍵である。
【０２５６】
具体的には、たとえば、ノードＮからブロードキャストされたＧＷ探索フレームＴＦは、アドホックネットワークＡｉを介して、暗号化されて、暗号化ＧＷ探索フレームＫｉ（ＴＦ）がゲートウェイＧｉに転送される。この結果、ゲートウェイＧｉは、ネットワークＮＷ１を介して、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。つぎに、管理サーバ１０１は、ネットワークＮＷ２を介して、ゲートウェイＧｉ固有の暗号鍵Ｋｉを携帯端末ＭＴに送信する。そして、鍵受信部５３０４が、ネットワークＮＷ３を介して、ゲートウェイＧｉ固有の暗号鍵Ｋｉを携帯端末ＭＴから受信する。
【０２５７】
設定部５３０５は、受信されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。これにより、以降においてノードＮが送信対象となるパケットを暗号化、および暗号化されたパケットを復号することが可能となり、アドホックネットワークＡｉ内のノード間でセキュア通信を行うことができる。
【０２５８】
フレーム受信部５３０６は、アドホックネットワークＡｉ内の自ノードとは異なる他ノードからＧＷ探索フレームを受信する。すなわち、新規ノードＮｘからブロードキャストされたＧＷ探索フレームＴＦをフレーム受信部５３０６が受信する。
【０２５９】
暗号化／復号処理部５３０７は、ノードＮが保持する暗号鍵Ｋｉで、フレーム受信部５３０６で受信されたフレームの暗号化／復号を実行する。たとえば、受信されたノーマルフレームのフレーム種別がＧＷ探索フレームＴＦを示す『２』の場合、暗号鍵Ｋｉで暗号化する。そして、フレーム送信部５３０３は、暗号化されたＧＷ探索フレームＴＦをブロードキャストする。また、受信されたノーマルフレームの種別がＧＷ探索フレームＴＦを示す『２』でない場合は、当該ノーマルフレームは破棄される。
【０２６０】
また、ノードＮが、新規ノードＮｘではない既設ノードである場合、フレーム受信部５３０６は、転送されてくる暗号化ＧＷ探索フレームＫｉ（ＴＦ）を受信する場合がある。この場合、暗号化／復号処理部５３０７は、暗号鍵Ｋｉで暗号化ＧＷ探索フレームＫｉ（ＴＦ）をＧＷ探索フレームＴＦに復号する。暗号化／復号処理部５３０７で復号に成功した場合、ヘッダ部５５１０のホップ数がデクリメントされる。そして、フレーム送信部５３０３は、暗号化ＧＷ探索フレームＫｉ（ＴＦ）を転送する。
【０２６１】
なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルを保持していれば、当該ルーティングテーブルで指定されたノードとなる。ルーティングテーブルがなければ、転送先は通信圏内の全ノードとなる。
【０２６２】
（ゲートウェイＧｉの機能的構成例）
図５６は、実施の形態３にかかるゲートウェイＧｉの機能的構成例を示すブロック図である。図５６において、ゲートウェイＧｉは、ＧＷ受信部５６０１と、復号部５６０２と、作成部５６０３と、ＧＷ送信部５６０４と、を含む構成である。各機能部（ＧＷ受信部５６０１〜ＧＷ送信部５６０４）は、具体的には、たとえば、図１７に示したＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されたプログラムをＣＰＵ１７０１に実行させることにより、または、Ｉ／Ｆ１７０４により、その機能を実現する。また、各機能部（ＧＷ受信部５６０１〜ＧＷ送信部５６０４）の処理結果は、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶される。
【０２６３】
ＧＷ受信部５６０１は、アドホックネットワークＡｉを介して、ノードＮからブロードキャストされた、暗号化されたＧＷ探索フレームＴＦを受信する。具体的には、たとえば、ＧＷ受信部５６０１が、新規ノードＮｘからブロードキャストされ、アドホックネットワークＡｉ内で暗号化された暗号化ＧＷ探索フレームＫｉ（ＴＦ）を受信する。
【０２６４】
復号部５６０２は、ＧＷ受信部５６０１によって受信された暗号化ＧＷ探索フレームＫｉ（ＴＦ）を、ゲートウェイＧｉ固有の暗号鍵Ｋｉで復号する。これにより、ＧＷ探索フレームＴＦが得られる。
【０２６５】
作成部５６０３は、復号部５６０２によって暗号化ＧＷ探索フレームＫｉ（ＴＦ）からＧＷ探索フレームＴＦに復号された場合、ゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求を表す鍵通知フレームを作成する。ここで、鍵通知フレームは、たとえば、携帯端末ＭＴの識別子、ノードＮの識別子、ゲートウェイＧｉの識別子およびゲートウェイＧｉ固有の暗号鍵Ｋｉを含む情報である。
【０２６６】
携帯端末ＭＴの識別子およびノードＮの識別子は、復号されたＧＷ探索フレームＴＦから特定される。また、ゲートウェイＧｉ固有の暗号鍵Ｋｉは、たとえば、ＲＡＭ１７０２、フラッシュメモリ１７０３などの記憶装置に記憶されている。具体的には、たとえば、作成部５６０３が、復号されたＧＷ探索フレームＴＦに基づいて、ゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求を表す鍵通知フレームを作成する。ここで、鍵通知フレームの具体例について説明する。
【０２６７】
図５７は、実施の形態３にかかる鍵通知フレームの具体例を示す説明図（その１）である。図５７において、鍵通知フレームＡＦｉは、ユーザＩＤ、ノードＩＤ、ゲートウェイＩＤおよび暗号鍵に関する情報を有している。ここで、ユーザＩＤは、携帯端末ＭＴの識別子である。このユーザＩＤは、図５５に示したＧＷ探索フレームＴＦのペイロード部５５２０から特定されたコードである。ノードＩＤは、ノードＮの識別子である。このノードＩＤは、ＧＷ探索フレームＴＦのペイロード部５５２０から特定されたコードである。ゲートウェイＩＤは、ゲートウェイＧｉの識別子である。暗号鍵は、ゲートウェイＧｉ固有の暗号鍵Ｋｉである。
【０２６８】
ｉ＝１の場合、鍵通知フレームＡＦ１は、ゲートウェイＧ１固有の暗号鍵Ｋ１を携帯端末ＭＴ（ＩＤ：Ｄ１）を介して新規ノードＮｘへ送信させるフレームを意味する。同様に、ｉ＝２の場合、鍵通知フレームＡＦ２は、ゲートウェイＧ２固有の暗号鍵Ｋ２を携帯端末ＭＴ（ＩＤ：Ｄ１）を介して新規ノードＮｘへ送信させるフレームを意味する。したがって、新規ノードＮｘがアドホックネットワークＡ１，Ａ２の境界に設置された場合、新規ノードＮｘは、鍵通知フレームＡＦ１，ＡＦ２により、暗号鍵Ｋ１，Ｋ２を取得することができる。
【０２６９】
図５６の説明に戻り、ＧＷ送信部５６０４は、ネットワークＮＷ１を介して、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。具体的には、たとえば、ＧＷ送信部５６０４が、作成された鍵通知フレームＡＦｉを管理サーバ１０１に送信することにしてもよい。これにより、単にゲートウェイＧｉ固有の暗号鍵Ｋｉのみを送信する場合に比べて、管理サーバ１０１において、暗号鍵Ｋｉの提供先となる携帯端末ＭＴやノードＮを識別することができる。
【０２７０】
また、詳細は後述するが、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持する構成とした場合、鍵通知フレームＡＦｉにゲートウェイＧｉ固有の暗号鍵Ｋｉを含む必要がない。そこで、上記作成部５６０３は、たとえば、ゲートウェイＧｉ固有の暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを作成することにしてもよい。
【０２７１】
図５８は、実施の形態３にかかる鍵通知フレームＡＦｉの具体例を示す説明図（その２）である。図５８において、鍵通知フレームＡＦｉは、ユーザＩＤ、ノードＩＤおよびゲートウェイＩＤに関する情報を有している。すなわち、鍵通知フレームＡＦは、図５７に示した鍵通知フレームＡＦｉの中からゲートウェイＧ１固有の暗号鍵Ｋ１を削除したフレームである。
【０２７２】
管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持する構成とした場合、上記ＧＷ送信部５６０４は、たとえば、ゲートウェイＧ１固有の暗号鍵Ｋ１を含まない鍵通知フレームＡＦｉを管理サーバ１０１に送信する。
【０２７３】
また、暗号化ＧＷ探索フレームＫｉ（ＴＦ）は、複数経路でゲートウェイＧｉに受信される場合があるため、作成部５６０３は、その都度、同一の鍵通知フレームＡＦｉを作成することとなる。このような場合も、作成部５６０３は、初回の暗号化ＧＷ探索フレームＫｉ（ＴＦ）については、図５７に示したように暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを作成し、２回目以降は、図５８に示したような暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを作成することとしてもよい。また、２回目以降は、鍵通知フレームＡＦｉを作成しないこととしてもよい。これにより、ゲートウェイＧｉと管理サーバ１０１間の通信のオーバーヘッドの低減化を図ることができる。
【０２７４】
（管理サーバ１０１の機能的構成）
図５９は、実施の形態３にかかる管理サーバ１０１の機能的構成を示すブロック図である。図５９において、管理サーバ１０１は、ＳＶ受信部５９０１と、ＳＶ送信部５９０２と、判断部５９０３と、抽出部５９０４と、を含む構成である。各機能部（ＳＶ受信部５９０１〜抽出部５９０４）は、具体的には、たとえば、図１６に示したＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されたプログラムをＣＰＵ１６０１に実行させることにより、または、Ｉ／Ｆ１６０８により、その機能を実現する。また、各機能部（ＳＶ受信部５９０１〜抽出部５９０４）の処理結果は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶される。
【０２７５】
ＳＶ受信部５９０１は、ネットワークＮＷ１を介して、ゲートウェイＧｉからゲートウェイＧｉ固有の暗号鍵Ｋｉを受信する。具体的には、たとえば、ＳＶ受信部５９０１が、ネットワークＮＷ１を介して、図５７に示した鍵通知フレームＡＦｉを受信する。鍵通知フレームＡＦｉは、携帯端末ＭＴに対するゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求である。
【０２７６】
ＳＶ送信部５９０２は、受信されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、ネットワークＮＷ２を介して携帯端末ＭＴに送信する。具体的には、たとえば、ＳＶ送信部５９０２が、受信された鍵通知フレームＡＦｉを、ネットワークＮＷ２を介して携帯端末ＭＴに送信する。この結果、携帯端末ＭＴが、鍵通知フレームＡＦｉに含まれる暗号鍵Ｋｉを、ネットワークＮＷ３を介して新規ノードＮｘに送信することになる。
【０２７７】
ここで、管理サーバ１０１は、ネットワークＮＷ２を介して、複数の携帯端末ＭＴと通信可能に接続されている場合がある。この場合、ＳＶ送信部５９０２は、たとえば、鍵通知フレームＡＦｉに含まれるユーザＩＤから送信先の携帯端末ＭＴを識別することができる。鍵通知フレームＡＦｉの例では、ＳＶ送信部５９０２は、ユーザＩＤ『Ｄ１』の携帯端末ＭＴに鍵通知フレームＡＦｉを送信する。
【０２７８】
また、新規ノードＮｘからゲートウェイＧｉに辿り着くまでの経路は複数存在する場合がある。この場合、新規ノードＮｘからブロードキャストされたＧＷ探索フレームＴＦは、暗号化されて、複数の経路を辿ってゲートウェイＧｉに到達する。その結果、ゲートウェイＧｉは、新規ノードＮｘからブロードキャストされたＧＷ探索フレームＴＦを複数回受信することになる。
【０２７９】
この場合、ゲートウェイＧｉは、受信した暗号化ＧＷ探索フレームＫｉ（ＴＦ）をＧＷ探索フレームＴＦに復号する都度、鍵通知フレームＡＦｉを作成して管理サーバ１０１に送信することになる。そして、管理サーバ１０１は、鍵通知フレームＡＦｉを受信する都度、その鍵通知フレームＡＦｉを携帯端末ＭＴに送信することになる。この結果、携帯端末ＭＴは、管理サーバ１０１から同一の鍵通知フレームＡＦｉを複数回受信することになる。
【０２８０】
これでは、作業員ＯＰが同一の携帯端末ＭＴを用いて、複数の新規ノードＮｘの鍵設定を連続して行う場合に、誤った暗号鍵Ｋｉを新規ノードＮｘに設定してしまう可能性がある。たとえば、アドホックネットワークＡ１内のノードＮ１−ｘとアドホックネットワークＡ２内のノードＮ２−ｘの鍵設定を連続して行う場合を想定する。このとき、ノードＮ１−ｘへの暗号鍵Ｋ１の設定が終了し、作業員ＯＰが携帯端末ＭＴをノードＮ２−ｘに接続したあと、管理サーバ１０１から暗号鍵Ｋ１を含む鍵通知フレームを受信した場合、ノードＮ２−ｘに暗号鍵Ｋ１を誤って設定してしまう。
【０２８１】
そこで、管理サーバ１０１において、暗号鍵Ｋｉ（鍵通知フレームＡＦｉ）を送信済みのノードＮを管理することで、同一の鍵通知フレームＡＦｉを重複して携帯端末ＭＴに送信することを防ぐことができる。ここで、鍵通知フレームＡＦｉを送信済みのノードＮを管理するための送信済リストの具体例について説明する。
【０２８２】
図６０は、実施の形態３にかかる送信済リストの具体例を示す説明図である。図６０において、送信済リスト６０００は、暗号鍵Ｋｉを送信済みのノードＮのノードＩＤと、送信済みの暗号鍵Ｋｉとを関連付けて記憶している。送信済リスト６０００は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置により実現される。
【０２８３】
図６０の例では、アドホックネットワークＡ１，Ａ２内の新規ノードＮｘのノードＩＤ『Ｎｘ』と、ノードＮｘに送信された『暗号鍵Ｋ１』とが関連付けて記憶されている。また、アドホックネットワークＡ１，Ａ２内のノードＮｘのノードＩＤ『Ｎｘ』と、ノードＮｘに送信された『暗号鍵Ｋ２』とが関連付けて記憶されている。
【０２８４】
図５９の説明に戻り、判断部５９０３は、暗号鍵Ｋｉを送信済みのノードＮを管理する送信済リスト６０００を参照することにより、携帯端末ＭＴに鍵通知フレームＡＦｉを送信するか否かを判断する。具体的には、たとえば、判断部５９０３が、送信済リスト６０００を参照して、鍵通知フレームＡＦｉに含まれるノードＩＤが登録済みか否かを判断する。
【０２８５】
ここで、鍵通知フレームＡＦｉに含まれるノードＩＤが登録済みの場合、判断部５９０３が、携帯端末ＭＴに鍵通知フレームＡＦｉを送信すべきでないと判断する。この場合、ＳＶ送信部５９０２による鍵通知フレームＡＦｉの送信処理は行われない。たとえば、送信済リスト６０００の先頭レコードでは、新規ノードＮｘに対し暗号鍵Ｋ１が送信済みとされているため、鍵通知フレームＡＦ１は送信されない。同様に、送信済リスト６０００の２行目のレコードでは、新規ノードＮｘに対し暗号鍵Ｋ２が送信済みとされているため、鍵通知フレームＡＦ２は送信されない。
【０２８６】
一方、鍵通知フレームＡＦｉに含まれるノードＩＤが未登録の場合、判断部５９０３が、携帯端末ＭＴに鍵通知フレームＡＦｉを送信すべきと判断する。たとえば、図６０において、仮に送信済リスト６０００の２行目のレコードがないとした場合、鍵通知フレームＡＦ２を送信すべきと判断することとなる。
【０２８７】
また、ＳＶ送信部５９０２は、携帯端末ＭＴに鍵通知フレームＡＦｉを送信する。鍵通知フレームＡＦｉが携帯端末ＭＴに送信されると、たとえば、鍵通知フレームＡＦｉに含まれているノードＩＤおよび暗号鍵Ｋｉが送信済リスト６０００に登録される。鍵通知フレームＡＦｉの例では、ノードＩＤ『Ｎｘ』と暗号鍵『Ｋ１』とが関連付けられて送信済リスト６０００に登録される。これにより、同一の鍵通知フレームＡＦｉを重複して携帯端末ＭＴに送信することを防ぐことができる。
【０２８８】
また、判断部５９０３は、送信済リスト６０００を参照して、鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉのペアが登録済みか否かを判断することにしてもよい。そして、判断部５９０３は、鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉのペアが登録済みの場合、携帯端末ＭＴに鍵通知フレームＡＦｉを送信しないと判断する。
【０２８９】
一方、判断部５９０３は、鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉのペアが未登録、または、ノードＩＤと暗号鍵Ｋｉのいずれかが登録済みの場合、携帯端末ＭＴに鍵通知フレームＡＦｉを送信すると判断する。すなわち、判断部５９０３は、鍵通知フレームＡＦｉに含まれるノードＩＤが登録済みでも暗号鍵Ｋｉが未登録の場合、携帯端末ＭＴに鍵通知フレームＡＦｉを送信すると判断する。これにより、たとえば、アドホックネットワークＡ１内のノードＮに暗号鍵Ｋ１を設定したあと、該ノードＮを他のアドホックネットワークＡ２に属する別の場所に移動させて使用する場合に、ノードＮに設定すべき新たな暗号鍵Ｋ２を提供することができる。
【０２９０】
なお、管理サーバ１０１は、ＳＶ送信部５９０２による鍵通知フレームＡＦｉの携帯端末ＭＴへの送信後において、携帯端末ＭＴとの接続が切断された場合、ゲートウェイＧｉから受信した鍵通知フレームＡＦｉを削除することにしてもよい。
【０２９１】
また、上述した説明では、各ゲートウェイＧｉ固有の暗号鍵Ｋｉを含む鍵通知フレームＡＦｉをゲートウェイＧｉから管理サーバ１０１に送信する場合について説明したが、これに限らない。たとえば、管理サーバ１０１において、ネットワークシステム１００内の各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを予め保持しておく構成としてもよい。ここで、各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持する暗号鍵ＤＢ１１０（データベース）の具体例について説明する。
【０２９２】
図６１は、実施の形態３にかかる暗号鍵ＤＢ１１０の記憶内容の一例を示す説明図である。図６１において、暗号鍵ＤＢ６１００は、ゲートウェイＩＤおよび暗号鍵のフィールドを有し、各フィールドに情報を設定することで、ゲートウェイＧ１〜Ｇｎごとの鍵情報６１００−１〜６１００−ｎをレコードとして記憶している。
【０２９３】
ここで、ゲートウェイＩＤは、ゲートウェイＧｉの識別子である。暗号鍵は、ゲートウェイＧｉ固有の暗号鍵Ｋｉである。鍵情報６１００−１を例に挙げると、ゲートウェイＧ１固有の暗号鍵Ｋ１が記憶されている。なお、暗号鍵ＤＢ６１００は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置により実現される。
【０２９４】
このように、管理サーバ１０１がゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持する場合、ＳＶ受信部５９０１は、ネットワークＮＷ１を介して、ゲートウェイＧｉからゲートウェイＧｉ固有の暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを受信する。具体的には、たとえば、ＳＶ受信部５９０１が、ネットワークＮＷ１を介して、ゲートウェイＧｉから図５８に示した鍵通知フレームＡＦｉを受信する。
【０２９５】
また、抽出部５９０４は、ゲートウェイＧｉ固有の暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉが受信された場合、暗号鍵ＤＢ６１００の中からゲートウェイＧｉ固有の暗号鍵Ｋｉを抽出する。具体的には、たとえば、抽出部５９０４が、暗号鍵ＤＢ６１００の中から、受信された鍵通知フレームＡＦｉに含まれるゲートウェイＩＤ『Ｇ１』と関連付けて記憶されている暗号鍵Ｋ１を抽出する。
【０２９６】
そして、ＳＶ送信部５９０２は、抽出されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、ネットワークＮＷ２を介して携帯端末ＭＴに送信する。このように、ゲートウェイＧｉから暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを送信することで、暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを送信する場合に比べて、ゲートウェイＧｉと管理サーバ１０１との間の通信時におけるデータ量を削減することができる。
【０２９７】
また、管理サーバ１０１への鍵通知フレームの初回送信時のみ、ゲートウェイＧｉに暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを送信させて、それ以降は、暗号鍵Ｋｉを含まない鍵通知フレームＡＦｉを送信させることにしてもよい。この場合、管理サーバ１０１は、鍵通知フレームＡＦｉの初回受信時に、鍵通知フレームＡＦｉに含まれる暗号鍵ＫｉをゲートウェイＩＤと関連付けて暗号鍵ＤＢ６１００に登録することにしてもよい。これにより、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを予め保持しておく必要がなくなる。
【０２９８】
なお、ゲートウェイＧｉが暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを管理サーバ１０１に送信する場合は、暗号鍵Ｋｉの抽出処理が不要となるため、管理サーバ１０１は上記抽出部５９０４および暗号鍵ＤＢ６１００を備えない構成としてもよい。
【０２９９】
（ノードＮの鍵設定処理手順）
図６２は、実施の形態３にかかる新規ノードＮｘの鍵設定処理手順の一例を示すフローチャートである。図６２のフローチャートにおいて、まず、検知部５３０１により、管理サーバ１０１と通信可能な携帯端末ＭＴとの接続を検知したか否かを判断する（ステップＳ６２０１）。
【０３００】
ここで、携帯端末ＭＴとの接続を検知するのを待って（ステップＳ６２０１：Ｎｏ）、検知した場合（ステップＳ６２０１：Ｙｅｓ）、ノードＮは、受付部５３０２により、携帯端末ＭＴからＧＷ探索フレームの送信指示を受け付けたか否かを判断する（ステップＳ６２０２）。
【０３０１】
ここで、ＧＷ探索フレームＴＦの送信指示データ５４００を受け付けるのを待って（ステップＳ６２０２：Ｎｏ）、受け付けた場合（ステップＳ６２０２：Ｙｅｓ）、ノードＮは、フレーム送信部５３０３により、ＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストする（ステップＳ６２０３）。このあと、ＧＷ探索フレームＴＦはアドホックネットワークＡｉで暗号化されて転送され、ゲートウェイＧｉに到達する。そして、ゲートウェイＧｉが鍵通知フレームＡＦｉを管理サーバ１０１に送信することになる。
【０３０２】
このあと、ノードＮは、鍵受信部５３０４により、ノードＮが所属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを携帯端末ＭＴから受信したか否かを判断する（ステップＳ６２０４）。たとえば、図４８に示した例では、新規ノードＮｘは、アドホックネットワークＡ１，Ａ２の境界に設置されている。したがって、ノードＮは、ゲートウェイＧ１固有の暗号鍵Ｋ１とゲートウェイＧ２固有の暗号鍵Ｋ２の両方が受信されたか否かを判断することとなる。より具体的には、この場合、ノードＮは、管理サーバ１０１から鍵通知フレームＡＦ１，ＡＦ２が受信されたか否かを判断する。
【０３０３】
ここで、ゲートウェイＧｉ固有の暗号鍵Ｋｉを受信するのを待って（ステップＳ６２０４：Ｎｏ）、受信した場合（ステップＳ６２０４：Ｙｅｓ）、ノードＮは、設定部５３０５により、受信された複数の暗号鍵Ｋｉの各々を、パケットを暗号化するための鍵に設定して（ステップＳ６２０５）、本フローチャートによる一連の処理を終了する。
【０３０４】
これにより、ノードＮは、アドホックネットワークＡｉ内のノード間で送受信されるパケットを暗号化するためのゲートウェイＧｉ固有の暗号鍵Ｋｉの各々を、携帯端末ＭＴを利用して一時的に確立された通信路（ＮＷ２，ＮＷ３）を介して管理サーバ１０１から取得して設定することができる。なお、ノードＮがアドホックネットワークＡｉ内の既設定ノードである場合の通信処理については、図２５に示した通信処理と同一であるため省略する。
【０３０５】
（ゲートウェイＧｉの鍵通知処理手順）
図６３は、実施の形態３にかかるゲートウェイの鍵通知処理手順の一例を示すフローチャートである。図６３のフローチャートにおいて、まず、ＧＷ受信部５６０１により、アドホックネットワークＡｉからブロードキャストされた暗号化ＧＷ探索フレームＫｉ（ＴＦ）を受信したか否かを判断する（ステップＳ６３０１）。
【０３０６】
ここで、暗号化ＧＷ探索フレームＫｉ（ＴＦ）を受信するのを待って（ステップＳ６３０１：Ｎｏ）、受信した場合（ステップＳ６３０１：Ｙｅｓ）、ゲートウェイＧｉは、復号部５６０２により、暗号化ＧＷ探索フレームＫｉ（ＴＦ）をＧＷ探索フレームＴＦに復号する（ステップＳ６３０２）。そして、ゲートウェイＧｉは、作成部５６０３により、ゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求を表す鍵通知フレームＡＦｉを作成する（ステップＳ６３０３）。
【０３０７】
そして、ゲートウェイＧｉは、ＧＷ送信部５６０４により、ネットワークＮＷ１を介して、作成された鍵通知フレームＡＦｉを管理サーバ１０１に送信して（ステップＳ６３０４）、本フローチャートによる一連の処理を終了する。
【０３０８】
これにより、復号されたＧＷ探索フレームＴＦに応じて、ゲートウェイＧｉ固有の暗号鍵Ｋｉの通知要求を表す鍵通知フレームＡＦｉを管理サーバ１０１に送信することができる。
【０３０９】
（管理サーバ１０１の鍵提供処理手順）
つぎに、管理サーバ１０１の鍵提供処理手順について説明する。まず、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持していない場合の鍵提供処理手順について説明する。すなわち、以下に説明する鍵提供処理手順は、ゲートウェイＧｉから管理サーバ１０１に送信される鍵通知フレームＡＦｉにゲートウェイＧｉ固有の暗号鍵Ｋｉが含まれている場合の処理手順である。
【０３１０】
図６４は、実施の形態３にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャート（その１）である。図６４のフローチャートにおいて、まず、管理サーバ１０１は、ＳＶ受信部５９０１により、ネットワークＮＷ１を介して、ゲートウェイＧｉから鍵通知フレームＡＦｉを受信したか否かを判断する（ステップＳ６４０１）。
【０３１１】
ここで、鍵通知フレームＡＦｉを受信するのを待って（ステップＳ６４０１：Ｎｏ）、受信した場合（ステップＳ６４０１：Ｙｅｓ）、管理サーバ１０１は、判断部５９０３により、受信された鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉを特定する（ステップＳ６４０２）。そして、管理サーバ１０１は、判断部５９０３により、特定されたノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録されているか否かを判断する（ステップＳ６４０３）。
【０３１２】
ここで、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に未登録の場合（ステップＳ６４０３：Ｎｏ）、管理サーバ１０１は、ＳＶ送信部５９０２により、受信された鍵通知フレームＡＦｉに含まれるユーザＩＤを特定する（ステップＳ６４０４）。つぎに、管理サーバ１０１は、ＳＶ送信部５９０２により、ネットワークＮＷ２を介して、特定されたユーザＩＤの携帯端末ＭＴに受信された鍵通知フレームＡＦｉを送信する（ステップＳ６４０５）。
【０３１３】
そして、管理サーバ１０１は、判断部５９０３により、ステップＳ６４０２において特定されたノードＩＤと暗号鍵Ｋｉを関連付けて送信済リスト６０００に登録して（ステップＳ６４０６）、本フローチャートによる一連の処理を終了する。一方、ステップＳ６４０３において、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録されている場合（ステップＳ６４０３：Ｙｅｓ）、本フローチャートによる一連の処理を終了する。
【０３１４】
これにより、管理サーバ１０１は、携帯端末ＭＴを利用して一時的に確立された通信路（ＮＷ２，ＮＷ３）を介して、アドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを、暗号鍵Ｋｉごとに新規ノードＮｘに提供することができる。
【０３１５】
つぎに、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持している場合の鍵提供処理手順について説明する。すなわち、以下に説明する鍵提供処理手順は、ゲートウェイＧｉから管理サーバ１０１に送信される鍵通知フレームＡＦｉにゲートウェイＧｉ固有の暗号鍵Ｋｉが含まれていない場合の処理手順である。
【０３１６】
図６５は、実施の形態３にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャート（その２）である。図６５のフローチャートにおいて、まず、管理サーバ１０１は、ＳＶ受信部５９０１により、ネットワークＮＷ１を介して、ゲートウェイＧｉから鍵通知フレームＡＦｉを受信したか否かを判断する（ステップＳ６５０１）。
【０３１７】
ここで、鍵通知フレームＡＦｉを受信するのを待って（ステップＳ６５０１：Ｎｏ）、受信した場合（ステップＳ６５０１：Ｙｅｓ）、管理サーバ１０１は、抽出部５９０４により、受信された鍵通知フレームＡＦｉに含まれるゲートウェイＩＤを特定する（ステップＳ６５０２）。つぎに、管理サーバ１０１は、抽出部５９０４により、暗号鍵ＤＢ６１００の中から、特定されたゲートウェイＩＤと関連付けて記憶されている暗号鍵Ｋｉを抽出する（ステップＳ６５０３）。
【０３１８】
そして、管理サーバ１０１は、判断部５９０３により、受信された鍵通知フレームＡＦｉに含まれるノードＩＤを特定する（ステップＳ６５０４）。そして、管理サーバ１０１は、判断部５９０３により、特定されたノードＩＤと抽出された暗号鍵Ｋｉのペアが送信済リスト６０００に登録されているか否かを判断する（ステップＳ６５０５）。
【０３１９】
ここで、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に未登録の場合（ステップＳ６５０５：Ｎｏ）、管理サーバ１０１は、ＳＶ送信部５９０２により、受信された鍵通知フレームＡＦｉに含まれるユーザＩＤを特定する（ステップＳ６５０６）。つぎに、管理サーバ１０１は、ＳＶ送信部５９０２により、ネットワークＮＷ２を介して、特定されたユーザＩＤの携帯端末ＭＴに抽出された暗号鍵Ｋｉを送信する（ステップＳ６５０７）。
【０３２０】
そして、管理サーバ１０１は、判断部５９０３により、ステップＳ６５０４において特定されたノードＩＤとステップＳ６５０３において抽出された暗号鍵Ｋｉを関連付けて送信済リスト６０００に登録して（ステップＳ６５０８）、本フローチャートによる一連の処理を終了する。
【０３２１】
一方、ステップＳ６５０５において、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録されている場合（ステップＳ６５０５：Ｙｅｓ）、本フローチャートによる一連の処理を終了する。これにより、ゲートウェイＧｉから暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを受信する場合に比べて、ゲートウェイＧｉとの通信時におけるデータ量を削減することができる。
【０３２２】
以上説明したように、実施の形態３によれば、作業員ＯＰの携帯端末ＭＴを介して、新規ノードＮｘと管理サーバ１０１との一時的な通信路を確立することができる。また、携帯端末ＭＴとの接続を契機に、新規ノードＮｘがＧＷ探索フレームＴＦをアドホックネットワークＡｉにブロードキャストすることができる。さらに、ＧＷ探索フレームＴＦがゲートウェイＧｉに転送された結果、ゲートウェイＧｉから管理サーバ１０１に送信された暗号鍵Ｋｉを、携帯端末ＭＴを介して新規ノードＮｘが受信することができる。
【０３２３】
これにより、複数のアドホックネットワークＡｉの境界に位置する新規ノードＮｘの鍵設定時に、新規ノードＮｘに設定可能な複数の暗号鍵Ｋｉを容易に取得することができ、新規ノードＮｘが用いる暗号鍵Ｋｉの設定作業の効率化を図ることができる。具体的には、たとえば、新規ノードＮｘの初期導入時などにおいて、作業員ＯＰが地理的に絞り込まれた候補となるゲートウェイＧｉと新規ノードＮｘとの通信状況をしらみつぶしに確認するなどの作業が不要となり、新規ノードＮｘに対する暗号鍵Ｋｉの設定作業の効率化を図ることができる。また、確認作業のために候補となる各ゲートウェイの暗号鍵Ｋｉを携帯端末ＭＴなどに記録しておく必要がないため、持ち運びの際の情報漏洩のリスクを低減させることができる。
【０３２４】
また、携帯端末ＭＴからのＧＷ探索フレームＴＦの送信指示データ５４００を契機に、ＧＷ探索フレームＴＦを新規ノードＮｘからアドホックネットワークＡｉにブロードキャストすることができる。これにより、携帯端末ＭＴを利用して、新規ノードＮｘに対して鍵設定とは異なる設定作業などを行う際に、携帯端末ＭＴとの接続が検知された時点で、新規ノードＮｘからＧＷ探索フレームＴＦがブロードキャストされることを防ぐことができる。
【０３２５】
また、携帯端末ＭＴの識別子を含むＧＷ探索フレームＴＦを新規ノードＮｘからアドホックネットワークＡｉにブロードキャストすることができる。これにより、管理サーバ１０１において、複数の携帯端末ＭＴが通信可能に接続されている場合であっても、鍵通知フレームＡＦｉの送信先となる携帯端末ＭＴを適切に識別することができる。
【０３２６】
また、新規ノードＮｘの識別子を含むＧＷ探索フレームＴＦを新規ノードＮｘからアドホックネットワークＡｉにブロードキャストすることができる。これにより、管理サーバ１０１において、鍵通知フレームＡＦｉを送信済みのノードＮを管理することができ、鍵通知フレームＡＦｉの重複送信を防ぐことができる。
【０３２７】
また、実施の形態３によれば、アドホックネットワークごとにそれぞれ固有の暗号鍵が設定されているため、アドホックネットワーク内のノード群は同一の暗号鍵を保持している。その一方で、複数のアドホックネットワークと通信可能なノード（新規ノードＮｘ）については、各々のアドホックネットワークの暗号鍵が設定される。このため、いずれかのアドホックネットワークと通信障害が生じて通信できなくても、残余のアドホックネットワーク経由で管理サーバ１０１にデータを送信することができる。
【０３２８】
したがって、複数の暗号鍵が設定されたノードは、セキュリティを維持したまま、通信可能なゲートウェイを自律的に選択でき、ロバスト性の低減を防止することができる。また、暗号鍵が複数設定されているため、暗号鍵が１つ漏洩しても、漏洩していない暗号鍵で通信可能なアドホックネットワーク内のデータは漏洩しない。このため、ゲートウェイごとに１個の暗号鍵しか設定できないアドホックネットワークに比べて、鍵漏洩リスクの低減化を図ることができる。
【０３２９】
また、複数のアドホックネットワークの通信圏内のノード（新規ノードＮｘ）のみ各アドホックネットワークの暗号鍵がすべて設定されるが、他のノードは所属するゲートウェイ固有の暗号鍵が１個だけ設定されるだけである。したがって、アドホックネットワーク内でのノードの処理（暗号化、復号）が１個の暗号鍵で済み、送信するパケットも１個の暗号鍵で暗号化された暗号化パケットだけであるため、通信量の増加を抑制することができる。
【０３３０】
＜実施の形態４：アップストリーム型で複数鍵の主副決定＞
つぎに、実施の形態４について説明する。実施の形態３では、新規ノードＮｘに複数の暗号鍵を設定した例について説明したが、実施の形態４では、図５の第５の例で示したように、新規ノードＮｘに設定する複数の暗号鍵Ｋｉを、主鍵と副鍵に分けて設定する。具体的には、通常は主鍵で暗号化および復号をおこない、主鍵で復号できなかった場合に、副鍵を使用することとなる。その後、新規設定済みとなったノードＮｘの配下に新規ノードを設定する。ノードＮｘの配下に新規ノードがある場合は、ノードＮｘを「境界ノード」と称す。
【０３３１】
なお、実施の形態３と同一構成には同一符号を付し、その説明を省略する。また、暗号鍵の主副決定以外は、実施の形態３と共通するため、説明を省略する。
【０３３２】
図６６〜図７０は、実施の形態４にかかるアップストリーム型による複数のアドホックネットワークの境界（通信圏内）でのノードの配下の新規ノードの導入例を示す説明図である。
【０３３３】
図６６に示した状態（Ｇ）では、境界ノードＮｘにおいて、暗号鍵Ｋ１，Ｋ２が設定されており、このうち暗号鍵Ｋ１を主鍵、暗号鍵Ｋ２を副鍵とする。暗号鍵Ｋ１，Ｋ２の主副決定は、管理サーバ１０１が実行する。この点については後述する。
【０３３４】
図６７は、状態（Ｇ）の次状態（Ｈ）を示している。（Ｈ）では、管理サーバ１０１とセキュアなネットワークＮＷ２を介して接続可能な携帯端末ＭＴが、ネットワークＮＷ３を介して新規ノードＮｙと接続された状態を示している。
【０３３５】
図６８は、状態（Ｈ）の次状態（Ｉ）を示している。（Ｉ）では、（Ｈ）の状態から、新規ノードＮｙが、アドホックネットワークＡ１，Ａ２に対しＧＷ探索フレームＴＦをブロードキャストしている。ＧＷ探索フレームＴＦを受信したゲートウェイＧｉは、管理サーバ１０１にゲートウェイＧｉ固有の暗号鍵Ｋｉをアップロードする。
【０３３６】
新規ノードＮｙの通信圏内にある境界ノードＮｘは、新規ノードＮｙからＧＷ探索フレームＴＦを受信した場合、ＧＷ探索フレームＴＦを破棄せず、主鍵である暗号鍵Ｋ１でＧＷ探索フレームＴＦを暗号化する。そして、境界ノードＮｘは、暗号化ＧＷ探索フレームＫ１（ＴＦ）をアドホックネットワークＡ１内にブロードキャストする。これにより、暗号化ＧＷ探索フレームＫ１（ＴＦ）がノードＮ１−１〜Ｎ１−４およびゲートウェイＧ１に行き渡ることとなる。
【０３３７】
同様に、境界ノードＮｘは、副鍵である暗号鍵Ｋ２ではＧＷ探索フレームＴＦを暗号化しないため、アドホックネットワークＡ２には送信しない。アドホックネットワークＡ２のノードＮ２−２が、主鍵である暗号鍵Ｋ１で暗号化した暗号化ＧＷ探索フレームＫ１（ＴＦ）を傍受したとしても、ノードＮ２−２では復号できないため、破棄される。
【０３３８】
ゲートウェイＧ１は、暗号化ＧＷ探索フレームＫ１（ＴＦ）を受信すると、暗号鍵Ｋ１で復号し、ＧＷ探索フレームＴＦでの指示内容にしたがって、管理サーバ１０１に暗号鍵Ｋ１をアップロードする。これにより、管理サーバ１０１では、携帯端末ＭＴの識別子（たとえば、後述する『Ｄ１』）とゲートウェイＧ１の暗号鍵Ｋ１とを関連付けたテーブルＴが作成される。
【０３３９】
図６９は、状態（Ｉ）の次状態（Ｊ）を示している。（Ｊ）では、管理サーバ１０１が（Ｉ）により受け取った暗号鍵Ｋ１を、テーブルＴにより暗号鍵Ｋ１に関連付けてされている携帯端末ＭＴに、ネットワークＮＷ２を介して送信する。携帯端末ＭＴは、管理サーバ１０１から受信した暗号鍵Ｋ１を、ネットワークＮＷ３経由で、新規ノードＮｙに送信する。
【０３４０】
図７０は、状態（Ｊ）の次状態（Ｋ）を示している。（Ｋ）では、新規ノードＮｙは、管理サーバ１０１から送信されてきた暗号鍵Ｋ１を受信して、暗号化および復号するための鍵に設定する。したがって、このあと、新規ノードＮｙは、境界ノードＮｘからの暗号化パケットＳＰ１を暗号鍵Ｋ１で復号することができる。また、新規ノードＮｙからは、暗号鍵Ｋ１で暗号化された暗号化パケットＳＰ１が境界ノードＮｘに送信される。
【０３４１】
このように、境界ノードＮｘの配下の新規ノードＮｙで設定される暗号鍵は、境界ノードＮｘの主鍵のみとなるため、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡ１，Ａ２内の通信量の増加を抑制することができる。
【０３４２】
また、管理サーバ１０１およびノード等のハードウェア構成例は、実施の形態１〜３と同一であるため、説明を省略する。また、境界ノードＮｘの機能的構成については、図５３と同一構成であるため、省略する。また、新規ノードＮｙの機能的構成については、境界ノードＮｘではない通常のノードＮと同一構成であるため、省略する。
【０３４３】
（管理サーバ１０１の機能的構成例）
図７１は、実施の形態４にかかる管理サーバ１０１の機能的構成を示すブロック図である。図７１の管理サーバ１０１は、図５９に示した管理サーバ１０１に決定部７１０１と設定部７１０２とを追加した構成である。決定部７１０１および設定部７１０２は、具体的には、たとえば、図１６に示したＲＯＭ１６０２、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶されたプログラムをＣＰＵ１６０１に実行させることにより、または、Ｉ／Ｆ１６０８により、その機能を実現する。また、決定部７１０１および設定部７１０２の処理結果は、たとえば、ＲＡＭ１６０３、磁気ディスク１６０５、光ディスク１６０７などの記憶装置に記憶される。
【０３４４】
決定部７１０１は、各ゲートウェイＧｉからの鍵通知フレームＡＦｉの着順に基づいて、各暗号鍵Ｋｉの中から主鍵と副鍵を決定する。具体的には、決定部７１０１は、先着（１着）の鍵通知フレームＡＦｉ内の暗号鍵Ｋｉを主鍵に決定し、後着（２着以降）の鍵通知フレームＡＦｉ内の暗号鍵Ｋｉを副鍵に決定する。たとえば、ゲートウェイＧ１からの鍵通知フレームＡＦ１が、ゲートウェイＧ２からの鍵通知フレームＡＦ２よりも先に受信された場合、暗号鍵Ｋ１を主鍵に決定し、暗号鍵Ｋ２を副鍵に決定する。
【０３４５】
すなわち、鍵通知フレームＡＦｉの着順が早いということは、それだけ暗号化ＧＷ探索フレームＫｉ（ＴＦ）の転送経路が短く、効率的に通信できると考えられる。したがって、先着の鍵通知フレームＡＦｉの暗号鍵Ｋｉを主鍵とすることで、通信の効率性の向上を図ることができる。
【０３４６】
また、決定部７１０１は、受信された暗号鍵Ｋｉごとの暗号鍵Ｋｉに関する受信回数に基づいて、各暗号鍵Ｋｉの中から主鍵と副鍵を決定することとしてもよい。具体的には、決定部７１０１は、鍵通知フレームＡＦｉのゲートウェイＧｉごとの受信回数が最大となる暗号鍵Ｋｉを、主鍵に決定し、２番目以降の受信回数の暗号鍵Ｋｉを副鍵に決定する。
【０３４７】
たとえば、ゲートウェイＧ１からの鍵通知フレームＡＦ１の受信回数が２回、ゲートウェイＧ２からの鍵通知フレームＡＦ２の受信回数が８回である場合、暗号鍵Ｋ２を主鍵に決定し、暗号鍵Ｋ１を副鍵に決定する。
【０３４８】
すなわち、鍵通知フレームＡＦｉの受信回数が多いということは、それだけアドホックネットワークＡｉ内での暗号化ＧＷ探索フレームＫｉ（ＴＦ）の転送経路が受信回数分存在すると考えられる。したがって、ある経路で通信障害が発生しても代替経路でパケット転送できる頻度が高くなるため、アドホックネットワークＡｉの特徴である自律性やロバスト性を担保することができ、安全に通信を行うことができる。なお、いずれの決定方法においても、副鍵については少なくとも１つ決定されていればよい。
【０３４９】
また、設定部７１０２は、決定部７１０１によって主副決定された場合、鍵通知フレームＡＦｉに主／副を示す情報を追加する。以下、追加例について説明する。
【０３５０】
図７２は、実施の形態４にかかる設定部７１０２での鍵通知フレームの設定例１を示す説明図である。図７２において、ゲートウェイＧ１固有の暗号鍵Ｋ１を含む鍵通知フレームＡＦ１を示している。暗号鍵Ｋ１は主鍵に決定されているため、鍵通知フレームＡＦ１には、主副情報として「主」が追加される。
【０３５１】
図７３は、実施の形態４にかかる設定部７１０２での鍵通知フレームの設定例２を示す説明図である。図７３において、ゲートウェイＧ２固有の暗号鍵Ｋ２を含む鍵通知フレームＡＦ２を示している。暗号鍵Ｋ２は副鍵に決定されているため、鍵通知フレームＡＦ２には、主副情報として「副」が追加される。図７２および図７３の鍵通知フレームＡＦ１，ＡＦ２は、境界ノードＮｘを新規設定する場合に、携帯端末ＭＴを介して境界ノードＮｘに送信される。
【０３５２】
（管理サーバ１０１の鍵提供処理手順）
つぎに、管理サーバ１０１の鍵提供処理手順について説明する。まず、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持していない場合の鍵提供処理手順について説明する。すなわち、以下に説明する鍵提供処理手順は、ゲートウェイＧｉから管理サーバ１０１に送信される鍵通知フレームＡＦｉにゲートウェイＧｉ固有の暗号鍵Ｋｉが含まれている場合の処理手順である。
【０３５３】
図７４は、実施の形態４にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャート（その１）である。図７４のフローチャートにおいて、まず、管理サーバ１０１は、ＳＶ受信部５９０１により、ネットワークＮＷ１を介して、ゲートウェイＧｉから鍵通知フレームＡＦｉを受信したか否かを判断する（ステップＳ７４０１）。
【０３５４】
ここで、鍵通知フレームＡＦｉを受信した場合（ステップＳ７４０１：Ｙｅｓ）、管理サーバ１０１は、判断部５９０３により、受信された鍵通知フレームＡＦｉに含まれるノードＩＤと暗号鍵Ｋｉを特定する（ステップＳ７４０２）。そして、判断部５９０３により、特定されたノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録されているか否かを判断する（ステップＳ７４０３）。
【０３５５】
ここで、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に未登録の場合（ステップＳ７４０３：Ｎｏ）、管理サーバ１０１は、判断部５９０３により、ステップＳ７４０２において特定されたノードＩＤと暗号鍵Ｋｉを関連付けて送信済リスト６０００に登録して（ステップＳ７４０４）、ステップＳ７４０１に戻る。一方、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録済みの場合（ステップＳ７４０３：Ｙｅｓ）、ステップＳ７４０１に戻る。
【０３５６】
また、ステップＳ７４０１において、鍵通知フレームＡＦｉが受信されていない場合（ステップＳ７４０１：Ｎｏ）、管理サーバ１０１は、タイムアウトか否かを判断する（ステップＳ７４０５）。タイムアウトでない場合（ステップＳ７４０５：Ｎｏ）、ステップＳ７４０１に戻る。一方、タイムアウトの場合（ステップＳ７４０５：Ｙｅｓ）、管理サーバ１０１は、決定部７１０１により主副決定を行う（ステップＳ７４０６）。
【０３５７】
このあと、管理サーバ１０１は、設定部７１０２により、鍵通知フレームＡＦｉに主副情報を追加し（ステップＳ７４０７）、ＳＶ送信部５９０２により、受信された鍵通知フレームＡＦｉに含まれるユーザＩＤを特定する（ステップＳ７４０８）。そして、管理サーバ１０１は、鍵通知フレームＡＦｉを、新規ノードＮｘに送信し（ステップＳ７４０９）、本フローチャートによる一連の処理を終了する。
【０３５８】
これにより、携帯端末ＭＴを利用して一時的に確立された通信路（ＮＷ２，ＮＷ３）を介して、アドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵Ｋｉを、暗号鍵Ｋｉごとに境界ノードＮｘに提供することができる。
【０３５９】
つぎに、管理サーバ１０１が各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを保持している場合の鍵提供処理手順について説明する。すなわち、以下に説明する鍵提供処理手順は、ゲートウェイＧｉから管理サーバ１０１に送信される鍵通知フレームにゲートウェイＧｉ固有の暗号鍵Ｋｉが含まれていない場合の処理手順である。
【０３６０】
図７５は、実施の形態４にかかる管理サーバ１０１の鍵提供処理手順の一例を示すフローチャート（その２）である。図７５のフローチャートにおいて、まず、管理サーバ１０１は、ＳＶ受信部５９０１により、ネットワークＮＷ１を介して、ゲートウェイＧｉから鍵通知フレームＡＦｉを受信したか否かを判断する（ステップＳ７５０１）。
【０３６１】
ここで、受信した場合（ステップＳ７５０１：Ｙｅｓ）、管理サーバ１０１は、抽出部５９０４により、受信された鍵通知フレームＡＦｉに含まれるゲートウェイＩＤを特定する（ステップＳ７５０２）。つぎに、管理サーバ１０１は、抽出部５９０４により、暗号鍵ＤＢ６１００の中から、特定されたゲートウェイＩＤと関連付けて記憶されている暗号鍵Ｋｉを抽出する（ステップＳ７５０３）。
【０３６２】
そして、管理サーバ１０１は、判断部５９０３により、受信された鍵通知フレームＡＦｉに含まれるノードＩＤを特定する（ステップＳ７５０４）。そして、管理サーバ１０１は、判断部５９０３により、特定されたノードＩＤと抽出された暗号鍵のペアが送信済リスト６０００に登録されているか否かを判断する（ステップＳ７５０５）。
【０３６３】
ここで、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に未登録の場合（ステップＳ７５０５：Ｎｏ）、管理サーバ１０１は、判断部５９０３により、ステップＳ７５０４において特定されたノードＩＤと暗号鍵Ｋｉを関連付けて送信済リスト６０００に登録して（ステップＳ７５０６）、ステップＳ７５０１に戻る。一方、ノードＩＤと暗号鍵Ｋｉのペアが送信済リスト６０００に登録済みの場合（ステップＳ７５０５：Ｙｅｓ）、ステップＳ７５０１に戻る。
【０３６４】
また、ステップＳ７５０１において、鍵通知フレームＡＦｉが受信されていない場合（ステップＳ７５０１：Ｎｏ）、管理サーバ１０１は、タイムアウトか否かを判断する（ステップＳ７５０７）。タイムアウトでない場合（ステップＳ７５０７：Ｎｏ）、ステップＳ７５０１に戻る。一方、タイムアウトの場合（ステップＳ７５０７：Ｙｅｓ）、管理サーバ１０１は、決定部７１０１により主副決定を行う（ステップＳ７５０８）。
【０３６５】
このあと、管理サーバ１０１は、設定部７１０２により、鍵通知フレームＡＦｉに主副情報を追加し（ステップＳ７５０９）、ＳＶ送信部５９０２により、受信された鍵通知フレームＡＦｉに含まれるユーザＩＤを特定する（ステップＳ７５１０）。そして、管理サーバ１０１は、主鍵および副鍵ごとに、鍵通知フレームＡＦｉを、新規ノードＮｘに送信し（ステップＳ７５１１）、本フローチャートによる一連の処理を終了する。
【０３６６】
これにより、ゲートウェイＧｉから暗号鍵Ｋｉを含む鍵通知フレームＡＦｉを受信する場合に比べて、ゲートウェイＧｉとの通信時におけるデータ量を削減することができる。
【０３６７】
（ノードＮｘの通信処理）
つぎに、複数のアドホックネットワークＡｉの境界に位置する境界ノードＮｘの通信処理について説明する。
【０３６８】
図７６は、実施の形態４にかかる境界ノードＮｘの通信処理手順を示すフローチャートである。まず、境界ノードＮｘは、パケットの受信を待ち受け（ステップＳ７６０１：Ｎｏ）、パケットを受信した場合（ステップＳ７６０１：Ｙｅｓ）、境界ノードＮｘは、主鍵で復号できたか否かを判断する（ステップＳ７６０２）。
【０３６９】
復号できた場合（ステップＳ７６０２：Ｙｅｓ）、境界ノードＮｘは、受信したパケットの宛先アドレスが自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ７６０３）。自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ７６０３：Ｙｅｓ）、境界ノードＮｘは、復号されたデータに基づいたデータ処理を実行し（ステップＳ７６０４）、受信したパケットを転送先に転送する（ステップＳ７６０５）。これにより、通信処理を終了する。
【０３７０】
一方、ステップＳ７６０３において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ７６０３：Ｎｏ）、境界ノードＮｘは、受信したパケットを転送先に転送する（ステップＳ７６０５）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルで規定されたノードとなる。
【０３７１】
また、ステップＳ７６０２において主鍵で復号できなかった場合（ステップＳ７６０２：Ｎｏ）、境界ノードＮｘは、いずれかの副鍵で復号できたか否かを判断する（ステップＳ７６０６）。
【０３７２】
復号できた場合（ステップＳ７６０６：Ｙｅｓ）、境界ノードＮｘは、受信したパケットの宛先アドレスが自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）であるか否かを判断する（ステップＳ７６０７）。自ノード（境界ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）である場合（ステップＳ７６０７：Ｙｅｓ）、境界ノードＮｘは、復号されたデータに基づいたデータ処理を実行する（ステップＳ７６０８）。そして、境界ノードＮｘは、復号データを主鍵で暗号化し（ステップＳ７６０９）、主鍵で暗号化されたパケットを転送先に転送する（ステップＳ７６１０）。これにより、通信処理を終了する。
【０３７３】
一方、ステップＳ７６０７において、自ノード（新規ノードＮｘ）のアドレス（またはブロードキャスト用のアドレス）でない場合（ステップＳ７６０７：Ｎｏ）、境界ノードＮｘは、復号データを主鍵で暗号化し（ステップＳ７６０９）、主鍵で暗号化されたパケットを転送先に転送する（ステップＳ７６１０）。これにより、通信処理を終了する。
【０３７４】
また、ステップＳ７６０６において、いずれの副鍵でも復号できなかった場合（ステップＳ７６０６：Ｎｏ）、境界ノードＮｘは、受信したパケットがＧＷ探索フレームＴＦであるか否かを判断する（ステップＳ７６１１）。ＧＷ探索フレームＴＦであるか否かは、フレーム種別をチェックすることで特定できる。
【０３７５】
ＧＷ探索フレームＴＦでない場合（ステップＳ７６１１：Ｎｏ）、受信したパケットは傍受したこととなるため、境界ノードＮｘは、受信したパケットを破棄して（ステップＳ７６１２）、通信処理を終了する。
【０３７６】
一方、ステップＳ７６１１において、ＧＷ探索フレームＴＦである場合（ステップＳ７６１１：Ｙｅｓ）、境界ノードＮｘは、ＧＷ探索フレームＴＦを主鍵で暗号化する（ステップＳ７６１３）。そして、新規ノードＮｘは、暗号化ＧＷ探索フレームを転送先に転送する（ステップＳ７６１４）。なお、転送先は、ゲートウェイＧｉからのブロードキャストパケットで得られたルーティングテーブルで規定されたノードとなる。また、新規ノードＮｙの通信処理は、図３０に示した通信処理と同一内容となるため、省略する。
【０３７７】
以上のことから、実施の形態４にかかる鍵設定方法、ノード、およびネットワークシステムによれば、実施の形態３と同様、アドホックネットワーク内のノードに対する暗号鍵の設定作業にかかる作業員の作業負担の軽減化および作業時間の短縮化を図ることができる。
【０３７８】
また、境界ノードＮｘに設定された複数の暗号鍵を主鍵と副鍵に分類して使用することで、ノードＮｘの配下に設定される新規ノードＮｙについては、主鍵（たとえば、暗号鍵Ｋ１）を割り当てるだけでよく、副鍵（たとえば、暗号鍵Ｋ２）を割り当てる必要はない。これにより、新規ノードＮｘの配下のノードＮｙ以降の鍵数を１個にすることができ、セキュリティおよびロバスト性を維持したまま、それぞれのアドホックネットワークＡｉ内の通信量の増加を抑制することができる。
【０３７９】
以上のことから、本実施の形態１〜４にかかる鍵設定方法、ノード、およびネットワークシステムによれば、アドホックネットワーク内のノードに対する暗号鍵の設定作業にかかる作業員の作業負担の軽減化および作業時間の短縮化を図ることができる。また、ダウンストリーム型またはアップストリーム型のいずれであっても、新規ノードの導入後において、アドホックネットワークの自律性やロバスト性を維持しつつ、鍵漏洩時のリスクの低減と通信の効率化を図ることができる。
【０３８０】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０３８１】
（付記１）複数のアドホックネットワークの通信圏内にあるノードが、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信工程と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信工程によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信工程と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【０３８２】
（付記２）前記鍵受信工程は、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定工程は、
前記鍵受信工程によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信工程によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする付記１に記載の鍵設定方法。
【０３８３】
（付記３）前記鍵受信工程は、
前記サーバでの前記複数の暗号化パケットの着順に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする付記２に記載の鍵設定方法。
【０３８４】
（付記４）前記鍵受信工程は、
前記サーバで得られた前記複数の暗号化パケットの各々の転送回数に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする付記２に記載の鍵設定方法。
【０３８５】
（付記５）前記複数の暗号化パケットの各々の着順を記録する記録工程と、
前記記録工程によって記録された前記各暗号化パケットの着順に基づいて、前記各暗号化パケットの優先度を決定する決定工程と、を実行し、
前記パケット送信工程は、
さらに、前記決定工程によって決定された優先度を前記サーバに送信し、
前記鍵受信工程は、
前記サーバによって前記複数の鍵のうち前記優先度に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする付記２に記載の鍵設定方法。
【０３８６】
（付記６）前記複数の暗号化パケットの各々の転送回数を記録する記録工程と、
前記記録工程によって記録された前記各暗号化パケットの転送回数に基づいて、前記各暗号化パケットの優先度を決定する決定工程と、を実行し、
前記パケット送信工程は、
さらに、前記決定工程によって決定された優先度を前記サーバに送信し、
前記鍵受信工程は、
前記サーバによって前記複数の鍵のうち前記優先度に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする付記２に記載の鍵設定方法。
【０３８７】
（付記７）複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記特定のゲートウェイから同時通報された、前記主鍵を用いて暗号化された特定の暗号化パケットを、前記第１のノードから受信するパケット受信工程と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信工程によって受信された前記特定の暗号化パケットを前記サーバに送信するパケット送信工程と、
前記パケット送信工程によって送信された前記特定の暗号化パケットを復号する前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記主鍵を、前記第２のノードでの暗号化対象データを暗号化し、かつ、前記第２のノードでの復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【０３８８】
（付記８）複数のアドホックネットワークの通信圏内にあるノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信工程と、
前記送信工程によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【０３８９】
（付記９）前記検知工程によって接続が検知された前記携帯端末から、前記取得要求の送信指示を受け付ける受付工程をさらに実行し、
前記送信工程は、
前記受付工程によって前記送信指示が受け付けられた場合、前記取得要求を前記複数のアドホックネットワークに同時通報することを特徴とする付記８に記載の鍵設定方法。
【０３９０】
（付記１０）前記送信工程は、
前記送信指示に含まれる前記サーバが通信先を識別するための前記携帯端末の識別子を含む前記取得要求を、前記複数のアドホックネットワークに同時通報することを特徴とする付記９に記載の鍵設定方法。
【０３９１】
（付記１１）前記送信工程は、
前記ゲートウェイ固有の鍵を送信済みのノードを前記サーバが識別するための前記ノードの識別子を含む前記取得要求を、前記いずれかのアドホックネットワークに同時通報することを特徴とする付記９または１０に記載の鍵設定方法。
【０３９２】
（付記１２）前記鍵受信工程は、
前記サーバに送信された前記各ゲートウェイ固有の鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定工程は、
前記鍵受信工程によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信工程によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする付記８〜１０のいずれか一つに記載の鍵設定方法。
【０３９３】
（付記１３）複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信工程と、
前記送信工程によって同時通報された前記取得要求が前記第１のノードにおいて前記主鍵で暗号化されて、前記各ゲートウェイのうち前記特定のゲートウェイにのみ転送された結果、当該特定のゲートウェイから前記サーバに送信された前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記主鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定工程と、
を実行することを特徴とする鍵設定方法。
【０３９４】
（付記１４）複数のアドホックネットワークの通信圏内にあるノードであって、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信手段と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【０３９５】
（付記１５）前記鍵受信手段は、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定手段は、
前記鍵受信手段によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信手段によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする付記１４に記載のノード。
【０３９６】
（付記１６）前記鍵受信手段は、
前記サーバでの前記複数の暗号化パケットの着順に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする付記１５に記載のノード。
【０３９７】
（付記１７）前記鍵受信手段は、
前記サーバで得られた前記複数の暗号化パケットの各々の転送回数に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする付記１５に記載のノード。
【０３９８】
（付記１８）前記複数の暗号化パケットの各々の着順を記録する記録手段と、
前記記録手段によって記録された前記各暗号化パケットの着順に基づいて、前記各暗号化パケットの優先度を決定する決定手段と、を備え、
前記パケット送信手段は、
さらに、前記決定手段によって決定された優先度を前記サーバに送信し、
前記鍵受信手段は、
前記サーバによって前記複数の鍵のうち前記優先度に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする付記１５に記載のノード。
【０３９９】
（付記１９）前記複数の暗号化パケットの各々の転送回数を記録する記録手段と、
前記記録手段によって記録された前記各暗号化パケットの転送回数に基づいて、前記各暗号化パケットの優先度を決定する決定手段と、を備え、
前記パケット送信手段は、
さらに、前記決定手段によって決定された優先度を前記サーバに送信し、
前記鍵受信手段は、
前記サーバによって前記複数の鍵のうち前記優先度に応じて決定された前記主鍵と前記副鍵とを受信することを特徴とする付記１５に記載のノード。
【０４００】
（付記２０）複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードであって、
前記特定のゲートウェイから同時通報された、前記主鍵を用いて暗号化された特定の暗号化パケットを、前記第１のノードから受信するパケット受信手段と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された前記特定の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記パケット送信手段によって送信された前記特定の暗号化パケットを復号する前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記主鍵を、前記第２のノードでの暗号化対象データを暗号化し、かつ、前記第２のノードでの復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【０４０１】
（付記２１）複数のアドホックネットワークの通信圏内にあるノードであって、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、
を備えることを特徴とするノード。
【０４０２】
（付記２２）前記検知手段によって接続が検知された前記携帯端末から、前記取得要求の送信指示を受け付ける受付手段をさらに備え、
前記送信手段は、
前記受付手段によって前記送信指示が受け付けられた場合、前記取得要求を前記複数のアドホックネットワークに同時通報することを特徴とする付記２１に記載のノード。
【０４０３】
（付記２３）前記送信手段は、
前記送信指示に含まれる前記サーバが通信先を識別するための前記携帯端末の識別子を含む前記取得要求を、前記複数のアドホックネットワークに同時通報することを特徴とする付記２２に記載のノード。
【０４０４】
（付記２４）前記送信手段は、
前記ゲートウェイ固有の鍵を送信済みのノードを前記サーバが識別するための前記ノードの識別子を含む前記取得要求を、前記いずれかのアドホックネットワークに同時通報することを特徴とする付記２２または２３に記載のノード。
【０４０５】
（付記２５）前記鍵受信手段は、
前記サーバに送信された前記各ゲートウェイ固有の鍵の中から前記サーバによって決定された主鍵と副鍵とを、前記携帯端末を介して前記サーバから受信し、
前記設定手段は、
前記鍵受信手段によって受信された前記主鍵を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定するとともに、前記復号対象データが前記主鍵で復号できなかった場合、前記鍵受信手段によって受信された前記副鍵を、前記暗号化対象データを暗号化し、かつ、前記復号対象データを復号する鍵に設定することを特徴とする付記２１〜２３のいずれか一つに記載のノード。
【０４０６】
（付記２６）複数のアドホックネットワークの通信圏内にあり、前記複数のアドホックネットワークのうち特定のアドホックネットワーク内の特定のゲートウェイ固有の鍵を主鍵とし、前記特定のアドホックネットワーク以外の残余のアドホックネットワーク内の各ゲートウェイ固有の鍵を副鍵として設定された第１のノードのみの通信圏内にある第２のノードが、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記第１のノードにおいて前記主鍵で暗号化されて、前記各ゲートウェイのうち前記特定のゲートウェイにのみ転送された結果、当該特定のゲートウェイから前記サーバに送信された前記主鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記主鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、
を実行することを特徴とするノード。
【０４０７】
（付記２７）複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶する記憶手段と、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信したノードから、当該ノードに接続された携帯端末を介して、前記複数の暗号化パケットを受信する受信手段と、
前記受信手段によって受信された前記複数の暗号化パケットを同時通報したゲートウェイに関連付けられている鍵を、前記記憶手段から暗号化パケットごとに抽出する抽出手段と、
前記抽出手段によって抽出された複数の鍵を、前記携帯端末を介して前記ノードに送信する送信手段と、
を備えることを特徴とするサーバ。
【０４０８】
（付記２８）前記サーバでの前記複数の暗号化パケットの各々の着順に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする付記２７に記載のサーバ。
【０４０９】
（付記２９）前記複数の暗号化パケットについてのそれぞれのアドホックネットワーク内での転送回数に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする付記２７に記載のサーバ。
【０４１０】
（付記３０）前記複数の暗号化パケットの各々について前記ノードによって決定された優先度に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを、前記携帯端末を介して前記ノードに送信することを特徴とする付記２７に記載のサーバ。
【０４１１】
（付記３１）前記決定手段は、
前記複数の暗号化パケットの各々について前記ノードでの着順によって決定された優先度に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定することを特徴とする付記３０に記載のサーバ。
【０４１２】
（付記３２）前記決定手段は、
前記複数の暗号化パケットの各々について前記各々のアドホックネットワークでの転送回数によって決定された優先度に基づいて、前記抽出手段によって抽出された複数の鍵の中から、主鍵と副鍵を決定することを特徴とする付記３０に記載のサーバ。
【０４１３】
（付記３３）複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバであって、
前記各ゲートウェイから前記各ゲートウェイ固有の鍵を受信する受信手段と、
暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を前記複数のアドホックネットワークに同時通報したノードに接続された携帯端末を介して、前記受信手段によって受信された各鍵を前記ノードに送信する送信手段と、
を備えることを特徴とするサーバ。
【０４１４】
（付記３４）前記受信手段によって受信された各鍵の着順に基づいて、前記各鍵の中から主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを前記携帯端末を介して前記ノードに送信することを特徴とする付記３３に記載のサーバ。
【０４１５】
（付記３５）前記受信手段によって受信された鍵ごとの前記鍵に関する受信回数に基づいて、前記各鍵の中から主鍵と副鍵を決定する決定手段を備え、
前記送信手段は、
前記決定手段によって決定された前記主鍵と前記副鍵とを前記携帯端末を介して前記ノードに送信することを特徴とする付記３３に記載のサーバ。
【０４１６】
（付記３６）複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークと通信可能であり、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶する記憶手段を有するサーバと、を備えるネットワークシステムであって、
前記ノードは、
前記複数のアドホックネットワーク内の各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いてそれぞれ暗号化された複数の暗号化パケットを受信するパケット受信手段と、
前記サーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された複数の暗号化パケットを前記サーバに送信するパケット送信手段と、
前記複数の暗号化パケットの各暗号化パケットをそれぞれ復号するための前記各アドホックネットワーク内のゲートウェイ固有の各鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された複数の鍵の各々を、前記ノードでの暗号化対象データを暗号化し、かつ、前記ノードでの復号対象データを復号する鍵に設定する設定手段と、を備え、
前記サーバは、
前記ノードが前記パケット送信手段によって送信した前記複数の暗号化パケットを、前記ノードに接続された携帯端末を介して受信する受信手段と、
前記受信手段によって受信された前記複数の暗号化パケットを同時通報したゲートウェイに関連付けられている鍵を、前記記憶手段から暗号化パケットごとに抽出する抽出手段と、
前記抽出手段によって抽出された複数の鍵を、前記携帯端末を介して前記ノードに送信する送信手段と、
を備えることを特徴とするネットワークシステム。
【０４１７】
（付記３７）複数のアドホックネットワークの通信圏内にあるノードと、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイと接続されたサーバと、を備えるネットワークシステムであって、
前記ノードは、
前記サーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵の取得要求を、前記複数のアドホックネットワークに同時通報する送信手段と、
前記送信手段によって同時通報された前記取得要求が前記複数のアドホックネットワーク内で、前記各ゲートウェイ固有の鍵で暗号化されて、前記各ゲートウェイに転送された結果、当該各ゲートウェイからそれぞれ前記サーバに送信されたゲートウェイ固有の鍵を、前記携帯端末を介して前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記各ゲートウェイ固有の鍵を、前記暗号化対象データを暗号化し、かつ、復号対象データを復号する鍵に設定する設定手段と、を備え、
前記サーバは、
前記各ゲートウェイから前記各ゲートウェイ固有の鍵を受信する受信手段と、
前記ノードに接続された携帯端末を介して、前記受信手段によって受信された各鍵を前記ノードに送信する送信手段と、
を備えることを特徴とするネットワークシステム。
【符号の説明】
【０４１８】
１００  ネットワークシステム
１０１  管理サーバ
１１０，６１００  暗号鍵ＤＢ
Ａｉ  アドホックネットワーク
ＡＦｉ  鍵通知フレーム
Ｇｉ  ゲートウェイ
Ｋｉ  暗号鍵
ＭＴ  携帯端末
Ｎ  ノード
ＳＰｉ  暗号化パケット
Ｔ  テーブル
ＴＦ  ＧＷ探索フレーム
【国際調査報告】
2012090331.tif 000079
2012090331.tif 000080
2012090331.tif 000081
2012090331.tif 000082
2012090331.tif 000083
2012090331.tif 000084
2012090331.tif 000085
2012090331.tif 000086