(57)【特許請求の範囲】
【請求項１】
複数のアドホックネットワークのいずれかのアドホックネットワーク内でマルチホップ通信によりパケットを送受信するノードが実行する鍵設定方法であって、
前記いずれかのアドホックネットワーク内のゲートウェイから同時通報された当該ゲートウェイ固有の鍵を用いて暗号化されたパケットを受信するパケット受信工程と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知工程と、
前記検知工程によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信工程によって受信された前記暗号化されたパケットを前記サーバに送信するパケット送信工程と、
前記携帯端末を介して、前記パケット送信工程によって送信された前記暗号化されたパケットを復号するための前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信する鍵受信工程と、
前記鍵受信工程によって受信された前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記パケットを暗号化するための鍵に設定する設定工程と、
を含むことを特徴とする鍵設定方法。
【請求項２】
前記サーバは、前記各アドホックネットワーク内のゲートウェイのアドレスと当該ゲートウェイ固有の鍵を関連付けて記憶するデータベースを備えており、
前記鍵受信工程は、
前記暗号化されたパケットに含まれる前記いずれかのアドホックネットワーク内のゲートウェイのアドレスと関連付けて前記データベースに記憶されている鍵を前記サーバから受信することを特徴とする請求項１に記載の鍵設定方法。
【請求項３】
前記パケット受信工程によって受信された前記暗号化されたパケットの転送回数を記録する記録工程と、
前記パケット受信工程によって前記暗号化されたパケットが複数受信された場合、前記記録工程によって記録された前記暗号化されたパケットごとの転送回数に基づいて、複数の前記暗号化されたパケットの中から送信対象となる暗号化パケットを決定する決定工程と、をさらに含み、
前記パケット送信工程は、
前記決定工程によって決定された前記送信対象となる暗号化されたパケットを、前記サーバに送信することを特徴とする請求項１または２に記載の鍵設定方法。
【請求項４】
複数のアドホックネットワークのいずれかのアドホックネットワーク内でマルチホップ通信によりパケットを送受信するノードであって、
前記いずれかのアドホックネットワーク内のゲートウェイから同時通報された当該ゲートウェイ固有の鍵を用いて暗号化されたパケットを受信するパケット受信手段と、
前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された前記暗号化されたパケットを前記サーバに送信するパケット送信手段と、
前記携帯端末を介して、前記パケット送信手段によって送信された前記暗号化されたパケットを復号するための前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記パケットを暗号化するための鍵に設定する設定手段と、
を備えることを特徴とするノード。
【請求項５】
前記サーバは、前記各アドホックネットワーク内のゲートウェイのアドレスと当該ゲートウェイ固有の鍵を関連付けて記憶するデータベースを備えており、
前記鍵受信手段は、
前記暗号化されたパケットに含まれる前記いずれかのアドホックネットワーク内のゲートウェイのアドレスと関連付けて前記データベースに記憶されている鍵を前記サーバから受信することを特徴とする請求項４に記載のノード。
【請求項６】
前記パケット受信手段によって受信された前記暗号化されたパケットの転送回数を記録する記録手段と、
前記パケット受信手段によって前記暗号化されたパケットが複数受信された場合、前記記録手段によって記録された前記暗号化されたパケットごとの転送回数に基づいて、複数の前記暗号化されたパケットの中から送信対象となる暗号化パケットを決定する決定手段と、をさらに備え、
前記パケット送信手段は、
前記決定手段によって決定された前記送信対象となる暗号化されたパケットを、前記サーバに送信することを特徴とする請求項４または５に記載のノード。
【請求項７】
複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶するデータベースにアクセス可能なサーバと、前記複数のアドホックネットワークのいずれかのアドホックネットワーク内でマルチホップ通信によりパケットを送受信するノードと、を含むネットワークシステムであって、
前記ノードは、
前記いずれかのアドホックネットワーク内のゲートウェイから同時通報された当該ゲートウェイ固有の鍵を用いて暗号化されたパケットを受信するパケット受信手段と、
前記サーバと通信可能な携帯端末との接続を検知する検知手段と、
前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された前記暗号化されたパケットを前記サーバに送信するパケット送信手段と、
前記携帯端末を介して、前記パケット送信手段によって送信された前記暗号化されたパケットを復号するための前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信する鍵受信手段と、
前記鍵受信手段によって受信された前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記パケットを暗号化するための鍵に設定する設定手段と、を備え、
前記サーバは、
前記携帯端末を介して、前記暗号化されたパケットを前記ノードから受信する受信手段と、
前記受信手段によって受信された前記暗号化されたパケットを復号するための鍵を前記データベースの中から抽出する抽出手段と、
前記携帯端末を介して、前記抽出手段によって抽出された前記暗号化されたパケットを復号するための鍵を前記ノードに送信する送信手段と、を備えることを特徴とするネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを暗号化するための鍵を設定する鍵設定方法、ノード、およびネットワークシステムに関する。
【背景技術】
【０００２】
アドホックネットワークは、無線通信でリンクする自己構成型のネットワークの一種である。アドホックネットワークは複数のノードにより構成される。また、アドホックネットワーク内の各ノードは、マルチホップ通信によりパケットの送受信を行う。マルチホップ通信は、互いの通信圏内に存在しないノード同士が、各ノードの通信圏内に存在する別のノードを介して通信を行う技術である。【０００３】
また、アドホックネットワークとインターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの他のネットワークとを接続する場合、ゲートウェイと呼ばれる中継機器を用いて、ネットワーク間の通信の転送が行われる。【０００４】
アドホックネットワークを利用した技術として、各家庭の電力メータに無線通信可能なノードを組み込んで、作業員が現地に出向くことなく、アドホックネットワーク経由でメータ確認などの業務を行うシステムがある。各家庭の電力の使用量などの個人情報を扱うアドホックネットワークでは、秘匿性や改ざん防止の観点からセキュアな通信を行うことが要求される。【０００５】
そこで、従来のシステムでは、アドホックネットワーク内のノード間で送受信されるパケットを暗号化することで、セキュアな通信を確保することが行われている。この際、システム内の全ノードで共通の暗号鍵を用いた場合、鍵漏洩時のリスクが大きいため、ゲートウェイごとに暗号鍵を変えるシステムがある。【０００６】
また、システムへの新規ノードの初期導入時などにおいて、新規ノードは、暗号鍵が設定されるまでの間、アドホックネットワーク内の他のノードとセキュアな通信を行うことができない。このため、アドホックネットワーク経由で新規ノードに暗号鍵を自動設定することが難しく、作業員が現地に出向いて暗号鍵の設定作業を行っている。【０００７】
また、セキュア通信に関する先行技術として、例えば、ブロードキャストにより通信を行うネットワークの暗号鍵を管理する技術がある（例えば、下記特許文献１参照。）。また、アドホックネットワークにおいて通信開始時の鍵交換を安定して行うための技術がある（例えば、下記特許文献２参照。）。また、アドホックネットワーク内の各ノードが適応ゲートウェイを選択するための技術がある（例えば、下記特許文献３参照。）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００３−３４８０７２号公報
【特許文献２】特開２００７−８８７９９号公報
【特許文献３】特開２００９−８１８５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述した従来技術では、アドホックネットワーク内の各ノードに設定する暗号鍵をゲートウェイごとに変える場合、新規ノードの初期導入時などにおいて、新規ノードが属するゲートウェイを特定することが難しいという問題があった。例えば、新規ノードの設置場所の住所から候補となるゲートウェイを絞り込むことはできても、天候や近傍の建物との位置関係などの要因により通信状況が変化する。このため、実際にどのゲートウェイと通信可能であるかを作業員が現地に出向いて確認する必要があり、作業員の暗号鍵の設定作業にかかる作業時間および作業負荷の増大を招くという問題がある。【００１０】
本発明は、上述した従来技術による問題点を解消するため、アドホックネットワーク内のノードが用いる暗号鍵の設定作業の効率化を図ることができる鍵設定方法、ノード、およびネットワークシステムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するため、開示の鍵設定方法は、複数のアドホックネットワークのいずれかのアドホックネットワーク内でマルチホップ通信によりパケットを送受信するノードが実行する鍵設定方法であって、前記いずれかのアドホックネットワーク内のゲートウェイから同時通報された当該ゲートウェイ固有の鍵を用いて暗号化されたパケットを受信し、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知し、前記携帯端末との接続が検知された場合、前記携帯端末を介して、受信された前記暗号化されたパケットを前記サーバに送信し、前記携帯端末を介して、送信された前記暗号化されたパケットを復号するための前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信し、受信された前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記パケットを暗号化するための鍵に設定する。【００１２】
また、上述した課題を解決し、目的を達成するため、開示のノードは、複数のアドホックネットワークのいずれかのアドホックネットワーク内でマルチホップ通信によりパケットを送受信するノードであって、前記いずれかのアドホックネットワーク内のゲートウェイから同時通報された当該ゲートウェイ固有の鍵を用いて暗号化されたパケットを受信し、前記複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を保持するサーバと通信可能な携帯端末との接続を検知し、前記携帯端末との接続が検知された場合、前記携帯端末を介して、受信された前記暗号化されたパケットを前記サーバに送信し、前記携帯端末を介して、送信された前記暗号化されたパケットを復号するための前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信し、受信された前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記パケットを暗号化するための鍵に設定する。【００１３】
また、上述した課題を解決し、目的を達成するため、開示のネットワークシステムは、複数のアドホックネットワークの各アドホックネットワーク内のゲートウェイ固有の鍵を記憶するデータベースにアクセス可能なサーバと、前記複数のアドホックネットワークのいずれかのアドホックネットワーク内でマルチホップ通信によりパケットを送受信するノードと、を含むネットワークシステムであって、前記ノードにより、前記いずれかのアドホックネットワーク内のゲートウェイから同時通報された当該ゲートウェイ固有の鍵を用いて暗号化されたパケットを受信し、前記サーバと通信可能な携帯端末との接続を検知し、前記携帯端末との接続が検知された場合、前記携帯端末を介して、受信された前記暗号化されたパケットを前記サーバに送信する。そして、前記サーバにより、前記携帯端末を介して、前記暗号化されたパケットを前記ノードから受信し、受信された前記暗号化されたパケットを復号するための鍵を前記データベースの中から抽出し、前記携帯端末を介して、抽出された前記暗号化されたパケットを復号するための鍵を前記ノードに送信する。そして、前記ノードにより、前記携帯端末を介して、送信された前記暗号化されたパケットを復号するための前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信し、受信された前記いずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記パケットを暗号化するための鍵に設定する。
【発明の効果】
【００１４】
本鍵設定方法、ノード、およびネットワークシステムによれば、アドホックネットワーク内のノードが用いる暗号鍵の設定作業の効率化を図ることができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】実施の形態にかかるネットワークシステムの一実施例を示す説明図である。
【図２】ネットワークシステムへの新規ノードの導入例を示す説明図である。
【図３】新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図（その１）である。
【図４】新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図（その２）である。
【図５】実施の形態にかかる管理サーバのハードウェア構成を示すブロック図である。
【図６】実施の形態にかかるノード等のハードウェア構成を示すブロック図である。
【図７】暗号鍵ＤＢの記憶内容の一例を示す説明図である。
【図８】ノードの機能的構成を示すブロック図である。
【図９】暗号化パケットのデータ構造の一例を示す説明図（その１）である。
【図１０】パケット情報テーブルの記憶内容の一例を示す説明図である。
【図１１】管理サーバの機能的構成を示すブロック図である。
【図１２】暗号化パケットのデータ構造の一例を示す説明図（その２）である。
【図１３】管理サーバの認証情報の一例を示す説明図である。
【図１４】携帯端末の認証情報の一例を示す説明図である。
【図１５】ノードの鍵設定処理手順の一例を示すフローチャートである。
【図１６】管理サーバの鍵提供処理手順の一例を示すフローチャートである。
【図１７】ステップＳ１６０２の鍵抽出処理（その１）の具体的な処理手順の一例を示すフローチャートである。
【図１８】ステップＳ１６０２の鍵抽出処理（その２）の具体的な処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下に添付図面を参照して、この発明にかかる鍵設定方法、ノード、およびネットワークシステムの好適な実施の形態を詳細に説明する。
【００１７】
（ネットワークシステムの一実施例）
図１は、実施の形態にかかるネットワークシステムの一実施例を示す説明図である。図１において、ネットワークシステム１００は、管理サーバ１０１と、ゲートウェイＧ１〜Ｇｎと、ノードＮ１−１〜Ｎ１−ｍ１，Ｎ２−１〜Ｎ２−ｍ２，…，Ｎｎ−１〜Ｎｎ−ｍｎと、を含む構成である。
【００１８】
ネットワークシステム１００において、管理サーバ１０１とゲートウェイＧ１〜Ｇｎは、インターネット、ＬＡＮ、ＷＡＮなどのネットワークＮＷ１を介して相互に通信可能に接続されている。また、ゲートウェイＧｉとノードＮｉ−１〜Ｎｉ−ｍｉは、アドホックネットワークＡｉを介して接続されている（ｉ＝１，２，…，ｎ）。
【００１９】
ここで、管理サーバ１０１は、暗号鍵ＤＢ（データベース）１１０を備え、各ゲートウェイＧ１〜Ｇｎ固有の暗号鍵を管理するコンピュータである。ゲートウェイＧｉ固有の暗号鍵（以下、「暗号鍵Ｋｉ」という）は、ゲートウェイＧｉが属するアドホックネットワークＡｉ内のノード間で送受信されるパケットを暗号化するための鍵情報である。なお、暗号鍵ＤＢ１１０についての詳細な説明は、図７を用いて後述する。
【００２０】
ゲートウェイＧｉは、アドホックネットワークＡｉとネットワークＮＷ１とを接続する中継機器である。ゲートウェイＧｉは、アドホックネットワークＡｉのプロトコルとネットワークＮＷ１のプロトコルの両方を理解し、アドホックネットワークＡｉとネットワークＮＷ１との間の通信の転送を行う。
【００２１】
ノードＮｉ−１〜Ｎｉ−ｍｉは、所定の通信圏内の他ノードとマルチホップ通信を行う無線通信装置である。アドホックネットワークＡｉでは、すべてのノードＮｉ−１〜Ｎｉ−ｍｉがゲートウェイＧｉと直接通信できる必要はなく、一部のノードがゲートウェイＧｉと通信可能であればよい。
【００２２】
ネットワークシステム１００は、例えば、各家庭の電力やガスの使用量を収集するシステムに適用することができる。具体的には、例えば、各家庭の電力メータやガスメータに各ノードＮｉ−１〜Ｎｉ−ｍｉを組み込むことで、アドホックネットワークＡｉ内のノード間で各家庭の電力やガスの使用量を送受信する。なお、各家庭の電力やガスの使用量は、各ノードＮｉ−１〜Ｎｉ−ｍｉが計測してもよく、また、各ノードＮｉ−１〜Ｎｉ−ｍｉが電力メータやガスメータから取得してもよい。
【００２３】
ゲートウェイＧｉは、アドホックネットワークＡｉ内のノードＮｉ−１〜Ｎｉ−ｍｉから受信した各家庭の電力やガスの使用量を、ネットワークＮＷ１を介して電力会社やガス会社のサーバ（例えば、管理サーバ１０１）に送信する。これにより、作業員が現地に出向くことなく電力やガスの使用量を収集することができる。
【００２４】
また、ネットワークシステム１００では、アドホックネットワークＡｉごとにゲートウェイＧｉ固有の暗号鍵Ｋｉを用いてパケットを暗号化する。これにより、アドホックネットワークＡｉのセキュア通信（データ秘匿性、改ざん防止など）を確保する。また、アドホックネットワークＡｉごとに暗号鍵Ｋｉを変えることで、鍵漏洩時のリスクを低減させる。
【００２５】
なお、図１の例では、アドホックネットワークＡｉ内に１台のゲートウェイＧｉを設ける構成としたが、同一のアドホックネットワークＡｉ内に複数台のゲートウェイＧｉを設ける構成としてもよい。この場合、アドホックネットワークＡｉ内で送受信されるパケットを暗号化するための暗号鍵Ｋｉは、複数台のゲートウェイＧｉで共通である。
【００２６】
（新規ノードＮの導入時における暗号鍵Ｋｉの設定例）
つぎに、図１に示したネットワークシステム１００への新規ノードの導入時における暗号鍵Ｋｉの設定例について説明する。
【００２７】
図２は、ネットワークシステムへの新規ノードの導入例を示す説明図である。図２において、ネットワークシステム１００のアドホックネットワークＡｉ内に新規ノードＮが導入されている。なお、図２では、アドホックネットワークＡｉ内のノードＮｉ−１〜Ｎｉ−ｍｉのうち、代表としてノードＮｉ−１〜Ｎｉ−３を示している。
【００２８】
新規ノードＮの導入時は、作業員ＯＰは新規ノードＮがどのアドホックネットワークＡｉに属しているのかわからない。そこで、本実施の形態では、作業員ＯＰが使用する携帯端末２００を利用して、新規ノードＮに設定すべき暗号鍵Ｋｉを管理サーバ１０１に問い合わせることで、適切な暗号鍵Ｋｉを管理サーバ１０１から取得して新規ノードＮに自動設定する。
【００２９】
ここで、携帯端末２００は、作業員ＯＰが使用する携帯型の通信装置であり、例えば、携帯電話機、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍ）電話機、スマートフォン、ノート型のパーソナル・コンピュータなどである。携帯端末２００は、直接通信できない新規ノードＮと管理サーバ１０１との間の通信を中継する。
【００３０】
図３、図４は、新規ノードの導入時におけるネットワークシステムの動作例を示すシーケンス図である。図３のシーケンスは、例えば、作業員ＯＰが現地（新規ノードＮの設置場所）に出向くまでに行われる動作例である。図４のシーケンスは、例えば、作業員ＯＰが現地に出向いたあとに行われる動作例である。
【００３１】
図３のシーケンスにおいて、（１）ゲートウェイＧｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１に送信する。（２）管理サーバ１０１は、ゲートウェイＧｉ固有の暗号鍵ＫｉとゲートウェイＧｉのアドレスとを関連付けて暗号鍵ＤＢ１１０に登録する。
【００３２】
（３）ゲートウェイＧｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて暗号化されたパケット（以下、「暗号化パケットＳＰｉ」という）をアドホックネットワークＡｉにブロードキャスト（同時通報）する。暗号化パケットＳＰｉには、例えば、ゲートウェイＧｉのアドレスが含まれている。
【００３３】
（４）ノードＮｉ−１は、ゲートウェイＧｉからの暗号化パケットＳＰｉを通信圏内のノードＮｉ−３に送信する。（５）ノードＮｉ−３は、ノードＮｉ−１からの暗号化パケットＳＰｉを通信圏内の新規ノードＮに送信する。（６）新規ノードＮは、ノードＮｉ−３からの暗号化パケットＳＰｉを記録する。ただし、この時点では、新規ノードＮは、暗号鍵Ｋｉが未設定のため、暗号化パケットＳＰｉを復号することはできない。
【００３４】
図４のシーケンスにおいて、（７）携帯端末２００は、携帯電話網やインターネットなどのネットワークＮＷ２を介して管理サーバ１０１に接続する。この際、携帯端末２００は、例えば、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）を用いて、管理サーバ１０１とセキュアな通信を行う。なお、管理サーバ１０１と携帯端末２００との間でセキュア通信を実現するための通信方式については、図１３および図１４を用いて後述する。
【００３５】
（８）携帯端末２００は、有線または無線のネットワークＮＷ３を介して新規ノードＮに接続する。具体的には、例えば、作業員ＯＰが、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ケーブルを用いて、携帯端末２００と新規ノードＮとを接続することで、携帯端末２００と新規ノードＮとの間にネットワークＮＷ３が確立される。
【００３６】
（９）新規ノードＮは、ネットワークＮＷ３を介して、図３に示した（６）において記録した暗号化パケットＳＰｉを携帯端末２００に送信する。（１０）携帯端末２００は、ネットワークＮＷ２を介して、新規ノードＮからの暗号化パケットＳＰｉを管理サーバ１０１に送信する。
【００３７】
（１１）管理サーバ１０１は、携帯端末２００からの暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを暗号鍵ＤＢ１１０の中から抽出する。具体的には、例えば、管理サーバ１０１は、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰｉに含まれるゲートウェイＧｉのアドレスと関連付けて記憶されている暗号鍵Ｋｉを抽出する。
【００３８】
（１２）管理サーバ１０１は、ネットワークＮＷ２を介して、抽出された暗号鍵Ｋｉを携帯端末２００に送信する。（１３）携帯端末２００は、ネットワークＮＷ３を介して、管理サーバ１０１からの暗号鍵Ｋｉを新規ノードＮに送信する。（１４）新規ノードＮは、携帯端末２００からの暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。
【００３９】
このように、ノードＮが、セキュア通信のための暗号鍵Ｋｉが未設定でも受信できるゲートウェイＧｉからの暗号化パケットＳＰｉを手掛かりに、携帯端末２００を介して、管理サーバ１０１に鍵要求することで、設定すべき暗号鍵Ｋｉを取得することができる。
【００４０】
なお、以下の説明において、「ノードＮ」とは、ネットワークシステム１００のアドホックネットワークＡ１〜ＡｎのいずれかのアドホックネットワークＡｉ内でマルチホップ通信によりパケットを送受信するノードを示す。また、「ノード等」とは、ネットワークシステム１００のゲートウェイＧ１〜ＧｎおよびノードＮを示す。
【００４１】
（管理サーバ１０１のハードウェア構成）
図５は、実施の形態にかかる管理サーバのハードウェア構成を示すブロック図である。図５において、管理サーバ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）５０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５０３と、磁気ディスクドライブ５０４と、磁気ディスク５０５と、光ディスクドライブ５０６と、光ディスク５０７と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）５０８と、ディスプレイ５０９と、キーボード５１０と、マウス５１１と、を備えている。また、ＣＰＵ５０１〜マウス５１１はバス５００によってそれぞれ接続されている。
【００４２】
ここで、ＣＰＵ５０１は、管理サーバ１０１の全体の制御を司る。ＲＯＭ５０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ５０３は、ＣＰＵ５０１のワークエリアとして使用される。磁気ディスクドライブ５０４は、ＣＰＵ５０１の制御に従って磁気ディスク５０５に対するデータのリード／ライトを制御する。磁気ディスク５０５は、磁気ディスクドライブ５０４の制御で書き込まれたデータを記憶する。
【００４３】
光ディスクドライブ５０６は、ＣＰＵ５０１の制御に従って光ディスク５０７に対するデータのリード／ライトを制御する。光ディスク５０７は、光ディスクドライブ５０６の制御で書き込まれたデータを記憶したり、光ディスク５０７に記憶されたデータをコンピュータに読み取らせたりする。
【００４４】
Ｉ／Ｆ５０８は、通信回線を通じてネットワークＮＷ１，ＮＷ２に接続され、このネットワークＮＷ１，ＮＷ２を介して他の装置（例えば、ゲートウェイＧｉ、携帯端末２００）に接続される。Ｉ／Ｆ５０８は、ネットワークＮＷ１，ＮＷ２と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ５０８には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００４５】
ディスプレイ５０９は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ５０９は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００４６】
キーボード５１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス５１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。なお、図２に示した携帯端末２００についても、図５に示した管理サーバ１０１と同様のハードウェア構成により実現できる。
【００４７】
（ノード等のハードウェア構成）
図６は、実施の形態にかかるノード等のハードウェア構成を示すブロック図である。図６において、ノード等は、ＣＰＵ６０１と、ＲＡＭ６０２と、フラッシュメモリ６０３と、Ｉ／Ｆ６０４と、暗号化回路６０５と、を備えている。ＣＰＵ６０１〜暗号化回路６０５は、バス６００によってそれぞれ接続されている。
【００４８】
ここで、ＣＰＵ６０１は、ノード等の全体の制御を司る。ＲＡＭ６０２は、ＣＰＵ６０１のワークエリアとして使用される。フラッシュメモリ６０３は、プログラムや暗号鍵などの鍵情報を記憶している。Ｉ／Ｆ６０４は、マルチホップ通信によりパケットを送受信する。また、ゲートウェイＧｉのＩ／Ｆ６０４は、通信回線を通じてネットワークＮＷ１に接続され、このネットワークＮＷ１を介して管理サーバ１０１に接続される。
【００４９】
暗号化回路６０５は、データを暗号化する場合に暗号鍵によりデータを暗号化する回路である。暗号化をソフトウェア的に実行する場合は、暗号化回路６０５に相当するプログラムをフラッシュメモリ６０３に記憶させておくことで、暗号化回路６０５は不要となる。
【００５０】
（暗号鍵ＤＢ１１０の記憶内容）
図７は、暗号鍵ＤＢの記憶内容の一例を示す説明図である。図７において、暗号鍵ＤＢ１１０は、ＩＤ、ＧＷアドレスおよび暗号鍵のフィールドを有し、各フィールドに情報を設定することで、ゲートウェイＧ１〜Ｇｎごとの鍵情報７００−１〜７００−ｎをレコードとして記憶している。
【００５１】
ここで、ＩＤは、本明細書において説明上用いる各ゲートウェイＧｉの識別子である。ＧＷアドレスは、ゲートウェイＧｉのアドレスである。ＧＷアドレスとしては、例えば、ゲートウェイＧｉのＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスやＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスを用いることができる。暗号鍵は、各ゲートウェイＧｉ固有の暗号鍵Ｋｉであり、具体的には、例えば、１２８〜２５６ビット程度のバイナリデータである。
【００５２】
鍵情報７００−１を例に挙げると、ゲートウェイＧ１のＧＷアドレスは『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』、暗号鍵は『暗号鍵Ｋ１』である。なお、暗号鍵ＤＢ１１０は、例えば、図５に示した管理サーバ１０１のＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置により実現される。
【００５３】
暗号鍵ＤＢ１１０の記憶内容は、図３のシーケンスで説明したように、管理サーバ１０１がゲートウェイＧｉ固有の暗号鍵ＫｉをゲートウェイＧｉから受信することで更新してもよい。また、図５に示したキーボード５１０やマウス５１１を用いたユーザの操作入力により、暗号鍵ＤＢ１１０の記憶内容を更新することにしてもよい。
【００５４】
（ノードＮの機能的構成）
図８は、ノードの機能的構成を示すブロック図である。図８において、ノードＮは、パケット受信部８０１と、検知部８０２と、パケット送信部８０３と、鍵受信部８０４と、設定部８０５と、記録部８０６と、決定部８０７と、を含む構成である。各機能部（パケット受信部８０１〜決定部８０７）は、具体的には、例えば、図６に示したＲＡＭ６０２、フラッシュメモリ６０３などの記憶装置に記憶されたプログラムをＣＰＵ６０１に実行させることにより、または、Ｉ／Ｆ６０４により、その機能を実現する。また、各機能部（パケット受信部８０１〜決定部８０７）の処理結果は、特に指定する場合を除いて、ＲＡＭ６０２、フラッシュメモリ６０３などの記憶装置に記憶される。
【００５５】
パケット受信部８０１は、アドホックネットワークＡｉ内のゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを受信する。暗号化パケットＳＰｉは、ゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて暗号化されたパケットである。この暗号化パケットＳＰｉは、例えば、アドホックネットワークＡｉ内のノード等で同期をとるためにゲートウェイＧｉからブロードキャストされるパケットである。
【００５６】
具体的には、例えば、パケット受信部８０１が、アドホックネットワークＡｉ内の他のノードＮからマルチホップ通信により暗号化パケットＳＰｉを受信する。ただし、ノードＮの通信圏内にゲートウェイＧｉが存在していれば、パケット受信部８０１は、ゲートウェイＧｉから暗号化パケットＳＰｉを直接受信する場合もある。ここで、暗号化パケットＳＰｉのデータ構造について説明する。
【００５７】
図９は、暗号化パケットのデータ構造の一例を示す説明図（その１）である。図９において、暗号化パケットＳＰ１は、ヘッダ部９１０とペイロード部９２０とを含む構成である。ヘッダ部９１０には、宛先アドレス、差出アドレス、ホップ数およびＧＷアドレスが記述されている。ペイロード部９２０には、暗号化されたデータ本体が記述されている（図９中ハッチ部分）。
【００５８】
ここで、宛先アドレスは、送信先のアドレスである。ここでは、ブロードキャスト用のＭＡＣアドレス『００：００：００：００：００：００』が記述されている。差出アドレスは、送信元のアドレスである。ここでは、アドホックネットワークＡ１内のノードＮとは異なる他のノードＮのＭＡＣアドレスが記述されている。
【００５９】
ホップ数は、暗号化パケットＳＰｉを残り何回転送するのかを示す残余の転送回数である。ゲートウェイＧｉからブロードキャストされる暗号化パケットＳＰｉのホップ数の最大値は予め設定されている。このホップ数は暗号化パケットＳＰｉの転送時にデクリメントされ、ホップ数が『０』となった暗号化パケットＳＰｉは棄却される。ここでは、暗号化パケットＳＰ１のホップ数『１０』が記述されている。
【００６０】
ＧＷアドレスは、ゲートウェイＧｉのアドレスである。ここでは、ゲートウェイＧ１のＭＡＣアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』が記述されている。なお、ここでは宛先アドレス、差出アドレスおよびＧＷアドレスの一例として、ＭＡＣアドレスを用いて説明したが、ＩＰアドレスなどのアドレスを用いることにしてもよい。
【００６１】
図８の説明に戻り、検知部８０２は、管理サーバ１０１と通信可能な携帯端末２００との接続を検知する。具体的には、例えば、作業員ＯＰがＵＳＢケーブルを用いて携帯端末２００と新規ノードＮとを接続した結果、検知部８０２が、ＵＳＢケーブルを介した携帯端末２００との接続を検知する。
【００６２】
パケット送信部８０３は、携帯端末２００との接続が検知された場合、携帯端末２００を介して、受信された暗号化パケットＳＰｉを管理サーバ１０１に送信する。具体的には、例えば、パケット送信部８０３が、ＵＳＢケーブルなどのネットワークＮＷ３を介して、暗号化パケットＳＰｉを携帯端末２００に送信する。この結果、携帯端末２００が、ネットワークＮＷ２を介して、ノードＮからの暗号化パケットＳＰｉを管理サーバ１０１に送信する。
【００６３】
鍵受信部８０４は、携帯端末２００を介して、送信された暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信する。この暗号鍵Ｋｉは、例えば、パケットを暗号化するとともに、暗号鍵Ｋｉを用いて暗号化された暗号化パケットＳＰｉを復号することができる共通鍵である。
【００６４】
設定部８０５は、受信されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定する。これにより、以降においてノードＮが送信対象となるパケットを暗号化、および暗号化パケットＳＰｉを復号することが可能となり、アドホックネットワークＡｉ内のノード間でセキュア通信を行うことができる。
【００６５】
記録部８０６は、受信された暗号化パケットＳＰｉに関する情報を記録する。具体的には、例えば、記録部８０６が、図９に示した暗号化パケットＳＰ１のヘッダ部９１０に含まれているホップ数およびＧＷアドレスを図１０に示すパケット情報テーブル１０００に記録する。ここで、パケット情報テーブル１０００について説明する。パケット情報テーブル１０００は、例えば、ＲＡＭ６０２、フラッシュメモリ６０３などの記憶装置により実現される。
【００６６】
図１０は、パケット情報テーブルの記憶内容の一例を示す説明図である。図１０において、パケット情報テーブル１０００は、ＩＤ、ホップ数、およびＧＷアドレスのフィールドを有し、各フィールドに情報を設定することで、パケット情報１０００−１〜１０００−５をレコードとして記憶している。
【００６７】
ここで、ＩＤは、本明細書において説明上用いる暗号化パケットＳＰｉの識別子である。ホップ数は、暗号化パケットＳＰｉを残り何回転送するのかを示す残余の転送回数である。ＧＷアドレスは、ゲートウェイＧｉのアドレスである。なお、各暗号化パケットＳＰｉのパケット情報は、暗号化パケットＳＰｉの受信順にパケット情報テーブル１０００に記憶される。
【００６８】
図８の説明に戻り、決定部８０７は、複数の暗号化パケットＳＰｉが受信された場合、記録された暗号化パケットＳＰｉに関する情報に基づいて、送信対象となる暗号化パケットＳＰｉを決定する。例えば、ノードＮの設置場所がアドホックネットワークＡ１，Ａ２が重なる場所に位置する場合、上記パケット受信部８０１が異なるゲートウェイＧ１，Ｇ２からの暗号化パケットＳＰ１，ＳＰ２を受信することがある。
【００６９】
この場合、ノードＮが属すべき適切なゲートウェイＧｉを決めるために、上記記録部８０６によって記録された暗号化パケットＳＰｉに関する情報に基づいて、管理サーバ１０１に送信する暗号化パケットＳＰｉを決定する。そして、パケット送信部８０３は、携帯端末２００を介して、決定された暗号化パケットＳＰｉを管理サーバ１０１に送信する。以下、図１０を用いて送信対象となる暗号化パケットＳＰｉの決定例について説明する。
【００７０】
まず、決定部８０７は、例えば、パケット情報テーブル１０００を参照して、最古の暗号化パケットＳＰｉを送信対象に決定することにしてもよい。図１０の例では、決定部８０７が、最古のパケット情報１０００−１から特定される暗号化パケットＳＰ１を送信対象に決定する。これにより、ノードＮが最初に受信した暗号化パケットＳＰｉを送信対象とすることができる。
【００７１】
また、決定部８０７は、例えば、パケット情報テーブル１０００を参照して、最新の暗号化パケットＳＰｉを送信対象に決定することにしてもよい。図１０の例では、決定部８０７が、最新のパケット情報１０００−５から特定される暗号化パケットＳＰ１を送信対象に決定する。これにより、ノードＮが受信した最新の暗号化パケットＳＰｉを送信対象とすることができる。この結果、例えば、既設のゲートウェイより近傍に位置するゲートウェイが新設された場合などに、新設されたゲートウェイ固有の暗号鍵を取得することができる。
【００７２】
決定部８０７は、例えば、パケット情報テーブル１０００を参照して、ホップ数が最大の暗号化パケットＳＰｉを送信対象に決定することにしてもよい。図１０の例では、決定部８０７が、パケット情報１０００−１から特定される暗号化パケットＳＰ１を送信対象に決定する。これにより、転送回数が最も少ない暗号化パケットＳＰｉを送信対象とすることができる。
【００７３】
ここで、暗号化パケットＳＰｉの転送回数が少ないということは、ゲートウェイＧｉが地理的に近い位置にある可能性が高い。このため、転送回数が最も少ない暗号化パケットＳＰｉを送信対象とすることで、結果的に、より近傍のゲートウェイＧｉ固有の暗号鍵Ｋｉを取得することができ、ゲートウェイＧｉとの通信効率を向上させることができる。
【００７４】
また、決定部８０７は、例えば、パケット情報テーブル１０００を参照して、ゲートウェイＧｉごとのホップ数の平均値に基づいて、送信対象となる暗号化パケットＳＰｉを決定することにしてもよい。具体的には、まず、決定部８０７が、パケット情報テーブル１０００を参照して、ＧＷアドレスごとのホップ数の平均値を算出する。
【００７５】
図１０の例では、ＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』のホップ数の平均値は『６＝（１０＋７＋１）／３』となる。ＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：５６：７８』のホップ数の平均値は『７＝（８＋６）／２』となる。この場合、決定部８０７は、例えば、ホップ数の平均値が最大のＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：５６：７８』のゲートウェイＧ２からブロードキャストされた暗号化パケットＳＰ２を送信対象に決定する。これにより、統計的に転送回数が最も少ない暗号化パケットＳＰｉを送信対象とすることができる。
【００７６】
（管理サーバ１０１の機能的構成）
図１１は、管理サーバの機能的構成を示すブロック図である。図１１において、管理サーバ１０１は、受信部１１０１と、抽出部１１０２と、送信部１１０３と、を含む構成である。各機能部（受信部１１０１〜送信部１１０３）は、具体的には、たとえば、図５に示したＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶されたプログラムをＣＰＵ５０１に実行させることにより、または、Ｉ／Ｆ５０８により、その機能を実現する。また、各機能部（受信部１１０１〜送信部１１０３）の処理結果は、例えば、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶される。
【００７７】
受信部１１０１は、携帯端末２００を介して、暗号化パケットＳＰｉをノードＮから受信する。具体的には、例えば、受信部１１０１が、ネットワークＮＷ２を介して、ノードＮからの暗号化パケットＳＰｉを携帯端末２００から受信する。
【００７８】
抽出部１１０２は、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出する。具体的には、例えば、抽出部１１０２が、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰｉに含まれるゲートウェイＧｉのアドレスと関連付けて記憶されている暗号鍵Ｋｉを抽出する。
【００７９】
ここで、受信部１１０１によって図９に示した暗号化パケットＳＰ１が受信されたとする。この場合、抽出部１１０２が、例えば、暗号鍵ＤＢ１１０の中から、暗号化パケットＳＰ１に含まれるＧＷアドレス『ｘｘ：ｘｘ：ｘｘ：ｘｘ：１２：３４』と関連付けて記憶されている暗号鍵Ｋ１を抽出する。
【００８０】
送信部１１０３は、携帯端末２００を介して、抽出された暗号鍵ＫｉをノードＮに送信する。具体的には、例えば、ネットワークＮＷ２を介して、抽出された暗号鍵Ｋ１を携帯端末２００に送信する。この結果、携帯端末２００が、ネットワークＮＷ３を介して、管理サーバ１０１からの暗号鍵Ｋ１をノードＮに送信する。
【００８１】
また、図９に示した暗号化パケットＳＰ１のようにＧＷアドレスがヘッダ部９１０に含まれていれば、上述したように、ＧＷアドレスを手掛かりに暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出することができる。これに対して、図１２に示す暗号化パケットＳＰ１のようにＧＷアドレスがペイロード部１２２０に含まれる場合がある。
【００８２】
図１２は、暗号化パケットのデータ構造の一例を示す説明図（その２）である。図１２において、暗号化パケットＳＰ１は、ヘッダ部１２１０とペイロード部１２２０とを含む構成である。ヘッダ部１２１０には、宛先アドレス、差出アドレスおよびホップ数が記述されている。ペイロード部１２２０には、暗号化されたＧＷアドレスおよびデータ本体が記述されている（図１２中ハッチ部分）。
【００８３】
この場合、ＧＷアドレスを手掛かりに暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出することはできない。そこで、抽出部１１０２は、暗号鍵ＤＢ１１０に登録されている暗号鍵Ｋｉごとに、暗号鍵Ｋｉを用いて暗号化パケットＳＰｉの復号処理を実行する。そして、抽出部１１０２は、暗号化パケットＳＰｉの復号に成功した暗号鍵Ｋｉを抽出する。
【００８４】
復号の成否は、暗号化パケットＳＰｉを復号した復号後のパケットのフォーマットに基づいて判断することができる。具体的には、例えば、抽出部１１０２は、暗号化パケットＳＰｉを復号した復号後のパケットが、予め規定されたフォーマットのデータの場合、暗号化パケットＳＰｉの復号が成功したと判断する。これにより、暗号化パケットＳＰｉのヘッダ部１２１０にＧＷアドレスが含まれていない場合であっても、暗号鍵ＤＢ１１０の中からノードＮに設定すべき適切な暗号鍵Ｋｉを抽出することができる。
【００８５】
なお、上述した説明では、管理サーバ１０１が暗号化パケットＳＰｉを受信した時点において、暗号鍵ＤＢ１１０にゲートウェイＧｉ固有の暗号鍵Ｋｉが登録済みの場合を想定したが、これに限らない。例えば、管理サーバ１０１が、暗号化パケットＳＰｉを受信したあとゲートウェイＧｉに問い合わせることで、ゲートウェイＧｉ固有の暗号鍵Ｋｉを取得することにしてもよい。これにより、ネットワークシステム１００内のすべてのゲートウェイＧ１〜Ｇｎ固有の暗号鍵Ｋ１〜Ｋｎを管理サーバ１０１が予め保持しておく必要がなくなる。
【００８６】
（管理サーバ１０１と携帯端末２００との間の通信方式）
ここで、管理サーバ１０１と携帯端末２００との間の通信方式の一実施例について説明する。まず、携帯端末２００からみた管理サーバ１０１のサーバ認証について説明する。具体的には、例えば、まず、携帯端末２００が、予め決められたＩＰアドレスを用いて管理サーバ１０１に接続する。
【００８７】
そして、携帯端末２００が、管理サーバ１０１からＳＳＬサーバ証明書を受信する。受信されたＳＳＬサーバ証明書は、例えば、図１３に示すように管理サーバ１０１のＩＰアドレスと関連付けて携帯端末２００のＲＡＭ６０２やフラッシュメモリ６０３などの記憶装置に記憶される。
【００８８】
図１３は、管理サーバの認証情報の一例を示す説明図である。図１３において、管理サーバ１０１の認証情報１３００は、ＩＰアドレスおよびＳＳＬサーバ証明書を有する。ＩＰアドレスは、管理サーバ１０１のＩＰアドレスである。Ｘ．５０９証明書は、管理サーバ１０１のＳＳＬサーバ証明書（公開鍵証明書）である。
【００８９】
携帯端末２００は、予め自端末に組み込まれている公開鍵を用いて、ＳＳＬサーバ証明書を復号することでサーバ認証を行う。公開鍵は、例えば、第三者認証機関によって発行されたものである。この公開鍵を用いてＳＳＬサーバ証明書を正しく復号できれば、ＳＳＬサーバ証明書が第三者認証機関によって証明された正しい証明書であることがわかり、ひいては管理サーバ１０１の身元が保証されたことになる。
【００９０】
つぎに、管理サーバ１０１からみた携帯端末２００のユーザ認証について説明する。ここでは、図１４に示すような携帯端末２００の認証情報１４００を用いて、携帯端末２００のユーザ認証を行う場合を例に挙げて説明する。認証情報１４００は、例えば、管理サーバ１０１のＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶されている。
【００９１】
図１４は、携帯端末の認証情報の一例を示す説明図である。図１４において、携帯端末２００の認証情報１４００は、ユーザＩＤおよびパスワードを有する。ユーザＩＤは、携帯端末２００の識別子である。パスワードは、携帯端末２００を使用するユーザを認証するためのものである。
【００９２】
具体的には、例えば、まず、携帯端末２００が、ユーザＩＤおよびパスワードのペアを管理サーバ１０１に送信する。このユーザＩＤおよびパスワードは、携帯端末２００のフラッシュメモリ６０３に予め登録されていてもよく、また、携帯端末２００の入力装置（不図示）を用いたユーザの操作入力により受け付けてもよい。
【００９３】
このあと、管理サーバ１０１は、携帯端末２００からのユーザＩＤおよびパスワードのペアを、認証情報１４００のユーザＩＤおよびパスワードのペアと一致判定する。ここで、認証情報１４００のユーザＩＤおよびパスワードと一致すれば、携帯端末２００のユーザの身元が保証されたことになる。
【００９４】
なお、認証後において、携帯端末２００は、例えば、管理サーバ１０１のＳＳＬサーバ証明書に含まれる公開鍵を用いてパケットを暗号化して管理サーバ１０１との通信を行う。これにより、管理サーバ１０１と携帯端末２００との間でセキュアな通信を行うことができる。
【００９５】
（ノードＮの鍵設定処理手順）
図１５は、ノードの鍵設定処理手順の一例を示すフローチャートである。図１５のフローチャートにおいて、まず、パケット受信部８０１により、アドホックネットワークＡｉ内のゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを受信したか否かを判断する（ステップＳ１５０１）。
【００９６】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ１５０１：Ｎｏ）、受信した場合（ステップＳ１５０１：Ｙｅｓ）、検知部８０２により、管理サーバ１０１と通信可能な携帯端末２００との接続を検知したか否かを判断する（ステップＳ１５０２）。
【００９７】
ここで、携帯端末２００との接続が検知されるのを待って（ステップＳ１５０２：Ｎｏ）、検知された場合（ステップＳ１５０２：Ｙｅｓ）、パケット送信部８０３により、携帯端末２００を介して、受信された暗号化パケットＳＰｉを管理サーバ１０１に送信する（ステップＳ１５０３）。
【００９８】
このあと、鍵受信部８０４により、携帯端末２００を介して、送信された暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信したか否かを判断する（ステップＳ１５０４）。
【００９９】
ここで、暗号鍵Ｋｉを受信するのを待って（ステップＳ１５０４：Ｎｏ）、受信した場合（ステップＳ１５０４：Ｙｅｓ）、設定部８０５により、受信されたゲートウェイＧｉ固有の暗号鍵Ｋｉを、パケットを暗号化するための鍵に設定して（ステップＳ１５０５）、本フローチャートによる一連の処理を終了する。
【０１００】
これにより、暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から取得して設定することができる。
【０１０１】
（管理サーバ１０１の鍵提供処理手順）
図１６は、管理サーバの鍵提供処理手順の一例を示すフローチャートである。図１６のフローチャートにおいて、まず、受信部１１０１により、携帯端末２００を介して、暗号化パケットＳＰｉをノードＮから受信したか否かを判断する（ステップＳ１６０１）。
【０１０２】
ここで、暗号化パケットＳＰｉを受信するのを待って（ステップＳ１６０１：Ｎｏ）、受信した場合（ステップＳ１６０１：Ｙｅｓ）、抽出部１１０２により、暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出する鍵抽出処理を実行する（ステップＳ１６０２）。そして、送信部１１０３により、携帯端末２００を介して、抽出された暗号鍵ＫｉをノードＮに送信して（ステップＳ１６０３）、本フローチャートによる一連の処理を終了する。
【０１０３】
これにより、ノードＮが属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵ＫｉをノードＮに提供することができる。
【０１０４】
＜鍵抽出処理（その１）手順＞
つぎに、図１６に示したステップＳ１６０２の鍵抽出処理（その１）の具体的な処理手順について説明する。以下に説明する鍵抽出処理（その１）は、暗号化パケットＳＰｉに含まれるＧＷアドレスが暗号化されていない場合の処理である。
【０１０５】
図１７は、ステップＳ１６０２の鍵抽出処理（その１）の具体的な処理手順の一例を示すフローチャートである。図１７のフローチャートにおいて、まず、抽出部１１０２により、図１６に示したステップＳ１６０１において受信された暗号化パケットＳＰｉに含まれるＧＷアドレスを特定する（ステップＳ１７０１）。
【０１０６】
つぎに、抽出部１１０２により、ゲートウェイＧｉの「ｉ」を「ｉ＝１」で初期化する（ステップＳ１７０２）。このあと、抽出部１１０２により、暗号鍵ＤＢ１１０を参照して、ゲートウェイＧｉのＧＷアドレスを特定する（ステップＳ１７０３）。そして、抽出部１１０２により、ステップＳ１７０１において特定されたＧＷアドレスと、ステップＳ１７０３において特定されたＧＷアドレスとが一致するか否かを判断する（ステップＳ１７０４）。
【０１０７】
ここで、ＧＷアドレスが一致する場合（ステップＳ１７０４：Ｙｅｓ）、抽出部１１０２により、暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出して（ステップＳ１７０５）、図１６に示したステップＳ１６０３に移行する。一方、ＧＷアドレスが不一致の場合（ステップＳ１７０４：Ｎｏ）、抽出部１１０２により、ゲートウェイＧｉの「ｉ」をインクリメントして（ステップＳ１７０６）、「ｉ」が「ｎ」より大きいか否かを判断する（ステップＳ１７０７）。
【０１０８】
ここで、「ｉ」が「ｎ」以下の場合（ステップＳ１７０７：Ｎｏ）、ステップＳ１７０３に戻る。一方、「ｉ」が「ｎ」より大きい場合（ステップＳ１７０７：Ｙｅｓ）、抽出部１１０２により、エラー処理を実行して（ステップＳ１７０８）、管理サーバ１０１の一連の処理を終了する。
【０１０９】
これにより、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出することができる。なお、ステップＳ１７０８のエラー処理の具体例として、例えば、抽出部１１０２が、携帯端末２００を介して、暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出できなかった旨のエラーメッセージをノードＮに送信することにしてもよい。
【０１１０】
ステップＳ１７０８のエラー処理は、例えば、暗号化パケットＳＰｉが改ざんされた場合や暗号化パケットＳＰｉの一部が欠落した場合などに実行される。このエラー処理によれば、ノードＮによる暗号化パケットＳＰｉの再送信を促すことができる。
【０１１１】
＜鍵抽出処理（その２）手順＞
つぎに、図１６に示したステップＳ１６０２の鍵抽出処理（その２）の具体的な処理手順について説明する。以下に説明する鍵抽出処理（その２）は、暗号化パケットＳＰｉに含まれるＧＷアドレスが暗号化されている場合の処理である。
【０１１２】
図１８は、ステップＳ１６０２の鍵抽出処理（その２）の具体的な処理手順の一例を示すフローチャートである。図１８のフローチャートにおいて、まず、抽出部１１０２により、ゲートウェイＧｉの「ｉ」を「ｉ＝１」で初期化する（ステップＳ１８０１）。そして、抽出部１１０２により、暗号鍵ＤＢ１１０の中のゲートウェイＧｉ固有の暗号鍵Ｋｉを用いて、図１６に示したステップＳ１６０１において受信された暗号化パケットＳＰｉを復号する（ステップＳ１８０２）。
【０１１３】
このあと、抽出部１１０２により、暗号化パケットＳＰｉの復号に成功したか否かを判断する（ステップＳ１８０３）。ここで、暗号化パケットＳＰｉの復号に成功した場合（ステップＳ１８０３：Ｙｅｓ）、抽出部１１０２により、暗号鍵ＤＢ１１０の中から暗号鍵Ｋｉを抽出して（ステップＳ１８０４）、図１６に示したステップＳ１６０３に移行する。
【０１１４】
一方、暗号化パケットＳＰｉの復号に失敗した場合（ステップＳ１８０３：Ｎｏ）、抽出部１１０２により、ゲートウェイＧｉの「ｉ」をインクリメントして（ステップＳ１８０５）、「ｉ」が「ｎ」より大きいか否かを判断する（ステップＳ１８０６）。
【０１１５】
ここで、「ｉ」が「ｎ」以下の場合（ステップＳ１８０６：Ｎｏ）、ステップＳ１８０２に戻る。一方、「ｉ」が「ｎ」より大きい場合（ステップＳ１８０６：Ｙｅｓ）、抽出部１１０２により、エラー処理を実行して（ステップＳ１８０７）、管理サーバ１０１の一連の処理を終了する。
【０１１６】
これにより、暗号化パケットＳＰｉのヘッダ部１２１０にＧＷアドレスが含まれていない場合であっても、暗号鍵ＤＢ１１０の中から、受信された暗号化パケットＳＰｉを復号するための暗号鍵Ｋｉを抽出することができる。
【０１１７】
以上説明したように、本実施の形態によれば、アドホックネットワークＡｉ内のノードＮは、携帯端末２００を介して、ゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを管理サーバ１０１に送信することができる。この結果、ノードＮは、携帯端末２００を介して、暗号化パケットＳＰｉを復号するためのゲートウェイＧｉ固有の暗号鍵Ｋｉを管理サーバ１０１から受信して設定することができる。
【０１１８】
このように、ノードＮが、セキュア通信のための暗号鍵Ｋｉが未設定でも受信できるゲートウェイＧｉからの暗号化パケットＳＰｉを手掛かりに、携帯端末２００を介して、管理サーバ１０１に鍵要求することで、設定すべき暗号鍵Ｋｉを取得することができる。これにより、ノードＮの初期導入時などにおいて、作業員ＯＰが地理的に絞り込まれた候補となるゲートウェイとノードＮとの通信状況をしらみつぶしに確認するなどの作業が不要となり、ノードＮに対する暗号鍵Ｋｉの設定作業の効率化を図ることができる。また、確認作業のために候補となる各ゲートウェイの暗号鍵を携帯端末２００などに記録しておく必要がないため、持ち運びの際の情報漏洩のリスクを低減させることができる。
【０１１９】
また、本実施の形態によれば、ノードＮは、複数の異なるゲートウェイＧｉからブロードキャストされた暗号化パケットＳＰｉを受信した場合、暗号化パケットＳＰｉごとの転送回数に基づいて、送信対象となる暗号化パケットＳＰｉを決定することができる。これにより、ノードＮの設置場所が複数の異なるアドホックネットワークＡｉが重なる場所に位置する場合であっても、ノードＮに設定すべき適切な暗号鍵Ｋｉを提供することができる。
【０１２０】
また、本実施の形態によれば、管理サーバ１０１は、暗号化パケットＳＰｉに含まれるゲートウェイＧｉのアドレスと関連付けて記憶されている暗号鍵Ｋｉを暗号鍵ＤＢ１１０の中から抽出することができる。そして、管理サーバ１０１が、携帯端末２００を介して、暗号鍵ＫｉをノードＮに送信することで、ノードＮが属するアドホックネットワークＡｉ内のゲートウェイＧｉ固有の暗号鍵ＫｉをノードＮに提供することができる。
【０１２１】
以上のことから、本実施の形態にかかる鍵設定方法、ノード、およびネットワークシステムによれば、アドホックネットワーク内のノードに対する暗号鍵の設定作業にかかる作業員の作業負担の軽減化および作業時間の短縮化を図ることができる。
【０１２２】
なお、本実施の形態で説明した鍵設定方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本鍵設定プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本鍵設定プログラムは、インターネット等のネットワークを介して配布してもよい。
【符号の説明】
【０１２３】
１００  ネットワークシステム
１０１  管理サーバ
１１０  暗号鍵ＤＢ
２００  携帯端末
８０１  パケット受信部
８０２  検知部
８０３  パケット送信部
８０４  鍵受信部
８０５  設定部
８０６  記録部
８０７  決定部
１１０１  受信部
１１０２  抽出部
１１０３  送信部
Ａ１〜Ａｎ，Ａｉ  アドホックネットワーク
Ｇ１〜Ｇｎ，Ｇｉ  ゲートウェイ
Ｋ１〜Ｋｎ，Ｋｉ  暗号鍵
Ｎ  ノード
ＮＷ１，ＮＷ２，ＮＷ３  ネットワーク
ＳＰｉ  暗号化パケット
【図１】
0005408354.tif 000002
【図２】
0005408354.tif 000003
【図３】
0005408354.tif 000004
【図４】
0005408354.tif 000005
【図５】
0005408354.tif 000006
【図６】
0005408354.tif 000007
【図７】
0005408354.tif 000008
【図８】
0005408354.tif 000009
【図９】
0005408354.tif 000010
【図１０】
0005408354.tif 000011
【図１１】
0005408354.tif 000012
【図１２】
0005408354.tif 000013
【図１３】
0005408354.tif 000014
【図１４】
0005408354.tif 000015
【図１５】
0005408354.tif 000016
【図１６】
0005408354.tif 000017
【図１７】
0005408354.tif 000018
【図１８】
0005408354.tif 000019