COSMOSについてザックリ考察してみた。
ブロックチェーン間の価値の移転は色々とハードルがあります。そして、解決する方法はいくつかあります。
ブロックチェーン間を同じスマートコントラクト仕様にする。ブロックチェーン間をつなぐ新たな仕組みを作る。
前者は前記事にも書きましたがVMの共通化。スマートコントラクト言語の共通化が起きると同じVMを使っているチェーン間でブリッジコントラクトを通してトークン交換できる様になります。
後者はILP、Polkadot、COSMOSなどブロックチェーン on ブロックチェーンの様な仕様です。独自の台帳で各ブロックチェーン間のトークン交換を実現します。加えてAtomic swapなどもあります。
どちらが優秀かはさておき、個人的に少し理解が深まったのでCOSMOSを考察をしてみました。
COSMOSはTendermintをベースにした仕組みです。ブロックチェーンは性質上3層にわけられるそうです。ネットワーク、コンセンサス、アプリケーションで構成さています。
そのうち、ネットワークとコンセンサスをTendermintに移行します。そうすることで、アプリケーション部分だけの実装に集中出来るため、新しいチェーンの開発や既存のチェーンの移植などを容易にします。
Tendermintはそれぞれがメッセージで繋がり、ネットワークを形成できます。
しかし、ネットワークが下記の様にメッシュ状になるとネットワーク構築が煩雑になり、トークンの送受信がスケールしません。
そこで考案されたのがCOSMOSです。
Tendermintネットワークのハブになります。上と下の図を見ても経路が整理されて半分になってるのが分かります。
概要を改めてまとめます。
COSMOSの概要
Tendermintとは
ブロックチェーンを構成するネットワークとコンセンサス部分をパッケージ化したソフトで、COSMOSネットワークを構成するノードの様なもの。
COSMOSの機能
COSMOSの機能は各Tendermintのハブになることです。(上図の通り)
よって、下記の様な機能を有します。
・各ゾーンのトークンを保管
・各ゾーンへのトークンの転送
・それらの承認作業を行う
*Tendermintとblockchainの組み合わせをゾーンと呼びます。
どこがインターオペラブル?
赤枠の部分(上図)がインターオペラブルの部分となります。
異なるチェーン間の価値交換を行うネットワークを形成してます。
スケーラビリティの解決
各チェーンを同じコンセンサスで稼働しているので水平方向にスケールできる。同じアプリケーションのゾーンを増やすほどにスケールすることになります。そして、Tendermint自体がBFTのコンセンサスアルゴリズムを使用している為、チェーン自体もブロック生成間隔を1秒以下、秒間数千トランザクションさばけます。
では、COSMOSネットワークを構成するTendermitの概要にも触れましょう。
Tendermintの概要
ファイナリティのあるチェーンとないチェーンの構成の違い
PoSチェーンの場合は下図右の構成になります。PoWチェーンの場合はファイナリティがないのでpeg-zoneでファイナリティ処理をします。
例えば、現在PoWを採用しているEthereumチェーンは100blocksでファイナリティを与えます。おそらくですが、Bitcoinであれば6Blocksでファイナリティになると思われます。
SDKによるブロックチェーン開発の簡素化
GoとJavascriptで開発できる様な環境を構築済み
Tendermintの基本機能
Tendermit間はIBCを使ってメッセージングする。各ブロックチェーンのアプリケーションとネットワークはABCIでメッセージングする。PoWチェーンの場合は即時ファイナリティがないのでpeg-zoneでファイナリティを管理する。
とまあ、ざっくりですが全体像がつかめたでしょうか?
ブロックチェーン間の価値の移転はこれから大きなテーマになってきます。とても楽しみな分野となることは間違いないので興味深い分野ですね。
突っ込みなどありましたらお願いします。
参考)
ABCI : Application Blockchain interface
IBC : inter-Blockchain Comunication Protocol
追記: ハブを構築するCOSMOSも飽くまでTendermint上に構築されたアプリケーションです。もっと高性能なアプリケーションが開発されるかもしれません。
また、ハードフォークではなく、別なゾーンを作ってそちらにトークンやコントラクトを移動する事も可能なのではないかと思ったりします。(私見です)
もしくはハブを増やしてハブ同士で通信するとハブ自体の分散も可能なのではないかと思ったりします。
わかりやすく解説ありがとうございます!
真面目に、STEEM BOYsでWeekly fusanやりたいです!
コミュニティとリテラシーを結びつけて、トレードモンキーを卒業する企画つくりたいです。
(ダメですか?^ ^)
どうもです〜〜^^
トレードモンキーを卒業させるのハードル高いですねw
お金を超えるインセンティブって好奇心や向上心、承認欲求とかですからね。
気分次第でよろしければ頑張ります てへ^^
自由人ですみません!!w
Boysで暗号通貨Barに潜入して中継してみようか、という話をしていまして、もし良ければそこで少しお話伺えたらなぁ〜と、思ったりしていました!
(確かにトレードモンキーはなかなかハードルですねww)
是非是非!とても楽しみにしてます!
ありがとうございます!
日程調整します^^