本稿について
本稿では、The Zilliqa Project: A Secure, Scalable Blockchain Platformの「C. Key Features of Zilliqa」の日本語訳を掲載します。
原文はこちらになります。
スポンサードサーチ
C. Zilliqaの重要な特徴
Zilliqaは多方面からスケールするように構築される。ネットワークレベルのシャーディングメカニズムを利用してネットワーク内のノードをトランザクションの並列処理ができるように分割し、トランザクションシャーディングを利用してまるでシャーディングがないかのように確実にトランザクションが受け入れられるようにする。また、Zilliqaは最新のコンピュテーショナルシャーディングフレームワークを提案して膨大な計算を要するアプリケーションをネットワーク上で効率的に実行できるようにする。これらの深いレベルでの理解を促すため、以下に重要なアイデアを記す。
1. ネットワークシャーディング
Zilliqaはブロックチェーンノードのネットワークをシャードと呼ばれる別々のサブグループに分け、各シャードはトランザクションのサブセットに対して処理を行ってコンセンサスを形成する。このようにバラバラのトランザクションのサブセットを並列処理でき、数桁レベルまで大幅にトランザクションスループットが改善される。採取的にこれらのトランザクションは新しいブロックにマージされ、ブロックはブロックチェーンにコミットされる。
このようなネットワークシャーディングを実現するのに主だった課題はいかにしてプロトコルのセキュリティを保証するかである。ナイーブなアプローチではコンセンサスグループのサイズがネットワークシャーディングにより小さくなるにつれて、不正なブロックの影響にいっそう苦しめられることになる。セキュリティ上の問題に対処するため、革新的な研究成果[1]と他の最先端の研究文献[2][3]から着想を得て強固なセキュリティ保証とともにスケーラビリティを成しうる新しいプロトコルを考案している。
Zilliqaのネットワークシャーディングの骨子は、非中央集権的かつ民主主義的な方法でディレクトリサービスコミティを選出・更新するのにPoW(プルーフオブワーク)問題を使うことである。ディレクトリサービスコミティには各シャードが提案するトランザクションのブロックの有効性を確認してシャード内で十分な数からの賛成を得ているかを検証すると同時に、シャーディングプロセスを調整するタスクが与えられる。
いくつかの既存ブロックチェーンプラットフォーム(EthereumやBitcoinなど)と異なり、ZilliqaはPoWをコンセンサス形成のためには利用しない。事実、PoWはシビルアタックを防ぎ、シャーディングを実行するためだけに利用する。結果的に、PoWはPoS(プルーフオブステーク)などのシビルアタック耐性のある他のメカニズムに置き換えることができる可能性がある。PoWを選択した動機は、PoSはまだ研究途上であるのに対してPoWのセキュリティ保証は文献でよく研究されているからである。
2. セキュアで効率的なコンセンサスアルゴリズム
ディレクトリサービスコミティとトランザクションを処理・受領する各シャードでは、セキュアで効率的なコンセンサスプロトコルが動く。このプロトコルにより各シャードは提案するブロックについて合意形成できるようになる。Zilliqaのコンセンサスプロトコルはかなりの最適化が施されたBFT(ビザンチンフォールトトレランス)[4]のアイデアをもとにしている。BFTを選んだのは、既存の暗号通貨で一般的な「最長のチェーンが正である」というルールに必要な長いコンファメーションタイムの必要性を排除しつつ、生成されたブロックを確実に覆されることがないものとするようにコンセンサスプロトコルを設計するためである。しかし既存のBFTプロトコルは、大きな通信帯域幅とそれによる収束のための長い経過時間が必然的に伴う。この結果、BFTは大きなノードのネットワークに対してうまくスケールしない。
私たちは最近提唱されたスケーラブルな署名スキームのCoSi[5]をはっきりと確認していて、これはBFTプロトコルをいっそうスケーラブルにする可能性を秘めている。ここにおける問題は、CoSiはパブリックブロックチェーンよりもずっと敵性の少ない環境を前提として提唱されたものであるという点である。いくつかの大幅な改善で私たちはCoSiスキームを発展させる。特にプロトコル内の悪意あるリーダーと署名者を防ぐために、リーダー側と署名者側の両方についてCoSiプロトコルにさらなる手順とメッセージラウンドを加える。追加ステップとチェックにより、悪意あるふるまいができるだけ速やかに検出されることが保証される。この結果、セキュアなスキームが生まれ、ZilliqaのコンセンサスのためのスケーラブルなBFTプロトコルの開発に応用できる。
3. トランザクションシャーディング
Zilliqaはアカウントベースの設計を用いる。アカウントベースの設計により、送信者のアカウントによってトランザクションをシャードすることができる。これにより、二重支払いやリプレイ攻撃と似通った攻撃は同一ノードのシャードが確実に阻止できる。よりよいスケーラビリティのためにZilliqaはトランザクションシャーディングの設計において意図的な選択を2つしている。1)Zilliqaはしばしば費用が掛かって複雑なクロスシャードコミュニケーションとは無関係にアトミックトランザクションコミットを提供する。2)Zilliqaではブロックチェーンのコンセンサスプロセスでトランザクションを非同期的に処理することができる。Zilliqaは、ノードの大多数が最新の状態になっている限りはトランザクションを非同期的に処理するために「拒否&再試行」メカニズムを採用する。
(ZILLIQAポジションペーパー日本語訳2 ←← 前)|(次 →→ ZILLIQAポジションペーパー日本語訳4)
免責
邦訳には誤りがある場合がございます。予めご承知おき下さい。
確実な情報を知るためには冒頭に示した原文をご参照くださいますようお願いいたします。