ETHEREUM YOUTUBE PROFILE PIC

ヴィタリック記事、第3弾訳しました〜。(完璧じゃないのでそこはご容赦を・・)

ブロックチェーンの構造を見ると、嫌でも分散管理という言葉出てくると思います。逆にいうと分散管理されているからこそ、ブロックチェーンは存在しているのです。(企業内でプライベートチェーンとかできますけど・・)

当然イーサリアムを理解する上でも、前提の知識となります。

WEB 3.0というのがそこまできてます。分散化がキーワードです。

こちらが出典元です。英語がわかる人はこちらを読んだ方が早いです。

分散化を理解する。 ー ヴィタリック・ブテリン

"分散化"という言葉は暗号経済学の界隈で、よく使用され、ブロックチェーンの存在意義とも言われています。しかしながら、言葉の定義としては誤解に満ちたものでもありますs。この分散化を実現するために何千時間もリサーチされ、何億ドルものハッシュパワーを投入され、維持運用されています。

実のところこの言葉が何を意味するかは、かなり曖昧です。例えば、以下のよく知られた図をみても混乱すると思います。

スクリーンショット 2017 11 04 12 24 37

例えば上記の、distributed(配布) と decentralized(分散)はどう違うのでしょうか?“distributed(配布) は、すべてのトランザクションが同じ場所で行われることがないに対して“decentralized (分散)は一つのノードが、すべてのトランザクションをコントロールしているわけではないということです。Ethereum stack exchangeでも同じような図があります。しかも“decentralized” and “distributed”が逆順になっています。その場合のほうが説明が明確です。

※distributedは、大企業があって分散してサーバーを管理しているとわかりやすいです。なので大企業が潰れたら、サーバーも無くなります。逆にdecentralizedは個々のノードが管理者の命令を受けることはありません。


分散化、3つのタイプ

一般的にソフトウエアにおいて中央集権化・分散化というと、3つのタイプがあります。ケースにもよっては、お互いが影響しあっておりますが、一般的にはそれぞれが独立してます。

・アーキテクチャの集中化/分散化 ー システムがどれだけの物理的なノードで構成されているか?これらのノードのうち、どれだけが一度に停止してもシステムに影響はないか?

・政治的 集中化/分散化 ー どれだけの個人、または組織がシステムを構成するノードを管理しているか?

・論理的(データ的)な 集中化/分散化ーデータ構造は単一のオブジェクトか?それとも、バクテリアのように分散しているか?見分ける方法として、ユーザーもプロバイダーも含めシステムを二つに分断した場合、それぞれ個別に稼動するか?

これら三つをチャートにまとめてみましょう。

スクリーンショット 2017 11 04 21 20 40

これらの要素はまだ議論の余地がありますが、下記で詳細を見ていきましょう。

・伝統的な企業は、政治的に中央集権である。(一人のCEO)アーキテクチャ的にも中央集権であり(本社は一箇所)、そして論理的にも中央集権である。(会社は真っ二つにできない。)

・民法は中央集権(国家)が制定するのに対して、自治体の法律はそれぞれの地域(分散化)によって制定されている。それにもかかわらず、大きな裁量権を持つ多くの裁判所があるので、民法はまだいくつかの地方分権化を行っているが、それぞれの自治体の法律はそれ以上に分散化している。どちらも論理的には中央集権である。(法律は一つしかない)

・言語は論理的に分散化しています。アリスとボブの間で話されている英語と、チャーリーとデビットの間で離されている英語は同じである必要はありません。言語が存在するために、中央集権化したインフラは必要なく、英文法は一個人によってコントロールされることはない。

・ ビットトレント(BitTorrent)もまた英語と同じように分散化されている。コンテンツ配信システムも一緒ですが、一社によって管理されています。

ブロックチェーンは政治的に分散化している。 (管理者が不在) そして、アーキテクチャで分散化しています。(インフラ的に単一障害点がない) しかしながら 論理的(データ的)には中央集権化している。 (共通認識された状態があり、システム全体は単一のノードのように振まう)

一般にブロックチェーンは 単一データベースであることが便利だと表現されている。これは論理的(データ的)な中央集権化であり、これは多くの場合メリットがある。

中央集権化されたアーキテクチャは、しばし政治的な中央集権化に向かうが必ずしもそうではない。ー 民主主義では、政治家は閉じた場所で会合し投票を行うが、その結果は結決定権を実質的に引き出しません. しかし、ネットワーク化されたシステム下で、中央集権のコミュニティの所有者が悪意を持って行動すると、誰もが別のコミュニティに移動しアーキテクチャの分散化が起こりえます。

論理的(データ的)な中央集権化は、アーキテクチャの分散化を難しくする。(それは不可能ではない)。分散化されたコンセンサスネットワークはすでに現実で運用されており、そして論理的な中央集権化は、政治的な分散化をさらに困難にします。ー 論理的に集中管理されたシステムでは、単に「お互いを許し合う」ことだけでは、競合を解決することは困難です。


分散化する三つの理由

そもそも、なんでも分散化は有用なのでしょうか? 一般的には、いくつかの論拠があります。

・フォールトトレランス ー 分散化されたシステムでは多数の独立したノードによって構成されているため、事故によってシャットダウンする可能性が少ない。

・攻撃耐性ー分散化されたシステムではハックするにコストがかかる。なぜなら、分散化されたシステムに比べ、低コストで攻撃できる脆弱な中心がないため。

・共謀耐性ー分散化されたシステムでは参加者が、他の参加者を利用して利益のために結託することが難しい。この点、企業や政治家は、結託して弱者から利益をが上げることが多い。

以上、三つの論拠が重要であるが、しかし、どの論拠もプロトコルの決定という観点から見ると興味深い結論に行き着きます 。

フォールトトレランスを行う理由については明確です。 一つのコンピューターが障害で落ちた場合だと10台のうち5台が一斉に落ちた場合、結果がどうでしょうか?議論の余地がないですよね。現実世界を見てるとジェットエンジンにしろ、病院や軍事施設、資産のポートフォリオ、そしてコピューターネットワークも必ずバックアップがあります。

しかしながらこのような分散化は重要ではあるが、かなずしも万能ではありません。

例えば、共通部品を使っている場合。確かに、4つのジェットエンジンが1つのジェットエンジンよりも故障する可能性は低いですが、4つのエンジンがすべて同じ工場で作られ、4つのエンジンすべてが、同じ従業員によって整備された場合はどうなりますか?

ブロックチェーンは、このような場合に対処できるでしょうか? 次のシナリオを考えると、必ずしもそうではないです。

・全てのブロックチェーンノードは、同じクライアントソフトウェアで動いておりこれにバグがあった場合。

・全てのブロックチェーンノードは、同じクライアントソフトウェアで動いており、クライアントソフトウェア開発チームが反社会的だった場合。

・プロトコルアップグレードを提案している、リサーチチームが反社会的だった場合。

・プルーフオブワークのブロックチェーンでは、70%のマイナーが同じ国であり、もしその国の政府が、国家安全保障のためマイニングプールを閉鎖した場合。

・マイニング用のハードウエアは、同じ会社によって製造されており、いつでもシャットダウンできるよう、賄賂もしくは強要されてバックドアを仕掛けていた場合。

・プルーフオブステーク(Pos)のブロックチェーンだとして、その70%のコインが一箇所の取引所に保管されている場合。


フォールトトレランスで、分散化した場合は、以上のようなリスクも考えられます。どうやったらリスクを最小にできるでしょうか。

・競合した複数の実装を持つことが決定的に重要です。(複数の選択肢からプログラムを選べたらより良い)

・プロトコルの技術的なアップグレードに関しては、民主的に決定されなければならない。誰もが納得できるプロトコルの改変になるべきで、批判や欠点をあげられるようにしなければならない。

・コアデベロッパーやリサーチャーは一つの企業や組織からではなく、ら多様な企業から集めるべきである。

・マイニングアルゴリズムは、中央集権化しないようにデザインされなければならない。

・イーサリアムではハードウェアの集中リスクを回避するために、プルーフオブステークの適用を目指している。

フォールトトレランスは、アーキテクチャの分散化に焦点を当てていますが、いざ、フォールトトレランスを実現している、プロトコルの開発を支配するコミュニティについて考え始めると、政治的な分散化も重要になってきます。


攻撃耐性

次は攻撃耐性を見てみましょう。

例えば純粋な経済モデルでは、分散化してもあまり関係ない場合があります。51%攻撃があった場合にヴァリデーターが5000万ドル失うプロトコルの場合 ヴァリデーターが一つの企業に管理されてようが、多数の企業だろうがあまり関係ないです。ー 5000万ドルのセキュリティ費用は、中央集権だろが分散化だろうが、5000万ドルのセキュリティ費用に変わりありません。事実、中央集権化は、経済的保証を最大化するというゲームの理論もあります。

しかしながら、より豊かな経済モデル、特に何かに強制される可能性があるとすれば、分散化はより重要となって来ます。

もし、あなたがある人を殺害すると脅したらなら、5000万ドルは簡単に手に入るでしょう。ところが、5000万ドルが10人に分散されたいたらあなたは同時に10倍の人を脅さないといけないです。現実では多くの場合、攻撃/防御の非対称性を考えた場合は、攻撃者に有利なります。— 立てるのに1,000万ドルかかる建物は、破壊するために10万ドルドル以下の費用がかかりますが、攻撃者の影響力はしばしば準線形です。

立てるために1000万ドルのコストがかかる建物に10万ドルのコストで破壊する場合と、立てるために100万ドルかかる建物は、実際には破壊するために3万ドルかかることがあります。小さくするとより良い比率が得られます。

果たして、これらの論拠はどこに行き着くでしょうか?第1にPowよりもPosを支持するようになります。コンピューターのハードは攻撃しやすいですが、Posでは、コインをはるかに簡単に隠すことができます。第2に、地理的に広く分散された開発チームを持つことに有利な点です。第3に、コンセンサス・プロトコルを設計する際に、経済モデルとフォールト・トレランスモデルの両方を検討する必要があることを意味する。


共謀耐性

最後に三つの中で、ももっとも複雑なトピックとなる共謀耐性をみていきましょう。共謀を実際に定義するのが難しいです。無理やり定義すると、”われわれの好まない方法で調整されたこと。”となりますでようか。 現実には、さまざまにケースがあり、誰にとっても理想とされる調整方法があればいいのですが、 あるグループが調整している裏で、他のグループがそれを知らないは危険です。

ブロックチェーンプロトコルの例だと、数学と経済学で裏打ちされたコンセンサスアルゴリズムは調整されていない選択モデルに強く依存します。また独立した個人が、意思決定を行うと仮定しています。Powの場合で、ある個人が1/3のハッシュパワーを取得すれば、自己マイニングによって莫大な利益をあげるでしょう。しかし、Bitcoinネットワークのマイナーの90%が、同じ会議で一緒に出席しているの考慮すると、この調整されていない選択モデルは現実的でしょうか?

スクリーンショット 2017 11 04 21 22 39

ブロックェーン支持者は、ブロックチェーンは安全であると主張します、 何故なら、気まぐれでルールを変更できないからです。が仮に、もしソフトウエアとプロトコルの開発者が一社に所属しており社内で結託していたら難しいかもしれません。つまり、ブロックチェーンでは自己の利益のみ追求する寡占のように振舞ってはいけないのです。したがって、共謀でなければブロックチェーンは、はるかにその安全性を高められます。

しかしながら、これには根本的な矛盾をはらんでいる。 イーサリアムを含め、多くのコミュニティはコミュニティの仲間意識が強く、6日間以内にプロトコルのサービス拒否問題を修正するためのハードフォークの実装、リリース、アクティブ化を迅速に調整できます。 しかし、この良い種類の調整をどのように育み、改善することができますか?同時に、51%の攻撃を繰り返し調整することによって、他の人を酷使しようとしているマイナーからなる「悪い調整」を防げますか?

これに答えるには三つの方法があります。

・望ましくない調整に妥協しないでください: 代わりに、それに反逆できるプロトコルを実装してみてください。

・最悪、今後プロトコルが前進できるような、誰もが納得できる妥協点をさぐる。

・有益な調整と有害な調整とを区別し、前者をより簡単に、後者をより困難に実装できるようにしてください。

最初にアプローチはCasperデザイン哲学の大部分を占めます。 しかしながら、それ自体では不十分であり、分散化することを考慮すると経済的インセンティブのみに依存するのは、他の二つカテゴリーとの関係を失敗させる。第2は、特に長期的には、明示的に設計することは困難ですが、誤って起こることがよくあります。たとえば、Bitcoinのコア開発者は一般的に英語を話すが、マイナーは一般的に中国語を話すという事実は、二国間のガバナンスを生み出すため、逆に幸いしていると見ることができます。英語と中国のコミュニティが距離やコミュニケーションの難しさのために少なくとも幾分別々に理由があるため、両方とも同じミスをする可能性が低いからです。 三つ目は社会的なチャレンジがなにより重要である。:解決策として

・ブロックチェーン全体のコミュニティに対する、参加者の忠誠心を高めようとする社会的介入は、市場の一方の側のプレイヤーが互いに忠実になる可能性を妨げる。

・同じ文脈で、さまざまなレイヤーのマーケットのコミュニケーションを促進し、vaildatorと開発者、マイナーがそれぞれの利益で対立しないようにする。

・ヴァデリーター/マイナーが1対1の「特別な関係」、集中型ネットワークのメカニズムに陥るインセンティブを、低減するような方法でプロトコルを設計する。

・プロトコルが持つべき基本的な特性についての明確な規範。何をすべきではないか、少なくとも、極端な状況下でのみ行うべき事項ついてなど。

このように分散化、3つのタイプの中で、「望ましくない調整を回避する」という分散化はおそらく達成が最も困難であり、トレードオフは避けられないものです。おそらく最も良い解決策は、プロトコルのユーザーという、公平に分散されていることが保証されている1つのグループに大きく依存することかもしれません。

引用元 The Meaning of Decentralization - Vitalik Buterin


まとめ

分散化は次世代のWEBを考える上で必須のテーマです。

今ままで大企業に預けていた個人データや個人ログを、ユーザーで戻しす時代が来ると読んでます。

なぜならインターネットって本来、分散化した牧歌的な環境だったのです。 ところが、大企業が散らばっている個人データに価値を見出して、中央集権化するサービスを作って、個人データをマネタイズしたのです。

イーサリアムは、個人データという価値をもう一度ユーザーに戻す可能性のあるプラットフォームです。

わたしも知れば知るほど、すっかりイーサリアムファンになってきました。 ビットコインは、コミュニティ参加者の思惑が悪い形で現れてますね。 しばらく様子見ですね。

しかし、いつの間にか技術ブログになってきたな・・ 次はいよいよ、実際にスマートコントラクトを作ってみようと思います。そうです。プログラミングです。



関連記事:【イーサリアム】プルーフ・オブ・ステーク(Pos)の設計思想。ヴィタリック・ブテリン記事訳
関連記事:【イーサリアム】ハードフォーク、ソフトフォーク、離脱と強制力。ヴィタリック・ブテリン記事訳
関連記事:仮想通貨を始めるべきシンプルな理由。
関連記事:ブロックチェーン本を淡々と評価するよ。