説明

ネットワークシステム

【課題】ソーシャルネットワークにおける取引において信頼度の低い相手に自己の評価情報が判別されてしまうことを抑制する。
【解決手段】P2Pネットワーク上に構築されたソーシャルネットワークに登録されている複数のネットワーク要素を備えたネットワークシステムであって、各ネットワーク要素における他のネットワーク要素の評価情報を受け付け、所定のネットワーク要素によって設定されている他のネットワーク要素の評価値を位相としランダムに決定されるランダム値を振幅とする直交振幅変調演算により、当該他のネットワーク要素毎に、受け付けた評価情報を分割するとともに分割された分割情報のうち提供する分割情報を決定し、提供することに決定した分割情報を提供対象の各ネットワーク要素にそれぞれ送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、P2Pネットワーク上に構築されたソーシャルネットワークに登録されている複数のネットワーク要素を備えたネットワークシステムに関する。
【背景技術】
【0002】
近年、通信ネットワーク上に構築されたいわゆる知り合い網(ソーシャルネットワーク)の参加者が互いに友人を紹介しあって新たな友人関係を広げることを目的に開設されたコミュニティ型のWebサイト(ソーシャルネットワーキングサイト)によって提供されるネットワークサービス(ソーシャルネットワークサービス)が提供され、普及してきている。
【0003】
ソーシャルネットワークサービスは、既存の参加者からの招待がないと、ソーシャルネットワークに参加できないものとされている。このようなソーシャルネットワークサービスとしては、例えば、「orkut」や「gree」と呼ばれるサーバ集中型のサービスが知られている。
【0004】
ここで、ソーシャルネットワークが構築されていく手順について説明する。先ず、ある人が、あるソーシャルネットワークの既存の参加者である親しい人から紹介される形で、そのソーシャルネットワークに招待される。次に、ソーシャルネットワークに招待された人が、自分の個人情報を登録することでそのソーシャルネットワークに参加する。さらに、ソーシャルネットワークに招待されて新たに参加した人が、別の親しい友人を紹介する形でそのソーシャルネットワークに招待する。このような各段階が繰り返されることで、人から人への連鎖したソーシャルネットワークが作り上げられる。なお、ソーシャルネットワークに登録したユーザは、あらかじめ用意されたフォーマットに自己のプロフィールを入力することによって自己紹介を行う。
【0005】
上記のように、ソーシャルネットワークでは、知り合いからの紹介でないと新規の参加が許されないため、新規に参加した人の発言内容については、その人を紹介した人が連帯責任を負うことになる。このため、新規に参加した人であっても責任を持った発言がなされ、参加者が発信する情報の精度が自ずと高くなる。このように、ソーシャルネットワークにおいては、他の自由参加型のネットワークと比較して、有効な情報が多いという特徴がある。
【0006】
上記のソーシャルネットワークなどにおける通信ネットワークを介して情報をやり取りする際に、ソーシャルネットワーク上で評判を取得するためのSET(Secure Eigen Trust)アルゴリズムが知られている(非特許文献1)。
【0007】
【非特許文献1】“The EigenTrustAlgorithm for Reputation Management in P2P Networks”、[online]、[平成20年5月7日検索]、インターネット<URL:http://www.stanford.edu/~sdkamvar/papers/eigentrust.pdf>
【発明の開示】
【発明が解決しようとする課題】
【0008】
ところが、従来のSETアルゴリズムによって評判を取得する場合には、ノードが他のノードを評価した評価情報を、スコアマネージャと呼ばれるDHTのデータ保持者に集約を依頼し、集約された評価をさらにスコアマネージャに集約を依頼するという手順で評価がサーバを用いることなく集約される。そして、さらに集約の手順の中で手に入れたデータを自分の持っているデータと計算し、そのデータをさらに分配することでソーシャルネットワーク上全体に評価を伝達することで、全体での評判が決定されるようになっている。
【0009】
また、従来のSETアルゴリズムでは、データを取引するときに、そのデータの見返りとして評価値リストを対価として交換するようにしている。このSETアルゴリズムでは、本人の持つ各ノードに対する評価値を自ノードに以前データを提供した他のノードXに渡すようにしている。また、自ノードが受け持つデータ委託者を「ドウター(daughter)」として、見ず知らずの計算者「スコアマネージャ」に渡すことになっており、さらに自分の手元に集まった評価値リストをノードXに渡すことになっている。
【0010】
上記のようなルールに従ってデータを受け渡すことについては、コミュニティ全体の評判を計算するために不可欠であるが、自分の持つ評価値リストを一度取引しただけのノードに対して渡すことは、少数のコミュニティの中で取引を始める場合には、2人ゼロ和ゲームになってしまうため、取引に抑制がかかってしまうおそれがある。また、ある程度人数が増えた場合であっても、取引を繰り返すことで自分の持っている評価リストが判ってしまうおそれがあるという問題があった。
【0011】
本発明は、上述した問題を解消し、ソーシャルネットワークにおける取引において信頼度の低い相手に自己の評価情報が判別されてしまうことを抑制することができるネットワークシステムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明のネットワークシステムは、P2Pネットワーク上に構築されたソーシャルネットワークに登録されている複数のネットワーク要素を備えたネットワークシステムであって、各ネットワーク要素における他のネットワーク要素の評価情報を受け付ける評価情報受付手段と、所定のネットワーク要素によって設定されている他のネットワーク要素の評価値を位相としランダムに決定されるランダム値を振幅とする直交振幅変調演算により、当該他のネットワーク要素毎に、受け付けた評価情報を分割するとともに分割された分割情報のうち提供する分割情報を決定する分割情報決定手段と、提供することに決定した分割情報を提供対象の各ネットワーク要素にそれぞれ送信する分割情報送信手段とを備えたことを特徴とする。
【0013】
前記評価情報は、例えば、各ネットワーク要素を利用する各ユーザの親和度を示す評価値の一覧を示す親和度リストである。
【0014】
前記評価情報は、例えば、各ネットワーク要素を利用する各ユーザの嗜好度を示す評価値の一覧を示す嗜好度リストである。
【発明の効果】
【0015】
本発明によれば、ソーシャルネットワークにおける取引において信頼度の低い相手に自己の評価情報が判別されてしまうことを抑制することができるようになる。
【発明を実施するための最良の形態】
【0016】
以下、本発明の実施の形態について図面を参照して説明する。
図1は、本発明の一実施の形態におけるソーシャルネットワークシステム(ネットワークシステム、通信ネットワークシステム)100の構成例を示すブロック図である。図2は、ソーシャルネットワークシステム100におけるデータ共有の様子を示す概念図である。
【0017】
図1に示すように、ソーシャルネットワークシステム100は、複数のユーザ端末1〜N(Nは任意の正の整数)と、インターネットなどの通信ネットワーク30とによって構築される。複数のユーザ端末1〜Nは、それぞれ、通信ネットワーク30に接続されている。
【0018】
本例のソーシャルネットワークシステム100は、P2Pアプリケーションソフトウェアによって実現されるP2P(Peer−To−Peer)ネットワーク(オーバーレイネットワーク)であるものとする。
【0019】
本例のソーシャルネットワークシステム100では、ピア(エンドノード(ノード):ユーザ端末1〜N)によって提供される情報を集約するために、参加するピアで一つのハッシュテーブル110のある領域を持ち合うDHT(Distributed Hash Table)を用いるものとする。
【0020】
DHTを用いたデータの保管は、一般に、Hash関数でキーを作成し、作成されたキーの領域を担当するピアにデータを渡すことにより、データを分散保持することで行われる。
【0021】
ソーシャルネットワークシステム100では、仮想的に設けられているハッシュテーブル110に、ユーザ情報111と、コミュニティ情報112と、属性情報113と、CA情報114と、ソース情報115と、公開鍵情報116とを持つ。このハッシュテーブル110に保持されている共有データを、DHTによって各ピアで分散保持することによって、仮想的なデータ共有を実現している。
【0022】
ユーザ情報111には、各ユーザの個人情報や友達帳情報などが含まれる。友達帳情報には、他のユーザに対する各種の評価(評価項目、評価結果)を示す評価情報(評価リスト)が登録されている。
【0023】
コミュニティ情報112には、ソーシャルネットワークシステム100に登録されているコミュニティに関する各種の情報が含まれる。属性情報113には、ユーザやコミュニティに付与される属性に関する各種の情報が含まれる。CA情報114には、ソーシャルインターネットワーク100における各ノードがCAサーバとして設定されているか否かを示す設定情報などのCAサーバに関する各種の情報が含まれる。
【0024】
ソース情報115には、ソーシャルネットワークシステム100の運用のために使用されるソースプログラムや、そのソースプログラムに対する各種の評価(評価項目、評価結果)を示すソース評価情報とが含まれる。公開鍵情報116には、各ノードから受け取った公開鍵が示す情報を含む。
【0025】
各ユーザ端末1〜Nは、それぞれ、例えばパーソナルコンピュータや携帯通信端末などの情報処理装置により構成され、通信ネットワーク30に接続するための環境を備えているものとする。また、各ユーザ端末1〜Nは、それぞれ、制御プラグラム11〜1Nと、DHT21〜2Nと、各種の情報を格納するテーブル211〜2N1を備えている。
【0026】
制御プラグラム11〜1Nは、それぞれ、各ユーザ端末1〜Nが備える記憶媒体に格納されている。各ユーザ端末1〜Nは、それぞれ、自己が備える記憶媒体に格納されている制御プラグラム11〜1Nに従って各種の制御を行う。
【0027】
図3は、他のユーザに対する各種の評価を示す評価情報(ユーザ評価情報、評価リスト)の登録状態の例を示す説明図である。ここでは、評価情報として、親和度リストを例に説明する。図3に示す親和度リストには、端末A(ユーザ端末1)を使用するユーザAによって決定された他の端末(端末B(ユーザ端末2)など)のユーザ(ユーザBなど)に対する親和度(信頼度)を示す値が設定されている。この評価情報は、評価主体であるユーザAが使用するユーザ端末1が備えるテーブル211と、DHT21〜DHT2Nの集合体として仮想的に設けられているハッシュテーブル110に登録されている。親和度は、本例では0〜100の数値で示され、数値が大きいほど親和度が高いことを意味する。よって、例えばユーザAは、自己が信頼できる相手に高い数値を設定し、自己が信頼できない相手に低い数値を設定する。
【0028】
ここで、SET(Secure Eigen Trust)アルゴリズムについて説明する。SETアルゴリズムは、以下の(1)〜(5)の特徴を保ちつつオーバーレイネットワーク上で評判を取得するアルゴリズムである。
(1)システムは自分で治安を維持できる。
(2)ユーザの匿名性を維持すべき。
(3)新参者は善行の後にのみ評価を得られる。
(4)計算・インフラ・記憶装置・メッセージの複雑さで最小のオーバーヘッドを持っている。
(5)集団的にシステムを破壊しようとする悪意のある投票に強くなければならない。
【0029】
SETアルゴリズムでは、エンドユーザが他のエンドユーザを評価した評価情報の集約を、スコアマネージャと呼ばれるDHTのデータ保持者に依頼し、集約された評価の集約をさらにスコアマネージャに依頼するという手順で、サーバを用いずに評価を集約する。そして、集約の手順の中で取得したデータと、自分の持っているデータに基づいて評価などを計算し、そのデータをさらに分配することでオーバーレイネットワーク上全体に評価を伝達し、全体での評判を決定することが可能となるものである。
【0030】
SETアルゴリズムでは、各属性(各評価項目)についての総合的な評価が得られる。例えば、各評価項目について、評価結果が付与されている各ユーザの評価の高低(評価レベル)を定めることができる。すなわち、各評価項目について、ユーザをランキングすることができる。
【0031】
なお、SETアルゴリズムは、DHTを利用したアルゴリズムであって、P2Pネットワーク上の各ピアが評価をした評価値を総合的な評判として得るために用いられているアルゴリズムである。
【0032】
次に、本例のソーシャルネットワークシステム100における各ユーザ端末1〜Nの動作について説明する。ここでは、ユーザ端末1〜Nが、ユーザ端末1〜Nを管理するユーザ1〜Nによる入力装置の操作にもとづく指示に応じて、制御プログラム11〜1Nに従って実行する動作について説明する。
【0033】
[コミュニティの立ち上げ]
本例では、オープンソースにおいて一番最初にソフトウェアを作成した一又は複数の者を「ファウンダ」と呼ぶ。また、公開されたオープンソースを利用し、かつ改良を加えるソフト作成協力者を、「コミッタ」と呼ぶ。そして、ファウンダとコミッタとを合わせて「ファウンデーション」と呼び、参加メンバを「ファウンデーションメンバ」と呼ぶこととする。ファウンデーションは、オーバーレイネットワーク上にコミュニティを作り、SETアルゴリズムを用いて、有効な評判を取得できるように準備する。また、ファウンデーションメンバとなる可能性はあるが現在はソフトウェアを利用するだけのユーザを、「シチズン」と呼ぶ。
【0034】
ファウンデーションメンバは、メンバ同士でDHTを利用したコミュニティであるソーシャルインターネットワーク100を作成する。DHTには、CA情報114が格納されたCA情報テーブルと、ソース情報115が格納されているソース情報テーブルと、公開鍵情報116が格納されている公開鍵テーブルとが備えられている。
【0035】
そして、ファウンデーションメンバが使用するファウンデーションメンバ端末(例えばユーザ端末1)は、ファウンデーションメンバの操作に従って、公開鍵116を公開鍵テーブルに、ソース情報115をソース情報テーブルに格納する。さらに、ファウンデーションメンバ端末は、他のメンバの評価データを、DHTを用いたCA情報テーブルに格納する。すると、SETアルゴリズムによって、どのファウンデーションメンバが評価した評価情報であるかどうかを、ファウンデーションメンバの情報は結び付けられないように集計(ランキング)などの処理が行われる。
【0036】
PKIを立ち上げるまでは、各メンバが全てのメンバの公開鍵を持つ必要があるため、ファウンデーションメンバ相互でソース情報の真正性を確認するために公開鍵をファウンデーションメンバに配布して共有する。
【0037】
ファウンデーションメンバ端末は、ファウンデーションメンバの操作に従って、メンバが配布したアップデートソースID付のアップデートソースもしくはデバッグ情報をソース情報テーブルに格納する。各ファウンデーションメンバは、アップデートソースIDを公開鍵を用いて真正性を検証したあとにアップデートソースもしくはデバッグ情報を評価し、ソース情報をコミットしたファウンデーションメンバの評価を行い、その評価データをCA情報テーブルに格納する。このとき、悪意がある攻撃として特定のユーザに偏った評価を使用した場合には、SETアルゴリズムによる評判の集計中に、その評価は除外される。
【0038】
[評価情報の提供・更新]
ここでは、ユーザ端末1のユーザAが評価を設定あるいは更新したときに、ユーザAの評価リストが分割されて提供され、ソーシャルネットワークシステム100において仮想的に管理されている評価情報が更新される場合を例に説明する。図4は、評価情報更新処理の例を示すフローチャートである。
【0039】
先ず、ユーザ端末1は、ユーザAによる入力装置の操作によって評価結果が生成(評価情報が更新)されると(ステップS101)、その評価結果を送信する(ステップS102)。ユーザ端末1によって評価結果である評価リストが送信されると、例えばファウンデーションメンバが使用するファウンデーションメンバ端末(例えばユーザ端末N)によって、QAM(直交振幅変調)による分散演算がなされる(ステップS103)。QAMによる分散演算は、親和度を位相(f)とし、ランダムに決定される値を振幅I(t),Q(t)として、下記の式1を用いて実行される。
【0040】
【数1】

・・・(式1)
【0041】
QAMによる分散演算を行うことで、送信対象のユーザ毎に、評価リストがn個に分割され、そのうちのx個が選択される。分割数であるnの値は、評価リストの提供元であるユーザAによって予め設定される。振幅I(t),Q(t)によって変化するが、親和度が高ければxの値が大きくなり、親和度が低ければxの値が小さくなる。振幅I(t),Q(t)による変化により、xの値にゆらぎが生じる。よって、送信対象の各ユーザのうち、ユーザAとの親和度が高いユーザに対しては周波数が合っているデータ(評価リストの大部分)を送信することに決定され、ユーザAとの親和度が低いユーザに対しては周波数がずれたデータ(評価リストの一部分)を送信することに決定される。
【0042】
なお、ファウンデーションメンバ端末は、QAMによる分散演算を行うことによって評価リストを分割した分割データのうちの1つをスコアマネージャに提供する。他のユーザ端末2〜Nやスコアマネージャは、正しい評価リスト(評価リスト全体)を得たい場合には、多くのユーザ端末から評価リストの分割データを収集し、QAMによる復号演算を行うことによって評価リストの全体を得ることが可能となる。
【0043】
さらに、ユーザ端末1がスコアマネージャとして振る舞うときには、ドウターから帰ってくる分割データについてQAMによる復号演算を行うことによって、ノイズを含むがほぼ合っているであろう評価リストを得ることが可能となる。
【0044】
次いで、ファウンデーションメンバ端末は、QAMによる分散演算により評価リストをn個に分割した分割データから選択されたx個(xの値は送信先のユーザ端末毎に異なる)の分割データを、送信対象の各ユーザ端末に送信する。
【0045】
各ユーザ端末は、ファウンデーションメンバ端末からx個の分割データを受信すると(ステップS104)、SETアルゴリズムによる集計処理を実行し(ステップS105)、各ユーザ端末のユーザそれぞれの評価リスト(評価情報)を更新する(ステップS106)。
【0046】
[評価情報の提供・更新の他の例]
次に、評価情報として特定の事項の評価がなされている評価リストが用いられる場合を例に説明する。ここでは、ユーザ端末1のユーザAが他のユーザの飲食店情報の評価を設定あるいは更新したときに、ユーザAの評価リストである嗜好度リストが分割されて提供され、ソーシャルネットワークシステム100において仮想的に管理されている評価情報が更新される場合を例に説明する。
【0047】
図5は、他のユーザに対する各種の評価を示す評価情報である嗜好度リストの登録状態の例を示す説明図である。図5に示す嗜好度リストには、端末A(ユーザ端末1)を使用するユーザAによって決定された他の端末(端末B(ユーザ端末2)など)のユーザ(ユーザBなど)に対する嗜好度(特定の嗜好に関する信頼度)を示す値が設定されている。この嗜好度リストは、評価主体であるユーザAが使用するユーザ端末1が備えるテーブル211と、DHT21〜DHT2Nの集合体として仮想的に設けられているハッシュテーブル110に登録されている。嗜好度は、本例では0〜100の数値で示され、数値が大きいほど該当する項目の嗜好度が高いことを意味する。よって、例えばユーザAは、各項目について、自己が信頼できる相手に高い数値を設定し、自己が信頼できない相手に低い数値を設定する。図5に示す例では、ユーザAは、イタリアンの飲食店情報についてはユーザ端末DのユーザDを最も信頼し、フレンチの飲食店情報についてはユーザ端末DのユーザDを最も信頼し、中華の飲食店情報についてはユーザ端末CのユーザCを最も信頼しており、それぞれの項目で最も高い数値が設定されている。
【0048】
本例において、ユーザAによる入力装置の操作によって嗜好度リストが更新されると(ステップS101参照)、ユーザ端末1は、更新された嗜好度リストを送信する(ステップS102参照)。ユーザ端末1によって嗜好度リストが送信されると、例えばファウンデーションメンバが使用するファウンデーションメンバ端末(例えばユーザ端末N)によって、QAMによる分散演算がなされ(ステップS103参照)、QAMによる分散演算により嗜好度リストをn個に分割した分割データから選択されたx個(xの値は送信先のユーザ端末毎に異なる)の分割データを、送信対象の各ユーザ端末に送信する。
【0049】
各ユーザ端末は、ファウンデーションメンバ端末からx個の分割データを受信すると(ステップS104参照)、SETアルゴリズムによる集計処理を実行し(ステップS105参照)、各ユーザ端末のユーザそれぞれの嗜好度リスト(評価情報)を更新する(ステップS106参照)。
【0050】
以上に説明したように、P2Pネットワーク上に構築されたソーシャルネットワークに登録されている複数のネットワーク要素を備えたネットワークシステムであって、各ネットワーク要素における他のネットワーク要素の評価情報を受け付け、所定のネットワーク要素によって設定されている他のネットワーク要素の評価値を位相としランダムに決定されるランダム値を振幅とする直交振幅変調演算により、当該他のネットワーク要素毎に、受け付けた評価情報を分割するとともに分割された分割情報のうち提供する分割情報を決定し、提供することに決定した分割情報を提供対象の各ネットワーク要素にそれぞれ送信する構成としたので、ソーシャルネットワークにおける取引において信頼度の低い相手に自己の評価情報が判別されてしまうことを抑制することができるようになる。
【0051】
また、上述した実施の形態では、各ネットワーク要素を利用する各ユーザの親和度を示す評価値の一覧を示す親和度リストを評価情報として用いているので、親和度に応じて分散させて親和度リストを提供することができるようになり、ソーシャルネットワークにおける取引において信頼度の低い相手に自己の評価情報が判別されてしまうことを抑制することができるようになる。
【0052】
また、上述した実施の形態では、各ネットワーク要素を利用する各ユーザの嗜好度を示す評価値の一覧を示す嗜好度リストを評価情報として用いているので、嗜好度に応じて分散させて嗜好度リストを提供することができるようになり、ソーシャルネットワークにおける取引において信頼度の低い相手に自己の評価情報が判別されてしまうことを抑制することができるようになる。
【産業上の利用可能性】
【0053】
本発明によれば、ソーシャルネットワークにおける取引において信頼度の低い相手に自己の評価情報が判別されてしまうことを抑制するのに有用である。
【図面の簡単な説明】
【0054】
【図1】本発明の一実施の形態におけるソーシャルネットワークシステムの構成例を示すブロック図である。
【図2】本発明の一実施の形態におけるソーシャルネットワークシステムの概念を示すブロック図である。
【図3】親和度リストの例を示す説明図である。
【図4】評価情報更新処理の例を示すタイミング図である。
【図5】嗜好度リストの例を示す説明図である。
【符号の説明】
【0055】
1〜N ユーザ端末
11〜1N 制御プログラム
21〜2N DHT
30 通信ネットワーク
100 ソーシャルネットワークシステム

【特許請求の範囲】
【請求項1】
P2Pネットワーク上に構築されたソーシャルネットワークに登録されている複数のネットワーク要素を備えたネットワークシステムであって、
各ネットワーク要素における他のネットワーク要素の評価情報を受け付ける評価情報受付手段と、
所定のネットワーク要素によって設定されている他のネットワーク要素の評価値を位相としランダムに決定されるランダム値を振幅とする直交振幅変調演算により、当該他のネットワーク要素毎に、受け付けた評価情報を分割するとともに分割された分割情報のうち提供する分割情報を決定する分割情報決定手段と、
提供することに決定した分割情報を提供対象の各ネットワーク要素にそれぞれ送信する分割情報送信手段とを備えた
ことを特徴とするネットワークシステム。
【請求項2】
前記評価情報は、各ネットワーク要素を利用する各ユーザの親和度を示す評価値の一覧を示す親和度リストである
請求項1記載のネットワークシステム。
【請求項3】
前記評価情報は、各ネットワーク要素を利用する各ユーザの嗜好度を示す評価値の一覧を示す嗜好度リストである
請求項1記載のネットワークシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2009−276899(P2009−276899A)
【公開日】平成21年11月26日(2009.11.26)
【国際特許分類】
【出願番号】特願2008−125900(P2008−125900)
【出願日】平成20年5月13日(2008.5.13)
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り 平成19年11月19日社団法人電子情報通信学会発行の「電子情報通信学会技術研究報告」において発表
【出願人】(307022424)ソフトバンクテレコム株式会社 (42)
【出願人】(504143441)国立大学法人 奈良先端科学技術大学院大学 (226)
【Fターム(参考)】