Skip to main content
QUICK REVIEW

[論文レビュー] LazyLedger: A Distributed Data Availability Ledger With Client-Side Smart Contracts

Mustafa Al-Bassam|arXiv (Cornell University)|May 22, 2019
Blockchain Technology Applications and Security被引用数 8
ひとこと要約

LazyLedgerは、ブロックチェーンを単に順序付けとデータ可用性の確保のためのものに限定することで、合意形成と取引検証を分離するブロックチェーン設計を提案する。クライアント側でのアプリケーション論理の実行を可能にする確率的データ可用性検証により、ノードのリソース使用量を削減し、複数のアプリケーションが同じチェーン上で最小限の相互干渉で共存できる。

ABSTRACT

We propose LazyLedger, a design for distributed ledgers where the blockchain is optimised for solely ordering and guaranteeing the availability of transaction data. Responsibility for executing and validating transactions is shifted to only the clients that have an interest in specific transactions relating to blockchain applications that they use. As the core function of the consensus system of a distributed ledger is to order transactions and ensure their availability, consensus participants do not necessarily need to be concerned with the contents of those transactions. This reduces the problem of block verification to data availability verification, which can be achieved probabilistically with sub-linear complexity, without downloading the whole block. The amount of resources required to reach consensus can thus be minimised, as transaction validity rules can be decoupled from consensus rules. We also implement and evaluate several example LazyLedger applications, and validate that the workload of clients of specific applications does not significantly increase when the workload of other applications that use the same chain increase.

研究の動機と目的

  • ブロックチェーンのスケーラビリティを向上させるために、合意形成と取引検証を分離し、フルノードの負担を軽減すること。
  • エンドユーザーが、合意形成ノードがすべての取引を処理する必要なく、アプリケーション固有の論理を独立して検証・実行できることを可能にすること。
  • ブロック検証がデータ可用性検証に還元され、確率的サンプリングによって非線形の複雑さを達成できるブロックチェーンの設計をすること。
  • 複数の独立したアプリケーションが、最小限のパフォーマンスへの影響を受けても、同じチェーン上で共存できることを可能にすること。
  • アプリケーション論理がオンチェーンで強制されない、新たなブロックチェーンパラダイムを検討すること。これにより、論理の変更に伴うハードフォークを回避できる。

提案手法

  • 合意形成ノードが、完全ダウンロードルールと確率的サンプリングルールの2つのブロック有効性ルールを用いてデータ可用性のみを検証するブロックチェーンを設計すること。
  • 名前空間付きMerkleツリーを用いて、アプリケーションごとに取引を整理し、クライアントが関連するデータを効率的に照会・検証できるようにすること。
  • クライアント側でのアプリケーション論理の実行を実装し、関心のあるクライアントのみがその特定のアプリケーションの取引を処理・検証することを可能にすること。
  • 確率的データ可用性検証を適用し、合意形成ノードが全ブロックをダウンロードせずにブロックの可用性を検証できるようにすること。
  • 通貨、名前レジストラー、請願アプリケーションなどの例題アプリケーションを含むプロトタイプを構築し、パフォーマンスとスケーラビリティを評価すること。
  • さまざまなアプリケーションワークロードにおけるクライアントのワークロードとデータダウンロードのオーバーヘッドを測定し、隔離特性を検証すること。

実験結果

リサーチクエスチョン

  • RQ1セキュリティと可用性の保証を維持したまま、合意形成と取引検証を分離することは可能か?
  • RQ2確率的サンプリングを用いることで、データ可用性検証を非線形の複雑さで達成できる範囲はどの程度か?
  • RQ3同じチェーン上で他のアプリケーションが高負荷にさらされても、あるアプリケーションのクライアントのワークロードはどの程度に拡大するか?
  • RQ4アプリケーション論理をオンチェーンで完全にオフチェーンで実行でき、オンチェーンの合意形成やハードフォークを必要としないか?
  • RQ5共有ブロックチェーン環境において、従来のフルノード検証と比較して、クライアント側検証のパフォーマンスオーバーヘッドはどの程度か?

主な発見

  • LazyLedgerはブロック検証をデータ可用性検証に還元し、全ブロックをダウンロードせずに確率的サンプリングにより非線形の複雑さを達成できる。
  • 他のアプリケーションが高取引量にさらされても、あるアプリケーションのクライアントは性能劣化をほとんど経験しない。
  • アプリケーション証明書のサイズとステートストレージは、関連のないアプリケーションの活動とは独立しており、非常に小さく保たれる。これはワークロードの隔離を示している。
  • 15回のサンプリングによる確率的データ可用性検証は、強力な可用性保証を達成しつつ、クライアントのダウンロード要件を顕著に削減する。
  • クライアントが合意形成レベルの変更やハードフォークを必要とせず、アプリケーション論理を独立してアップグレードでき、アプリケーションステートの自律性を実現できる。
  • プロトタイプは、クライアント側実行と選択的データアクセスが実際の環境でも実現可能で、個々のアプリケーションに対して最小限のオーバーヘッドで効率的であることを示している。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。