今日が最高レベル

ブロックチェーンゲーム(dApps)とLINE(ライン)のことを主に書いてます

サイドチェーン?オフチェーン?クロスチェーン?わけわからん!人向け

f:id:sencho0927:20180823222334p:plain

こんにちは、fukuhara(@fukuhara_hdylw)です。


最近、ブロックチェーンゲーム(dApps)界隈で良く聞く○○チェーン。

完全に理解できていますか??

先日、キヨサロにて話題になり、僕自身理解が追い付いていないところが多々あったのでここでまとめます。

目次

  1. ブロックチェーンの種類
  2. 各ブロックチェーンについて
  3. まとめ

ブロックチェーンの種類

話題として上がったチェーンと僕が解釈した意味を下表にまとめます。

僕の解釈で世の中統一しません?(適当)

チェーン名 意味
独自 世の中に存在する全てのブロックチェーンのことを独自チェーンと言うことができる。
サイド 独自チェーンをベースとして動くブロックチェーンのこと。
メイン サイドチェーンありきの表現。サイドチェーンのベースのブロックチェーンのこと。
オン データが更新される度にトランザクションが発生するブロックチェーンのこと。
ビットコイン(BTC)やイーサリアム(ETH)など大半のブロックチェーンはこれに該当する。
オフ データが更新されてもガス代が必要なトランザクションは発生しない(待ち時間が無いのでゲームに最適と言われている)ブロックチェーンのこと。
ある一定量のデータが更新されたタイミングでまとめてオンチェーンに書き込む際にトランザクションが発生する。
クロス 異なるブロックチェーン同士を連携させることができる仕組みのこと。
クロスチェーンというのはブロックチェーンそのものを言い換える言葉ではなく、仕組みを表していることに注意です。

概念が被っていたりして言葉だけだと分かりづらいので、ベン図で表現してみます。
※特にモバイルの方は画像を拡大してご覧下さいm(__)m

f:id:sencho0927:20180829152641p:plain


独自チェーンは全てのブロックチェーンを総称する言葉なので、クロスチェーン以外を包含しています。

メインチェーンとサイドチェーンは別物なので被ることがありません。例外として、サイドチェーンは他のサイドチェーンのメインチェーンになる場合があるので、一部包含関係にあります。
(ベン図の丸が重なっている部分のことです。)

オンチェーンとオフチェーンは処理の仕組みが違うのでどちらも包含関係にはありません。

少しはイメージしやすくなりましたか??


各ブロックチェーンについて

今度は各チェーンについてもう少し詳しく解説していきます。

独自チェーン

例えば、ビットコイン(BTC)やイーサリアム(ETH)は全て独自チェーンと言っていいでしょう。

f:id:sencho0927:20180824164249j:plain

f:id:sencho0927:20180824164257j:plain

広義的な表現をすると、どのブロックチェーンも独自チェーンと言えます。

また、何かをベースにしたチェーン(サイドチェーン)も独自チェーンと言えます。

f:id:sencho0927:20180824222657j:plain

メインチェーンとサイドチェーン

サイドチェーンは独自チェーンをベースとして、独立して動くブロックチェーンのことです。

下図の例は、イーサリアム(ETH)をベース(メインチェーン)としたLoomの独自チェーンをサイドチェーンとして表現しています。

f:id:sencho0927:20180824222741j:plain

この2つのブロックチェーンを連携させる仕組みとして「Plasma Cash」というものが使われます。

これによって、別々のブロックチェーン同士を連携させてデータのやり取りが可能になります。


では、全く異なる独自チェーンの場合はどうなるでしょうか?

f:id:sencho0927:20180824223042j:plain

上図はイーサリアム(ETH)と、スケーラビリティ問題を解決してくれるジリカ(ZIL)の関連図です。


さて、ここで一つ疑問が浮かび上がってきます。

この2つのブロックチェーンはどのように連携させるのか??

f:id:sencho0927:20180824223055j:plain


「Plasma Cash」は、どちらもイーサリアムベース同士を連携させるために使うことができるものです。

今回の例では、全く異なるブロックチェーンなので連携はできません。

そこで登場するのが「クロスチェーン」という仕組みです。

クロスチェーン

クロスチェーンを実現するプロダクトは下記のようなものがあります。 どれも異なるブロックチェーンを連携させてデータのやり取りを可能にすることを目指しています。

これらプロダクトを使うことによってクロスチェーンという仕組みを実現させることができます。

オンチェーンとオフチェーン

f:id:sencho0927:20180829171320p:plain


例えば、バトルをブロックチェーンで実現しようとした場合、正確な情報をブロックチェーンに記録するためには毎ターントランザクションを発生させてブロックチェーンに書き込む必要があります。

しかし、そんな作りではゲームとして成り立つわけがありません。
(プレイヤーにストレスを与えるだけ。)

そこでオフチェーンを使用します。

バトルでオフチェーンを使えば毎ターン書き込む必要がありません。

バトルの結果だけをブロックチェーンに書き込めば良いので、トランザクションは1回で済みます。

ここにオフチェーンの大きなメリットがあります。


まとめ

f:id:sencho0927:20180829152641p:plain


この概念が頭の片隅に入っているだけでも大分理解度が深まるのではないかと思います。

まだまだ業界としては幼いので、難しい言葉が多く明確に定義されていないことで溢れ返っています。

こんなこと議論していたなぁ、今ではそんな議論しなくても当たり前な世の中なのに(笑)と懐かしむ未来を妄想しながら引き続き勉強していきます。


それではノシ