説明

情報交換システム、端末装置および情報交換方法

【課題】 自装置の周囲に位置している他の端末装置との間で、秘密情報を秘匿した状態で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することのできる情報交換システムを提供する。
【解決手段】 端末装置Aは、第1の公開情報と秘密情報とを保持しており、自装置の周囲の情報交換範囲内で端末装置Bを探索し、第1の公開情報と秘密情報を公開鍵で暗号化し、暗号化された第1の公開情報と秘密情報と公開鍵を端末装置Bへ送信する。端末装置Bは、第2の公開情報と秘密情報とを保持しており、第2の公開情報と秘密情報を端末装置Aの公開鍵で暗号化し、暗号化された公開情報と秘密情報に基づいてユーザの類似度を暗号化された状態で算出し、端末装置Aへ送信する。端末装置Aは、暗号化された状態の類似度を秘密鍵で復号化し、端末装置Bから公開情報を取得するか否かを判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、二つの端末装置間で無線通信によって情報交換を行うことができる情報交換システムに関する。
【背景技術】
【0002】
従来、複数の車両間で無線通信によって情報交換を行うシステムが提案されている。例えば、複数の車両がグループで走行するときに、互いに種々の情報を無線通信にて接受するためのシステムが提案されている(特許文献1参照)。この従来のシステムでは、グループを構成する複数の車両のそれぞれにナビゲーションシステムと無線機が搭載されており、グループに属する車両間でのみ通信が行われる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平10−62192号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来のシステムにおいては、複数の車両に搭載された無線機に予めグループコードを割り当てておく必要があるという問題があった。しかも、従来のシステムで得ることができる情報は、そのグループに属する車両(のユーザ)が持っている情報に限られるという問題があった。
【0005】
そこで、グループに属する車両間でのみ情報交換を行うのではなく、その車両の近くに位置する他の車両との間で情報交換を行うというシステムも考えられる。しかし、単に近くに位置しているというだけで情報交換を行うとすると、互いのユーザの趣味や嗜好が異なる場合には、互いにあまり興味のない情報の交換が行われることになり、互いに有益な情報を得ることができない。
【0006】
そこで更に、互いのユーザの趣味や嗜好の類似している場合にのみ情報交換を行うために、ユーザの類似度を判定することも考えられる。ユーザの類似度を正確に判定するためには、互いのユーザが持っている多くの情報を用いることが望ましい。しかし、ユーザが持っている情報には、他人に公開してもいい情報(公開情報)と他人には秘密にしておきたい情報(秘密情報)がある。すべての情報(公開情報と秘密情報)を用いてユーザの類似度を判定すれば、より正確な類似度判定を行うことが可能であるが、単に秘密情報を用いることとすると、秘密情報を他人に公開することになりプライバシ漏洩の危険性が高くなるという問題があった。一方、公開情報だけを用いてユーザの類似度を判定することも考えられるが、その場合には類似度判定の確度が低くなってしまうという問題があった。
【0007】
本発明は、上記の課題に鑑みてなされたもので、ある端末装置(自装置)の周囲に位置している他の端末装置との間で、秘密情報を秘匿した状態で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することのできる情報交換システムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の情報交換システムは、二つの端末装置間で無線通信により情報交換を行うことが可能な情報交換システムであって、第1の端末装置は、前記第1の端末装置のユーザに関する情報であって情報交換が許可された第1の公開情報を保持する第1公開情報保持部と、前記第1の端末装置のユーザに関する情報であって情報交換が禁止された第1の秘密情報を保持する第1秘密情報保持部と、自装置の周囲に設定された所定の情報交換範囲内において第2の端末装置を探索する探索部と、前記第1の公開情報および前記第1の秘密情報を、自装置用の公開鍵を用いて暗号化する第1暗号化部と、暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化に用いられた前記公開鍵を、前記第2の端末装置へ送信する第1送信部と、を備え、前記第2の端末装置は、前記第2の端末装置のユーザに関する情報であって情報交換が許可された第2の公開情報を保持する第2公開情報保持部と、前記第2の端末装置のユーザに関する情報であって情報交換が禁止された第2の秘密情報を保持する第2秘密情報保持部と、前記第2の公開情報および前記第2の秘密情報を、前記第1の端末装置から受信した前記公開鍵を用いて暗号化する第2暗号化部と、暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化された前記第2の公開情報および前記第2の秘密情報とに基づいて、前記第1の端末装置のユーザと前記第2の端末装置のユーザの類似度であって前記公開鍵で暗号化された状態の類似度を算出する類似度算出部と、前記暗号化された状態の類似度を、前記第1の端末装置へ送信する第2送信部と、を備え、前記第1の端末装置は、さらに、前記第2の端末装置から受信した前記暗号化された状態の類似度を、前記公開鍵と鍵ペアになっている秘密鍵を用いて復号化する復号化部と、復号化された前記類似度に基づいて、前記第2の端末装置から前記第2の公開情報を取得するか否かを判定する判定部と、前記判定の結果に基づいて、前記第2の端末装置から前記第2の公開情報を取得する情報取得部と、を備えている。
【0009】
これにより、第1の端末装置は、周囲の情報交換範囲を探索して他の端末装置(第2の端末装置)を見つけると、第1の公開情報と第1の秘密情報(第1の端末装置のユーザの公開情報と秘密情報)を公開鍵で暗号化し、暗号化した第1の公開情報と第1の秘密情報を第2の端末装置へ送信するとともに、その公開鍵を第2の端末装置へ送信する。第2の端末装置は、第2の公開情報と第2の秘密情報(第2の端末装置のユーザの公開情報と秘密情報)をその公開鍵で暗号化し、両端末装置の公開情報と秘密情報(暗号化された状態)から両端末装置のユーザの類似度(暗号化された状態)を算出し、それを第1の端末装置へ送信する。第1の端末装置は、暗号化された状態の類似度を秘密鍵で復号化し、その類似度に基づいて第2の端末装置から情報(第2の公開情報)を取得するか否かを判定する。例えば、類似度が所定の基準値より高い場合には、ユーザ同士の嗜好が似ているとして、第2の端末装置から情報(第2の公開情報)を取得する。このようにして、第1の端末装置は、自装置の周囲に位置している他の端末装置(第2の端末装置)との間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することができる。そして、その類似度から互いのユーザの嗜好が似ていると判定された場合には、第2の端末装置から公開情報を取得することができる。
【0010】
また、本発明の情報交換システムでは、前記第1の端末装置は、前記第1の公開情報および前記第1の秘密情報を数値化した第1のベクトルデータを生成する第1ベクトルデータ生成部を備え、前記第1暗号化部は、前記第1のベクトルデータに対して、前記暗号化された状態でも演算処理が可能である準同型性を有する暗号化を行うものであり、前記第2の端末装置は、前記第2の公開情報および前記第2の秘密情報を数値化した第2のベクトルデータを生成する第2ベクトルデータ生成部を備え、前記第2暗号化部は、前記第2のベクトルデータに対して、前記暗号化された状態でも演算処理が可能である準同型性を有する暗号化を行うものであり、前記類似度算出部は、暗号化された前記第1のベクトルデータと暗号化された前記第2のベクトルデータに対して準同型性を利用した演算処理を施して、前記暗号化された状態の類似度を求めてもよい。
【0011】
これにより、第1の端末装置は、第1の公開情報と第1の秘密情報(第1の端末装置のユーザの公開情報と秘密情報)を数値化して第1のベクトルデータを生成し、その第1のベクトルデータに対して、準同型性を有する暗号化を行う。第2の端末装置も、同様に、第2の公開情報と第2の秘密情報(第2の端末装置のユーザの公開情報と秘密情報)を数値化して第2のベクトルデータを生成し、その第2のベクトルデータに対して、準同型性を有する暗号化を行う。そして、第2の端末装置は、暗号化された第1のベクトルデータと第2のベクトルデータに対して準同型性を利用した演算処理を施して、暗号化された状態の類似度を算出する。このようにして、第1の端末装置と第2の端末装置の間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を求めることができる。
【0012】
また、本発明の情報交換システムでは、前記情報交換範囲は、前記第1の端末装置からの距離に基づいて設定される範囲であり、前記情報交換範囲内に位置している前記第2の端末装置と前記第1の端末装置との直接通信が困難である場合に、前記第1の端末装置と前記第2の端末装置との通信を中継する中継装置を備えてもよい。
【0013】
これにより、第1の端末装置は、情報交換範囲内の第2の端末装置と直接通信が困難な場合(例えば、自装置から近い距離に位置しているが第2の端末装置との間に障害物や遮蔽物がある場合)に、中継装置を介して第2の端末装置と情報交換を行うことができる。
【0014】
また、本発明の情報交換システムでは、前記情報取得部は、前記第2の公開情報のうち、前記第1の公開情報および前記第1の秘密情報のいずれにも含まれない情報を取得してもよい。
【0015】
これにより、第1の端末装置は、第2の端末装置が持っている情報(第2の公開情報)のうち自装置が持っていない情報(第1の公開情報および第1の秘密情報のいずれにも含まれない情報)のみを効率よく取得することができる。
【0016】
本発明の端末装置は、他の端末装置と無線通信により情報交換を行うことが可能な端末装置であって、自装置のユーザに関する情報であって情報交換が許可された第1の公開情報を保持する第1公開情報保持部と、自装置のユーザに関する情報であって情報交換が禁止された第1の秘密情報を保持する第1秘密情報保持部と、自装置の周囲に設定された所定の情報交換範囲内において他の端末装置を探索する探索部と、前記第1の公開情報および前記第1の秘密情報を、自装置用の公開鍵を用いて暗号化する第1暗号化部と、暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化に用いられた前記公開鍵を、前記他の端末装置へ送信する第1送信部と、前記他の装置において、前記他の端末装置のユーザに関する第2の公開情報および第2の秘密情報が前記公開鍵を用いて暗号化され、暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化された前記第2の公開情報および前記第2の秘密情報とに基づいて、前記自装置のユーザと前記他の端末装置のユーザの類似度であって前記公開鍵で暗号化された状態の類似度が算出されると、前記暗号化された類似度を前記他の端末装置から受信する受信部と、前記第2の端末装置から受信した前記暗号化された状態の類似度を、前記公開鍵と鍵ペアになっている秘密鍵を用いて復号化する復号化部と、復号化された前記類似度に基づいて、前記第2の端末装置から前記第2の公開情報を取得するか否かを判定する判定部と、前記判定の結果に基づいて、前記第2の端末装置から前記第2の公開情報を取得する情報取得部と、を備えている。
【0017】
この端末装置によっても、上記のシステムと同様に、自装置の周囲に位置している他の端末装置との間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することができ、そして、その類似度から互いのユーザの嗜好が似ていると判定された場合には、他の端末装置から公開情報を取得することができる。
【0018】
本発明の情報交換方法は、二つの端末装置間で無線通信によって行われる情報交換方法であって、第1の端末装置は、前記第1の端末装置のユーザに関する情報であって情報交換が許可された第1の公開情報と、前記第1の端末装置のユーザに関する情報であって情報交換が禁止された第1の秘密情報とを保持しており、自装置の周囲に設定された所定の情報交換範囲内において第2の端末装置を探索し、前記第1の公開情報および前記第1の秘密情報を、自装置用の公開鍵を用いて暗号化し、暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化に用いられた前記公開鍵を、前記第2の端末装置へ送信し、前記第2の端末装置は、前記第2の端末装置のユーザに関する情報であって情報交換が許可された第2の公開情報と、前記第2の端末装置のユーザに関する情報であって情報交換が禁止された第2の秘密情報とを保持しており、前記第2の公開情報および前記第2の秘密情報を、前記第1の端末装置から受信した前記公開鍵を用いて暗号化し、暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化された前記第2の公開情報および前記第2の秘密情報とに基づいて、前記第1の端末装置のユーザと前記第2の端末装置のユーザの類似度であって前記公開鍵で暗号化された状態の類似度を算出し、前記暗号化された状態の類似度を、前記第1の端末装置へ送信し、前記第1の端末装置は、前記第2の端末装置から受信した前記暗号化された状態の類似度を、前記公開鍵と鍵ペアになっている秘密鍵を用いて復号化し、復号化された前記類似度に基づいて、前記第2の端末装置から前記第2の公開情報を取得するか否かを判定し、前記判定の結果に基づいて、前記第2の端末装置から前記第2の公開情報を取得する。
【0019】
この方法によっても、上記のシステムと同様に、第1の端末装置は、自装置の周囲に位置している他の端末装置(第2の端末装置)との間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することができ、そして、その類似度から互いのユーザの嗜好が似ていると判定された場合には、第2の端末装置から公開情報を取得することができる。
【発明の効果】
【0020】
本発明によれば、第1の端末装置は、自装置の周囲に位置している他の端末装置(第2の端末装置)との間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することができ、そして、その類似度から互いのユーザの嗜好が似ていると判定された場合には、第2の端末装置から公開情報を取得することができる。
【図面の簡単な説明】
【0021】
【図1】第1の実施の形態における情報交換システムの説明図
【図2】第1の実施の形態における端末装置の構成を示すブロック図
【図3】第1の実施の形態における情報交換システムの動作を示すシーケンス図
【図4】ベクトルデータの生成(移動経路履歴情報から生成する例)の説明図
【図5】ベクトルデータの生成(閲覧したコンテンツのタグ情報から生成する例)の説明図
【図6】他の端末装置から公開情報を取得する処理の説明図
【図7】第2の実施の形態における情報交換システムの説明図
【図8】第2の実施の形態の情報交換システムの構成を示すブロック図
【図9】他の実施の形態における情報交換システムの説明図
【発明を実施するための形態】
【0022】
以下、本発明の実施の形態の情報交換システムについて、図面を用いて説明する。本実施の形態では、車両に搭載される端末装置(車載機器)やモバイル情報端末装置(携帯機器)等に用いられる情報交換システムの場合を例示する。
【0023】
(第1の実施の形態)
まず、本発明の第1の実施の形態の情報交換システムの全体構成を、図面を参照しながら説明する。図1は、本実施の形態における情報交換システムの説明図である。本実施の形態では、複数の車両に搭載される端末装置1(車載機器)で情報交換システムが構成される場合について説明する。すなわち、図1に示すように、複数の車両(車両A〜F)にはそれぞれ端末装置1(端末装置A〜F)が搭載されており、互いに近くに位置している端末装置間で無線通信によって情報交換が行われる。例えば、同じ駐車場(イベント会場の駐車場など)に駐車している車両間で情報交換が行われる。
【0024】
具体的には、端末装置1(例えば、端末装置A)は、自装置の周囲に設定された所定の情報交換範囲を有しており、その情報交換範囲内に位置している他の端末装置1(例えば、端末装置B〜D)と情報交換を行うことができる。この情報交換範囲は、端末装置1からの距離に基づいて設定されている。例えば、端末装置1を中心にして半径100m以内の範囲が、情報交換範囲として設定される。なお、この半径100m以内の範囲というのは、あくまで情報交換範囲の一例であり、半径500m以内の範囲や半径1km以内の範囲などであってよいことは言うまでもない。
【0025】
つぎに、情報交換システムを構成する端末装置1の各構成について、図面を参照しながら説明する。図2は、端末装置1の構成を示すブロック図である。図2に示すように、端末装置1は、自装置のユーザに関する情報を保持する情報保持部2を備えている。情報保持部2は、情報交換を行うことが許可された公開情報(例えば、インターネットの閲覧履歴)を保持する公開情報保持部3と、情報交換を行うことが禁止された秘密情報(例えば、車両での移動経路履歴)を保持する秘密情報保持部4を備えている。
【0026】
また、端末装置1は、他の無線端末との間で無線通信(送受信)を行う機能を有する無線通信部5と、GPS測位システムやジャイロセンサーなどで車両の現在位置情報を取得する機能を有する現在位置取得部6と、自装置の情報交換範囲内に存在する他の端末装置1を探索する探索部7を備えている。
【0027】
この端末装置1は、公開鍵と秘密鍵を用いた暗号処理を行なう機能を備えており、そのための構成として、鍵保持部8と暗号処理部9を備えている。鍵保持部8は、自装置用の鍵ペア(公開鍵と秘密鍵のペア)を保持する鍵ペア保持部10と、他の端末装置1から受信した公開鍵を保持する受信鍵保持部11を備えている。なお、受信鍵保持部11に保持されている公開鍵(他の端末装置1から受信した公開鍵)は、指定時間が経過すると自動的に削除されるようになっている。一方、暗号処理部9は、公開鍵(自装置用の公開鍵または他の端末装置1から受信した公開鍵)を用いた暗号化の処理をする暗号化部12と、秘密鍵(自装置用の秘密鍵)を用いた復号化の処理をする復号化13を備えている。
【0028】
また、端末装置1は、公開情報や秘密情報を暗号化するときに公開情報や秘密情報を数値化したベクトルデータを生成するベクトルデータ生成部14と、暗号化された公開情報と秘密情報に基づいてユーザの類似度を暗号化された状態で算出する機能を有する類似度算出部15と、類似度(復号化された類似度)に基づいて他の端末装置1から公開情報を取得するか否かを判定する判定部16と、その判定結果に基づいて他の端末装置1から公開情報を取得する処理を行なう情報取得部17を備えている。
【0029】
以上のように構成された情報交換システムについて、図面を参照してその動作を説明する。
【0030】
ここでは、まずシステム全体の動作の流れについて説明する。図3は、本実施の形態における情報交換システムの全体の動作を示すシーケンス図である。ここでは、端末装置Aと端末装置Bとの間で情報交換を行う(端末装置Aが端末装置Bから情報を取得する)例について説明する。
【0031】
図3に示すように、端末装置Aでは、まず、自装置の周囲の情報交換範囲内に存在する他の端末装置1を探索する(S1)。本実施の形態では、周囲の端末装置1の探索をするときに、端末装置1の有する無線通信機能を用いて、直接通信可能な他の端末装置1が存在するか否かを探索する。探索の結果、情報交換の相手となる他の端末装置1を検出した場合には、その端末装置1(端末装置B)を通信対象となる端末装置として選択する(S2)。なお、探索の結果、他の端末装置1を複数検出した場合には、それらの端末装置1の中から一つを選択して、通信対象となる端末装置1(端末装置B)を決定する。
【0032】
つぎに、端末装置Aは、自装置が保持している公開情報や秘密情報を数値化してベクトルデータを生成する(S3)。なお、ベクトルデータの生成については後述する。そして、端末装置Aは、自装置用の公開鍵を用いてベクトルデータを暗号化し(S4)、暗号化したベクトルデータと公開鍵を端末装置Bへ送信する(S5)。なお、端末装置Bが、端末装置Aと以前に情報交換しており、端末装置Aの公開鍵(期限切れになっていないもの)をすでに持っている場合には、公開鍵の送信を省略してもよい。
【0033】
端末装置Bは、自装置が保持している公開情報や秘密情報を数値化してベクトルデータを生成し(S6)、そのベクトルデータを端末装置Aから受信した公開鍵(端末装置Aの公開鍵)を用いて暗号化する(S7)。そして、端末装置Aから受信した暗号化されたベクトルデータと自装置で暗号化したベクトルデータとに基づいて、端末装置Aのユーザと端末装置Bのユーザの類似度を暗号化された状態で算出し(S8)、算出した類似度(暗号化された状態の類似度)を端末装置Aへ送信する(S9)。なお、類似度算出の処理については後述する。
【0034】
端末装置Aは、端末装置Bから受信した類似度(暗号化された状態の類似度)を、自装置用の秘密鍵で復号化し(S10)、その類似度に基づいて、端末装置Bから情報を取得するか否かの判定を行う(S11)。例えば、類似度が所定の基準値より高い場合には、ユーザ同士の嗜好が似ている(類似度が高い)と判定する。そして、類似度が高いと判定された場合には、端末装置Aは端末装置Bから公開情報を取得する。なお、端末装置Bからの公開情報の取得の処理についても後述する。
【0035】
ここで、ベクトルデータの生成について具体的に説明する。図4および図5には、ベクトルデータの生成の例が示されている。秘密情報(例えば移動経路履歴)からベクトルデータを生成する場合には、図4に示すように、移動経路履歴から車両が停止した地点(一定時間、車両の移動量が所定の閾値以下であった地点)を抽出し、地図を細分化した小エリア内にそれらの地点が含まれる個数(その地点を訪れた頻度)の分布を求め、その個数(頻度)をベクトルの要素としてベクトルデータを生成する。
【0036】
例えば、図4の例では、移動経路履歴から5つの地点(黒丸印で図示)が抽出され、16分割された地図の小エリア内にそれらの地点が含まれる個数の分布(左上の小エリア:0、その右の小エリア:2、・・・)が求められ、その個数を要素としたベクトルデータ(0,2,0,0,・・・,0,0)が算出される。
【0037】
一方、公開情報(例えばインターネットの閲覧履歴)からベクトルデータを生成する場合には、閲覧したサイトのURLをハッシュ関数でハッシュ値化し、そのハッシュ値をベクトルの要素としてベクトルデータを生成する。あるいは、図5に示すように、閲覧したサイトのコンテンツ(記事や写真など)に付されていたタグ情報(その記事や写真のカテゴリなど)を集計し、集計したタグ情報の個数を要素としてベクトルデータを生成する。
【0038】
例えば、図5の例では、コンテンツA〜Cに付されていたタグ情報A〜Cを集計すると、集計データ(タグ情報A:2,タグ情報B:2,タグ情報C:1,・・・)が求められ、そのタグ情報の個数を要素としたベクトルデータ(2,2,1,・・・)が算出される。
【0039】
つづいて、類似度算出の処理について詳しく説明する。ここでは、類似度算出の一例として、コサイン類似度とRSA暗号(積算に関して準同型性の特性を持つ暗号アルゴリズム)を用いた類似度の算出方法について説明するが、暗号化に用いる暗号アルゴリズムは、準同型性の特性を有するものであれば、RSA暗号以外の暗号アルゴリズムを用いることができ、また、類似度の算出に用いる計算アルゴリズムも、コサイン類似度以外の他の計算アルゴリズムを用いることができることは言うまでもない。
【0040】
なお、準同型性の特性とは、暗号化した状態でも四則演算などの演算処理を行なうことができ、暗号化した状態で演算した演算結果を復号化しても正しい演算結果(暗号化せずに演算したのと同じ結果)が得られる性質をいう。RSA暗号は、上述のように積算に対して準同型性の特性を有しており、すなわち、暗号化した状態で積算をした結果を復号化しても正しい演算結果が得られる性質を有している。
【0041】
類似度sは、コサイン類似度を用いて下記の式(1)で表される。
【数1】

ここで、ベクトルx=(x,x,・・・)は、端末装置Aの公開情報や秘密情報から算出されたベクトルデータであり、ベクトルy=(y,y,・・・)は、端末装置Bの公開情報や秘密情報から算出されたベクトルデータである。
【0042】
また、Xは、ベクトルxのノルムであり、下記の式(2)で表される。
【数2】

【0043】
また、Yは、ベクトルyのノルムであり、下記の式(3)で表される。
【数3】

【0044】
本実施の形態では、RSA暗号は、積算に関して準同型性の特性を持っているものの、加算に関しては準同型性の特性を持っていないため、コサイン類似度のすべての演算を暗号化した状態で行わず、積算部分のみを暗号化した状態で行う。
【0045】
すなわち、端末装置Aは、ベクトルxを暗号化する前に、ベクトルxのノルムXを計算し、ベクトルxの各要素xとノルムXを自装置の公開鍵で暗号化し、その後、暗号化した各要素Enc(x)と暗号化したノルムEnc(X)を端末装置Bへ送信する。端末装置Bは、ベクトルyを暗号化する前に、ベクトルyのノルムYを計算し、その後、ベクトルyの各要素yとノルムYを端末装置Aの公開鍵で暗号化して、各要素Enc(y)と暗号化したノルムEnc(Y)を得る。
【0046】
そして、端末装置Bは、下記の式(4)を用いて、端末装置Aから受信したEnc(x)とEnc(X)と、自装置で求めたEnc(y)とEnc(Y)から、暗号化された類似度Enc(s)を算出し、算出した値Enc(s)を端末装置Aへ送信する。
【数4】

【0047】
端末装置Aは、暗号化された類似度Enc(s)を自装置の秘密鍵で復号化し、下記の式(5)に示すように、それらの値を加算することによって類似度sを得る。
【数5】

【0048】
なお、本実施の形態では、上記の式(4)に示すように、端末装置Bから端末装置Aに送信される値Enc(s)には、ベクトルyのノルムYと要素yという二つの不定数(端末装置Aにとっての不定数)が用いられているので、端末装置Aでこの値Enc(s)が復号化されても、その復号化した値(x・y)/(X・Y)から端末装置AでノルムYと要素yを一意に決定することはできない。すなわち、端末装置Bで行われる類似度の演算処理は、端末装置Aで類似度が復号化されたときに、その復号化された状態の類似度から、端末装置Bの秘密情報を取得できないような演算処理であるともいえる。
【0049】
最後に、他の端末装置1から公開情報を取得する処理について詳しく説明する。図6は、端末装置Aが端末装置Bから公開情報を取得する処理の説明図である。図6に示すように、端末装置Aは、端末装置Bが保持している公開情報(情報A、D、E)のうち、自装置が保持している公開情報(情報A、B、C)および秘密情報(情報X、Y、Z)のいずれにも含まれない情報(情報D、E)を取得する。
【0050】
より具体的には、端末装置Bは、端末装置Aから受信した暗号化されたベクトルデータと、自装置で生成したベクトルデータとを比較して、端末装置Aが持っていない情報をベクトル要素の欠損から判断し、その欠損に対応する公開情報を端末装置Aに送信する。
【0051】
つぎに、Paillier暗号を用いて類似度を算出する例について説明する。Paillier暗号は、RSA暗号とは異なる準同型性の特性を有している。したがって、ここでは、まず、Paillier暗号の持っている準同型性の特性について説明する。Paillier暗号は、以下に説明するような加法的・乗法的準同型性を有している。
【0052】
・平文の加法的準同型性
Paillier暗号では、下記の式(6)に示すように、2つの暗号文の積は、対応する平文の和に復号される。
【数6】

ここで、mとmは、平文であり、Enc(m,r)とEnc(m,r)は、それらの暗号文である。公開鍵nは、大きな素数pとqの積であり、定数rとrは、いずれもランダムな値である。
【0053】
また、下記の式(7)に示すように、ある暗号文と、公開鍵gを別の平文乗したものとの積は、平文の和に復号される。
【数7】

【0054】
・平文の乗法的準同型性
Paillier暗号では、下記の式(8)および式(9)に示すように、ある暗号文を別の平文乗したものは、2つの平文の積に復号される。
【数8】

【数9】

【0055】
また、下記の式(10)に示すように、暗号文を定数k乗したものは、平文と定数kとの積に復号される。
【数10】

【0056】
つぎに、このようなPaillier暗号を用いて類似度sを算出するときの処理の流れについて説明する。なお、RSA暗号の場合と同様、類似度sは、式(1)に示すように、コサイン類似度によって表される。
【0057】
端末装置Aは、まず、式(2)に示すように、ベクトルxのノルムXを計算し、下記の式(11)に示すように、ベクトルxをノルムXで正規化したベクトルx’を求める。
【数11】

【0058】
そして、端末装置Aは、下記の式(12)に示すように、正規化ベクトルx’を暗号化し(正規化ベクトルx’の各要素を暗号化し)、暗号化した正規化ベクトルEnc(x’)と公開鍵p=(n、g)を、端末装置Bへ送信する。
【数12】

【0059】
端末装置Bは、まず、式(3)に示すように、ベクトルyのノルムYを計算し、下記の式(13)に示すように、ベクトルyをノルムYで正規化したベクトルy’を求める。
【数13】

【0060】
そして、端末装置Bは、下記の式(14)に示す演算により、暗号化されたコサイン類似度を求める。
【数14】

【0061】
この場合、Paillier暗号は、上述のような加法的・乗法的準同型性の特性を持っているので、ベクトルx’の要素を暗号化したものをベクトルy’の要素でべき乗することにより、ベクトルx’の要素とベクトルy’の要素の積を端末装置Aの公開鍵により暗号化した値を、このようにして端末装置Bで求めることが出来る。
【0062】
なお、ベクトルzは、ベクトルx’とベクトルy’の要素の積を暗号化した値を要素に持つベクトルである。このベクトルzの要素の和は、Paillier暗号の加法的準同型性から、下記の式(15)に示すように、暗号化した要素同士の積として求めることが出来る。
【数15】

【0063】
端末装置Bは、このようにして算出した値(暗号化されたコサイン類似度)を、端末装置Aへ送信する。端末装置Aは、端末装置Bから受信した値(暗号化されたコサイン類似度)を、自装置の秘密鍵で復号化することによってコサイン類似度を得ることができる。
【0064】
このような本発明の第1の実施の形態の情報交換システムによれば、端末装置Aは、自装置の周囲に位置している他の端末装置Bとの間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することができ、そして、その類似度から互いのユーザの嗜好が似ていると判定された場合には、端末装置Bから公開情報を取得することができる。
【0065】
すなわち、本実施の形態では、端末装置Aは、周囲の情報交換範囲を探索して他の端末装置Bを見つけると、端末装置Aのユーザの公開情報と秘密情報を公開鍵で暗号化し、暗号化した公開情報と秘密情報を端末装置Bへ送信するとともに、その公開鍵を端末装置Bへ送信する。端末装置Bは、端末装置Bのユーザの公開情報と秘密情報を端末装置Aの公開鍵で暗号化し、両端末装置A、Bの公開情報と秘密情報(暗号化された状態)から両端末装置A、Bのユーザの類似度(暗号化された状態)を算出し、それを端末装置Aへ送信する。端末装置Aは、暗号化された状態の類似度を秘密鍵で復号化し、その類似度に基づいて端末装置Bから情報(公開情報)を取得するか否かを判定する。
【0066】
例えば、類似度が所定の基準値より高い場合には、ユーザ同士の嗜好が似ているとして、端末装置Bから情報(情報D、E)を取得する。コサイン類似度の場合には、類似度が高いほど値が「1」に近づき、類似度が低いほど値が「0」に近づく。このようなコサイン類似度の場合、例えば、基準値は「0,8」などに設定される。このようにして、端末装置Aは、自装置の周囲に位置している他の端末装置Bとの間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することができる。そして、その類似度から互いのユーザの嗜好が似ていると判定された場合には、端末装置Bから公開情報を取得することができる。
【0067】
この場合、端末装置Aは、自装置のユーザの公開情報と秘密情報を数値化してベクトルデータxを生成し、そのベクトルデータxに対して、準同型性を有する暗号化を行う。端末装置Bも、同様に、自装置のユーザの公開情報と秘密情報を数値化してベクトルデータyを生成し、そのベクトルデータyに対して、準同型性を有する暗号化を行う。そして、端末装置Bは、暗号化されたベクトルデータxとベクトルデータyに対して準同型性を利用した演算処理を施して、暗号化された状態の類似度Enc(s)を算出する。このようにして、端末装置Aと端末装置Bの間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を求めることができる。
【0068】
また、本実施の形態では、端末装置Aは、端末装置Bが持っている公開情報(情報A、D、E)のうち自装置が持っていない情報(情報D、E)のみを効率よく取得することができる。なお、端末装置Aは、端末装置Bから情報を取得するときに、端末装置Aが持っている公開情報(情報A、B、C)のうち端末装置Bが持っていない情報(情報C)を、端末装置Bに送信してもよい。
【0069】
(第2の実施の形態)
次に、本発明の第2の実施の形態の情報交換システムについて説明する。ここでは、第2の実施の形態の情報交換システムが、第1の実施の形態と相違する点を中心に説明する。ここで特に言及しない限り、本実施の形態の構成および動作は、第1の実施の形態と同様である。
【0070】
図7は、第2の実施の形態における情報交換システムの説明図である。図7に示すように、第2の実施の形態の情報交換システムは、端末装置Aと端末装置Bとの直接通信が困難である場合に、端末装置Aと端末装置Bとの通信を中継する中継装置20を備えている。この中継装置20は、各端末装置1から定期的に通知される現在位置情報を保持・記録し、端末装置1からの問い合わせに応じて、その端末装置1の現在位置周辺の他の端末装置1を検索・通知する機能を有している。
【0071】
図8は、第2の実施の形態の情報交換システムの構成を示すブロック図である。図8に示すように、中継装置20は、無線通信用の基地局21とネットワーク22を介して、各端末装置1と通信可能である。また、この中継装置20は、端末装置1から通知される現在位置情報を記録・保存する端末位置情報記録部23と、端末装置1から他の端末装置1へ向けて送信された公開鍵を格納する公開鍵格納部24と、端末装置1から他の端末装置1へ向けて送信された通知メッセージを一時的に保存する通知メッセージ保存部25を備えている。なお、これらの現在位置情報や公開鍵や通知メッセージは、一定時間が経過した後に自動的に削除される。
【0072】
このような第2の実施の形態の情報交換システムでは、端末装置Aは、中継装置20を利用して他の端末装置Bと情報交換をすることができる。例えば、端末装置Aは、自装置の情報交換範囲内に存在する他の端末装置Bを探索するときに、中継装置20に記録・保持されている他の端末装置1の現在位置情報を利用することができる。例えば、端末装置Aは、自装置の情報交換範囲内に他の端末装置Bが存在しているか否かを中継装置20に問合せすることができる。また、端末装置Aは、中継装置20から他の端末装置1の現在位置情報を取得して、自装置の情報交換範囲内に存在する他の端末装置Bを探索することもできる。また、端末装置Aは、中継装置20を利用して他の端末装置Bとの情報交換を行う場合には、中継装置20へ現在位置情報を通知するときに、自装置の公開鍵をあわせて中継装置20へ送信してもよい。
【0073】
このような本発明の第2の実施の形態の情報交換システムによっても、第1の実施の形態と同様の作用効果が奏される。
【0074】
そのうえ、本実施の形態では、端末装置Aは、情報交換範囲内の端末装置Bと直接通信が困難な場合(例えば、自装置から近い距離に位置しているが端末装置Bとの間に障害物や遮蔽物がある場合)に、中継装置20を介して端末装置Bと情報交換を行うことができる。
【0075】
以上、本発明の実施の形態を例示により説明したが、本発明の範囲はこれらに限定されるものではなく、請求項に記載された範囲内において目的に応じて変更・変形することが可能である。
【0076】
以上の説明では、端末装置1が車両に搭載される車載機器であり、情報交換システムが車両間通信システムに利用される場合について説明したが、本発明の範囲はこれに限定されるものではなく、本発明の情報交換システムは、広告配信システムに適用することも可能である。
【0077】
例えば、図9に示すように、端末装置1は、車載機器だけでなく、広告配信用の固定機器であってもよい。この広告配信用の端末装置1には、その広告を配信するターゲットのユーザと関連性の高い公開情報や秘密情報が保持されている。この場合、公開情報が広告用のコンテンツ情報である。このようなシステムでは、広告配信用の端末装置1の近くに類似度の高いユーザ(その広告を配信するターゲットのユーザ)の車両(端末装置1)が位置していると、そのユーザの端末装置1(車載機器)に、広告配信用の端末装置1から公開情報(広告用のコンテンツ情報)が自動的に配信される。このようにして、類似度の高い特定のユーザ(その広告を配信するターゲットのユーザ)のみに対して、効率よく広告を配信することが可能である。なお、この広告配信用の端末装置1の機能は、中継装置20に備えられていてもよい。すなわち、この広告配信用の端末装置1は、中継装置20と兼用されてもよい。
【産業上の利用可能性】
【0078】
以上のように、本発明にかかる情報交換システムは、自装置の周囲に位置している他の端末装置(第2の端末装置)との間で、秘密情報を秘匿した状態(暗号化した状態)で、公開情報と秘密情報に基づいて互いのユーザの類似度を判定することができるという効果を有し、車両に搭載される端末装置(車載機器)やモバイル情報端末装置(携帯機器)等に用いられ、有用である。
【符号の説明】
【0079】
1 端末装置
2 情報保持部
3 公開情報保持部
4 秘密情報保持部
5 無線通信部
6 現在位置取得部
7 探索部
8 鍵保持部
9 暗号処理部
10 鍵ペア保持部
11 受信鍵保持部
12 暗号化部
13 復号化部
14 ベクトルデータ生成部
15 類似度算出部
16 判定部
17 情報取得部
20 中継装置
21 基地局
22 ネットワーク
23 端末位置情報記録部
24 公開鍵格納部
25 通知メッセージ保存部

【特許請求の範囲】
【請求項1】
二つの端末装置間で無線通信により情報交換を行うことが可能な情報交換システムであって、
第1の端末装置は、
前記第1の端末装置のユーザに関する情報であって情報交換が許可された第1の公開情報を保持する第1公開情報保持部と、
前記第1の端末装置のユーザに関する情報であって情報交換が禁止された第1の秘密情報を保持する第1秘密情報保持部と、
自装置の周囲に設定された所定の情報交換範囲内において第2の端末装置を探索する探索部と、
前記第1の公開情報および前記第1の秘密情報を、自装置用の公開鍵を用いて暗号化する第1暗号化部と、
暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化に用いられた前記公開鍵を、前記第2の端末装置へ送信する第1送信部と、
を備え、
前記第2の端末装置は、
前記第2の端末装置のユーザに関する情報であって情報交換が許可された第2の公開情報を保持する第2公開情報保持部と、
前記第2の端末装置のユーザに関する情報であって情報交換が禁止された第2の秘密情報を保持する第2秘密情報保持部と、
前記第2の公開情報および前記第2の秘密情報を、前記第1の端末装置から受信した前記公開鍵を用いて暗号化する第2暗号化部と、
暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化された前記第2の公開情報および前記第2の秘密情報とに基づいて、前記第1の端末装置のユーザと前記第2の端末装置のユーザの類似度であって前記公開鍵で暗号化された状態の類似度を算出する類似度算出部と、
前記暗号化された状態の類似度を、前記第1の端末装置へ送信する第2送信部と、
を備え、
前記第1の端末装置は、さらに、
前記第2の端末装置から受信した前記暗号化された状態の類似度を、前記公開鍵と鍵ペアになっている秘密鍵を用いて復号化する復号化部と、
復号化された前記類似度に基づいて、前記第2の端末装置から前記第2の公開情報を取得するか否かを判定する判定部と、
前記判定の結果に基づいて、前記第2の端末装置から前記第2の公開情報を取得する情報取得部と、
を備えることを特徴とする情報交換システム。
【請求項2】
前記第1の端末装置は、前記第1の公開情報および前記第1の秘密情報を数値化した第1のベクトルデータを生成する第1ベクトルデータ生成部を備え、
前記第1暗号化部は、前記第1のベクトルデータに対して、前記暗号化された状態でも演算処理が可能である準同型性を有する暗号化を行うものであり、
前記第2の端末装置は、前記第2の公開情報および前記第2の秘密情報を数値化した第2のベクトルデータを生成する第2ベクトルデータ生成部を備え、
前記第2暗号化部は、前記第2のベクトルデータに対して、前記暗号化された状態でも演算処理が可能である準同型性を有する暗号化を行うものであり、
前記類似度算出部は、暗号化された前記第1のベクトルデータと暗号化された前記第2のベクトルデータに対して準同型性を利用した演算処理を施して、前記暗号化された状態の類似度を求めるものである、請求項1に記載の情報交換システム。
【請求項3】
前記情報交換範囲は、前記第1の端末装置からの距離に基づいて設定される範囲であり、
前記情報交換範囲内に位置している前記第2の端末装置と前記第1の端末装置との直接通信が困難である場合に、前記第1の端末装置と前記第2の端末装置との通信を中継する中継装置を備える、請求項1または請求項2に記載の情報交換システム。
【請求項4】
前記情報取得部は、前記第2の公開情報のうち、前記第1の公開情報および前記第1の秘密情報のいずれにも含まれない情報を取得する、請求項1〜請求項3のいずれかに記載の情報交換システム。
【請求項5】
他の端末装置と無線通信により情報交換を行うことが可能な端末装置であって、
自装置のユーザに関する情報であって情報交換が許可された第1の公開情報を保持する第1公開情報保持部と、
自装置のユーザに関する情報であって情報交換が禁止された第1の秘密情報を保持する第1秘密情報保持部と、
自装置の周囲に設定された所定の情報交換範囲内において他の端末装置を探索する探索部と、
前記第1の公開情報および前記第1の秘密情報を、自装置用の公開鍵を用いて暗号化する第1暗号化部と、
暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化に用いられた前記公開鍵を、前記他の端末装置へ送信する第1送信部と、
前記他の装置において、前記他の端末装置のユーザに関する第2の公開情報および第2の秘密情報が前記公開鍵を用いて暗号化され、暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化された前記第2の公開情報および前記第2の秘密情報とに基づいて、前記自装置のユーザと前記他の端末装置のユーザの類似度であって前記公開鍵で暗号化された状態の類似度が算出されると、前記暗号化された類似度を前記他の端末装置から受信する受信部と、
前記第2の端末装置から受信した前記暗号化された状態の類似度を、前記公開鍵と鍵ペアになっている秘密鍵を用いて復号化する復号化部と、
復号化された前記類似度に基づいて、前記第2の端末装置から前記第2の公開情報を取得するか否かを判定する判定部と、
前記判定の結果に基づいて、前記第2の端末装置から前記第2の公開情報を取得する情報取得部と、
を備えることを特徴とする端末装置。
【請求項6】
二つの端末装置間で無線通信によって行われる情報交換方法であって、
第1の端末装置は、
前記第1の端末装置のユーザに関する情報であって情報交換が許可された第1の公開情報と、前記第1の端末装置のユーザに関する情報であって情報交換が禁止された第1の秘密情報とを保持しており、
自装置の周囲に設定された所定の情報交換範囲内において第2の端末装置を探索し、
前記第1の公開情報および前記第1の秘密情報を、自装置用の公開鍵を用いて暗号化し、
暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化に用いられた前記公開鍵を、前記第2の端末装置へ送信し、
前記第2の端末装置は、
前記第2の端末装置のユーザに関する情報であって情報交換が許可された第2の公開情報と、前記第2の端末装置のユーザに関する情報であって情報交換が禁止された第2の秘密情報とを保持しており、
前記第2の公開情報および前記第2の秘密情報を、前記第1の端末装置から受信した前記公開鍵を用いて暗号化し、
暗号化された前記第1の公開情報および前記第1の秘密情報と、暗号化された前記第2の公開情報および前記第2の秘密情報とに基づいて、前記第1の端末装置のユーザと前記第2の端末装置のユーザの類似度であって前記公開鍵で暗号化された状態の類似度を算出し、
前記暗号化された状態の類似度を、前記第1の端末装置へ送信し、
前記第1の端末装置は、
前記第2の端末装置から受信した前記暗号化された状態の類似度を、前記公開鍵と鍵ペアになっている秘密鍵を用いて復号化し、
復号化された前記類似度に基づいて、前記第2の端末装置から前記第2の公開情報を取得するか否かを判定し、
前記判定の結果に基づいて、前記第2の端末装置から前記第2の公開情報を取得することを特徴とする情報交換方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2011−114392(P2011−114392A)
【公開日】平成23年6月9日(2011.6.9)
【国際特許分類】
【出願番号】特願2009−266565(P2009−266565)
【出願日】平成21年11月24日(2009.11.24)
【出願人】(502324066)株式会社デンソーアイティーラボラトリ (332)
【Fターム(参考)】