説明

データ通信システム、ノード、方法、およびプログラム

【課題】アドホックネットワークにおける情報漏えいを防止することのできるデータ通信システムを提供する。
【解決手段】データ通信システムは、アドホックネットワーク10によってデータを送受信するシステムであり、送信ノード11と受信ノード12を有している。送信ノード11は、送信すべきデータを複数の分割片に分割し、複数の分割片を複数回に分けて送信する。受信ノード12は、送信ノード11から複数回に分けて送信された分割片を受信し、複数の分割片から元のデータを復元する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アドホックネットワークにおける情報漏えいを防止する技術に関する。
【背景技術】
【0002】
今後、アドホックネットワークが普及するのに伴い、取り扱いに注意が必要なデータがアドホックネットワーク上で転送されることが増えると考えられる。取り扱いに注意が必要なデータとしては例えば個人のプライバシに関する情報がある。
【0003】
しかし、アドホックネットワークでは第三者のノードが中継ノードとなってデータを中継するため、アドホックネットワークには構造的問題として情報漏えいの不安がある。つまり、プライバシ情報のようなデータをアドホックネットワークに送信する者にとってアドホックネットワーク内での情報漏えいが気がかりとなる。例えば、アドホックネットワーク内で中継を行う第三者がデータを不正に取得して内容の情報を解析したり、さらにその情報を横流ししたりすること等が懸念される。
【0004】
これに対し、アドホックネットワークで転送されるデータの安全性を高めるための技術はこれまでにも提案されている。
【0005】
例えば特許文献1に開示された技術は、アドホックネットワークを構成するデバイスの移動端末による使用を認証局によって認証するものである。これによりアドホックネットワークに参加するデバイスの正当性が担保される。
【0006】
また、他の例として、各ノード間で公開鍵証明書をやり取りして信頼関係を構築した上で、データを公開鍵証明書に基づいて暗号化して送受信する技術がある。暗号化によってデータの計算量的安全性が高まり、アドホックネットワーク上での情報漏えいが抑制される。
【特許文献1】特開2007−74393号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかし、特許文献1に開示された技術はデバイスを認証するものなので、情報漏えいを直接的に防止することはできない。一方、暗号化は情報漏えいに対する直接的な対策である。しかし、コンピュータの処理能力が日々向上しているため、上述した暗号化のような計算量的安全性に基づく情報漏えい対策では、将来において、いつかは暗号が破られて情報が漏えいするのではないかという不安が残る。
【0008】
本発明の目的は、アドホックネットワークにおける情報漏えいを防止することのできるデータ通信システムを提供することである。
【課題を解決するための手段】
【0009】
上記目的を達成するために、本発明のデータ通信システムは、
アドホックネットワークによってデータを送受信するデータ通信システムであって、
送信すべきデータを、秘密分散アルゴリズムを用いて複数の分割片に分割し、複数の前記分割片を複数回に分けて送信する送信ノードと、
前記送信ノードから複数回に分けて送信された前記分割片を受信し、秘密分散アルゴリズムを用いて複数の前記分割片から元のデータを復元する受信ノードと、を有している。
【0010】
また、前記送信ノードは、(k,n)しきい値秘密分散アルゴリズムを用いて前記データをn個の分割片に分割し、1回に送信する数がk個未満となるように複数回に分けて前記分割片を送信し、
前記受信ノードは、前記送信ノードからk個以上の前記分割片を受信して、前記(k,n)しきい値秘密分散アルゴリズムを用いて該分割片から元のデータを復元することにしてもよい。
【0011】
前記送信ノードから前記分割片を送信する毎に前記アドホックネットワーク内の経路を選択しなおすことにしてもよい。
【0012】
また、前記アドホックネットワーク内の経路を選択しなおすとき、それまでに使った経路で経由した中継ノードを避けるように経路を選択することにしてもよい。
【0013】
前記経路の選択に用いられるプロトコルがプロアクティブプロトコルであり、予め経路表に前記送信ノードから前記受信ノードへ複数の経路を用意しておき、経路を選択するとき、予め用意しておいた複数の前記経路を順次切り替えて用いることにしてもよい。
【0014】
前記送信ノードは、前記アドホックネットワークのトポロジが変化する毎に前記分割片を送信することにしてもよい。
【発明の効果】
【0015】
本発明によれば、送信すべきデータを秘密分散アルゴリズムで複数の分割片に分割し、アドホックネットワークに複数回に分けて送信するので、アドホックネットワーク上の中継ノードのいずれにおいても元の完全なデータを取得するのが困難となり、計算量的安全性に基づく情報漏えい対策とは異なる手法によって情報漏えいを防止することができる。
【発明を実施するための最良の形態】
【0016】
本発明を実施するための形態について図面を参照して詳細に説明する。
【0017】
図1は、本実施形態によるデータ通信システムの構成を示すブロック図である。図1を参照すると、データ通信システムは、送信ノード11、受信ノード12、および中継ノード13〜16を有している。
【0018】
これらノード11〜16は全てアドホックネットワーク10を構成するノードである。アドホックネットワークを構成する各ノードの実体は、デスクトップのパーソナルコンピュータ(PC)、ノート型のPC、携帯電話機(スマートフォン)、PDA(Personal Digital Assistant)、家庭用ゲーム機、携帯ゲーム機、ICカード、ICタグ等を想定している。
【0019】
ここでは、あるノードから他のあるノードへの1つのデータ通信に着目し、送信側のノードを送信ノード11とし、受信側のノードを受信ノード12としている。中継ノード13〜16は送信ノード11から受信ノード12へのデータを中継するノードである。
【0020】
送信ノード11は、まず送信すべきデータを、秘密分散アルゴリズムを用いて複数の分割片に分割する。秘密分散アルゴリズムは、秘密にしたいデータを分割片に分散化するアルゴリズムである。各分割片から元のデータについてその一部すら類推することができず、所定数以上の分割片を揃えてはじめて元のデータの復元が可能となる。
【0021】
さらに送信ノード11は、各ノードの経路選択機能により送信ノード11から受信ノード12までの経路を選択して分割片の一部を送信することを、少なくとも元のデータを復元できるだけの分割片を受信ノード12に送るまで複数回繰り返す。1回に1つずつ分割片を送信してもよく、あるいは1回に複数の分割片をまとめて送信してよい。
【0022】
受信ノード12は、各ノードの経路選択機能により送信ノード11から受信ノード12までの経路を選択して送信ノード12から送信された分割片を受信することを複数回繰り返した後、受信した複数の分割片から、秘密分散アルゴリズムを用いて元のデータを復元する。
【0023】
中継ノード13〜16は、各ノードの経路選択機能により送信ノード11から受信ノード12までの経路を選択して送信ノード12から送信された分割片を、その経路に従って中継する。経路の選択とデータの転送が複数回繰り返された際、1つの中継ノードが複数回にわたって経路に含まれることもあるし、1回だけ経路に含まれることもある。また一度も経路に含まれない中継ノードがあるかもしれない。
【0024】
送信ノード11、中継ノード13〜16、および受信ノード12は、送信ノード11から受信ノード12への経路を選択しなおすとき、それまでに使った経路と同じにならないように経路を選択することが好ましい。また、それまでに使った経路で経由した中継ノードを含まないように経路を選択することが、より好ましい。ただし、時間経過によってトポロジが変化するアドホックネットワークの性質から、経路を選択しなおせば、異なる経路が選択されることを期待して、異なる経路を意図的に選択するような制御を行わないという手法も採りうる。
【0025】
また、経路の選択をしなおすことなく同じ経路で、時間差をつけて分割片を送信することにしてもよい。複数の分割片は複数回に分けて時間差をつけて送信されるので、同時に送信された分割片を第三者が取得しても元のデータを復元することはできない。
【0026】
また、時間経過によってトポロジが変化する毎に分割片を送信することにしてもよい。
【0027】
本実施形態では、送信ノード11においてデータを分割するときに秘密分散アルゴリズム、より具体的には(k,n)しきい値秘密分散アルゴリズムを用いる。
【0028】
秘密分散アルゴリズムは、データを複数の分割片に分割し、予め定められた数(しきい値)以上の分割片を集めた場合にのみ元のデータの復元が可能となるというアルゴリズムである。秘密分散法の中の典型的な一例として(k,n)しきい値秘密分散アルゴリズムがある。
【0029】
(k,n)しきい値秘密分散アルゴリズムでは、データがn個の分割片に分割される。そして、その中の任意のk個以上の分割片を集めた場合に元のデータの復元が可能となる。一方、k個未満の分割片からは元のデータを復元できず、また元のデータに関するいかなる情報も得られない。また、この(k,n)しきい値秘密分散アルゴリズムを改良して、復元の際に分割片の改ざんを検知したり、改ざんされた分割片を特定したりできるようにしたアルゴリズムもある。
【0030】
送信ノード11は、(k,n)しきい値秘密分散アルゴリズムを用いて、データをn個の分割片に分割し、経路を選択しなおしながら複数回に分けてアドホックネットワーク10上で受信ノード12に送信する。
【0031】
送信ノード11は1回に1つずつ分割片を送信してもよく、あるいは1回に複数の分割片をまとめて送信してよい。ただし、複数の分割片をまとめて送信する場合でも、1回に送信する分割片の数はそれだけで元のデータを復元できない範囲(k個未満)に留める必要がある。送信ノード11から1回に送信する分割片の数をk個未満とすることにより、1回に送信された分割片を、ある中継ノードにて第三者が全て取得したとしても、それらから元のデータを復元することができなくなる。
【0032】
また、複数回に分けて分割片を送るとき、送信ノード11は、n個の分割片を全て送るまで経路の選択と分割片の送信を繰り返してもよいが、必ずしも全てを送るまで繰り返す必要は無い。ただし、その場合でも合計でk個以上の分割片を送信するまで繰り返す必要はある。本実施形態では全ての分割片を送信する例を示すことにする。
【0033】
受信ノード12は、(k,n)しきい値秘密分散アルゴリズムを用いて、送信ノード11から受信したk個以上の分割片から元のデータを復元する。受信ノード12は、送信ノード11からk個より多くの分割片を受信していれば、その中からk個を選んで用いてもよい。
【0034】
図1は、(k,n)しきい値秘密分散アルゴリズムにおいてk=2、n=2とし、データを2回に分けて送る例を示しており、1回目は中継ノード13、14を経由する経路が用いられ、2回目は中継ノード15、16を経由する経路が用いられている。
【0035】
図2は、本実施形態によるデータ通信システムの動作を示すシーケンス図である。図2の例では、図1と同様に分割片は2回に分けて送られ、1回目は中継ノード13、14を経由する経路、2回目は中継ノード15、16を経由する経路が用いられる。
【0036】
図2を参照すると、まず送信ノード11がデータを2つの分割片に分割する(ステップ101)。
【0037】
続いて、各ノードの経路選択機能により送信ノード11から受信ノード12までの経路を選択する(ステップ102)。ここでは中継ノード13、14を経由する経路が選択されている。その後、送信ノード11は選択した経路によって1つの分割片を送信する(ステップ103)。
【0038】
次に、各ノードの経路選択機能により送信ノード11から受信ノード12までの経路を選択しなおす(ステップ104)。ここでは中継ノード15、16を経由する経路が選択されている。その後、送信ノード11は選択しなおした経路によって、もう1つの分割片を送信する(ステップ105)。
【0039】
最後に受信ノード12は、受信した2つの分割片から元のデータを復元する(ステップ106)。
【0040】
図3は、本実施形態の送信ノードの構成を示すブロック図である。図3を参照すると、送信ノード11はデータ分割部21および経路選択部22を有している。
【0041】
データ分割部21は、(k,n)しきい値秘密分散アルゴリズムを用いてデータをn個の分割片に分割する。
【0042】
経路選択部22は、アドホックネットワークの基本プロトコルに基づいて経路を選択し、データ分割部21で分割された分割片の中のk個未満の分割片を送信することを、k個以上の分割片を送信するまで繰り返す。
【0043】
アドホックネットワークの基本プロトコルとしてはリアクティブプロコトルとプロアクティブプロトコルがあるが、本実施形態ではいずれを用いてもよい。
【0044】
リアクティブプロトコルはデータ通信を開始するときに各ノードが経路表を生成してから、その経路表を用いてデータを転送するプロトコルである。本実施形態にリアクティブプロトコルを用いる場合、経路を選択しなおすときに経路表を作成しなおすことにすればよい。
【0045】
プロアクティブプロトコルは、各ノードが常時経路表を管理しており、その経路表を用いてデータ通信を開始するプロトコルである。本実施形態にプロアクティブプロトコルを用いる場合、一例として、経路表を拡張して送信ノード11から受信ノード12への複数の経路を予め経路表に事前に用意しておき、経路を選択しなおす毎に経路表に用意されている経路を順次切り替えて用いることにしてもよい。プロアクティブプロトコルでは予め経路表が用意してあるので、データを送信するときに経路探索が不要であり、データを早く送信することができる。また他の例として、送信ノード11から受信ノード12への複数の経路を経路表に用意しておき、その経路を使い切ったら経路探索を行って経路表を更新することにしてもよい。
【0046】
図4は、本実施形態の受信ノードの構成を示すブロック図である。図4を参照すると、受信ノード12はデータ復元部31およびデータ受信部32を有している。
【0047】
データ受信部32は、アドホックネットワークの基本プロトコルに基づいて、送信ノード11から送信された分割片を受信することを、k個以上の分割片を受信するまで繰り返す。
【0048】
データ復元部31は、経路選択部32で複数回にわたって受信された分割片から、(k,n)しきい値秘密分散アルゴリズムを用いて元のデータを復元する。
【0049】
なお、本実施形態では、データを分割片に分割した後、それが何の分割片であるかが送信ノード11と受信ノード12にしか分からないように暗号化して送ることにしてもよい。特に、同じ経路を複数回にわたって用いる場合には分割片を暗号化するとよい。
【0050】
なお、ここでは便宜上、送信ノード11と受信ノード12を別々に説明しているが、アドホックネットワーク10では、あるノードが状況によって送信ノード11となったり受信ノード12となったりすることが想定される。その場合のノードは上述した送信ノード11と受信ノード12の両方の機能を備え、状況によって使い分ければよい。また、そのノードが中継ノードになることもありうるが、その場合には中継ノードとしての機能も備えて使い分ければよい。
【0051】
また、本実施形態の各ノード11〜16はコンピュータがそれぞれのソフトウェアプログラムを実行することによっても実現することができる。
【0052】
以上説明したように、本実施形態によれば、送信すべきデータを秘密分散アルゴリズムで複数の分割片に分割し、アドホックネットワーク10上で複数回に分けて送信するので、アドホックネットワーク10上の中継ノード13〜16のいずれにおいても元の完全なデータを取得するのが困難となり、情報漏えいが防止される。
【0053】
また、本実施形態では、(k,n)しきい値秘密分散アルゴリズムを用いてデータをn個の分割片に分割し、1回に送信する数がk個未満となるようにして送るので、中継ノード13〜16において、1回の分割片の集合から元のデータを復元することが不可能となっている。
【0054】
次に本実施形態を適用した具体的な状況の例について説明する。PDA(Personal Digital Assistan)やスマートフォンなどの端末をノードとしてアドホックネットワーク経由でテーマパーク内のレストランを予約するときを想定する。例えば、予約しようとする人の端末が送信ノードとなり、レストランの予約受け付け用の端末が受信ノードとなる。そしてテーマパーク内の他人の端末が中継ノードとなりうる。
【0055】
送信するデータには予約者の名前、連絡先、予約時刻などの情報が含まれることになる。予約しようとする人にしてみれば、そのようなデータを、中継ノードを含めて他人に漏らしたくない。そのような場合、本実施形態のようにデータを秘密分散アルゴリズムで複数の分割片に分割し、複数回に分けて送信すれば、他人の中継ノードでは元のデータを復元されることがなく、予約受け付けの受信ノードでは元のデータを復元することができるようになる。
【図面の簡単な説明】
【0056】
【図1】本実施形態によるデータ通信システムの構成を示すブロック図である。
【図2】本実施形態によるデータ通信システムの動作を示すシーケンス図である。
【図3】本実施形態の送信ノードの構成を示すブロック図である。
【図4】本実施形態の受信ノードの構成を示すブロック図である。
【符号の説明】
【0057】
10 アドホックネットワーク
11 送信ノード
12 受信ノード
13〜16 中継ノード
21 データ分割部
22 経路選択部
31 データ復元部
32 データ受信部

【特許請求の範囲】
【請求項1】
アドホックネットワークによってデータを送受信するデータ通信システムであって、
送信すべきデータを、秘密分散アルゴリズムを用いて複数の分割片に分割し、複数の前記分割片を複数回に分けて送信する送信ノードと、
前記送信ノードから複数回に分けて送信された前記分割片を受信し、秘密分散アルゴリズムを用いて、複数の前記分割片から元のデータを復元する受信ノードと、を有するデータ通信システム。
【請求項2】
前記送信ノードは、(k,n)しきい値秘密分散アルゴリズムを用いて前記データをn個の分割片に分割し、1回に送信する数がk個未満となるように複数回に分けて前記分割片を送信し、
前記受信ノードは、前記送信ノードからk個以上の前記分割片を受信して、前記(k,n)しきい値秘密分散アルゴリズムを用いて該分割片から元のデータを復元する、請求項1に記載のデータ通信システム。
【請求項3】
前記送信ノードから前記分割片を送信する毎に前記アドホックネットワーク内の経路を選択しなおす、請求項1または2に記載のデータ通信システム。
【請求項4】
前記アドホックネットワーク内の経路を選択しなおすとき、それまでに使った経路で経由した中継ノードを避けるように経路を選択する、請求項3に記載のデータ通信システム。
【請求項5】
前記経路の選択に用いられるプロトコルがプロアクティブプロトコルであり、
予め経路表に前記送信ノードから前記受信ノードへ複数の経路を用意しておき、経路を選択するとき、予め用意しておいた複数の前記経路を順次切り替えて用いる、請求項3または4に記載のデータ通信システム。
【請求項6】
前記送信ノードは、前記アドホックネットワークのトポロジが変化する毎に前記分割片を送信する、請求項1から5のいずれか1項に記載のデータ通信システム。
【請求項7】
アドホックネットワークによって受信ノードへデータを送信する送信ノードであって、
前記受信ノードに送信すべきデータを、秘密分散アルゴリズムを用いて複数の分割片に分割するデータ分割部と、
前記受信ノードへ前記分割片を送信するための経路を選択し、前記データ分割部で分割された複数の前記分割片を複数回に分けて前記経路に送信する経路選択部と、を有する送信ノード。
【請求項8】
アドホックネットワークによって送信ノードからのデータを受信する受信ノードであって、
前記送信ノードからの分割片を受信するための経路を選択し、前記送信ノードがデータを複数に分割して前記アドホックネットワーク上に複数回に分けて送信した分割片を前記経路から受信する経路選択部と、
前記経路選択部で受信された複数の前記分割片から、秘密分散アルゴリズムを用いて元のデータを復元するデータ復元部と、を有する受信ノード。
【請求項9】
送信ノードから受信ノードへアドホックネットワークによってデータを送信するためのデータ通信方法であって、
前記送信ノードにて、送信すべきデータを、秘密分散アルゴリズムを用いて複数の分割片に分割し、
前記送信ノードから前記アドホックネットワークに複数の前記分割片を複数回に分けて送信し、
前記送信ノードから複数回に分けて送信された前記分割片を前記受信ノードにて前記アドホックネットワークから受信し、
前記受信ノードにて、秘密分散アルゴリズムを用いて、複数の前記分割片から元のデータを復元する、データ通信方法。
【請求項10】
コンピュータを、アドホックネットワークによってデータを送受信するデータ通信ノードとして動作させるためのプログラムであって、
他のノードに送信すべきデータを、秘密分散アルゴリズムを用いて複数の分割片に分割する手順と、
分割した複数の前記分割片を複数回に分けて前記アドホックネットワーク上に送信する手順と、
他のノードから前記アドホックネットワーク上に複数回に分けて送信された複数の分割片を受信する手順と、
受信した複数の前記分割片から、秘密分散アルゴリズムを用いて元のデータを復元する手順と、コンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2008−312115(P2008−312115A)
【公開日】平成20年12月25日(2008.12.25)
【国際特許分類】
【出願番号】特願2007−160170(P2007−160170)
【出願日】平成19年6月18日(2007.6.18)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】