MultiVAC を説明する上で、キーワードを先に言っておきます。それはズバリ。。
“flexibility (柔軟性)” です!!!
何が柔軟なのか、を説明する前に英語の記事を読むと良く目にするCAPという言葉について説明します。ここで言うCAPは、market capとかのCAPではありません。情報系の分野でよく使われるCAP(consistency 一貫性 availability 可用性 partition-tolerance 断耐性)の略です。これら三つの要素は、分散型システムにおいて同時に得ることはできないということが一つ大きな問題としてあります。つまりtrade-off(一方を追求し、他方を犠牲にせざるを得ない状態)であるということです。ここではこの三つを分かりやすくパフォーマンス、分散、セキュリティとします。
既存のブロックチェーンでは、これらの機能を同時に実現しているのは不可能です。MultiVAC は、このtrade-offをハイレベルで ”柔軟に” 行おうというということです。これが、プロジェクトの大きな部分でもあります。そもそも、MultiVAC の名前の由来というのが、1956年に書かれた短編の中のスーパーコンピュータの名前だそうです。このコンピュータは自己修正能力、自己調整能力が最高のパフォーマンスでありました。つまり、このプロジェクトが目指すところもそこにあると考えられます。
ここまででMultiVACがどのようなプロジェクトかなんとなくわかってもらえれば幸いです。
それではどのように柔軟性を実現するのか
これが重要ですが、これを理解するには、VRF(verifiable random function)を理解せねばなりません。解説には以下のように示されています。
①検証可能で十分なランダム性
②予想、操作の不可能性
③低コストでのトランザクション、ハイパフォーマンス
ってな感じです。
分散型ブロックチェーンシステムでは、すべてのノードが合意されたデータ処理手順に従うことを確実にすることは困難ですが、システム内で一定量の不正のないノードとその割合を保証することが重要です。したがって、MultiVACは、マイナーを選ぶ際に、不正の可能性を排除するために十分なランダム性とセキュリティを達成しなければならないと考えています。取引が行われる前にマイナーが晒され、攻撃される可能性がある場合には、予測不可能性も保証されなければなりません。
このロジックに従うと、MultiVACはVRFを使用して、マイナー選択のための洗練されたメカニズムを構築し、トランザクションや契約が発生した場所や時間に安全かつ効率的に、ランダムにノードを選択することができるということです。
VRFは、分散システム内の特定のノードを選択するためのランダムで効果的なメカニズムを提供する数学的ツールです。それは数学的に言えば、完全な乱数生成を定義しています。
以前読んだ記事には、ハリポタに出てくる組分け帽子(ハリー達のクラスを決めてくれる帽子)を例えにしてました(笑)
帽子:VRF
クラス:シャード
ハリー達:ノード
身近なところでのランダム性はどれほど重要なのでしょうか? たとえばある会社が、会計係(特定のマイナー)を帳簿管理のために雇用するため、会計士の陰謀や調整の偽造を防止するために、Alabour Service Agent(VRFモデル)に委託する場合、代理人は相互に見知らぬ会計士を選択しなければならず、これには、エージェントが不正操作のない十分にランダムな選択メカニズムを実行する必要があります。そしてエージェントは、セキュリティを確保するために、選択がランダムであるかどうかを確認する必要があります。
続いては、別のアプローチから考えます。一つのシャードには、ブロックチェーン全体のノードよりも少ない数のノードが含まれているため、ハッカーが固定されたマイナーを攻撃したり、トランザクションを改ざんしたり、二重支払いを請求したりすることはより簡単になってしまいます。これを防ぐために、MultiVACはVRFを使用して、動的シャード調整、つまりネットワーク全体で常にマイナーを交換し、一つシャードに対する攻撃をブロックチェーン全体の攻撃レベルまで難しくします。
BitcoinのPOWは、マイナーの選択にあたってある程度のランダム性を保証することができますが、この方法は大量の電力を消費し、そのハッシングは価値を生み出すことができません。発生した電気を別の用途で使用するプロジェクトもある一方、MultiVACのVRFは十分なランダム性を保証するだけでなく、トランザクションコストを削減し、パフォーマンスを向上させます。Bitcoin に対しての上位互換性があるということです。
DApps開発から見たMultiVAC
DAppsには、さまざまな種類があります。高レベルのセキュリティを必要とするものとスピードを必要とするものがあります。今までのブロックチェーンでは、考慮しなければならないトレードオフがあり、すべてのDAppsのニーズをすべて満たすものはありませんでした。プラットフォームではよく引き合いに出されるETHやEOSと比較するとどうでしょうか?Ethereum は、スピードのトレードオフを行い、分散とセキュリティを最適化し、EOSはスピードの集中化しています。
MultiVACは、DApps開発者に要件を提出させることで柔軟に機能させることが可能です。セキュリティを必要とするケースでは、DAppは多数のノードを持つシャードを選択することになります。より高いスループットを必要とするケースでは、より少ないノードを選択します。
終わりに
これからよりDAppsの開発が増えることを考えると、開発者の複雑で多様なビジネス要件をより柔軟に反映させることができるMultiVACは、goodな印象です!
Summary in English
Today although it is a decentralized system where CAP is difficult to realize, MultiVAC can flexibly deal with various situations using VRF.
I think that its feature is flexibility from above all.
PoW of BTC has some degree of randomness, but it consumes a lot of electricity. With MultiVAC, you can not only guarantee enough randomness but also reduce transaction costs and increase performance: MultiVAC has upward compatibility with BTC.
In addition, depending on whether dApps require throughput or security, it is possible to select a shard with a large number of nodes, or select a shard with fewer nodes.
Given that the number of development of DApps will increase from now on, MultiVAC, which can more flexibly reflect the complex and diverse business requirements of developers, seems to be a project with considerable needs. I think that its features are flexible from above all.