第一回Ethereum Japan Meetup参加レポート#1〜Vitalikが語るEthereumの未来
この記事のポイント
- 2018年3月28日に東大伊藤謝恩ホールにてEthereumJapanMeetupの第一回が開催されました
- Ethereumの考案者Vitalik Buterin氏によって、Ethereumの重要な技術「Casper」「Plasma」「Sharding」について概要を紹介するプレゼンテーションが行われました。
第一回Ethereum Japan Meetupが開催
2018年3月28日、Ethereum Japanが主催する「Ethereum Japan Meetup#1」が、東京大学伊藤謝恩ホールで開催されました。
仮想通貨時価総額ランキング第二位にして、多くの開発プロジェクトが進展するブロックチェーンプラットフォームであるEthereumが、国内で行う初のミートアップであり、熱気あふれる素晴らしい会となりました。
GincoMagazineでは、本イベントに参加して撮影・録音した内容をもとに、全三回のレポートを行います。
第一回のこの記事では、ミートアップの目玉であり、Ethereumの考案者、Vitalik Buterin氏のプレゼンテーション「Future with Ethereum」について紹介します。
プレゼンテーションのアウトラインは以下の内容です。
1.Ethereumのロードマップにおける3つのポイント
2.Casperについて
3.Plasmaについて
4.Shardingについて
また講演の全容はこちらの動画から視聴いただけます。
Ethereumのロードマップにおける3つのポイント
Vitalik氏はまず前提として、PoWとPoSの違いの簡単な説明や、EthereumがPoSへの移行を予定している根拠について発表を行いました。
ビットコインなど多くのブロックチェーンが採用するPoWは、トランザクションの承認、ブロック生成を行う上での合意形成メカニズムです。
PoWにおいて、P2Pネットワークで正しく合意形成を行うためには、なりすましを行うマシンを排除しなければなりませんし、不正を排除するための計算レースを行わせる必要があります。
Vitalik氏は、この計算レースを行うために必要となる大量のマシンパワーと電力について、ハードウェアとエネルギーの両面でコストがかかる点を問題視しています。
これに対して、経済合理性を中心としたコンセンサスアルゴリズムPoSは、PoWに比べてプラットフォーム全体で発生するコストを削減することが可能かつ、ブロックチェーンにいくつかの特性を持たせられる点で、より望ましいという意向を示しました。
The Ethereum community is interested in going in this direction because we see that there are a lot of benefits in reducing the cost of platform and in providing certain properties that are more difficult in the proof of work.
このような理由から、現在のEthereumが採用するコンセンサスアルゴリズムPoWからPoSへ移行するためのプロジェクトが「Casper」です。
また、Casperを導入することでブロックチェーンに持たせられる「特性」にあたるものとして、「Plasma」と「Sharding」を紹介しています。
この「Casper(FFG)」「Plasma」「Sharding」が今後のEthereumにとって最も重要とされる3つの技術です。
Casperについて
「Casper」はEthereumのコンセンサスアルゴリズムをPoWからPoSへ移行するためのプロジェクトの総称です。
このプロジェクトのうち、初期的に導入するプロトコルをCasper FFG (Friendly Finality Gadget)と呼び、PoWとPoSを並行して実行させることを予定しています。
Vitalik氏は、Casperのコンセプト、現在のテストネットの状況や、今後について発表を行いました。
Casperの第一段階、FFGについて
Casperの原型となるアイデア自体は約4年前から存在していました。
そのアイデアを2年前からリサーチと統合を行って、第一段階であるCasper FFGの形がプロトコルとしてまとまりつつあります。
Casper FFGは、既存のPoWの上位層にPoSの認証ポイントを設け、2つの仕組みを並走させることで、ブロックチェーンのバリデーション(ブロックの認証作業)におけるPoWの比重を下げるものです。
ブロックの生成自体は現在と同様にPoWプロトコル上で行われますが、ブロックが一定数生成されるごとにPoSプロトコルをチェックポイントとして用いてバリデーションを行います。
これによって、PoWで発生しうる51%攻撃のリスクを下げながら、バリデーターが経済合理性に則ったネットワーク運営を行うことを可能にし、さらにネットワーク全体を分割して並列化・効率化を行えるようになります。
CasperFFGの現在の開発段階と今後について
Casperには、Pythonとjavaで作られたテストネットが存在します。
また、Runtime verificationという会社と協力し、Casperプロトコルの分析を行っていて、その他にも様々なセクターのアカデミックパートナーたちと、システムの活用法、アルゴリズムの改善、その他の経済的な問題に関して、Casperがより良いものになるように協議しています。
今後はいくつかの改善を行いながら、最終的なテストを経て、ハードフォークを実施しCasperを本格的に導入する予定です。
Vitalik氏によると、Casperのファーストバージョンがリリースされるのは、遠い未来ではないようです。
Plasmaについて
Plasmaは、Ethereumのスケーラビリティ問題をレイヤー2.0(オフチェーン)で解決するプロジェクトです。
Plasmaでは独自のブロックチェーンを形成し、EthereumのメインチェーンとDeposit/Exitという形で部分的な同期をとることで、メインチェーン上で行われるPoWの負担を軽減します。
Casperの場合は、Ethereumブロックチェーン自体のアップデートであったため、導入するためにはハードフォークが必要でしたが、Plasmaはハードフォークを必要としません。
Plasmaのセキュリティについて
Plasmaを利用する場合、トランザクションは独自のPlasmaチェーン上で処理されます。
Plasmaチェーン上で無効なブロックが生成された場合、ユーザーはいつでもPlasmaチェーンから離脱することができます。
改ざんやハッキングの被害者は、それがメインチェーンに記録されるのに先回りして、Plasmaのチェーンから離脱することでデポジットした資産を引き出すことが可能です。
また、Plasma内のトランザクションにかかるコストは、PlasmaのチェーンからEthereumのメインチェーンに通貨を移す際のトランザクション手数料だけとなります。
Plasma Cashについて
Plasmaの派生形について、3月10日にVitalik氏は短いレポートを公開しました。それが「Plasma Cash」です。
Plasma Cashは、Plasmaチェーンにデポジットした資金に対応するNon−Fungible Tokenを用いて、Plasmaチェーンのユーザがダウンロードする情報の容量を減らし、Plasmaのスケーラビリティをさらに向上させるものです。
これはPlasmaと同様、Ethereumのメインチェーンに修正を加えるものではないため、ハードフォークを必要としません。
Vitalik氏は、Plasma Cashについて全てのアプリケーションに対する解決方法とはならないが、、Plasma CashはPlasmaやStateChannelと同様にレイヤー2.0(オフチェーン)で動くものとして、仮想通貨取引所のような膨大なトランザクションを扱うサービスにおいて、非常に有益なものとなるであろうと述べています。
Plasmaの現在の開発段階と今後について
現在、Ethereum財団や、OmiseGoの開発者チームを含む、複数のチームがPlasmaの実用化に向けて5つの異なるアプローチで開発を進めています。
Shardingについて
Shardingとは、Ethereumメインチェーン上における、スケーラビリティ問題へのソリューションの1つです。
またShardingの実現のためには、PoSへの移行が前提となりますが、その効果は目覚ましく、1秒間に処理できるトランザクション数を100倍近くまで引き上げられると、主張しています。
Vitalik氏はShardingによって3つのゴールを順番にクリアしていく意向を示しました。
目標①:スケーラビリティの向上
現在のEthereumのチェーン上で処理できるトランザクションの量は、毎秒15トランザクション程度です。
スケーラビリティを拡大しなければ、取引手数料が上がってしまうため、これから先、投機などのみではなく、様々な本格的な取り組みに利用されるようになるには、1秒間に数千のトランザクションを処理することが必要となります。
目標②:ノードの負担の軽減
現在は、ブロックチェーンを維持する作業を、膨大な計算力を持つ特定のノードに依存しています。
その原因は、ノード間の計算競争が激化していることと、全ノードが全ノードを相互監視しあうことによって発生する負担です。
通常のPCを持つ個人個人が、適切に機能するノードとしてネットワークに参加できるようにするためには、ノードごとにかかる負担を軽減する必要があります。
目標③:政治や信用によらない、暗号経済システムの構築・維持
目標の①と②を達成することで初めて、非中央集権型のネットワークを実現することが可能です。
全体の決定権を、特定のハイスペックなノードを有する個人や集団に委ねず、個々人のノードが意思決定に参画できる、非中央集権型の構造を作り出していきたいと述べています。
Shardingの具体的な取り組みについて
Sharding自体はVitalik氏たちが独自に開発したものではなく、サーバーの負担を軽減するために開発され、以前から存在している「分割・並列化」のアプローチです。
EthereumにおけるShardingでは、ノードをグループに分割して、トランザクションの承認作業を並列化します。
各ノードは一定時間ごとに、アルゴリズムによってランダムかつ適切に”galaxy”としてグループ化され、その中で承認作業を行います。
PoSの場合は、参加するノードがどれだけのデポジットを持っているか(どれだけ有利に承認作業を行えるか)を、アルゴリズムが認識することができるため、”galaxy”内のパワーバランスを調整することが可能です。
これにより、複数のノードが協力して行う攻撃や、大きなパワーを持ったノードによる攻撃を防ぐことができます。
コミュニティ全体の競争・連携を喚起
Vitalik氏が在籍するEthereum財団の他にも、Ethereumのガイドライン作成や、スマートコントラクトに適した、高次な言語の開発などを通して、これらのような課題に取り組んでいるチームを紹介しました。
Vitalik氏は、彼らと競争し、協力していきながら、Ethereumのインフラ環境を整えていきたいという意思を表明し、Ethereumコミュニティ全体を活性化していきたいと言っています。
まとめ
今回の記事では、Ethereum財団が目下取り組んでいる課題を概観するVitalik氏のプレゼンテーションをまとめました。
次回の記事では、PlasmaとShardingについて、詳細な解説を加えた「what is sharding?」「what is Plasma?」をまとめたいと思います。