仮想通貨

イーサリアムの為の技術PlasmaとPlasmaCashの仕組みを解説

Plasma(プラズマ)とは?


Plasma(プラズマ)とは、イーサリアムの創設者であるヴィタリック氏とライトニングネットワーク技術の共同開発者ジョセフ氏によって2017年8月11日に開発された、イーサリアムのスケーラビリティ問題を解決する為のソリューション技術です。

このPlasmaをイーサリアムに実装する事で、イーサリアムのメインチェーンから階層的に敷かれるサイドチェーンが作り出され、それによって従来よりも高速なトランザクションを実行してトランザクション処理数を大幅に高める事ができます。

では、以下よりPlasmaについて以下より解説していきます。

イーサリアムで実装されるPlasma(プラズマ)の仕組み


イーサリアムは現在多くのICOやDappsで利用されているユーティリティー機能を持った仮想通貨ですが、そのユーザーアドレスの増加に伴い、ブロックチェーン内のトランザクションが増えてとても混雑してしまうようになりました。

下記図のように、イーサリアムのアドレス数は日々増加しています。


引用:Etherscan

これがユーザーが支払う手数料の高騰に繋がってしまっており、今後のイーサリアムの発展に伴いシビアな課題となっているのです。

このような問題を「スケーラビリティ問題」と呼んでいます。

プラズマブロックチェーンによる階層構造

さて、上述したイーサリアムのスケーラビリティ問題を解決するのがPlasmaですが、それはどのような仕組みなのでしょうか。

まずその仕組みとしては、以下の図のように親チェーンとしてイーサリアムのメインのブロックチェーンを上に置き、その下に子供のチェーンとなる「プラズマブロックチェーン」を階層的に置くTree構造となっています。


従来のイーサリアムの取引では、トランザクション処理を全て親チェーンであるメインチェーンの部分で行っていたのですが、それを下に張り巡らされているプラズマブロックチェーンによって処理させます。

これによって、今までメインチェーンでは処理し切れなかったトランザクションをプラズマブロックチェーンでデータ書き込みさせる事ができるのです。

なお、この階層構造であるプラズマブロックチェーンによって処理された記録は最終的にメインチェーンの方へとコミットされます。

Map Reduce形式での計算

このようなPlasmaでは、大規模なデータを分散的に処理する「MapReduce」と呼ばれる形式の計算方法を用います。

この方法ではデータ処理を「Map」と「Reduce」の2つの段階に分けられるのですが、下記図の赤枠に記載があるように、まず1段階目のMapで親となるプラズマチェーンから、子供となるプラズマチェーンへと計算処理が流れます。

そして、次に2段階目のReduceにて子供のプラズマブロックチェーンが処理したデータをまとめて親のプラズマチェーンへ送ります。

以上のような並列計算によって、1階層や2階層のみならず、多段階にチェーンを構築する事が可能となります。

このように大きく並列処理をしても上の図の緑枠にあるメインチェーンにデータを書き込む量は変わらないので、トランザクション処理を効率化する事ができるのです。

※画像はPlasma: Scalable Autonomous Smart Contractsより引用

Fraud proof

プラズマブロックチェーンはFraud proof(不正がされた証明)に従って稼働します。

プラズマブロックチェーンは不特定多数が運用する為に、悪意を持って不正行為をする者が現れる可能性があるのですが、それだといきなりプラズマブロックチェーン内にある資金が抜かれてしまう恐れがあります。

そこで、ユーザーは常に不正が起きていないかをチェックする必要があり、不正が発覚した場合は上述したFraud proofを出します。

上記の図のように赤いブロックのプラズマブロックチェーンが不正をした場合、この不正ブロックを親のメインチェーンへ証明する事ができます。

これによって、もし不正があってもFraud proofを出したユーザーは不正前の資金の状態に戻す事ができ、不正を行った者にペナルティを与える事ができます。

Plasma(プラズマ)のメリット

このようなPlasmaを用いる事で、イーサリアムのメインチェーンで処理して保存する余計なデータを減らす事ができます。
不必要なデータ処理はTree状に連なるプラズマブロックチェーンが処理するので、それによってスケーラビリティ問題を解決する事ができるのです。

なお、Plasmaによってスマートコントラクトの実行処理速度も高められ、それは1秒間に数10億回程となります。
なので、トランザクション手数料も劇的な削減が期待出来るでしょう。

Plasma(プラズマ)のデメリット

一方Plasmaでは、セキュリティ性を維持する為にメインチェーンの下に連なるプラズマチェーンのデータ全てをダウンロードしなければなりません。
これは二重支払い(ダブルスペンド)や不正ブロックの生成を防ぐ為の証明として必要なのですが、全てをダウンロードするとなるとどうしても不便さが目立ってしまいます。

このような問題の解決策は、後述する新たなソリューション技術「Plasma Cash」で打ち出されています。

Plasma Cash(プラズマキャッシュ)とは?


Plasmaの問題点を解決する為に2018年の3月にヴィタリック氏によって新しく発表されたのが「Plasma Cash」です。

Plasma coin(プラズマコイン)

このPlasma Cashは上述したPlasmaのように、全てのデータをダウンロードする必要がなくなります。
Plasma Cashでは、Plasmaチェーンにデポジットを送金する事で「Plasma coin」と呼ばれるトークンを作成します。

このPlasma coinには特定のIDが備わっており、下記図のようにイーサリアムのメインチェーンから連なる子チェーンにIDを割り振ります。

このIDの紐付けによってユーザーはトークンのトランザクションを簡単に追跡する事ができ、追跡機能を使う事でユーザーが取得すべきデータのダウンロード量を削減します。

Plasma Cashの問題点

このPlasma Cashから生み出されるPlasma coinは、分割や統合をする事がができない「代替え不可能トークン」となります。

これはどういう事かというと、一度デポジットしてしまうと、金額問わず一つのトークンとしてみなされ、3ETHをデポジットしたとすれば、それを1.5ETHずつ半分に分けるような事はできず、それを足して6ETHにする事もできないのです。

つまりは3ETHを全て使い切らないといけないことになり、それが不便となり得るのです。

問題の解決策

そのような問題点の解決策としては、Plasma CashのトークンIDの小数点をサポートする事、もしくはトランザクションの際に他の第三者とマッチングさせ、トランザクションに余りを出さずに、トークンを求めている人へ送金する事が考えられています。

ですが、こちらはまだはっきりとした解決策が決定しているわけではありません。

Plasma(プラズマ)とイーサリアムの今後


以上がPlasmaとPlasma Cashについての解説でしたが、今後のイーサリアムのユーザー増加やトランザクション量の増加に伴い、それによって生まれるスケーラビリティ問題を解決する為の非常に重要な技術の一つと言えるでしょう。
イーサリアムの1秒間あたりのトランザクション数は7〜15程度であり、それだと既存の中央集権型のPayPalはおろか、VISAなどには到底敵いません。
イーサリアムが今後大多数から利用される為のユーティリティー通貨となる為には、今以上にセキュアでスケールアップする必要があるでしょう。

Plasmaに関する今後の開発進捗は、ヴィタリック氏のTwitter等の情報などで発信されたりもするのでチェックしておくと良いでしょう。

ABOUT ME
Kenta@フリーライター
Kenta@フリーライター
新卒で入社した大手金融機関を11ヶ月で退職し、仮想通貨・ブロックチェーンに特化したフリーライターとして活動中。現在は場所を選ばず住所不定の”Decentralized”な生活を満喫している。