NEMを支える評判システム EigenTrust++ その2

前回の復習

前回の続きです。

 

前回は、NEMネットワークでは常にあらゆる交信がノード間で行われていることがわかりました。

 

その時に、送られてきた情報の正当性と使用可能性をチェックする作業が行われていることもわかりました。

 

そのチェック作業によって、交信が「成功」か「ニュートラル」か「失敗」か結果を出すことが出来ます。

 

参考にしているサイトはnemの説明書です

 

ノードの信頼度

NEMネットワークでは各ノードがどの程度信頼できるのか(信頼値)を利用することで安全な情報の交信を行っているみたいです。

 

ネットワーク内の全てのノードはそれぞれのノードに対する自分の信頼度(ローカル信頼値)を保持してます。

 

それをもとに「あのノードは信頼度が高いなぁ。」とか「あいつは信頼度が低いからあまり関わらないでおこう。」といったことが判断できるようになります。(自分の理解で書いているのでここに書かれている文章が正しい保証はありません。)

 

 

信頼度はどうやって求めるているのか

ではその信頼度(ローカル信頼値)はどのような流れで決まるのでしょうか。

 

そこで、前回しったチェック作業の結果が利用されます。

 

ざっくり説明すると、交信の結果に「成功」が多いノードの信頼度は上がっていき、一方で「失敗」の多いノードの信頼度は下がっていく設計になっているようです。

 

いままでに交信をしたことがないノードには初期設定で信頼度を決めます。

 

以下で初期ノードがローカル信頼値を得るまでの流れをまとめます。

 

  1. あらかじめ信頼済みのノード集合Pを知っている。(設定でPは変更できる)
  2. 信頼済みのノードから他のノードの場所情報を得る。
  3. それで知ったn個のノードそれぞれに対して信頼ベクトル値pを初期設定する。
  4. 時間経過とともに、チェック作業の結果からローカルノード(自分自身の信頼値)のローカル信頼値を更新していく。

 

なかなか、難しくて自分の頭では理解が追い付きません。数式もある(信頼ベクトルってなんやねん!)のですがまだ理解できていないので書けません。

 

とりあえず、分かったのは新しくノードが建った時、既存の信頼済みのノードからネットワーク内のノードの所在とそれらの初期信頼値を入手します。それによって、自分自身の信頼値(ローカル信頼値)も導き出しているってことでしょうか。(よくわからん…)

 

信頼済みのノード集合Pは自分で設定できるみたいです。自分で信頼できるノードを決められるというのは…色々柔軟性がありそうですね。

 

また、他のノードの場所を聞き出すのですが文章にはn個と書いてあります。このnの値はどうやって決まるのでしょうか。まさか全てのノードの数ではないですよね?(わからん)

 

とりあえず、NEMネットワーク内における自分自身の(ローカル)信頼値を導出することが最初に行われるらしいことは分かりました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です