SuperParanoid 極度妄想 (@leo_hio)
IOSTの開発陣がこのプロジェクトを一言で表すとき、彼らは「分散性とスケーラビリティを両立した最初のスマートコントラクトのチェーンだ」と言っています。
Ethereumと同等の分散性と、EOSと同等のスケーラビリティの両立させるチェーンです。このIOSTは2者を先行実験として浮かび上がった多くの問題点を解決しています。
ではIOSTを①基本設計→②エコシステム設計の順で見ていきましょう
①基本設計
・ブロック生成/承認
ブロック承認にBFTを用い、ブロック提案に独自のアルゴリズムProof of Believability, PoBを用いています。これはEOSと似ていますが、PoBはEOSのブロック提案者たち21人の長期間固定と違い、数ブロック承認ごとに提案者17人が頻繁に入れ替わる形をとっています。17人に選ばれる候補者は数百ノードにのぼります。
頻繁に入れ替わるために信頼度Serviという値があり、これが高いと選出され、提案したブロックが承認されると、選出者全員のServiから選出者の最下位のServiがマイナスされる仕組みになっています。
(https://medium.com/iost/introducing-pob-how-to-design-a-more-decentralized-consensus-bfe2ff82b485)
この例で言えば、次のServiは右から5, 3, 0, 4 ,1に変化し、次のラウンドではCが落選し、Dが選出されます。このServiの値は仮想通貨ではないので人に送信はできません。つまりこのシステムはPoSの亜種ではありません。
ブロック提案者の選出ではなく、そもそものこの候補者については、現在Ripple社のXRPのように、候補者をスカウトして増やしている形になっています。
・攻撃耐性
ビザンチン耐性はBFTの設定で33%です。ネットワークの1/3が結託して攻撃すると二重支払いをされます。
・仮想マシン
chromeのV8という仮想マシンが採用されており、これがスマートコントラクトのエンジンとなります。つまり、JavaScriptでスマートコントラクトを書く設計となっており、開発コストを下げる狙いがあると考えられます。これがのるチェーンは現在golangで実装されています。
②エコシステム設計
IOSTでは利用料をそのまま仮想通貨を利用しません。仮想通貨IOSTを持っていると、チェーン上のコントラクトを利用する権利であるiGas・iRamというトークンが湧くしくみになっています。iGasは仮想通貨ではないです。この仕組みにしてある理由を説明します。
報酬がどう定義されているかは、ユーザー・マイナー・Dapps開発者のうち、誰に負担がかかるか、どこに障害を生むかに直結します。ではそもそもEthereumとEOSにはどういった問題があったのでしょう?
Ethereumの手数料支払いのシステムにはユーザーに対して負担がかかります。これは手数料であるgasを持っていなければ如何なるアクションも行えないため、取引所を通じて買う必要があるからです。
また、マイナーに対してはgasの仕様で、ストレージの負担とマイニングの負担を切り離すことができないという点も問題になり得るでしょう。
EOSのシステムは上記のEthereumの問題を解決していますが、代わりに多くの負担をDapps開発者に対して寄せています。コントラクト維持のために、計算資源の高くて不透明なボラティリティに対しても充分担保となるEOStokenを貸しておかなければならない仕様だからです。
さらに大きい問題としてはEOSは21人の選ばれたメンバーによる貴族制的性質のあるチェーンであり、選ばれたノードが裕福になり、さらにえらばれやすくなるシステムについて、IOSTの開発者Terrenceの言葉を借りれば、「Richな人々がよりRichになるシステム」である点です。この負担は開発者にかかることになります。なぜなら、不透明なシステムのもと、高いコントラクト維持費を開発者に要求できるからです。
IOSTでの仕様は、仮想通貨IOSTを持っていると、チェーン上のコントラクトを利用する権利であるiGas・iRamというトークンが湧く仕組みです。これにより、一度この仮想通貨IOSTを買えばそれなりの利用をすることができ、1日の利用が増えてきたら買い足せばいい仕組みなのです。開発者はEthereumのようにコントラクトの維持をトラストレスに行えます。さらにコントラクトをJavaScriptで開発出来る点、もっとも簡易で開発者に優しいプラットフォームであるとも言えます。
コメント
0件のコメント
サインインしてコメントを残してください。