JP6303426B2 - ノード装置、通信システム、通信方法および通信プログラム - Google Patents

ノード装置、通信システム、通信方法および通信プログラム Download PDF

Info

Publication number
JP6303426B2
JP6303426B2 JP2013238137A JP2013238137A JP6303426B2 JP 6303426 B2 JP6303426 B2 JP 6303426B2 JP 2013238137 A JP2013238137 A JP 2013238137A JP 2013238137 A JP2013238137 A JP 2013238137A JP 6303426 B2 JP6303426 B2 JP 6303426B2
Authority
JP
Japan
Prior art keywords
node device
common key
key
elapsed time
data frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013238137A
Other languages
English (en)
Other versions
JP2015099984A (ja
Inventor
靖康 田羽多
靖康 田羽多
幸樹 弥栄
幸樹 弥栄
克彦 山津
克彦 山津
達也 曽根田
達也 曽根田
泰二 近藤
泰二 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013238137A priority Critical patent/JP6303426B2/ja
Priority to US14/540,106 priority patent/US9614817B2/en
Publication of JP2015099984A publication Critical patent/JP2015099984A/ja
Application granted granted Critical
Publication of JP6303426B2 publication Critical patent/JP6303426B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/068Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Description

本発明は、ノード装置、通信システム、通信方法および通信プログラムに関する。
アドホックネットワークでは、ノード装置同士が自律的にネットワークを形成する。自律的に通信を行うことにより、使用者が随時通信ルートを設定する必要がなく、サーバやルータ等の通信を管理する専用の通信端末やインフラを必要としない。関連する技術として、HELLOフレームを用いて、自律的にアドホックネットワークを形成する技術が提案されている(例えば、特許文献1参照)。
ノード装置同士で通信を行うときに、通信されるフレームのセキュリティを確保する必要がある。このために、ノード装置同士で通信を行う場合に、通信を行うデータを暗号化した後に、ノード装置はフレームを相手方のノード装置に送信する。関連する技術として、2つの通信端末装置を一体に保持して複数回揺動させて、ピーク位置の時間を取得して、暗号化する技術が提案されている(例えば、特許文献2参照)。
国際公開第2011/013165号公報 特開2011−130224号公報
ノード装置間で通信を行うときには、フレームという単位で通信が行われる。フレームの一例として、HELLOフレームとデータフレームとがある。経路構築を行うために使用されるHELLOフレームは、高い秘匿性は要求されない。
従って、HELLOフレームの場合には、鍵の値が固定された共通鍵(以下、固定共通鍵と称する)を用いることができる。一方、データフレーム(送信するデータの中身が含まれるフレーム)は、高い秘匿性が要求される。従って、データフレームを固定共通鍵で暗号化することは好ましくない。
そこで、データフレームの通信を行うときには、鍵の値が変化する共通鍵(以下、可変共通鍵と称する)を用いて、データフレームを暗号化することが好ましい。可変共通鍵でデータフレームを暗号化することで、高い秘匿性の通信を行うことができる。
可変共通鍵でデータフレームを暗号化および復号化する場合、フレームを送信するノード装置とフレームを受信するノード装置との両者が可変共通鍵を認識している必要がある。可変共通鍵は、鍵の値が変化していくため、送信側および受信側の両者で変化する鍵の値を認識しなければならない。
従って、各ノード装置は、可変共通鍵を認識できる機能を備える必要がある。このために、各ノード装置は、可変共通鍵を認識する機能を実現するハードウェア資源を備える必要がある。ノード装置の中には、ハードウェア資源に乏しいノード装置もある。よって、この場合には、秘匿性の高い通信を行うことができなくなる。
本発明は、1つの側面では、秘匿性の高いアドホックネットワーク通信を可能にすることを目的とする。
1つの案では、ノード装置は、隣接するノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する第1の共通鍵を生成し、前記経過時間を通知されていないときには、自身のノード装置が起動してからの経過時間に基づいて鍵の値が変化する第2の共通鍵を生成する鍵生成部と、前記鍵生成部が生成する前記第1の共通鍵または前記第2の共通鍵で、前記隣接するノード装置に送信するデータフレームを暗号化する暗号化部と、前記暗号化部が暗号化した前記データフレームとともに、前記第1の共通鍵または前記第2の共通鍵の何れで前記暗号化を行ったかを示す鍵種別の情報を前記隣接するノード装置に送信する送信部と、前記隣接するノード装置から暗号化されたデータフレームとともに前記鍵種別の情報を受信した際、前記鍵種別の情報に応じて、前記第1の共通鍵と前記第2の共通鍵とのうち何れかを用いて、前記データフレームを復号化する復号化部と、を含む。
秘匿性の高いアドホックネットワーク通信を可能にすることができる。
HELLOフレームを用いた経路構築の一例を示す図(その1)である。 HELLOフレームを用いた経路構築の一例を示す図(その2)である。 HELLOフレームを用いた経路構築の一例を示す図(その3)である。 HELLOフレームを用いた経路構築の一例を示す図(その4)である。 アドホックネットワークの構成の一例を示す図である。 ノード装置の機能ブロックの一例を示す図である。 データフレームの構成の一例を示す図である。 アドホックヘッダの構成の一例を示す図である。 アドホックヘッダの各項目の一例を説明する図である。 リンクテーブルの構成の一例を説明する図である。 可変共通鍵を生成する例を説明する図(その1)である。 可変共通鍵を生成する例を説明する図(その2)である。 実施形態の処理の一例を説明するフローチャートである。 暗号化および復号化の処理の一例を示すフローチャートである。 2つのノード装置の間でデータフレームを送受信する一例を説明する図である。 経過時間を正規化する一例を説明する図である。 第1の応用例における暗号化および復号化の一例を説明する図である。 第2の応用例における暗号化および復号化の一例を説明する図(その1)である。 第2の応用例における暗号化および復号化の一例を説明する図(その2)である。 第3の応用例における暗号化および復号化の一例を説明する図である。 ノード装置のハードウェア構成の一例を示す図である。 ゲートウェイ装置のハードウェア構成の一例を示す図である。
<HELLOフレームを用いた経路構築の一例>
図1を参照して、HELLOフレームを用いた経路構築の一例を説明する。図1に一例として示すアドホックネットワークは、ゲートウェイ装置GWとノード装置a〜eおよびYとを有している。ゲートウェイ装置はノード装置の一種である。また、ゲートウェイ装置は、さらに、L3ネットワークを介して、ネットワークサーバと通信する機能を有している。
一例として、ノード装置a〜eおよびYはスマートメータを適用することができる。スマートメータは、電力やガス、水道等の使用量を計測する計測機器であり、通信機能を有している。計測した値は通信機能を利用してネットワークサーバに送信することができる。
一例として、ノード装置a〜eおよびYは、フレームをゲートウェイ装置GWに送信する。ゲートウェイ装置GWは、ノード装置a〜eおよびYが送信したフレームを受信する。ゲートウェイ装置GWは、L3ネットワークを介して、受信したフレームをネットワークサーバに送信する。
HELLOフレームは、通信経路を構築するときに、各ノード装置が隣接するノード装置に一斉にブロードキャストするフレームである。データフレームは、ノード装置が送信するデータの中身が含まれるフレームである。
図1に一例として示すアドホックネットワークは、メッシュ状に構成されたアドホックネットワークである。ゲートウェイ装置GWおよびノード装置a〜eおよびYは、隣接するゲートウェイ装置GWまたはノード装置a〜eおよびYに対して定期的にHELLOフレームをブロードキャストする。
HELLOフレームは、経路情報や通信品質情報等の種々の情報を有している。ゲートウェイ装置GWおよびノード装置a〜eおよびYは、HELLOフレームを定期的にブロードキャストすることで、適切な経路構築を行う。
図2は、ゲートウェイ装置GWがHELLOフレームをブロードキャストする一例を示している。ゲートウェイ装置GWは、自身がHELLOフレームを送信するタイミングになったときに、ノード装置a、bおよびcにHELLOフレームをブロードキャストする。ノード装置a、bおよびcは、HELLOフレームを受信する。
ノード装置a、bおよびcは、受信したHELLOフレームに基づいて、経路品質やリンクの通信品質を計算し、計算した結果をテーブル(ルーティングテーブルと称される)に記憶する。
次に、ノード装置bに着目する。図3に示すように、ノード装置bは、自身がHELLOフレームを送信するタイミングで自身が保持するノード装置の情報を含むHELLOフレームをブロードキャストする。このHELLOフレームには、ゲートウェイ装置GWの情報も含まれている。ノード装置bは、ノード装置d、eおよびYにHELLOフレームをブロードキャストする。
次に、ノード装置Yに着目する。ノード装置Yは、ノード装置bが送信したHELLOフレームを受信する。ノード装置Yは、受信したHELLOフレームに基づいて、経路品質やリンクの通信品質を計算し、計算した結果をルーティングテーブルに記憶する。
ノード装置dおよびeも同様であり、受信したHELLOフレームに基づいて、経路品質やリンクの通信品質を計算し、計算した結果をルーティングテーブルに記憶する。そして、ノード装置dは、ノード装置aおよびYにHELLOフレームをブロードキャストする。同様に、ノード装置eは、ノード装置cおよびYにHELLOフレームをブロードキャストする。
以上により、図4に示すように、ゲートウェイ装置GWとノード装置a〜eおよびYとの全てのノード装置にHELLOフレームが伝播される。ノード装置Yがゲートウェイ装置GWにデータフレームを送信するときに、データフレームを受信したノード装置は、自身のルーティングテーブルの情報を参照する。そして、ノード装置は、ルーティングテーブルの情報に基づいて、次の送信先のノード装置として適切なノード装置を選択する。
適切なノード装置の選択は、ルーティングテーブルに記憶されている経路品質や通信品質等の情報に基づいて行われる。一例として、ノード装置Yは、ノード装置bを経由して、ゲートウェイ装置GWにデータフレームを送信することができる。
ただし、ノード装置Y、ノード装置b、ゲートウェイ装置GWの通信経路の品質よりも、ノード装置Y、ノード装置d、ノード装置a、ゲートウェイ装置GWの方が通信経路の品質の方が良い場合ある。この場合、後者の方がホップ数は多いが、適切な経路として、後者が選択される。
<アドホックネットワーク構成の一例>
図5は、アドホックネットワークの構成の一例を示している。図5では、複数のノード装置Nと2つのゲートウェイ装置GWと保守端末HTとがアドホックネットワークに参加している。2つのゲートウェイ装置GWはインターネット網を介してサーバに接続されている。
アドホックネットワークに参加している各装置の間は、無線で通信が行われてもよいし、有線で通信が行われてもよい。実施形態では、各装置の間は無線で通信が行われるものとする。
2つのゲートウェイ装置GWおよび保守端末はノード装置の一種である。各ノード装置Nは、何れかのゲートウェイ装置GWにデータフレームを送信する。ゲートウェイ装置GWはインターネット網を介して、データフレームをサーバに送信する。保守端末HTは、任意のノード装置Nに対して、種々の試験や情報収集等を行う。保守端末HTは、任意のノード装置Nに対する操作を行うこともできる。
<ノード装置の構成の一例>
図6は、ノード装置1の一例を示している。図6に一例として示すノード装置1は、フレーム受信部2とフレーム受信情報解析部3と制御部4とフレーム送信情報生成部5とフレーム送信部6とセキュリティ処理部7とリンクテーブル8とルーティングテーブル9とタイマ10とを備えている。
フレーム受信部2は、ノード装置1に隣接する他のノード装置1(ゲートウェイ装置および保守端末を含む)が送信したHELLOフレームまたはデータフレームを受信する。フレーム受信部2は、他の種類のフレームを受信してもよい。フレーム受信部2は、受信部の一例である。なお、フレームは、隣接するノード装置1の間を通信される情報である。
フレーム受信情報解析部3は、受信したフレームを解析する。また、フレーム受信情報解析部3は、アドホック層終端処理を行う。フレーム受信情報解析部3は、解析した情報を制御部4およびセキュリティ処理部7に出力する。
制御部4は、ノード装置1の全体の管理を行う。また、制御部4は、受信したフレームおよび送信するフレームの管理を行う。制御部4は、所定のアプリケーションにより実現されてもよい。
フレーム送信情報生成部5は、制御部4が送信を指示したフレームのアドホック層の加工処理を行う。また、フレーム送信情報生成部5は、リンクテーブル8およびルーティングテーブル9を参照して、フレームの次の送信先ノード装置1を決定する。決定された送信先のノード装置1は、自身のノード装置1に隣接している。
フレーム送信部6は、フレーム送信情報生成部5が決定した送信先のノード装置1にHELLOフレームまたはデータフレームを送信する。フレーム送信部6は、他の種類のフレームを送信してもよい。フレーム送信部6は、送信部の一例である。
セキュリティ処理部7は、フレーム送信部6が送信するデータフレームに暗号化処理を行う。ノード装置間を通信されるデータフレームは暗号化処理されている。これにより、データフレームの秘匿性を確保している。また、セキュリティ処理部7は、暗号化されたフレームの復号化を行う。その他に、セキュリティ処理部7は、署名認証や固定共通鍵の管理、共通鍵の生成等のセキュリティ処理を行う。
リンクテーブル8は、ノード装置1に隣接するノード装置に関する情報やノード装置間の通信品質等の情報を記憶している。ルーティングテーブル9は、ノード装置1からグローバル宛先アドレスGDまでの経路情報を記憶している。ルーティングテーブル9が記憶している経路情報に基づいて、ノード装置1は隣接するノード装置1にデータフレームを送信する。タイマ10は、時間をカウントする。
ローカル送信元アドレスLS(Local Source)、ローカル宛先アドレスLD(Local Destination)、グローバル送信元アドレスGS(Global Source)およびグローバル宛先アドレスGD(Global Destination)について説明する。
ローカル送信元アドレスLSは、フレームを送信する送信元のノード装置1のアドレスを示す。ローカル宛先アドレスLDは、フレームを送信する次の送信先のノード装置1のアドレスを示す。グローバル送信元アドレスGSは、フレームを生成するノード装置1を示す。グローバル宛先アドレスGDは、フレームの最終的な送信先となるノード装置1を示す。
従って、ローカル送信元アドレスLSのノード装置1とローカル宛先アドレスのノード装置1とは隣接している。一方、グローバル送信元アドレスGSのノード装置1とグローバル宛先アドレスGDのノード装置1とが隣接しているとは限らない。
次に、セキュリティ処理部7について説明する。セキュリティ処理部7は、固定共通鍵記憶部21と経過時間生成部22と正規化部23と鍵生成部24と暗号化部25と署名部26と復号化部27と認証部28と検知部29とを備えている。セキュリティ処理部7は、これら以外の構成を備えていてもよい。
固定共通鍵記憶部21は、鍵の値が変化しない共通鍵(以下、固定共通鍵と称する)を記憶する。従って、固定共通鍵は、鍵の値が変化する共通鍵(以下、可変共通鍵と称する)よりも秘匿性は低い。ただし、固定共通鍵で暗号化することにより、情報の秘匿性を得ることはできる。固定共通鍵は、固定共通鍵記憶部21に予め記憶されている。
経過時間生成部22は、ノード装置1が起動してから経過した時間を生成する。一例として、経過時間生成部22は初期値として「0」を保持し、タイマ10がカウントする時間を入力して経過時間を生成してもよい。
正規化部23は、経過時間を正規化する。経過時間を正規化した時間を正規化時間とする。また、正規化部23は、識別番号(Key−ID)を生成する。識別番号は、正規化時間に対応しており、データフレームを受信したノード装置1が当該データフレームの復号化を許可するか否かを判定するために用いられる。
鍵生成部24は、一例として、ローカル宛先アドレスLD、ローカル送信元アドレスLS、正規化時間および固定共通鍵を使用して、可変共通鍵を生成する。暗号化部25は、ノード装置1が送信するフレームに対して、鍵生成部24が生成した可変共通鍵で暗号化を行う。署名部26は、送信するフレームに署名情報を付与する。
復号化部27は、フレーム受信部2が受信したフレームに対して、鍵生成部24が生成した可変共通鍵を使用して、復号化を行う。認証部28は、フレーム受信部2が受信したフレームの署名情報が正しいか否かを判定する。検知部29は、フレーム受信部2が受信したデータフレームの信頼性の判定を行う。一例として、検知部29は、データフレームに含まれる経過時間を使用して、データフレームの信頼性の判定を行う。
<データフレームの構成の一例>
図7は、データフレームの構成の一例を示している。図7のデータフレームは、物理ヘッダとMACヘッダとアドホックヘッダとペイロードと署名とパディングとFCSとを有している。ペイロード部分が、データフレームの本体の情報であり、ペイロード部分を暗号化する。ただし、署名およびパディングも暗号化の対象に含まれる。
一例として、可変共通鍵の長さを128bitとしたとき、ペイロードおよび署名だけでは、128bit未満になる場合がある。この場合、ペイロードと署名とパディングとの合計が可変共通鍵の長さ(128bit)と等しくなるように、データフレームにパディングが付与される。
次に、アドホックヘッダについて説明する。図8は、アドホックヘッダの一例を示している。アドホックヘッダは、データフレームのヘッダの1つであり、図8の一例では、2バイトの情報量になっている。
アドホックヘッダは、識別情報(図8ではKey−ID)と鍵種別とフレーム種別と予備とを有している。図8のb1が最下位ビットであり、b16が最上位ビットである。図8の例では、識別番号は4bitを使用することが可能である。アドホックヘッダが有する項目は、図8の例には限定されない。
図9は、アドホックヘッダの各項目の一例を説明している。実施形態では、鍵種別と識別番号(Key−ID)との項目を使用する。鍵種別は、共通鍵の種別の一例を示している。図9の一例では、鍵種別に2bitが割り当てられている。
鍵種別「0x00」は固定共通鍵であることを示している。鍵種別「0x01」はLDの可変共通鍵であることを示している。LDの可変共通鍵は、ローカル宛先アドレスLDのノード装置1の経過時間を使用して生成される可変共通鍵である。鍵種別が「0x02」はLSの可変共通鍵であることを示している。LSの可変共通鍵は、自身のノード装置1の経過時間で生成する可変共通鍵である。鍵種別が「0x03」は予備であることを示している。
識別番号(Key−ID)は、経過時間より算出される値であることを示している。上述したように、識別番号は、正規化時間に対応している。図9に示す一例では、識別番号に4bitが割り当てられている。従って、識別番号は、ゼロから15までの値を表現できる。
<リンクテーブル構造の一例>
次に、図10を参照して、ノード装置1のリンクテーブル8の構造の一例を説明する。図10に一例として示すリンクテーブル8は、ローカル送信元アドレスLSと経過時間との項目を有している。リンクテーブル8が有する項目は図10に示した一例には限定されない。リンクテーブル8は他の項目を有していてもよい。ローカル送信元アドレスLSは、ノード装置1がHELLOフレームを受信したときには、HELLOフレームを送信したノード装置1のアドレスを示す。一方、リンクテーブル8のローカル送信元アドレスLSは、データフレームを送信するときには、ローカル宛先アドレスLDになる。
リンクテーブル8のローカル送信元アドレスLSは、ノード装置1が隣接するノード装置1からHELLOフレームを受信したときに、HELLOフレームに含まれる情報に基づいて得ることができる。経過時間は、ノード装置1が隣接するノード装置からHELLOフレームまたはデータフレームを送信したときに、HELLOフレームまたはデータフレームに含まれる情報に基づいて得ることができる。
<可変共通鍵の生成の一例>
次に、図11および図12を参照して、可変共通鍵を生成する一例について説明する。鍵生成部24は、ローカル送信元アドレスLS、ローカル宛先アドレスLDおよび正規化時間を使用して、可変共通鍵を生成する。
可変共通鍵の生成方法は、暗号化を行う対象となる全データのbyte数が可変共通鍵のbyte数と同じか否かで異なる。図11は、暗号化を行う対象となる全データのbyte数が可変共通鍵のbyte数と異なる場合を示しており、図12は、同じ場合を示している。
図11に示す一例では、ローカル送信元アドレスLSおよびローカル宛先アドレスLDが64bit(=8byte)で表現されているものとする(64bitアドレス)。一方、図12に示す一例では、ローカル送信元アドレスLSおよびローカル宛先アドレスLDが16bit(=2byte)で表現されているものとする。
図11を参照して、ローカル送信元アドレスLSおよびローカル宛先アドレスLDが64bitで表現されている場合における、可変共通鍵の生成方法について説明する。正規化部23は、経過時間生成部22が生成している経過時間を取得する。一例として、経過時間は4byteで表現されるものとする。
正規化部23は、取得した経過時間を正規化する。正規化部23が正規化した時間を正規化時間とする。一例として、正規化時間も4byteで表現されるものとする。鍵生成部24は、フレーム受信部2が受信したフレームのMACヘッダに含まれるローカル送信元アドレスLSとローカル宛先アドレスLDとを取得する。
鍵生成部24は、ローカル送信元アドレスLSとローカル宛先アドレスLDとを連結させる。連結されたデータは、16byte(=8byte+8byte)の情報量になる。ローカル送信元アドレスLSとローカル宛先アドレスLDとを連結したデータに正規化時間(=4byte)を加えると、全体で合計20byteになる。
可変共通鍵は16byteであるため、暗号化する対象のデータも16byteであることが好ましい。そこで、鍵生成部24は、ローカル送信元アドレスLSとローカル宛先アドレスLDとを連結したデータの上位4byteの情報と正規化時間の4byteの情報との排他的論理和の演算を行う。
これにより、暗号化の対象となるデータは16byteとなる。この16byteのデータには正規化時間が含まれている。鍵生成部24は、固定共通鍵記憶部21から固定共通鍵を取得し、排他的論理和の演算を行った結果の値に対して、固定共通鍵で暗号化を行う。これにより、可変共通鍵が生成される。
可変共通鍵は、鍵の値が変化する共通鍵である。鍵生成部24は、可変共通鍵を生成するときに、正規化時間を使用する。正規化時間は、経過時間を正規化した時間である。経過時間は、タイマ10がカウントする値に基づいて、時間が経過するごとに変化する。正規化時間は、経過時間に応じて変化する。
鍵生成部24は、経過時間に応じて変化する正規化時間を使用して可変共通鍵を生成しているため、可変共通鍵の値は時間の経過に応じて変化する。従って、可変共通鍵を用いて、フレームの所定領域を高い秘匿性で暗号化することができる。
また、鍵生成部24は、ローカル送信元アドレスLSとローカル宛先アドレスLDとを連結したデータの上位4byteの情報と正規化時間の4byteの情報との排他的論理和の演算を行っている。これにより、可変共通鍵の秘匿性をさらに向上させることができる。
実施形態では、鍵生成部24は、ローカル送信元アドレスLSとローカル宛先アドレスLDと正規化時間とを使用し、固定共通鍵で暗号化を行い、可変共通鍵を生成している。鍵生成部24は、可変共通鍵を生成することができれば、固定共通鍵を使用しなくてもよい。
ただし、固定共通鍵を使用して可変共通鍵を生成することで、セキュリティの高い可変共通鍵を生成することができる。従って、鍵生成部24は、固定共通鍵を用いて、可変共通鍵を生成することが好ましい。
また、鍵生成部24は、ローカル送信元アドレスLSとローカル宛先アドレスLDと正規化時間とを用いて暗号化を行って可変共通鍵を生成しているが、可変共通鍵の生成は、この例に限定されない。
次に、図12を参照して、フレームに含まれるローカル送信元アドレスLSおよびローカル宛先アドレスLDが16bitの場合について説明する。アドレスを16bitで表現する場合、異なるノード装置1に同じアドレスが付与される可能性がある。
そこで、図12に示すように、鍵生成部24は、64bitアドレスを使用する。この64bitアドレスは、ローカル送信元アドレスLSまたはローカル宛先アドレスLDの何れかのアドレスを64bitで表現した情報である。
ローカル送信元アドレスLSの経過時間を用いて可変共通鍵を生成する場合(鍵種別がLSの場合)には、ローカル送信元アドレスLSの64bitアドレスが使用される。ローカル宛先アドレスLDの経過時間を用いて可変共通鍵を生成する場合(鍵種別がLDの場合)には、ローカル宛先アドレスLDの64bitアドレスが使用される。
鍵生成部24は、図12に示すように、2byteのローカル送信元アドレスLSと2byteのローカル宛先アドレスLDと64bitアドレス(8byte)とを連結する。連結したデータは可変共通鍵と同じ16byteとなる。
従って、上述した排他的論理和は必須ではない。ただし、秘匿性をより向上させるために、連結したデータの上位4byteの情報と正規化時間の4byteの情報との排他的論理和の演算を行ってもよい。また、連結したデータは可変共通鍵と同じbyte数でなくてもよい。
<ノード装置の処理の一例>
次に、図13を参照して、ノード装置1の処理の一例について説明する。図13では、データフレームの送信側のノード装置と受信側のノード装置との処理を分けて説明する。経過時間生成部22は、タイマ10が計測している時間に基づいて、ノード装置1が起動してから経過した時間(経過時間)を生成する(ステップS1)。
署名部26は、署名を計算して、データフレームに署名を付与する(ステップS2)。上述したように、データフレームのペイロードと署名とパディングとの合計のbit数は、可変共通鍵のbit数と等しくする場合には、パディングのbit数が計算される。計算されたbit数のパディングはデータフレームに付与される(ステップS3)。
なお、暗号化の方式によっては、データフレームのペイロードと署名とパディングとの合計のbit数は可変共通鍵のbit数で割り切れる値としてもよい。また、暗号化方式によっては、データフレームのペイロードと署名とパディングとの合計のbit数は任意に設定してもよい。
暗号化部25は、データフレームのうち、ペイロードと署名とパディングとの領域を暗号化する(ステップS4)。また、フレーム送信情報生成部5は、フレームの鍵種別を指定する。暗号化する部分は、ペイロードと署名とパディングとには限定されない。
暗号化部25が、ローカル宛先アドレスLDの経過時間を使用して暗号化を行った場合には、鍵種別はLDとなる。暗号化部25が、自身のノード装置1の経過時間で暗号化を行った場合には、鍵種別はLSとなる。つまり、ローカル宛先アドレスLDの経過時間を使用しないで暗号化を行った場合に、鍵種別はLSとなる。
フレーム送信部6は、暗号化されたペイロードを含み、鍵種別が指定されたデータフレームを受信側ノード装置に送信する(ステップS5)。受信側ノード装置は、鍵種別を含むデータフレームを受信する(ステップS6)。
受信側ノード装置の復号化部27は、受信したフレームの復号化を行う(ステップS7)。復号化部27は、フレームに含まれる鍵種別によって、異なる方法で復号化を行う。そして、復号化されたフレームのパディングがチェックされる(ステップS8)。
署名部26は、受信したフレームの署名を計算して、チェックを行う(ステップS9)。そして、検知部29は、なりすまし検知を行う(ステップS10)。なりすましは、フレームに含まれる経過時間の情報に基づいて検知することができる。
次に、図14(A)を用いて、フレームを送信するときの暗号化の一例について説明する。鍵生成部24は、ローカル宛先アドレスLDが保守端末であるか否かを判定する(ステップS20)。送信先が保守端末である場合(ステップS20でYES)、保守端末の経過時間を使用して暗号化を行う(ステップS21)。保守端末についての詳細は後述する。
送信先が保守端末でない場合(ステップS20でNO)、鍵生成部24はリンクテーブルに送信先のノード装置1の経過時間の情報があるか否かを判定する(ステップS22)。ここで、リンクテーブル8には、ローカル送信元アドレスLSの項目がある。この項目は、HELLOフレームの場合には、ローカル送信元アドレスLSを示すが、データフレームの場合には、ローカル宛先アドレスLDを示す。
ノード装置1が送信先のノード装置1から、経過時間が含まれているHELLOフレームまたはデータフレームを受信した場合、HELLOフレームまたはデータフレームを受信したノード装置1は、リンクテーブル8に送信先のノード装置1の経過時間を記憶する。
従って、自身のノード装置1のリンクテーブル8に送信先のノード装置1の経過時間が記憶されている場合(ステップS22でYES)、鍵生成部24は、記憶されている経過時間を使用して、可変共通鍵の生成を行う(ステップS23)。この可変共通鍵の鍵種別はLDになる。
つまり、鍵生成部24は、フレームの送信先のノード装置(ローカル宛先アドレスLD)1の経過時間を使用して暗号化を行い、可変共通鍵を生成する。ただし、鍵生成部24が暗号化を行うときには、ローカル宛先アドレスLDの経過時間だけを暗号化の対象にしない。鍵生成部24は、ローカル宛先アドレスLDの経過時間が通知された時点から経過した時間をローカル宛先アドレスLDの経過時間に加算した時間を暗号化する。
ノード装置1が、送信先のノード装置1の経過時間が含まれているHELLOフレームおよびデータフレームを受信したことがない場合、リンクテーブル8は送信先のノード装置の経過時間を記憶していない(ステップS22でNO)。よって、この場合、ノード装置1の鍵生成部24は、自身の経過時間で暗号化を行い、可変共通鍵を生成する(ステップS24)。この可変共通鍵は鍵種別がLSになる。
次に、図14(B)を用いて、フレームを受信したときの復号化の一例について説明する。復号化部27は、自身のノード装置1が保守端末であるか否かを判定する(ステップS30)。
自身のノード装置1が保守端末である場合(ステップS30でYES)には、鍵生成部24は、自身のノード装置1の経過時間を使用して、可変共通鍵を生成する。そして、復号化部27は、鍵生成部24が生成した可変共通鍵を用いて、受信したフレームの暗号化された部分を復号化する(ステップS31)。
自身のノード装置1が保守端末でない場合(ステップS30でNO)には、復号化部27は、受信したデータフレームの鍵種別がLDであるか否かを判定する(ステップS32)。受信したデータフレームの鍵種別がLDである場合(ステップS32でYES)には、鍵生成部24は、自身のノード装置1の経過時間を使用して、可変共通鍵を生成する。復号化部27は、鍵生成部24が生成した可変共通鍵を用いて、受信したフレームの暗号化された部分を復号化する(ステップS33)。
一方、受信したデータフレームの鍵種別がLDでない場合(ステップS32でNO)、データフレームの鍵種別はLSとなる。この場合、鍵生成部24は、自身のノード装置1のリンクテーブル8に記憶されているローカル送信元アドレスLSのノード装置1の経過時間を使用して、可変共通鍵を生成する。
よって、鍵生成部24は、リンクテーブル8に記憶されている経過時間に、ローカル送信元アドレスLSのノード装置1の経過時間が通知されてから経過した時間を加算する。加算された経過時間を、正規化時間を使用して暗号化した鍵が可変共通鍵になる。復号化部27は、この可変共通鍵を使用して、受信したフレームの暗号化された部分を復号化する(ステップS34)。
従って、鍵種別によって、ノード装置1が受信したデータフレームの復号化の方法が異なる。鍵種別がLDの場合には、自身のノード装置1の経過時間で可変共通鍵を生成し、鍵種別がLSの場合には、ローカル送信元アドレスLSの経過時間を使用して可変共通鍵を生成する。
<ノード間シーケンスの一例>
次に、図15を参照して、ノード間シーケンスの一例を説明する。図15に示すノード装置Aとノード装置Bとは隣接している。一例として、ノード装置Bは、起動してからの時間が10秒であるとする。また、最初の10秒が経過するまでは、ノード装置Aとノード装置Bとの間でHELLOフレームの通信は行われていないものとする。ノード装置Aは第1のノード装置の一例である。ノード装置Bは第2のノード装置の一例である。
ノード装置Bは、ノード装置AにHELLOフレームを送信する。ノード装置Bは、HELLOフレームに、ノード装置Bが起動してから経過した時間(経過時間)が10秒であるという情報を含める。これにより、ノード装置Bの経過時間がノード装置Aに通知される。
ノード装置Aのフレーム受信部2は、HELLOフレームを受信する。フレーム受信情報解析部3は、HELLOフレームから、ノード装置Bの起動時間が10秒であることを認識する。この10秒という時間は、ノード装置Bがノード装置Aに通知したときの経過時間である。
リンクテーブル(図8では「LT」として示している)8のローカル送信元アドレスLSの項目にはノード装置Bのアドレスが記憶されると共に、ローカル送信元アドレスLSの経過時間が10秒という情報が記憶される。
図15に示した一例では、ノード装置Aはノード装置Bにデータフレーム(第1データフレーム)を送信する。ノード装置AがHELLOフレームを受信してから、ノード装置Aが第1データフレームを送信するまでの時間を10秒とする。この時間は、タイマ10から得ることができる。
従って、ノード装置Aが第1データフレームを送信するときの経過時間は20秒(=10秒+10秒)となる。鍵生成部24は、経過時間20秒に基づいて暗号化を行い、可変共通鍵を生成する。この可変共通鍵は、リンクテーブル8の経過時間を使用して暗号化を行った鍵である。つまり、この可変共通鍵は、通信を行う相手方のノード装置Bの経過時間を使用して、暗号化した鍵であるため、鍵種別はLDとなる。
ノード装置Aの暗号化部25は、経過時間20秒に基づいた可変共通鍵を用いて、第1データフレームのペイロードを含む所定部分を暗号化する。暗号化が行われた第1データフレームには鍵種別LDが設定される。
ノード装置Aのフレーム送信部6は、鍵種別がLDの第1データフレームをノード装置Bに送信する。ノード装置Bのフレーム受信部2は第1データフレームを受信する。ノード装置Bの鍵生成部24は、第1データフレームの鍵種別がLDになっているため、ノード装置Bの経過時間を使用して、可変共通鍵を生成する。
ノード装置Bは、起動してからの経過時間が20秒になっている。従って、鍵生成部24は、経過時間が20秒の可変共通鍵を生成する。そして、復号化部27は、生成した可変共通鍵で第1データフレームの暗号化された部分を復号化する。
このとき、第1データフレームのペイロードを含む所定部分は、経過時間が20秒の可変共通鍵を用いて暗号化がされている。そして、ノード装置Bの鍵生成部24も経過時間が20秒で可変共通鍵を生成し、復号化部27はこの可変共通鍵を用いて復号化を行っている。よって、暗号化を行った可変共通鍵と復号化を行う可変共通鍵とは20秒という共通の値で生成される。従って、復号化部27は、第1データフレームを復号化することができる。
図15に示す一例では、復号化部27が第1データフレームを復号化してから、10秒後に、ノード装置Bはノード装置Aに第2データフレームを送信する。ノード装置Bは、ノード装置AからHELLOフレームを受信していない。このため、ノード装置Bは、ノード装置Aから起動してからの経過時間の通知を受けていない。
従って、鍵生成部24は、自身のノード装置Bの経過時間を使用して、可変共通鍵を生成する。ノード装置Bの経過時間は、30秒(=10秒+10秒+10秒)である。よって、鍵生成部24は、ノード装置Bの経過時間30秒で可変共通鍵を生成する。そして、暗号化部25は、この可変共通鍵を用いて、第2データフレームのペイロードを含む所定部分を暗号化する。
暗号化が行われた第2データフレームには鍵種別が設定される。鍵種別はLSとなる。鍵種別がLSとなるのは、送信先のノード装置Aの経過時間を使用せず、自身のノード装置Bの経過時間で暗号化を行っているためである。
ノード装置Bのフレーム送信部6は、第2データフレームをノード装置Aに送信する。ノード装置Aのフレーム受信部2は、第2データフレームを受信する。ノード装置Aの鍵生成部24は、鍵種別がLSになっているため、リンクテーブル8に記憶されている10秒という時間を使用する。
ノード装置Aのリンクテーブル8には、ノード装置Bの経過時間10秒が記憶されている。従って、ノード装置Aは、通信の相手方の経過時間を認識していることになる。そして、ノード装置AがHELLOフレームを受信してから、20秒(=10秒+10秒)の時間が経過している。
この20秒という時間は、タイマ10から得ることができる。従って、鍵生成部24は、リンクテーブル8に記憶されている10秒という時間に、HELLOフレームを受信してから経過した20秒という時間を加算する。よって、可変共通鍵を生成するための経過時間は30秒(=10秒+20秒)となる。
鍵生成部24は、30秒という時間を使用して、可変共通鍵を生成する。復号化部27は、生成された可変共通鍵を用いて、第2データフレームの暗号化された部分を復号化する。
第2データフレームのペイロードを含む所定部分は、30秒という経過時間を使用して生成された可変共通鍵で暗号化されている。また、ノード装置Aの鍵生成部24は30秒という経過時間を使用して可変共通鍵を生成し、復号化部27はこの可変共通鍵で第2データフレームの暗号化された部分を復号化している。
よって、暗号化を行う可変共通鍵を生成するときに使用される経過時間(30秒)と復号化を行う可変共通鍵を生成するときに使用される経過時間(30秒)とは、同じ時間となっている。このため、復号化部27は、第2データフレームの暗号化された部分を復号化することができる。
従って、ノード装置Aとノード装置Bとの間で秘匿性の高いフレームの通信を行うことができる。実施形態では、隣接しているノード装置間で、相手方のノード装置が起動してからの経過時間を使用して可変共通鍵を生成してデータフレームを暗号化している。ノード装置Aおよびノード装置Bとは全く異なるノード装置の間では、異なる経過時間を使用した可変共通鍵を使用する。
アドホックネットワークは複数のノード装置で構成されており、ノード装置Aおよびノード装置Bとは異なるノード装置間では、ノード装置Aおよびノード装置Bとは異なる可変共通鍵でデータフレームが暗号化される。アドホックネットワークの2つのノード装置間は、それぞれ独自の可変共通鍵でデータフレームの所定部分を暗号化する。
アドホックネットワークを構成する全てのノード装置が、一律な可変共通鍵で暗号化することも考えられるが、通信を行う2つのノード装置が独自の可変共通鍵を用いてデータフレームを、通信の秘匿性を向上させることができる。
また、データフレームの暗号化および復号化を行うときに、相手方のノード装置1の経過時間を利用しているため、2つのノード装置1の間で可変共通鍵を共有する特別なハードウェアを設ける必要がない。従って、ハードウェア資源は増大することがない。
<経過時間の正規化の一例>
次に、図16を参照して、経過時間の正規化の一例について説明する。上述したように、隣接するノード装置間でフレームの通信を行うときに、相手方の経過時間を使用して、暗号化を行う。
図15の一例では、HELLOフレームに送信先のノード装置Bの経過時間が含まれている。ノード装置Aは、HELLOフレームを受信することにより、ノード装置Bの経過時間を認識できる。そして、ノード装置Aは、ノード装置Bの経過時間を使用して、暗号化および復号化を行う。
ノード装置BがHELLOフレームを送信したときに、HELLOフレームがノード装置Aに到達するまでに所定時間を生じる。この時間は、遅延時間となる。可変共通鍵を生成時に使用される経過時間は、遅延時間が考慮されていない。従って、ノード装置Aの経過時間とノード装置Bの経過時間との間にずれを生じる。
そこで、実施形態では、正規化部23は、荒い粒度で経過時間を正規化する。図16(A)に経過時間の正規化の一例を示す。図16(A)に示す一例では、経過時間を10秒(sec)の単位で正規化している。一例として、可変共通鍵の更新間隔の単位で正規化してもよい。
上述したように、HELLOフレームは、経過時間と識別番号とを有している。識別番号は、正規化時間に対応して生成される。図16(A)に示す一例では、識別番号(Key−ID)は、正規化時間と共にインクリメントされる。ただし、識別番号は、16の倍数になった時点でゼロになる。図16(A)の例では、識別番号がゼロになるのは、16の倍数に限定されない。
HELLOフレームは、経過時間生成部22が生成する経過時間と正規化部23が生成する識別番号とを有する。このHELLOフレームが、ローカル送信元アドレスLSのノード装置1からローカル宛先アドレスLDのノード装置1に送信される。
許容範囲について説明する。許容範囲は、ローカル送信元アドレスLSのノード装置1が送信したデータフレームをローカル宛先アドレスLDのノード装置1が受信することを許容するか否かを示す基準となる。
上述したように、ローカル送信元アドレスLSのノード装置1の経過時間とローカル宛先アドレスLDのノード装置1の経過時間との間にずれを生じることがある。一例として、ローカル送信元アドレスLSのノード装置1の経過時間を19とすると、正規化時間は1となる。
一方、ローカル宛先アドレスLDのノード装置1の経過時間を20とすると、正規化時間は2となる。よって、ローカル送信元アドレスLSのノード装置1の正規化時間とローカル宛先アドレスLDのノード装置1の正規化時間とは一致しない。
従って、正規化時間を正規化した正規化時間が切り替わるタイミングを考慮して、前後の正規化時間および識別番号を許容する。一例として、正規化時間が2であるときには、正規化時間が2だけでなく、正規化時間1および3も許容する。つまり、正規化時間のプラスマイナス1の正規化時間を許容する。
図16(B)は、ローカル送信元アドレスLSのノード装置1が送信したデータフレームをローカル宛先アドレスLDのノード装置1が受信することが許可される一例を示している。図16(B)において、「Src」と示しているのは、ローカル送信元アドレスLSのノード装置1であり、「Dst」と示しているのは、ローカル宛先アドレスLDのノード装置1である。
図16(B)の1番目は、Dstのノード装置1がデータフレームを正常に受信する一例を示している。Srcのノード装置1は、Dstのノード装置1の経過時間が14秒であると認識している。従って、Srcのノード装置1の正規化部23が正規化した正規化時間は1となる。
従って、Srcのノード装置1の鍵生成部24は、正規化時間の1を用いて可変共通鍵を生成する。暗号化部25は、可変共通鍵を用いてデータフレームのペイロードを含む部分を暗号化する。フレーム送信部6は、識別番号の1を含むデータフレームをDstのノード装置1に送信する。
一方、Dstのノード装置1の経過時間は15秒である。Srcのノード装置1が認識している経過時間とは1秒ずれているが、正規化時間は1となる。Dstのノード装置1のフレーム受信部2は、Srcのノード装置1からデータフレームを受信する。受信したデータフレームには識別番号の1が含まれている。
受信したデータフレームの識別番号とDstのノード装置1が正規化した正規化時間とは一致している。よって、Dstのノード装置1は、データフレームを許可する。そして、Dstのノード装置1は、正規化時間の1を用いて生成した可変共通鍵を用いて、受信したデータフレームの暗号化された部分を復号化する。
図16(B)の2番目も、Dstのノード装置1がデータフレームの受信することが許可される一例を示している。Srcのノード装置1は、Dstのノード装置1の経過時間が19秒であると認識している。従って、Srcのノード装置1の正規化部23が正規化した正規化時間は2となる。
従って、Srcのノード装置1の鍵生成部24は、正規化時間の2を用いて可変共通鍵を生成する。暗号化部25は、可変共通鍵を用いてデータフレームのペイロードを含む部分を暗号化する。フレーム送信部6は、識別番号の2を含むデータフレームをDstのノード装置1に送信する。
一方、Dstのノード装置1の経過時間は20秒である。上述した1番目の例と同様に、Srcのノード装置1が認識している経過時間とは1秒ずれている。しかし、経過時間20秒を正規化すると、正規化時間は2となる。Dstのノード装置1のフレーム受信部2は、Srcのノード装置1からデータフレームを受信する。受信したデータフレームには識別番号の1が含まれている。
受信したデータフレームの識別番号は1であり、Dstのノード装置1が正規化した正規化時間は2であるため、Srcの正規化時間より値が1つ大きい。しかし、上述したように、前後1つのずれは許容される。従って、Dstのノード装置1は、データフレームを許可する。
このとき、Dstのノード装置1は、自身が認識している正規化時間である2ではなく、受信したデータフレームの識別番号である1を用いて可変共通鍵を生成する。復号化部27は、生成された可変共通鍵を用いて、受信したデータフレームの暗号化された部分を復号化する。
図16(B)の3番目は、Dstのノード装置1がデータフレームの受信を許可しない一例を示している。Srcのノード装置1は、Dstのノード装置1の経過時間が155秒であると認識している。Srcのノード装置1の正規化部23が正規化した正規化時間は15となる。
従って、Srcのノード装置1の鍵生成部24は、正規化時間の15を用いて可変共通鍵を生成する。暗号化部25は、可変共通鍵を用いてデータフレームのペイロードを含む部分を暗号化する。フレーム送信部6は、識別番号の15を含むデータフレームをDstのノード装置1に送信する。
一方、Dstのノード装置1の経過時間は175秒であるため、経過時間175秒を正規化すると、正規化時間は17となる。Dstのノード装置1のフレーム受信部2は、Srcのノード装置1からデータフレームを受信する。受信したデータフレームには識別番号の15が含まれている。
受信したデータフレームの識別番号は15であり、Dstのノード装置1が正規化した正規化時間は17である。従って、Dstのノード装置1が正規化した正規化時間は、受信したデータフレームの識別番号は15よりも値が2つ大きい。よって、Dstのノード装置1は、Srcのノード装置1が送信したデータフレームを許可しない。この場合、Srcのノード装置1が送信したデータフレームは破棄される。
図16(B)の4番目も、Dstのノード装置1がデータフレームの受信を許可しない一例を示している。Srcのノード装置1は、Dstのノード装置1の経過時間が15秒であると認識している。従って、Srcのノード装置1の正規化部23が正規化した正規化時間は1となる。
従って、Srcのノード装置1の鍵生成部24は、正規化時間の15を用いて可変共通鍵を生成する。暗号化部25は、可変共通鍵を用いてデータフレームのペイロードを含む部分を暗号化する。フレーム送信部6は、識別番号の1を含むデータフレームをDstのノード装置1に送信する。
一方、Dstのノード装置1の経過時間は175秒であるため、経過時間175秒を正規化すると、正規化時間は17となる。受信したデータフレームの識別番号は1であり、Dstのノード装置1が正規化した正規化時間は17である。図16(A)に示すように、正規化時間の17に対応する識別番号は1である。よって、正規化時間と識別番号との対応関係は正常である。
Dstのノード装置1は、Srcのノード装置1が送信したデータフレームの暗号化された部分を復号化する。このとき、Dstのノード装置1は、正規化時間である17で生成した可変共通鍵を用いて、受信したデータフレームの暗号化された部分を復号化する。
しかしながら、Srcのノード装置1は、正規化時間が1の可変共通鍵で暗号化を行っている。よって、Dstのノード装置1が受信したデータフレームは正常に復号されない。このため、Dstのノード装置1は、受信したデータフレームを許容しない。よって、データフレームは破棄される。
<第1の応用例>
次に、図17を参照して、第1の応用例について説明する。図17に一例として示すクライアントノード(図17ではクライアントと示している)およびホストノード(図17ではホストと示している)は、ノード装置1の構成を有しているものとする。第1の応用例は、クライアントモードとも称され、クライアントノードとホストノードとの間で行われる通信形態を示している。
クライアントノードは、常時において、スリープ状態となっている。よって、クライアントノードは、隣接するノード装置と通信を行わない。従って、スリープ状態となっているクライアントノードは、ホストノードと通信を行わない。
クライアントノードは、スリープ状態から起動状態(WakeUp状態)に変化した後に、隣接するノード装置1からHELLOフレームを受信する。HELLOフレームは、ホストノードの経過時間を含んでいるため、クライアントノードは、最初の受信したHELLOフレームに含まれるホストノードの経過時間をリンクテーブル8に記憶する。
図17の「1.ホスト要求/データ取得要求」に示されるように、クライアントノードの鍵生成部24は、ホストノードの経過時間を使用して、鍵種別がLDの可変共通鍵を生成する。クライアントノードは、送信するデータフレームの暗号化する部分に自身の経過時間を含める。一例として、自身の経過時間はデータフレームのペイロードに含まれてもよい。
クライアントノードの暗号化部25は、データフレームのペイロードを含む部分を暗号化する。従って、クライアントノードの経過時間も可変共通鍵で暗号化される。クライアントノードのフレーム送信部6は、暗号化したデータフレームをホストノードに送信する。
ホストノードは、クライアントノードにHELLOフレームを送信してからの経過時間をタイマ10で計測している。ホストノードの鍵生成部24は、経過時間を用いて可変共通鍵を生成する。ホストノードの復号化部27は、クライアントノードが送信したフレームの復号化を行う。これにより、ホストノードは、クライアントノードの経過時間を認識することができる。
次に、図17の「2.ホスト応答/データ取得応答」に示されるように、ホストノードは、鍵種別がLDの可変共通鍵を生成する。ホストノードは、送信するデータフレームの暗号化する部分に自身の経過時間を含める。一例として、自身の経過時間はデータフレームのペイロードに含まれてもよい、
ホストノードの暗号化部25は、データフレームのペイロードを含む部分を暗号化する。従って、ホストノードの経過時間も可変共通鍵で暗号化される。ホストノードのフレーム送信部6は、暗号化したデータフレームをホストノードに送信する。
クライアントノードは、ホストノードにデータフレームを送信してからの経過時間をタイマ10で計測している。クライアントノードの鍵生成部24は、経過時間を用いて可変共通鍵を生成する。クライアントノードの復号化部27は、ホストノードが送信したフレームの復号化を行う。これにより、クライアントノードは、ホストノードの経過時間を認識することができる。
以降のクライアントノードとホストノードとの通信は、図17の「3.以降の送受信」で示されるように、データフレームの送信時には、相手方のノード装置1から取得した経過時間を使用した可変共通鍵で暗号化を行う。このときに、データフレームの暗号化される部分に自身の経過時間を含める。これにより、クライアントノードおよびホストノードは、相手方のノード装置1の経過時間を使用して、暗号化を行うことができる。
クライアントノードおよびホストノードが復号化を行うときには、自身のノード装置1の経過時間を使用して可変共通鍵を生成する。そして、クライアントノードおよびホストノードは、生成した可変共通鍵を用いて、受信したデータフレームを復号化する。
従って、クライアントノードおよびホストノードは、自身の経過時間を暗号化したデータフレームを送信するため、HELLOフレームではなく、データフレームに基づいて、経過時間を用いた可変共通鍵を生成することができる。
特に、クライアントノードは、使用電力削減のため、一定時間通信が行われていない場合には、スリープ状態となる。スリープ状態の場合には、クライアントノードはHELLOフレームを受信することができない。このような場合に、データフレームに経過時間を含めることで、高い秘匿性のデータフレームの通信が可能になる。また、使用電力削減の効果を得ることができる。
<第2の応用例>
次に、図18および図19を参照して、第2の応用例について説明する。第2の応用例は、GD検索と称される例である。GD検索は、ゲートウェイ装置(図18および図19では、GWと示している)が、1つの特定のノード装置1にフレームを送信する場合に用いられる。送信されるフレームは、UC(Uni Cast)データとも称される。
ゲートウェイ装置は、自身のルーティングテーブルにフレーム(UCデータ)を送信する送信先のノード装置1(以下、特定ノード装置と称する)のアドレスがルーティングテーブルに記憶されていない場合、GD検索が実行される。
GD検索を行うとき、ゲートウェイ装置は、自身に隣接するノード装置1のルーティングテーブル9に特定ノード装置のアドレスが記憶されているか否かを問い合わせる。そして、ルーティングテーブルに特定ノード装置のアドレスを記憶しているノード装置1があれば、このノード装置1を経由して、フレームが送信される。このノード装置1を、応答ノードとする。
図18および図19を用いて、GD検索について説明する。GD検索は、GD検索要求とGD検索応答とを含む。GD検索要求は、ゲートウェイ装置が隣接するノード装置1に対して、特定ノード装置のアドレスが記憶されているか否かを問い合わせる。
図18の「1.GD検索要求」に示すように、GD検索要求を行う場合、ゲートウェイ装置は、GD検索要求を固定共通鍵で暗号化する。GD検索要求は、可変共通鍵で暗号化してもよい。
応答ノードは、GD検索要求のフレームを復号化する。GD検索要求のフレームは、固定共通鍵で暗号化されているため、応答ノードは、GD検索要求のフレームを復号化することができる。
次に、GD検索応答について説明する。図18のA−2は、固定共通鍵で暗号化した場合のGD検索応答を示している。応答ノードは、ゲートウェイ装置からのGD検索要求に対して、自身が特定ノード装置のアドレスを記憶していることを応答する。応答ノードは、この応答(GD経路あり)を固定共通鍵で暗号化したフレームをゲートウェイ装置に送信する。
ゲートウェイ装置は、固定共通鍵を復号化することで、応答ノードをフレームの送信先として確定する。つまり、ゲートウェイ装置は、応答ノード経由で、特定ノード装置にデータフレームを送信する。
図18のA−3は、以降の送受信例を示している。ゲートウェイ装置と応答ノードとの間で送受信されるデータフレームは、高い秘匿性が要求される。従って、データフレームは可変共通鍵で暗号化される。
ゲートウェイ装置は、リンクテーブル(図18のLT)に応答ノードの経過時間が記憶されていない場合、鍵種別がLDの可変共通鍵(図18以降では、LD共通鍵と示すこともある)でフレームを暗号化することができない。従って、ゲートウェイ装置は、鍵種別がLSの可変共通鍵でフレームを暗号化する。
ゲートウェイ装置は、暗号化したデータフレームを応答ノードに送信する。応答ノードは、リンクテーブル8にゲートウェイ装置の経過時間を記憶していない。従って、鍵種別がLSの可変共通鍵で暗号化されたデータフレームを復号化することができない。
一方、応答ノードは、リンクテーブル8にゲートウェイ装置の経過時間が記憶されていない場合、鍵種別がLSの可変共通鍵でデータフレームを暗号化する。応答ノードは、暗号化されたデータフレームをゲートウェイ装置に送信する。
ゲートウェイ装置は、リンクテーブルに応答ノードの経過時間が記憶されていない場合、鍵種別がLSの可変共通鍵で暗号化されたデータフレームを復号化することができない。従って、図18のA−2およびA−3の場合には、ゲートウェイ装置と応答ノードとの間でデータフレームの送受信を行うことができない。
次に、鍵種別がLDの可変共通鍵で暗号化した場合のGD検索応答について説明する。図18のB−2に示すように、応答ノードは、リンクテーブル8にゲートウェイ装置の経過時間が記憶されている場合、記憶されている経過時間を使用して、可変共通鍵を生成する。そして、応答ノードは、可変共通鍵を用いて、フレームを暗号化し、暗号化したフレームをゲートウェイ装置に送信する。
ゲートウェイ装置は、鍵種別がLDの可変共通鍵(図18以降では、LD共通鍵と示すこともある)で暗号化されたフレームを受信しているため、フレームの復号化を行うことができる。これにより、フレームの送信先が応答ノードであることが確定する。
図18のB−3は、以降の送受信例を示している。ゲートウェイ装置が応答ノードにデータフレームを送信する場合について説明する。ゲートウェイ装置のリンクテーブルに応答ノードの経過時間がない場合は、鍵種別がLSの可変共通鍵でデータフレームを暗号化する。そして、ゲートウェイ装置は、データフレームを応答ノードに送信する。
応答ノードは、リンクテーブル8にゲートウェイ装置の経過時間を記憶している。よって、応答ノードは、鍵種別がLDの可変共通鍵を生成することができる。応答ノードは、受信したフレームを鍵種別がLDの可変共通鍵で復号化する。
次に、応答ノードがゲートウェイ装置にデータフレームを送信する場合について説明する。応答ノードは、リンクテーブル8にゲートウェイ装置の経過時間が記憶されている。よって、応答ノードは、鍵種別がLDの可変共通鍵でデータフレームを暗号化する。
応答ノードは、鍵種別がLDの可変共通鍵を受信しているため、自身の応答ノードの経過時間を使用して可変共通鍵を生成する。そして、応答ノードは、自身の可変共通鍵を使用して、データフレームを復号化する。従って、ゲートウェイ装置と応答ノードとの間でデータフレームの送受信を高い秘匿性で行うことができる。
次に、鍵種別がLSの可変共通鍵で暗号化した場合のGD検索応答について説明する。図19のC−2に示すように、応答ノードは、リンクテーブル8にゲートウェイ装置の経過時間が記憶されていない場合、自身の経過時間を使用して、可変共通鍵を生成する。そして、応答ノードは、鍵種別がLSの可変共通鍵でデータフレームを暗号化して、暗号化したフレームをゲートウェイ装置に送信する。
ゲートウェイ装置は、リンクテーブルに応答ノードの経過時間が記憶されている場合には、当該経過時間を使用して、鍵種別がLDの可変共通鍵を生成する。ゲートウェイ装置は、生成した可変共通鍵を使用して、受信したフレームを復号化する。これにより、ゲートウェイ装置が応答ノードにデータフレームを送信することが確定する。
図19のC−3は、以降の送受信例を示している。ゲートウェイ装置は、リンクテーブルに応答ノードの経過時間が記憶されているため、この経過時間を使用して、鍵種別がLDの可変共通鍵を生成する。ゲートウェイ装置は、生成した可変共通鍵でデータフレームを暗号化して、応答ノードにデータフレームを送信する。
応答ノードは、鍵種別がLDの可変共通鍵で暗号化されたデータフレームを受信しているため、自身の経過時間を使用して生成した可変共通鍵で受信したデータフレームを復号化する。
応答ノードがゲートウェイ装置にデータフレームを送信する場合について説明する。応答ノードは、リンクテーブル8にゲートウェイ装置の経過時間を記憶していない。従って、自身の経過時間を使用した可変共通鍵でデータフレームを暗号化する。そして、応答ノードは、暗号化したデータフレームをゲートウェイ装置に送信する。
ゲートウェイ装置は、リンクテーブルに応答ノードの経過時間を記憶している。従って、応答ノードは、リンクテーブルにある経過時間を使用して、鍵種別がLDの可変共通鍵を生成する。そして、ゲートウェイ装置は、生成した可変共通鍵でフレームを復号化する。従って、ゲートウェイ装置と応答ノードとの間でデータフレームの送受信を高い秘匿性で行うことができる。
図19のD−2は、鍵種別がLSの可変共通鍵を使用して暗号化を行い、ゲートウェイ装置が復号化できない場合のGD検索応答の一例を示している。応答ノードは、リンクテーブル8にゲートウェイ装置の経過時間が記憶されていない場合には、自身の経過時間を使用して、鍵種別がLSの可変共通鍵を生成する。そして、応答ノードは、生成した可変共通鍵を用いて、検索応答のフレームを暗号化し、検索応答のフレームをゲートウェイ装置に送信する。
ゲートウェイ装置は、リンクテーブルに応答ノードの経過時間が記憶されていない場合、受信したフレームの復号化を行うことができない。この場合、ゲートウェイ装置および応答ノードの両者に、相手方の経過時間が記憶されていないことになる。
従って、応答ノードのルーティングテーブルに特定ノード装置の情報が記憶されているとしても、図19のD−2の場合には、ゲートウェイ装置は応答ノードにデータフレームを送信しない。つまり、図19のD−2における応答ノードは、データフレームの送信先としては選択されない。この場合は、別の応答ノードが検索されて、別の応答ノード経由で、ゲートウェイ装置は応答ノードにフレームを送信する。
<第3の応用例>
次に、図20を参照して、保守端末がノード装置と通信する一例について説明する。保守端末は、任意のノード装置に対する操作が可能な端末である。よって、保守端末が不正な攻撃を受けると、ネットワーク全体に攻撃が可能になる。このため、保守端末は、固定共通鍵を使用してデータフレームを送信しない。
保守端末とノード装置1(以下、対象ノードとする)との間でデータフレームを送受信する一例について説明する。図20の「1.保守端末認証要求」に示すように、保守端末は、自身の経過時間を含むフレームを固定共通鍵で暗号化し、暗号化したフレームを対象ノードに送信する。
対象ノードは、固定共通鍵で暗号化されたフレームを復号化し、保守端末の経過時間を取得する。図20の「2.保守端末認証応答」に示されるように、対象ノードは、鍵種別がLDの可変共通鍵で自身の経過時間を暗号化し、暗号化したフレームを保守端末に送信する。
保守端末は、鍵種別がLDの可変共通鍵で暗号化されたフレームを受信しているため、受信したフレームを復号化できる。これにより、保守端末は、対象ノードの経過時間を取得することができる。
図20の「3.以降の送受信」に示されるように、保守端末および対象ノードがデータフレームの送信を行うときには、保守端末および対象ノードは、データフレームを鍵種別がLDの可変共通鍵で暗号化する。
保守端末および対象ノードがデータフレームの受信を行うときには、保守端末および対象ノードは、自身の経過時間で可変共通鍵を生成し、生成した可変共通鍵で受信したデータフレームの復号化を行う。従って、保守端末と対象ノードとの間でデータフレームの送受信を高い秘匿性で行うことができる。
<ノード装置のハードウェア構成の一例>
次に、ノード装置1のハードウェア構成の一例について説明する。図21に示すように、ノード装置1は、バス40に対して、プロセッサ41とRAM(Random Access Memory)32とROM(Read Only Memory)33と補助記憶装置44と無線モジュール45と可搬型記憶装置接続部46とハードウェアタイマ48が接続されている。
プロセッサ41はCPU(Central Processing Unit)のような任意の処理回路である。プロセッサ41はRAM42に展開されたプログラムを実行する。ROM43はRAM42に展開されるプログラムを記憶する不揮発性の記憶装置である。RAM42に展開されるプログラムは補助記憶装置44に記憶されていてもよい。記憶装置の一例としては、フラッシュメモリやハードディスクドライブ等を適用することができる。
無線モジュール45は、ノード装置1が他の通信装置と無線通信を行う機能を有する通信インタフェースである。無線モジュール45を介して、ノード装置とノード装置との間の通信、およびノード装置とゲートウェイ装置との間の通信が行われる。
可搬型記憶装置接続部46は、可搬型記憶装置47と接続可能に設けられている。可搬型記憶装置47としては、可搬型のメモリや光学式ディスク(例えば、CD(Compact Disk)やDVD(Digital Video Disk)等)を適用することができる。ハードウェアタイマ48は、時間をカウントする。
RAM42、ROM43および補助記憶装置44は、何れもコンピュータ読み取り可能な有形の記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。
一例として、フレーム受信部2およびフレーム送信部6は無線モジュール45により実現されてもよい。フレーム受信情報解析部3、制御部4およびフレーム送信情報生成部5は、プロセッサ41により実現されてもよい。固定共通鍵記憶部21はROM43により実現されてもよい。リンクテーブル8およびルーティングテーブル9は、補助記憶装置44により実現されてもよい。タイマ10は、ハードウェアタイマ48により実現されてもよい。
<ゲートウェイ装置のハードウェア構成の一例>
図22は、ゲートウェイ装置のハードウェア構成の一例を示している。ゲートウェイ装置は、ノード装置の一種であり、ゲートウェイ装置とノード装置とはほぼ同様のハードウェア構成となっている。ゲートウェイ装置は、図21に示したノード装置のハードウェア構成に対して、インタフェース49が追加されている。インタフェース49は、ゲートウェイ装置がネットワークサーバと通信を行うときに使用してもよい。
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
ノード装置であって、
隣接するノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する共通鍵を生成し、前記経過時間を通知されていないときには、自身のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵を生成する鍵生成部と、
前記鍵生成部が生成する共通鍵で、前記隣接するノード装置に送信するデータフレームを暗号化する暗号化部と、
前記暗号化部が暗号化した前記データフレームを前記隣接するノード装置に送信する送信部と、
を備えるノード装置。
(付記2)
前記鍵生成部は、前記経過時間を一定時間ごとに正規化する正規化部、
を備える付記1記載のノード装置。
(付記3)
前記鍵生成部は、前記隣接するノード装置のアドレスと前記自身のノード装置のアドレスと前記正規化部が正規化した正規化時間とを連結したデータを暗号化して前記共通鍵を生成する、
付記2記載のノード装置。
(付記4)
前記鍵生成部は、前記連結したデータを暗号化するときに、鍵の値が変化しない固定共通鍵を使用する、
付記3記載のノード装置。
(付記5)
前記鍵生成部は、前記連結したデータのバイト数が前記共通鍵のバイト数より少ない場合には、前記隣接するノード装置のアドレスまたは前記自身のノード装置のアドレスを連結して、前記共通鍵のバイト数と一致させる、
付記3記載のノード装置。
(付記6)
前記鍵生成部は、前記連結したデータのバイト数が前記共通鍵のバイト数以上の場合には、前記連結したデータと前記正規化時間のデータとで排他的論理和の演算を行い、前記共通鍵を生成する、
付記3記載のノード装置。
(付記7)
前記経過時間は、HELLOフレームに含められる、
付記1記載のノード装置。
(付記8)
前記経過時間は暗号化されて、暗号化された前記経過時間はデータフレームに含められる、
付記1記載のノード装置。
(付記9)
前記ノード装置に隣接する前記隣接するノード装置は、保守端末であり、
前記保守端末は、前記ノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵を生成して、生成した共通鍵で前記ノード装置に送信するデータフレームを暗号化し、
前記ノード装置は、前記保守端末が起動してからの経過時間に基づいて鍵の値が変化する共通鍵を生成して、生成した共通鍵で前記保守端末に送信するデータフレームを暗号化する、
付記1記載のノード装置。
(付記10)
前記データフレームに含まれる経過時間に基づいて、なりすまし検知を行う検知部、
を備える付記1記載のノード装置。
(付記11)
前記ノード装置は、スリープ状態から起動状態に変化した後に、前記隣接するノード装置から最初に受信したHELLOフレームに含まれる経過時間に基づいて、暗号化を行う、
付記1記載のノード装置。
(付記12)
自身のノード装置にデータフレームを送信する隣接するノード装置に自身のノード装置が起動してからの経過時間を通知し、且つ通知したときの経過時間に基づいて鍵の値が変化する共通鍵で暗号化されたデータフレームを受信したときに、自身のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵で前記データフレームを復号化する復号化部、
を備える付記1記載のノード装置。
(付記13)
前記データフレームに含まれる前記正規化時間に対応した識別番号が前記自身のノード装置の経過時間を正規化時間の前後の範囲内にあるときに、前記データフレームが許可され、前記範囲内にないときに、前記データフレームが許可されない、
付記12記載のノード装置。
(付記14)
プロセッサを備えるノード装置であって、
隣接するノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する共通鍵を生成し、
前記経過時間を通知されていないときには、自身のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵を生成し、
前記鍵生成部が生成する共通鍵で、前記隣接するノード装置に送信するデータフレームを暗号化し、
暗号化した前記データフレームを前記隣接するノード装置に送信する、
ノード装置。
(付記15)
第1のノード装置と第2のノード装置とを有する通信システムであって、
前記第1のノード装置は、
前記第2のノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する共通鍵を生成し、前記経過時間を通知されていないときには、前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵を生成する鍵生成部と、
前記鍵生成部が生成する共通鍵で、前記第2のノード装置に送信するデータフレームを暗号化する暗号化部と、
前記暗号化部が暗号化した前記データフレームを前記第2のノード装置に送信する送信部と、
を備え、
前記第2のノード装置は、
前記データフレームを受信する受信部と、
前記第2のノード装置に前記第1のノード装置が起動してからの経過時間を通知し、且つ通知したときの経過時間に基づいた共通鍵で暗号化されたデータフレームを受信したときに、前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵で前記データフレームを復号化する復号化部と、
を備える、
通信システム。
(付記16)
第1のノード装置と第2のノード装置との間で通信を行う通信方法であって、
前記第1のノード装置は、前記第2のノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する共通鍵を生成し、前記経過時間を通知されていないときには、前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵を生成し、
前記第1のノード装置は、生成した共通鍵で、前記第2のノード装置に送信するデータフレームを暗号化し、
前記第1のノード装置は、暗号化した前記データフレームを前記第2のノード装置に送信し、
前記第2のノード装置は、前記データフレームを受信し、
前記第2のノード装置は、前記第1のノード装置にデータフレームを送信する他の隣接するノード装置に前記第1のノード装置が起動してからの経過時間を通知したときの経過時間に基づいた共通鍵で暗号化されたデータフレームを受信したときに、前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵で前記データフレームを復号化する、
通信方法。
(付記17)
第1のノード装置は、第2のノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する共通鍵を生成し、前記経過時間を通知されていないときには、前記第1のノード装置が起動してからの経過時間に基づいて共通鍵を生成し、
前記第1のノード装置は、生成した共通鍵で、前記第2のノード装置に送信するデータフレームを暗号化し、
前記第1のノード装置は、暗号化した前記データフレームを前記第2のノード装置に送信し、
前記第2のノード装置は、前記データフレームを受信し、
前記第2のノード装置は、前記第1のノード装置にデータフレームを送信する他の隣接するノード装置に前記第1のノード装置が起動してからの経過時間を通知したときの経過時間に基づいた共通鍵で暗号化されたデータフレームを受信したときに、前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵で前記データフレームを復号化する、
処理をコンピュータに実行させる通信プログラム。
1 通信装置
2 フレーム受信部
3 フレーム送信部
7 セキュリティ処理部
10 タイマ
21 固定共通鍵記憶部
22 経過時間生成部
23 正規化部
24 鍵生成部
25 暗号化部
27 復号化部
41 プロセッサ
42 RAM
43 ROM

Claims (11)

  1. ノード装置であって、
    隣接するノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する第1の共通鍵を生成し、前記経過時間を通知されていないときには、自身のノード装置が起動してからの経過時間に基づいて鍵の値が変化する第2の共通鍵を生成する鍵生成部と、
    前記鍵生成部が生成する前記第1の共通鍵または前記第2の共通鍵で、前記隣接するノード装置に送信するデータフレームを暗号化する暗号化部と、
    前記暗号化部が暗号化した前記データフレームとともに、前記第1の共通鍵または前記第2の共通鍵の何れで前記暗号化を行ったかを示す鍵種別の情報を前記隣接するノード装置に送信する送信部と、
    前記隣接するノード装置から暗号化されたデータフレームとともに前記鍵種別の情報を受信した際、前記鍵種別の情報に応じて、前記第1の共通鍵と前記第2の共通鍵とのうち何れかを用いて、前記データフレームを復号化する復号化部と、
    を備えるノード装置。
  2. 前記鍵生成部は、前記経過時間を一定時間ごとに正規化する正規化部、
    を備える請求項1記載のノード装置。
  3. 前記鍵生成部は、前記隣接するノード装置のアドレスと前記自身のノード装置のアドレスと前記正規化部が正規化した正規化時間とを連結したデータを暗号化して前記第1の共通鍵または前記第2の共通鍵を生成する、
    請求項2記載のノード装置。
  4. 前記鍵生成部は、前記連結したデータを暗号化するときに、鍵の値が変化しない固定共通鍵を使用する、
    請求項3記載のノード装置。
  5. 前記鍵生成部は、前記連結したデータのバイト数が前記第1の共通鍵または前記第2の共通鍵のバイト数より少ない場合には、前記隣接するノード装置のアドレスまたは前記自身のノード装置のアドレスを連結して、前記第1の共通鍵または前記第2の共通鍵のバイト数と一致させる、
    請求項3または4記載のノード装置。
  6. 前記鍵生成部は、前記連結したデータのバイト数が前記第1の共通鍵または前記第2の共通鍵のバイト数以上の場合には、前記連結したデータと前記正規化時間のデータとで排他的論理和の演算を行い、前記第1の共通鍵または前記第2の共通鍵を生成する、
    請求項3または4記載のノード装置。
  7. 自身のノード装置にデータフレームを送信する隣接するノード装置に自身のノード装置が起動してからの経過時間を通知し、且つ前記経過時間を通知したときの経過時間に基づいた共通鍵で暗号化されたデータフレームを受信したときに、自身のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵で前記データフレームを復号化する復号化部、
    を備える請求項1乃至6の何れか1項に記載のノード装置。
  8. 前記データフレームに含まれる前記正規化時間に対応した識別番号が前記自身のノード装置の正規化時間の前後の範囲内に含まれるときに、前記データフレームが許可され、前記範囲内にないときに、前記データフレームが許可されない、
    請求項7記載のノード装置。
  9. 第1のノード装置と第2のノード装置とを有する通信システムであって、
    前記第1のノード装置は、
    前記第2のノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する第1の共通鍵を生成し、前記経過時間を通知されていないときには、前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する第2の共通鍵を生成する鍵生成部と、
    前記鍵生成部が生成する前記第1の共通鍵または前記第2の共通鍵で、前記第2のノード装置に送信するデータフレームを暗号化する暗号化部と、
    前記暗号化部が暗号化した前記データフレームとともに、前記第1の共通鍵または前記第2の共通鍵の何れで前記暗号化を行ったかを示す鍵種別の情報を前記第2のノード装置に送信する送信部と、
    を備え、
    前記第2のノード装置は、
    前記データフレームを受信する受信部と、
    前記鍵種別の情報に応じて、前記第1のノード装置から通知された前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵と前記第2のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵とのうち何れかを用いて、前記データフレームを復号化する復号化部と、
    を備える、
    通信システム。
  10. 第1のノード装置と第2のノード装置との間で通信を行う通信方法であって、
    前記第1のノード装置は、前記第2のノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する第1の共通鍵を生成し、前記経過時間を通知されていないときには、前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する第2の共通鍵を生成し、
    前記第1のノード装置は、生成した前記第1の共通鍵または前記第2の共通鍵で、前記第2のノード装置に送信するデータフレームを暗号化し、
    前記第1のノード装置は、暗号化した前記データフレームとともに、前記第1の共通鍵または前記第2の共通鍵の何れで前記暗号化を行ったかを示す鍵種別の情報を前記第2のノード装置に送信し、
    前記第2のノード装置は、前記データフレームを受信し、
    前記第2のノード装置は、前記鍵種別の情報に応じて、前記第1のノード装置から通知された前記第1のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵と前記第2のノード装置が起動してからの経過時間に基づいて鍵の値が変化する共通鍵とのうち何れかを用いて、前記データフレームを復号化する、
    通信方法。
  11. ノード装置に処理を実行させる通信プログラムであって、
    隣接するノード装置が起動してからの経過時間を通知されているときには、通知された前記経過時間に基づいて鍵の値が変化する第1の共通鍵を生成し、前記経過時間を通知されていないときには、自身のノード装置が起動してからの経過時間に基づいて鍵の値が変化する第2の共通鍵を生成し、
    生成された前記第1の共通鍵または前記第2の共通鍵で、前記隣接するノード装置に送信するデータフレームを暗号化し、
    暗号化された前記データフレームとともに、前記第1の共通鍵または前記第2の共通鍵の何れで前記暗号化を行ったかを示す鍵種別の情報を前記隣接するノード装置に送信し、
    前記隣接するノード装置から暗号化されたデータフレームとともに前記鍵種別の情報を受信した際、前記鍵種別の情報に応じて、前記第1の共通鍵と前記第2の共通鍵とのうち何れかを用いて、前記データフレームを復号化する、
    通信プログラム。
JP2013238137A 2013-11-18 2013-11-18 ノード装置、通信システム、通信方法および通信プログラム Active JP6303426B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013238137A JP6303426B2 (ja) 2013-11-18 2013-11-18 ノード装置、通信システム、通信方法および通信プログラム
US14/540,106 US9614817B2 (en) 2013-11-18 2014-11-13 Apparatus, system, method, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013238137A JP6303426B2 (ja) 2013-11-18 2013-11-18 ノード装置、通信システム、通信方法および通信プログラム

Publications (2)

Publication Number Publication Date
JP2015099984A JP2015099984A (ja) 2015-05-28
JP6303426B2 true JP6303426B2 (ja) 2018-04-04

Family

ID=53174506

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013238137A Active JP6303426B2 (ja) 2013-11-18 2013-11-18 ノード装置、通信システム、通信方法および通信プログラム

Country Status (2)

Country Link
US (1) US9614817B2 (ja)
JP (1) JP6303426B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6730602B2 (ja) * 2016-09-13 2020-07-29 株式会社Jvcケンウッド 復号装置、暗号化装置、復号方法、暗号化方法、プログラム
CN113992427B (zh) * 2020-12-23 2023-08-25 技象科技(南京)有限公司 基于相邻节点的数据加密发送方法及装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4864615A (en) * 1988-05-27 1989-09-05 General Instrument Corporation Reproduction of secure keys by using distributed key generation data
JPH0923223A (ja) * 1995-07-04 1997-01-21 Toshiba Corp データ送受信装置
JP2002164878A (ja) * 2000-11-28 2002-06-07 Murata Mach Ltd ファクシミリ装置
JP4040886B2 (ja) * 2002-02-15 2008-01-30 三菱電機株式会社 コンテンツ管理システムおよびコンテンツ管理方法
JP2004072409A (ja) * 2002-08-06 2004-03-04 Matsushita Electric Ind Co Ltd 暗号通信方法及びそれを用いた暗号通信装置
JP2005117254A (ja) 2003-10-06 2005-04-28 Nippon Telegr & Teleph Corp <Ntt> 無線局間における相手認証方法、および無線局端末装置、ならびにプログラム
DE602004018034D1 (de) * 2004-01-26 2009-01-08 Nds Ltd Zeitlinienschutz
US20060159260A1 (en) * 2005-01-14 2006-07-20 Eaton Corporation Method and communication system employing secure key exchange for encoding and decoding messages between nodes of a communication network
US20070253352A1 (en) * 2006-05-01 2007-11-01 Honeywell International Inc. Deterministic power-aware wireless network
JP2008104040A (ja) * 2006-10-20 2008-05-01 Fujitsu Ltd 共通鍵生成装置および共通鍵生成方法
CN101415187B (zh) * 2007-10-19 2011-12-28 华为技术有限公司 位置业务实现方法、基站地理位置信息广播方法及其装置
US8204224B2 (en) * 2007-11-24 2012-06-19 University Of Massachusetts Wireless network security using randomness
EP2065849A1 (en) * 2007-11-30 2009-06-03 Sap Ag Detection of counterfeited products based on sensor measurements
EP2273717B1 (en) * 2008-04-24 2016-05-25 Fujitsu Limited Node device and program
EP2464060B1 (en) 2009-07-27 2016-05-04 Fujitsu Limited Node device, storage medium, and method for transmitting frame
JP5446650B2 (ja) * 2009-09-17 2014-03-19 沖電気工業株式会社 通信データ新規性確認システム並びに送信端末及び受信端末
US8762715B2 (en) * 2009-11-24 2014-06-24 Sony Corporation Event triggered pairing of wireless communication devices based on time measurements
JP2011130224A (ja) 2009-12-18 2011-06-30 Lenovo Singapore Pte Ltd 通信端末装置における共有情報の作成方法
US9100189B2 (en) * 2012-08-31 2015-08-04 Freescale Semiconductor, Inc. Secure provisioning in an untrusted environment
US10090999B2 (en) * 2015-01-27 2018-10-02 Qualcomm Incorporated Group key announcement and distribution for a data link group

Also Published As

Publication number Publication date
US20150143104A1 (en) 2015-05-21
JP2015099984A (ja) 2015-05-28
US9614817B2 (en) 2017-04-04

Similar Documents

Publication Publication Date Title
Qiu et al. A mutual authentication and key establishment scheme for M2M communication in 6LoWPAN networks
Mahalle et al. Identity establishment and capability based access control (iecac) scheme for internet of things
JP5652556B2 (ja) 通信ノード、通信制御方法、および通信ノードの制御プログラム
KR20150035971A (ko) 사물인터넷에서 스마트 디바이스 또는 스마트 센서와 네트워크 게이트웨이 사이의 안전한 데이터 전달을 위한 통신 프로토콜
Boakye-Boateng et al. Encryption protocol for resource-constrained devices in fog-based IoT using one-time pads
WO2016161583A1 (zh) 一种gprs系统密钥增强的方法、sgsn设备、ue、hlr/hss及gprs系统
Zhou et al. An efficient secure data aggregation based on homomorphic primitives in wireless sensor networks
Singelée et al. A secure cross-layer protocol for multi-hop wireless body area networks
Petroulakis et al. A lightweight framework for secure life-logging in smart environments
US10313118B2 (en) Authenticated access to cacheable sensor information in information centric data network
Bista et al. A new sensitive data aggregation scheme for protecting integrity in wireless sensor networks
Shi et al. Resource-efficient authentic key establishment in heterogeneous wireless sensor networks
Gopikrishnan et al. HSDA: hybrid communication for secure data aggregation in wireless sensor network
JP6303426B2 (ja) ノード装置、通信システム、通信方法および通信プログラム
Tajeddine et al. Authentication schemes for wireless sensor networks
US20140334383A1 (en) Network system, node device, and method of controlling network system
Sudarsono et al. An implementation of secure wireless sensor network for e-healthcare system
US20120216036A1 (en) Encryption methods and systems
KR101517909B1 (ko) 유헬스케어 무선 센서 네트워크를 위한 상호 인증 방법
Othman et al. Secure data aggregation in wireless sensor networks
Mansour et al. Security architecture for multi-hop wireless sensor networks
JP5874823B2 (ja) ネットワークシステム、ノード、および通信方法。
Ch et al. Ensuring reliability and freshness for data aggregation in wireless sensor networks
Razali et al. TPAL: A protocol for node authentication in IoT
Hansen Asynchronous group key distribution on top of the cc2420 security mechanisms for sensor networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180219

R150 Certificate of patent or registration of utility model

Ref document number: 6303426

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150