【文献】
Siu-Ping Chan, Radha Poovendran, Ming-Ting Sun,A key management scheme in distributed sensor networks using attack probabilities,Global Telecommunications Conference, 2005. GLOBECOM '05. IEEE (Volume:2),IEEE,2005年,pp. 1007-1011
(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
無線センサネットワーク(WSN)は、住宅の安全性の追跡、車両の追跡、野生動物の追跡及び環境監視などの様々な用途において現在使用されている。このように、無線センサネットワークは世界中で普及しており、事務所、家庭及び敵対地域を含む様々な環境で、配備されてきた。
【0003】
プライバシーは、インターネット及び携帯技術が極限まで浸透している現代の状況において、重要な問題である。最近では、大規模なデータ収集及び統合努力によって、プライバシーに対する懸念が増加してきた。無線センサネットワークでは、データ集約中に、サーバノードまたはデータアグリゲータノードは、特定の区域において追跡データを収集することに関与する、個々のセンサノードのデータの私有内容を探すことができる場合もある。さらに、無線リンクは、私有データを暴露するために攻撃者によって盗聴されることもある。
【0004】
したがって、データ集約中に、各センサノードのデータがそれ自体に知られるように、センサノードでのデータのプライバシーを確実に保全することが必要となる。それによって、サーバノードのタスクは、データ集約操作を実行して、集約したデータのみをさらに処理すること、センサノードでのデータの私有内容を暴露しないようにすることにのみ制限されるべきである。さらに、攻撃者による無線リンクの盗聴も避けなければならない。
【0005】
無線センサネットワークにおいてデータを集約する間に、センサノードの私有データを保全するための努力が過去に行われてきた。下記に既知である従来技術の一部を挙げる。
【0006】
非特許文献1の論文は、無線センサネットワークでデータを安全に集約するために、ピアツーピアネットワークにおけるクラスタ形成を教示する、クラスタに基づく私有データ集約(CPDA)方式を開示する。
【0007】
非特許文献2の論文は、クラスタ化のためにデータを共有するときに、根底となる属性値を保護する問題を是正するために、回転に基づく変換(RBT)と呼ばれる空間データ変換方法を開示する。
【0008】
Huang、Shih−Iらによる特許文献1は、単純な対象鍵暗号アルゴリズムに基づく安全なデータ集約のための方法及びシステムを開示する。
【0009】
Huang、Shih−Iらによる特許文献2は、私有対称鍵アルゴリズムを採用することによって、階層ネットワークのプライバシー保全方式の方法及びシステムを開示する。
【0010】
Giraoらによる特許文献3は、無線センサネットワークでデータを集約する方法及びシステムを開示する。この方法及びシステムは、低エネルギー適応クラスタリング階層(LEACH)プロトコルを用いてデータを集約するためのデータアグリゲータを選択し、データ暗号化のための暗号化鍵のマルチホップ配布を可能とする。
【0011】
Sun、Hung−Minらによる特許文献4は、ネットワークで鍵を配布するための方法及びシステムを開示する。この方法及びシステムでは、ネットワークのノードが鍵管理を開始する。指定されたノードのうちの1つの鍵プールは隣接するノードによって利用されるため、ネットワーク内で伝搬する。
【0012】
現状技術は以下の問題を抱えている。現状技術の解決法は、センサノード間のピアツーピア通信の存在を考慮に入れているが、これは現実に使用する用途のほとんどでは可能ではない場合もある。さらに、センサノードの数が増加すると、現状技術が提示するプライバシー保全アルゴリズムの計算が増加する。
【0013】
実用的な現実のシナリオのほとんどにおいて、センサノードはピアツーピア通信モードを用いてお互いに直接通信することはできない。このような事例では、現状技術で開示している方法は有用ではない。
【0014】
たとえば、テレビ視聴率(TRP)計算のプライバシーを保全した計算を考慮すると、センサノード間のピアツーピア通信の存在及びプライバシー保全アルゴリズムの計算の複雑さが増加することに関する現状技術の制限によって、TRPを計算する際に現状技術が有用ではなくなる。
【0015】
TRPはチャンネルまたはプログラムの人気を示す基準であり、このデータは、ビジネス上の効果が大きく、広告主にとっては非常に有用である。TRPは一般に、視聴者に関して集約したデータを準備して、様々な場所及び様々な時間における様々なチャンネルの統計を見つけることによって聴衆を頻繁に監視して、計算される。TRP計算の概念として、個々の視聴者の統計は必要なく、特定のチャンネルの特定の場所で集約した視聴者の値で十分である。最も粗い形態で個々の視聴者が記録され、商業的用途のために利用される範囲がある。しかし、視聴者は、自分が見るチャンネルのパターンに関する情報を共有することを望まないこともある。そこで、サービスプロバイダ側での個々の視聴者データの集約には、プライバシーを保護することが必要となる。つまり、サービスプロバイダは視聴者のデータの個々の内容を具体的には知らないまま、視聴者のデータを集約する。
【0016】
したがって、TRP計算及び他の多くのアプリケーションなどのリアルタイムアプリケーションは、従来技術に記載する方法を用いて実行可能でないこともある。また、現状技術でHe.Wらが提示する計算の複雑さは、ネットワーク内のセンサノード及びクラスタを追加することによって、急激に増加する。さらに、現状技術のいずれもが、センサノード間のピアツーピア通信モードがない無線センサネットワークでのデータ集約の間、データのプライバシーを保全するための方法を開示していない。さらに、現状技術が開示する方法は拡張性に欠け、高額な計算間接費用がかかる。
【0017】
したがって、前述の従来技術に照らして、センサノード間のピアツーピア通信が存在しないネットワークにおいて、複雑ではなく、拡張性が高く、プライバシーを保全したデータ集約を計算する、新規な方法を提示するシステム及び方法の必要があることは明らかである。前述の従来技術に照らして、センサノード間のピアツーピア通信が存在しないことは、様々な現実の適用において、非常に現実的なシナリオである。
【発明を実施するための形態】
【0026】
前述の概要、ならびに後述の好ましい実施形態の詳細な説明は、添付図と合わせて読むとよりよく理解される。本発明を例示するために、図には本発明の例示構成を示す。ただし、本発明は図中で開示する特定の方法及び構造に限定されない。
本発明の一部の実施形態を、その特徴を例示しながらここで説明する。
【0027】
「備える」、「有する」、「含有する」、及び「含む」という用語、ならびにその変化形は、これらの用語のいずれか1つに続く1または複数の項目がその1または複数の項目の排他的な一覧であることを意味するものではなく、または一覧に挙げられた1または複数の項目にのみ限定されることを意味するものではないという点で、意味的には同等であり、制約がないことを意図する。
【0028】
また、本明細書及び添付の請求項で用いるように、単数形の「1つの」及び「その」という用語は、別段明示しない限り、複数形も含むことに注意すべきである。本明細書に記載するシステム、方法、機器、及び装置と類似する、または同等である任意のシステム、方法、機器、及び装置は、本発明の実施形態の実行または試験において用いることができるものの、好ましいシステム及び部品をここで記載する。開示する実施形態は単に本発明の代表例であり、様々な形態で実施してもよい。本発明の範囲は一覧に挙げた実施形態には限定されず、添付の請求項によってのみ限定される。
【0029】
本発明は、ネットワークのセンサノード間にはピアツーピア通信が存在しない無線センサネットワークにおいて時間効率の良い自己適応型クラスタ形成を可能にし、複雑ではなく、拡張性の高いプライバシーを保全したデータ集約を提供する。
【0030】
図1は、簡易プライバシー保全データ集約(SPPDA)モデルと称するシングルホップ無線センサネットワーク(WSN)100を参照する。シングルホップ無線センサネットワーク(WSN)100は、本発明の代表的な実施形態による、無線センサネットワークでのデータ集約のタスクを集合的に実現する様々なハードウェア要素からなる。
【0031】
本発明の実施形態では、
図1に示すように、システム100は、3つの種類のノードを無線センサネットワークに含む。
3つの種類のノードは、基地局(BS)101、サーバ/アグリゲータノード102及びシンク/センサノード103−1、103−2、103−3……103−Nを含む。サーバ/アグリゲータノード102はデータ集約機能を実行し、集約したデータをさらに処理し、次に、結果をBS101に送信する。サーバノード102は、サーバノード102と無線リンクd(1)、d(2)、d(3)….d(N)を通じて接続するN個のシンク/センサノード103−1…103−Nと接続を有する。
図1に示すシングルホップ無線センサネットワーク(WSN)100において、シンク/センサノード間にピアツーピア通信は存在しないと考えられる。単一のWSN100は大規模なマルチホップWSNのサブセットと考えられるが、簡略化するために、シングルホップWSNを説明のために想定する。
【0032】
シンク/センサノードは、それ自体で、またはサーバ/アグリゲータノード102からの指示によってデータを収集する。ネットワークのシンク/センサノードは、ピアツーピア接続を持たないものと考えられる。したがって、複数のセンサノードのうちの1つが別のシンク/センサノードと通信を確立しようとする場合は、サーバ/アグリゲータノード102を通じて行わなければならない。その結果として、現状技術が直面していた拡張不能である問題が排除される。
【0033】
ネットワークの別のシンク/センサノードと通信するために、シンク/センサノードは、サーバ/アグリゲータノード102に要求する。サーバノード102は、フォワーダ機能を実行する。
【0034】
プライバシー保全ポリシーを実装するために、1つのシンク/センサノードは、ネットワークの別のセンサノードと通信する必要がある。これは、対になる鍵を確立する技術によって安全に行われる。ただし、TRP計算などの実用的なシナリオのほとんどでは、この対になる鍵を確立すること、及びシンク/センサノード間で直接通信することは不可能である。
【0035】
提示されたSPPDAモデル100は、効率的なプライバシー保全アルゴリズムを実装する。このアルゴリズムは、センサノード間のピアツーピア通信の制限を効率的な自己適応型クラスタ形成によって克服し、本明細書で詳細に後述するロバストな鍵管理方式によって安全性の問題を確実にする。
【0036】
図1に示すSPPDAモデルでは、サーバノード102と、シンク/センサノード103−1…103−Nそれぞれとの間の通信はデータ損失がなく正確であると考えられる。さらに、シンク/センサノードは常に、サーバ/アグリゲータノード102の通信範囲内であると考えられる。サーバノード102はシンク/センサノードのうち1つと隣接するシンク/センサノードに、その特定のシンク/センサノードとサーバノード102との通信に障害がある場合は通知する。
【0037】
図2(a)、(b)及び(c)はブロック図を示し、効率的な自己適応型クラスタをシングルホップ無線センサネットワークに形成することを示す。
システムの拡張性を提供し、ノード間の通信を確保し、プライバシー開示の可能性を最小にするために、効率的なクラスタ形成が必要である。このクラスタ形成によって、シンクツーシンク通信の安全性が提供され、最終的には、プライバシー保全アルゴリズムを直接的なシンクツーシンク通信を用いずに無事に実行することにつながる。これらのシンクノードはデータを収集してサーバに送信する。クラスタ形成アルゴリズムは以下の通りである。
【0038】
図2(a)は本発明の実施形態におけるクラスタ形成の第1のステップを示す。
サーバ/アグリゲータノード201は「ハロー」メッセージをネットワークの複数のシンク/センサノード202に配布する。次に、サーバノード201はシンク/センサノードからの肯定応答を待つ。サーバ/アグリゲータノード201から配布された「ハロー」メッセージに対する応答を、複数のシンク/センサノードの一部から受信すると、サーバは、ネットワーク内のアクティブなノードが分かるようになる。
【0039】
図2(b)は、本発明の実施形態におけるクラスタ形成の第2のステップを示す。
図2(b)に示すサーバ/アグリゲータノード301は、第1のステップで認識されたアクティブなノードを分割して、クラスタのグループを形成する。各クラスタは、収集したデータをサーバ/アグリゲータノード301に報告する4つのアクティブシンク/センサノードからなる。したがって、ネットワークにはN/4個のクラスタが形成され、Nはネットワークのアクティブなシンク/センサノードの数と等しい。ただし、N/4が整数ではない場合は、ネットワーク内に5つのアクティブなノードから形成される少数のクラスタがある場合もある。5つのアクティブなノードを備えるクラスタの数は3以下であることが観測されている。
【0040】
図2(b)に示すように、「クラスタ1」302は4つのシンク/センサノードで形成される。同様に、ネットワークの別のシンク/センサノードはクラスタに分割され、各クラスタは4つのアクティブなシンク/センサノードを備える。クラスタ形成情報は、別のネットワークのシンク/センサノード間でサーバ/アグリゲータノード301によって共有される。これらの別のシンク/センサノードは、シンク/センサノードが属するクラスタの近隣と称される。たとえば、
図2(b)では、シンク/センサノード303−1、303−2、303−3及び303−4はクラスタ1 302に属し、この情報は、サーバ/アグリゲータノード301によってこれらのノードそれぞれで共有される。
【0041】
サーバ/アグリゲータノード301は、クラスタ内のシンク/センサノード対を選択し、シンク/センサノード対の形成に関する情報をクラスタ内の別のシンク/センサノードに伝える。
【0042】
たとえば、本発明の実施形態において、
図2(c)に示すクラスタ形成図を考慮する。サーバ/アグリゲータノード(
図2(c)には不図示)は、シンク/センサノード1 401及びシンク/センサノード2 402を選択して、「対11」をクラスタ1 400から形成する。同様に、サーバ/アグリゲータノード(
図2(c)には不図示)は、シンク/センサノード3 403及びシンク/センサノード4 404を選択して、「対21」をクラスタ1 400から形成する。このようにして、サーバ/アグリゲータノードは2つのアクティブなシンク/センサノードを各クラスタから選択して、対を形成する。この原則によって形成された対はフレンド対(friend pair)と称される。
【0043】
実施形態では、サーバ/アグリゲータノードは、定期的に「ハロー」メッセージを配布することによって、シンク/センサノードの状態を頻繁に監視する。任意のシンク/センサノードが、受信したメッセージに応答することを繰り返し失敗する場合には、そのノードはサーバ/アグリゲータノードによって、パッシブまたはデッドノードと考えられる。この状況は、サーバ/アグリゲータノードによるフレンド対形成の再グループ化につながり、その結果として、3つのシンク/センサノードを1つの対に含む場合もある。サーバノードは次に、フレンド対形成のこの調整または再グループ化を対応するシンク/センサノードに通知する。サーバノードの目的は形成後にクラスタを妨害しないことである。このシナリオでは、別のノードがネットワークに入ると、サーバノードは、クラスタのうちの1つが4未満のノードを有する場合は、ノードをそのクラスタに収容しようとする。そうでなければ、そのノードをクラスタのうちの1つに一時的に収容する。あるクラスタに一時的に収容されるこのようなシンクノードのうちの4つが利用可能であるとき、この4つは新しいクラスタを形成する。
【0044】
無線センサネットワークでのこの自己適応型で効率的なクラスタ形成機構によって、ネットワークにおける計算が複雑でなくなる。He.Wらが提示した従来技術の計算の複雑さは、シンク/センサノード及びクラスタをネットワークに追加すると急激に増加する。本発明のクラスタ形成機構では、計算の複雑さは固定され、ネットワークのシンク/センサノードの数には影響されない。本発明で提示するSPPDA方式における様々な数のノードに必要な計算時間を、行った実験に基づいて、He.WらのCPDA方式と比較した。その結果を表1に示す。
【0045】
【表1】
SPPDA及びCPDAの様々な数のノードでの計算時間
(単位:1000分の1秒)
【0046】
表1から、シンク/センサノードの数が増加するとき、SPPDAの計算時間はほとんど一定である一方、CPDAの計算時間はより急速に増加することが観測される。
【0047】
これは
図3でもさらに示され、SPPDAにおいて、計算時間はCPDAより大幅に短いことも分かる。これらの2つの方式の間の計算時間の相違は、考慮するノードの数が増加すると、より明らかになる。これは、SPPDAでは、ほとんどの場合に(3つのシンクノードがクラスタを形成してもよい、一定のシンクノードの故障を考慮に入れない)、プライバシーを保全した計算に関与する固定された2つの数のシンクノードがあるため、計算時間が固定されるためである。これは、全体的なシステムが本質的にリアルタイムであるとき、実際に必要な要件である。CPDAアルゴリズムでは、ノードの数が追加されると、計算時間はほとんど線形に増加する一方、SPPDAでは、非常に低い計算負荷しか生じず、クライアント/シンクノードの数が追加されてもあまり影響は受けない。CPDAでは、ノードの数が増加すると計算時間は増加するが、一方、本発明が提示するSPPDAでは、シンク/センサノードの数は5つに限定される。また、CPDAでは、単一のクラスタに多数のシンクノードを有することは非現実的である。
【0048】
シンクノードから対応するアグリゲータまたはサーバに送信されるメッセージのプライバシー及び統合性を確保するための支持を提供するために、ロバストな鍵交換及び管理方式が必要である。本発明の実施形態では、ロバストな対の鍵管理方式を設計し、鍵をセンサノード(シンクノード及びサーバを含む)に選択的に配布し、そこから削除することによって、ならびに大量の計算または帯域幅を使用せずにノードに再度鍵をかけることによって、非階層のシングルホップセンサネットワークの操作性及び安全性要件を満たす。提示する鍵管理方式の目的は以下の通りである。
・ネットワーク内でデータを安全に交換しなくてはならないすべてのセンサノード間の鍵を確立すること。
・ネットワーク内のノードの追加または削除を支持すること。
・画定されていない配備環境で鍵管理方式の動作を可能にすること。
・認証されていないノードがネットワーク内の任意の別のノードと通信できないようにすること。
【0049】
これらの目的を達成するために、第1のステップではシンク/センサノードのクラスタを形成する。N個のシンク/センサノードがあり、各クラスタはn個のシンク/センサノードからなると考えられる。すると、N/n個のクラスタがあることになる。鍵管理方式は鍵の事前配布段階によって開始する。事前配布段階では、K個の鍵の大量の鍵のプールと、それに対応する識別情報を生成する。これらのK個の鍵は2つのバンクに分割される。第1のバンクはk個の鍵からなり、アグリゲータノードを介してシンク/センサノードと別のシンク/センサノードとの通信に用いられる。第2のバンクは(K−k)個の鍵からなり、シンク/センサノードとアグリゲータ/サーバノードとの通信に用いられる。
【0050】
したがって、2つの部品からなる鍵管理方式を以下で説明する。
【0051】
第一部:シンク/センサノードからアグリゲータ/サーバノードまでの鍵を確立する。
本発明の実施形態では、各シンク/センサノードはK−k個の鍵をサーバと共有して有する。すべてのシンク/センサノードが同じ鍵を所有するため、シンク/センサノードがサーバ/アグリゲータノードと共有鍵を用いて通信することは極めて危険である。任意の悪意のあるシンク/センサノードは、シンク/センサノードとサーバとの通信を解読することができ、非常に簡単に攻撃を開始することができる。これを避けるために、事前配布段階において、シンク/センサ−サーバの鍵バンクはシンク/センサ−サーバ対ごとにランダムに順序が変えられ、並べ変えられる。鍵バンクのこの順序は各シンク/センサノードのサーバノードに記憶される。これを
図4(a)に示す。
【0052】
新しいシンク/センサノードがネットワークに追加されると、前述した鍵バンクランダム化と同一の手順が行われ、新しいシンク/センサノードに対する鍵の順序がオフラインで記憶される。ここで、シンク/センサノードは、その共有鍵のうちの1つを通じて、サーバノードと通信する。この動作を達成するために、シンク/センサノードはまず、1から(K−k)までの間でランダムな数を生成する。このランダムな数(Rc)はプレーンテキストでサーバに送信される。サーバは、シンク/センサノードが次のメッセージを鍵バンクのRc番目の鍵で暗号化することを理解する。サーバノードはACK(肯定応答)を送信して応答する。これを
図4(b)に示す。
【0053】
ACK(肯定応答)を受信後、シンク/センサノードはデータを特定の鍵で暗号化して、サーバノードに送信する。シンク/センサノードがサーバノードと通信することを望むときは毎回、同じステップを取る。これを
図4(c)に示す。各セッションで、ランダムな数を生成するプロセスによって、推測による攻撃を防ぐ。ランダムな数(Rc)がシンク/センサノードにプレーンテキストで送信されることも観測することができる。しかし、これによって、任意の脆弱性の問題は発生しない。悪意のあるノードがランダムな数を入手しても、鍵バンク順序を事前にランダム化することによって、危害を受けることはないからである。異なるシンク/センサノードでは、Rc番目の鍵は異なる。事前配布段階で、マッピングはサーバノードにオフラインで記憶される。
【0054】
第二部:シンク/センサノードからシンク/センサノードまでの鍵を確立する。
本発明の実施形態では、シンク/センサノードから別のシンク/センサノードへの直接通信は存在せず、この通信はサーバ/アグリゲータノードを通じて行われると考えられる。さらに、サーバノードは、シンク/センサノード間の通信を解読すべきではないことにも留意されたい。そうでないとすると、プライバシー保全アルゴリズムはサーバノードにとって、解読するには些細なものとなる。これを実現するために、k個の鍵をシンクノード配備時に事前に記憶させるが、サーバノードには記憶させない。サーバは、サーバノードからシンク/センサノードへの通信には(K−k)個の鍵が必要であることのみを認識している。
【0055】
ネットワークの別のシンク/センサノードは、ネットワークでシンク/センサノードの1つから別のシンク/センサノードに送信されるメッセージを解読すべきではないということも要件である。たとえば、シンク/センサノード1がシンク/センサノード2との通信を望み、k個の鍵がネットワークのすべてのシンク/センサノードで同じである場合は、別のシンク/センサノードがプレーンテキストを復号化することが容易になる。つまり、シンク/センサノード3は、シンクノード1とシンク/センサノード2が通信していることを復号化することができる。
【0056】
この状況を避けるために、シンク/センサノード1及びシンク/センサノード2は個別にシンク/センサノードからシンク/センサノードへの通信専用のk個の鍵の鍵バンクの順序を変え、ランダムに並べ変える。鍵バンクのランダムな順序変えに続き、シンク/センサノード1及び2は、サーバノードと対になる鍵を用いて、順序を変える機能を、サーバノードを通じてお互いに送る。
【0057】
順序を変える機能を無事に配送すると、シンク/センサノードのうちの1つ(たとえばシンク/センサノード1)は、1からkまでの間の別のランダムな数を別のシンク/センサノード(たとえばシンク/センサノード2)に送信する。この別のランダムな数は、順序を変えた鍵バンクの特定の鍵を示す。シンク/センサノード間のこの対になる鍵を用いて、データ集約が完了するまでその後の通信を行う。データ集約プロセスの次のラウンドでは、鍵を確立する同じ手順が取られる。
【0058】
このロバストな対の鍵管理方式によって、個々のシンク/センサノード間の安全な通信、及びシンク/センサノードのうちの1つとサーバノード間との通信が、個々のシンク/センサノードのデータの私有内容を損失することなく可能となる。これによって、通信ノード間にピアツーピア通信がないネットワークでデータを集約する際に、プライバシーを保全することを支援する。認証されていない、または悪意のあるノードに対して、個々のシンク/センサノードの私有データが開示される可能性はない。
【0059】
現状技術においてHe.Wらが提示したCPDA方式では、私有データが開示されるかもしれない一定の可能性が存在する。これは、シンクノードがメッセージをクラスタ内で交換するときにのみ発生し得る。これは次式から推測できる。
【0061】
式中、Dmax=最大クラスタサイズ、
pc=最小クラスタサイズ(=2、2つのシンクノード)、
k=クラスタサイズ、
b=リンクレベルのプライバシーが解読される可能性
P(k=m)=クラスタサイズがmである可能性
である。
【0062】
ここで、本発明が提示するSPPDA方式では、
pc=Dmax=k=2、したがってP(k=m)=1である。
【0063】
したがって、CPDAで解読されるプライバシーの確率はSPPDAで解読されるプライバシーの確率よりもはるかに傾斜が急であることが分かる。図表を
図5(a)に示す。
【0064】
CPDAでは、シンク/センサノードの対が同じ鍵の対を所有するという要件は高くなるはずである。鍵はランダムに大規模な鍵のプールから選択される。そうではない場合は、この方式は機能しない。しかし、この要件によって、別のノードが共通の鍵の対を有する場合は、別のノードは少なくとも通信の一部を取得することができる。
【0065】
図5(b)のシナリオを考慮することにする。図示するように、3つのノード、つまりノード1、ノード2及びノード3がある。ノード1とアグリゲータ/サーバノード間の鍵はM1であり、ノード2とアグリゲータ/サーバノード間の鍵はM2である。同様に、ノード3とアグリゲータ/サーバノード間の鍵はM3であり、ノード4とアグリゲータ間の鍵はM4である。
【0066】
CPDAのノード間で同じ鍵が共有されてもよい一定の可能性(非常にわずかであるとしても)もあることが観測される。たとえば、ノード1とアグリゲータ/サーバノード間とで共有する鍵は、ノード2とアグリゲータ/サーバノード間の鍵と同じである(つまり、M1=M2)。これは、一定のユースケースにおいて厳格な安全性要件に違反する。実際に、CPDA方式では、ノード間で鍵を共有する確率は、ネットワークのシンク/センサノードの数が増えるにつれて増加する。
【0067】
ただし、SPPDAでは、鍵配布は完全に決定論的であり、ネットワーク内での安全性に関する脆弱性問題を回避する。ただし、これは、鍵プール内の鍵の数を増加させることにつながることもある。さらに、本発明で提示する鍵管理方式では、鍵配布プロセスは完全にランダム化され、ノードのフレンド対をクラスタに形成することはアグリゲータ/サーバノードによって制御される。
【0068】
フレンド対を形成するノードの数は、サーバによって決定され、ほとんどの場合は理想的には2である。ただし、シンク/センサノードのうちの1つがパッシブまたはデッドとなる場合を除く。したがって、ノードの対が共通鍵を発見することが決定論的ではないというこの種の状況を排除することによって、SPPDAは、様々な攻撃に対してはるかに安全でロバストになる。
【0069】
図6はフローチャート600であり、本発明の実施形態により、効率的で自己適応型なクラスタ形成を無線センサネットワークでデータ集約中に形成するために実行するステップを説明する。
【0070】
ステップ601では、連続してサーバ/アグリゲータノードは、「ハロー」メッセージをネットワークで定期的に配布する。
【0071】
ステップ602では、サーバノードは、ステップ601で配布したメッセージに対する応答を待つ。
【0072】
ステップ603では、サーバノードは、ネットワークの任意のノードから任意の応答があるかどうかを監視または追跡する。
【0073】
ステップ604では、ネットワークのアクティブノードは、サーバノードのメッセージに応答したものとして認識され、クラスタにグループ化される。各クラスタは4つまたは5つのアクティブなノードを備える。
【0074】
ステップ605では、サーバノードは、2つのノードを各クラスタから選択し、それらをグループ化して、フレンド対を形成し、ネットワークの各クラスタに2つのフレンド対を形成する。
【0075】
図7はフローチャート700であり、本発明の実施形態により、センサノードとサーバノードとの間の安全な通信を無線センサネットワークでデータ集約中に確立するための事前配布段階を説明する。
【0076】
ステップ701では、識別情報を備えて生成された多数の鍵(K)のプールを維持する。
【0077】
ステップ702では、K個の鍵からなるプールを、k個及びK−k個の鍵をそれぞれ有する2つのバンクに分割する。
【0078】
ステップ703では、K個の鍵のプールをランダムにネットワークの複数のシンク/センサノード間で配分する。
【0079】
ステップ704では、k個の鍵を備える鍵バンクは、ネットワークのシンク/センサノードのそれぞれで共有され、記憶される。
【0080】
ステップ705では、K−k個の鍵を備える鍵バンクは、サーバ/アグリゲータノードで共有され、記憶される。
【0081】
図8はフローチャート800であり、本発明の実施形態により、ネットワークの複数のシンク/センサノードのうちの少なくとも1つとサーバ/アグリゲータノードとの間の安全な通信を確立するステップを説明する。
【0082】
ステップ801では、K−k個の鍵を備える鍵バンクを、ランダムに順序を変え、並べ変え、サーバ/アグリゲータノードに記憶する。
【0083】
ステップ802では、シンク/センサノード自体がサーバ/アグリゲータノードで集約するために収集したデータを送信することを望む場合、シンク/センサノードは1から(K−k)までの間のランダムな数(Rc)を生成する。
【0084】
ステップ803では、シンク/センサノードは生成したランダムな数(Rc)をサーバ/アグリゲータノードにプレーンテキストの形式で送信する。
【0085】
ステップ804では、サーバノードはランダムな数の受信を確認し、通信を望むシンク/センサノードが、生成したランダムな数に対応する鍵で共有すべきデータを暗号化することを確認し、したがって、通信を開始したシンク/センサノードにACK信号を送信する。
【0086】
ステップ805では、シンク/センサノードは、生成したランダムな数に対応する(K−k)個の鍵のうち1つを選択する。
【0087】
ステップ806では、シンク/センサノードは、サーバに送信すべきデータを選択した鍵で暗号化し、安全な通信及びプライバシー保全を可能にする。
【0088】
図9はフローチャート900であり、本発明の実施形態により、ネットワークの2つのシンク/センサノード間の通信をサーバ/アグリゲータノードを介して安全に確立するためのステップを説明する。
【0089】
ステップ901では、シンク/センサノード1及び2はお互いに通信に関与し、それらの場所に記憶されるk個の鍵を備える鍵バンクの順序を変え、並べ変える。
【0090】
ステップ902では、シンク/センサノード1及び2は、サーバノードを介して、サーバノードと対になる自分の鍵を用いて、順序を変える機能をお互いに対して送る。
【0091】
ステップ903では、シンク/センサノード1はランダムな数をシンク/センサノード2に送信し、安全な通信を確立するための鍵の数を指示する。
【0092】
ステップ904では、送信されたランダムな数に対応するk個の鍵のうちの1つを選択する。
【0093】
ステップ905では、シンク/センサノード1は、シンク/センサノード2に送信すべきデータを、そのデータを選択した鍵で暗号化することによって送信する。
【0094】
このように、自己適応型クラスタ形成及び対になる鍵管理方式によって、ピアツーピア通信モードがネットワークの複数のシンク/センサノード間で存在しないネットワークにおいて、効率的なプライバシー保全アルゴリズムが可能となる。本方法では、2つのノードが、ネットワークの異なる領域で収集されたデータを共有するためにお互いに通信するとき、プライバシー保全アルゴリズムを実装するために複雑な計算は必要なく、第三者と鍵を共有することが回避される。