昨今、FakeNewsと呼ばれるように、情報についての信頼が揺らいでいます。
以下の記事にもあるように、Vitalikもこのような状況を問題視しており、問題の解決にTrustDavisというシステムを応用することができるのではないかと論じています。
バンコクのEthereumミートアップで語られたVitalikのトークまとめ (Yusuke Obinata)
blockchainの面白さのひとつは、価値や信頼の源泉をどのように設計するのかにあると考えています。信頼度の設計はblockchainに限った話ではなく、すでに中国では信用スコア(芝麻信用, 騰訊征信, etc.)が大手サービス提供者のもとで展開されており?(参照)、チートも含めて社会的インパクトを持ちつつあります。
TrustDavisはこのようなCentralizedなサービス提供者によって裏付けされたシステムではなく、分散的にどのように信頼度ネットワークが構築できるのかを論じています。概念的な説明では上記大日方さんのレポートにも詳しく書いてありますのでそちらを参照ください。
以下、TrustDavisのwhitepaperおよびslidesを参照しながらTrustDavisの内容を見てみようと思います。
TrustDavisのモチベーションは以下のように示されています。
- accurately estimate risk of default
- minimize the risk of default
- minimize losses due to pseudonym change
- avoid trusting a centralized authority
TrustDavisは上記のゴールをプレイヤー間のインセンティブネットワークにより実装できるとしています。
プレイヤー間で他のプレイヤーに対する信頼度の裏付け(Reference)を金額で与えます。これは、裏付けを与えたプレイヤーが債務不履行に陥った際に、自分がいくらまで補償することができるかを表しています(有限責任(Limited Liability))。
(from slides)
この裏付けをプレイヤー間で結んだ結果、全体として大きな有向グラフ構造となります。その結果、プレイヤー間の信頼度の上限は最大フロー問題として解くことが可能になります。
(from whitepaper)
上記の例では、VbがVsとの間で結ぶことができる契約の上限は$150になります。
例えばVbとVsの取引において、VsがVbの購入した商品を送らなかった場合、以下のようになります。
- VbはV1, V2に補償金を請求することができる($150)。
- もしV2も払うことを拒否した場合、VbはV1にその金額を請求することができる($50)。
- もしV1も払うことを拒否した場合、そもそもVbがV1に与えたreference($150)が間違っていたということになる。その場合に備えて、VbはV1へのreference登録時にある程度のデポジットをファンドする必要がある(この額はVb自身の信用力となる)。
このようなモデルを考えた際、不正なreferenceが存在しない(No False Claim)な状況においてシステムは以下のように構築されていく。
1. 初期段階ではVbは信頼できるプレイヤーのみにreferenceを与える
2. Vbはreferenceが得られる取引のみを行う
3. Vbが取引を繰り返す中で、各取引で得られた利益 (gains obtained in excess of the opportunity cost)を取引相手へのファンドとして積み立てる。このファンドの値は取引相手への信頼度を裏付ける。取引が成功すれば信頼度も高くなっていく。
4. Vbは他のプレイヤーに対してもデポジット付きでreferenceを与えていく。こうすることでシステム内でプールされたデポジット金が一定の割合で上昇していくことを保証できる。
TrustDavisは、正直者が得をする世界を表現できる可能性がある。信頼度ネットワークの設計については続いて2008年のpaperが存在するので、そちらもチェックしたいと思います。