翻訳: 各国のブロックチェーン
ブロックチェーンの初期には大きな興奮がありました。しかし、より多くの人がブロックチェーンを使用し始め、トランザクション量が急増するにつれて、スケーラビリティという大きな問題が浮上しました。スケーラビリティの問題に加えて、セキュリティと分散化の問題もあります。この課題は「ブロックチェーンのトリレンマ」として知られており、これら 3 つの特性を同時に達成することは非常に困難であることを意味します。
最初のブロックチェーンであるビットコインは 1 秒あたり少数のトランザクションしか処理できず、イーサリアムよりも優れているわけではありません。このため、ブロックチェーンのスケーラビリティを向上させるソリューションの必要性が生じています。この必要性から ZK 証明が生まれました。
1. スケーリングソリューションとしての ZK プルーフ
「ゼロ知識」の概念は、1985 年に Shafi Goldwasser、Silvio Micali、Charles Rackoff によって論文「Knowledge Complexity of Interactive Proof Systems」で最初に提案されました。この論文では、暗号通貨が誕生するずっと前に、ゼロ知識証明 (ZK) の概念について説明します。
論文の定義によると、ゼロ知識証明とは、一方の当事者(証明者)が、その声明以外の他の情報を明らかにすることなく、特定の声明が正しいことを別の当事者(検証者)に証明することを可能にする方法です。
言い換えれば、ゼロ知識原則により、ステートメントの真実以外の追加の知識が証明者から検証者に渡されないことが保証されます。
ゼロ知識証明の概念を説明する古典的な例え話は、「アリババの洞窟」です。
シナリオ: 2 つの道 A と B がある洞窟があり、ループを形成し、鍵のかかったドアで合流します。ジェーン(証明者)は扉を開く秘密のコードを知っており、ポール(検証者)はジェーンがそのコードを知っていることを確認したいが、自分自身はコードを知りたくない。
プロセス:
1) ジェーンは洞窟に入り、パス A または B をランダムに選択します。
2) ポールはジェーンがどの道を選んだのか戸惑いながら外で待ちます。
3) ポールは洞窟に入り、ジェーンに取り戻してほしい道 (A または B) を叫びます。
4) ジェーンがコードを知っていれば、ドアを開けて選択した道から戻ることができます。
5) このプロセス (1 ~ 5) を複数回繰り返して、推測だけで Jane が正しく返されないようにします。
何度も繰り返した後、ジェーンが常に正しいパスから戻ってきた場合、ポールは、コード自体は知らなくても、ジェーンがコードを知っていると確信できます。
ZK プルーフは、プライバシーとセキュリティを確保するように設計されており、機密情報を非公開に保ちながら、他の人がその信頼性を検証できるようにします。つまり、ZK 証明は、特定の詳細を明かすことなく正当性を証明しながら、重要なデータを安全に保つのに役立ちます。
ZK 証明の概念は、ZK ロールアップや ZK 圧縮など、さまざまな高度な暗号化テクノロジやアプリケーションも生み出しました。
2018 年に、匿名の Barry Whitehat が「roll_up」と呼ばれるコード ベースを GitHub にアップロードし、Rollups の概念を導入しました。その後、イーサリアムの創設者ヴィタリック・ブテリンがこの概念をさらに発展させ、zk-Rollups を提案しました。
zk-Rollups (ゼロナレッジ ロールアップの略) は、イーサリアム メインネットのパフォーマンスを向上させるために使用される第 2 層のスケーリング ソリューションです。計算と状態ストレージをオフチェーンに移動することで拡張します。
レイヤ 2 プロトコルは、ブロックチェーンのスケーラビリティと速度を強化し、トランザクション手数料を削減するためにブロックチェーン上に構築された二次プロトコルです。
6月21日、SolanaベースのプライバシーレイヤーであるLight Protocolは、オンチェーンコンピューティングコストの大幅な削減を目的として、Solana開発チームHelius Labsと協力して新しい「ZK Compression」スケーリングソリューションのテストネットを立ち上げると発表した。
zk-Rollups と zk-Compression はどちらもゼロ知識証明の力を活用してブロックチェーン テクノロジーを最適化しますが、目的は異なり、実装方法も異なります。
それにもかかわらず、イーサリアムとソラナのコミュニティはどちらのテクノロジーが優れているかについて議論してきました。
たとえば、あるイーサリアム コミュニティ メンバーは、ZK 圧縮を「別の L2」と呼びました。
Heliuslabs CEO の Mert が上記のツイートに反応した後、Solana コミュニティはイーサリアムを嘲笑するクリエイティブなビデオで反撃しました。
このビデオでは、医師が「ETH過激主義」の患者を治療しています。ビデオの中の一節にはこう書かれています。
「これはETH過激派の一般的な反応です。彼らは別の層なしでは機能しません。第3の層が存在します!」
これらのブロックチェーン間の競争は明らかです。したがって、この記事は、スケーラビリティ ソリューションを明確かつ包括的に比較し、各ソリューションの独自の機能、違い、実際の使用例を強調することを目的としています。
2. ZK ロールアップとは何ですか?
ZK Rollups の核となるのは、ブロックチェーン ネットワークの効率とスケーラビリティを向上させるように設計されたレイヤー 2 スケーリング ソリューションです。
核となるアイデアはシンプルです。各トランザクションをメイン ブロックチェーン上で直接処理する代わりに、複数のトランザクションが 1 つのプルーフにバンドルされます。このマージされた証明は検証のためにブロックチェーンに送信されます。
このアプローチにより、ネットワークのセキュリティを犠牲にすることなく、トランザクション スループット (ネットワークが一定期間内に処理できるトランザクションの数) が大幅に向上します。
これをよりよく理解するには、
あなたがコンサートを企画していると想像してください。各参加者が狭い門 (メイン ブロックチェーン) を 1 つずつ通過し、混雑や遅延が発生する可能性があるのではなく、チェックポイントで参加者のグループを同時に検証するシステムを実装できます。各グループは、全員が適切にチェックインおよび入場したことを証明する 1 枚のチケットを携行します。このようにして、入り口の障害物を減らすことで、効率を高めながら安全性を確保します。
ZK ロールアップは、トランザクションをオフチェーンで処理し、ZK-SNARK や ZK-STARK などの高度な暗号化テクノロジーを利用してトランザクションの有効性とプライバシーを確保することで、全体的なユーザーの効率とセキュリティを向上させます。
zk-SNARK は、簡潔な証明 (つまり、短い証明サイズと効率的な検証) を提供する zk 証明であり、証明サイズと検証時間が重要であるアプリケーション シナリオに非常に適しています。
zk-STARK は、より大規模で複雑な証明を可能にする zk 証明であり、大規模な財務監査、データ プライバシー、検証済みコンピューティングなどのアプリケーションに適しています。
ZK ロールアップは、オフチェーンのトランザクションをバッチに集約し、イーサリアムに直接送信されるデータ量を削減するため、イーサリアムのようなブロックチェーン ネットワークに最適なスケーリング ソリューションです。
イーサリアム上の ZK ロールアップは、暗号化を活用してトランザクションをオフチェーンで集約および検証することで機能し、それによってイーサリアム ブロックチェーンのスケーラビリティを向上させ、コストを削減します。
ZK-Rollups の仕組みを段階的に説明します。
1) トランザクションの集約: ユーザーはトランザクションに署名し、ZK-Rollup オペレーター (シリアライザー) に送信します。ZK-Rollup オペレーター (シリアライザー) は、これらのトランザクションをバッチに集約します。
2) オフチェーン処理: トランザクションはイーサリアムメインネットの外側のオフチェーン (第 2 層) で処理されます。
3) 状態の更新: トランザクションのバッチを処理した後、ZK-Rollup オペレーターはロールアップ状態の新しい状態ルートを計算します。
4) 有効性証明: ZK-Rollup オペレーターは、バッチ内のすべてのトランザクションがプロトコル ルールに従って正しく実行されることを保証するための有効性証明を生成します。
5) オンチェーン検証: ZK-Rollup オペレーターは、ロールアップ コントラクトと呼ばれる有効性証明書と新しい状態ルートをイーサリアム スマート コントラクトに送信します。コントラクトはその状態を検証し、それに応じて更新します。
6) ユーザーインタラクション: ユーザーはイーサリアムメインネット上のロールアップコントラクトにトークンをデポジットし、ロールアップ内でトランザクションを開始し、必要に応じてトークンをメインネットに引き出します。
7) 終了メカニズム: ZK-Rollup からイーサリアムのメインネットワークにトークンを引き出すには、ユーザーは引き出しリクエストを送信し、ロールアップ状態でトークンの所有権を持っていることを証明するマークル証明書を添付する必要があります。ロールアップ コントラクトによる検証後、トークンはユーザーのイーサリアム アドレスに返送されます。
1) ZKロールアップのメリット
ZK ロールアップの利点の一部を次に示します。
A. スケーラビリティの向上: 複数のトランザクションを 1 つのバッチにバンドルすることで、zk-Rollups は 1 秒あたり数千のトランザクション (TPS) を処理でき、基本レイヤーと比較してスループットが大幅に向上します。
B. 手数料の削減: ガス料金はロールアップ バッチ内の複数のトランザクションに分散されるため、各トランザクションのコストが削減され、ユーザーにとってはより経済的になります。
C. イーサリアムレベルのセキュリティ: zk-Rollups は、オフチェーントランザクションの正当性を保証するためにプルーフ (zk-SNARK) をイーサリアムに送信するため、イーサリアムメインチェーンのセキュリティを継承します。
D. データ負荷の削減: zk-Rollups は、メイン チェーンに簡潔な証明のみを送信することで、処理およびイーサリアム ブロックチェーン上で保存する必要があるデータの量を大幅に削減します。
E. 強化されたプライバシー保護: zk-Rollups は、強化されたプライバシー機能を提供できます。ゼロ知識証明は、トランザクションの有効性を証明しながらトランザクションの詳細を隠すことができ、パブリック ブロックチェーン上でプライベートなトランザクションを可能にします。
2) ZK ロールアップの欠点
ZK ロールアップには多くの利点がありますが、いくつかの欠点や課題もあります。
いくつかの欠点を次に示します。
A. 複雑さ: ZK ロールアップは技術的に複雑で、実装とメンテナンスには専門的な知識が必要です。
B. データの可用性: 状態を再構築するために必要なデータがチェーン上で利用可能であることを確認することが重要です。データが利用できない場合、ロールアップ状態を検証および再構築する機能に影響を与える可能性があります。さらに、zk ロールアップはオフチェーン データ ストレージに依存することが多く、データが失われたりアクセスできなくなった場合にリスクが生じる可能性があります。
C. 計算コスト: ゼロ知識証明 (zk-SNARK) の生成には大量の計算リソースが必要であり、計算コストが高くなります。
D. 集中化のリスク: インフラストラクチャが少数のエンティティによって制御されていることが判明した場合でも、集中化のリスクが存在する可能性があります。
3) ZK ロールアップの現在の使用例
新しい ZK ロールアップ プロジェクトが毎日登場します。有名な ZK ロールアップ プロジェクトをいくつか示します。
Starkware (ライセンスを受けてカスタマイズされた第 2 層スケーリング ソリューションを開発)、Aztec Network (zkSNARK を使用してブロックチェーン暗号化を構築)、Argent (zkSync と統合された非保管ウォレット)、Immutable X (NFT 発行および取引プラットフォーム)、Loopring (などのプロジェクト) のようにイーサリアム上の zk-rollup トランザクションと支払いプロトコルは ZK Rollups を使用しています。
ZK ロールアップを使用できるさまざまな方法は次のとおりです。
分散型金融 (DeFi) : ユーザーのより低いガスコストでの融資と取引を支援します。
分散型取引所 (DEX): プライバシー保護を強化しながら、より高速でコスト効率の高いトークン交換を促進します。
ゲームとNFT: デジタルプラットフォームでのユーザーエンゲージメントを強化し、スケーラブルなゲーム経済と活気のあるNFT市場をサポートします。
支払いにおいて: 迅速かつ低コストの小口取引と国境を越えた支払いを促進します。
3. ZK圧縮とは何ですか?
ZK Compression は、Light Protocol と Helius Labs によって開発され、発売された独自のテクノロジーです。ゼロ知識証明と圧縮を使用することでオンチェーンのコストを削減し、それによってオンチェーンに保存されるデータの量と、Solana で取引する際の計算要件を削減します。
「独自技術」とは、高レベルの暗号化アルゴリズムの基礎または構成要素として使用される低レベルの暗号化アルゴリズムを指します。 ZK 圧縮をより深く理解するには、Solana の独自のアーキテクチャと課題を理解することが重要です。
1) Solana の「アカウント」を理解する
スマート コントラクトとデータが密接に結合されているイーサリアムとは異なり、Solana はデータが別の「アカウント」に保存されるモデルを使用しています。これらのアカウントは、実行可能コードからトークン残高まであらゆるものをカバーします。
Solana では、すべてがアカウントです。
このモデルは Solana の高いパフォーマンスと並列処理機能を実現しますが、代償も伴います。バリデーターはすべてのアクティブなアカウントを高速アクセス メモリ (RAM) に保存する必要があり、コストがかかります。
悪用を防止しバリデーターに補償するために、Solana は「レンタル」システムを導入しました。このシステムでは、ユーザーはアカウントをアクティブに保つために SOL トークンをロックする必要があり、レンタル額は保存されているデータのサイズに直接関係します。
Solana の人気が高まるにつれ、これらのアカウントの作成と維持にかかるコストがスケーリングの大きな障壁となったため、ZK 圧縮というソリューションが必要になりました。 ZK Compression の登場により、新しい Solana アカウントを作成するコストが大幅に、おそらく「桁違い」に削減されることが期待されます。
何かのコストが「桁違い」に削減された場合、それはコストまたは労力が大幅に削減され、通常は以前と比較して 10 倍以上削減されたことを意味します。
これは、暗号通貨残高用に 100 個の圧縮ユーザー アカウント (トークン アカウントとも呼ばれる) を作成および追跡するコストが、通常のトークン アカウントを 100 個作成するよりも最大 5,000 倍安くなるということを意味します。
次のように考えてください。圧縮とは、何かを圧縮して占有スペースを減らすことを意味します。 ZK 圧縮はこの原則を適用します。ここで、「ZK」は、圧縮データのプライバシー保護が影響を受けないことを意味します。
簡単に言えば、ZK 圧縮は圧縮データの「フィンガープリント」(ハッシュ)をオンチェーンに保存するだけです。このアプローチにより、データのプライバシーを維持しながらストレージ コストが削減されます。
競合他社の主張に反して、ZK 圧縮は Solana の第 2 層チェーンではなく、Solana のデータ ストレージを改善し、開発者のコストを大幅に削減することを目的としたアップグレードです。
Solana で ZK Compression が機能する方法は、この課題に直接対処し、開発者が複数のアカウント状態を単一のオンチェーン アカウントに圧縮できるようにすることです。
仕組みは次のとおりです。
アカウント圧縮: 複数のアカウント状態が再帰的にマージされ、コンパクトな 32 バイトの「状態ルート」にハッシュされます。オンチェーンおよびオフチェーン ストレージ: 状態ツリーは、データを階層構造に編成し、データの整合性を効果的に検証できるバイナリ マークル ツリーです。この状態ルートはオンチェーンに保存されますが、完全なアカウント データはオフチェーンの Solana 台帳に保存されます。検証証明: 簡潔なゼロ知識証明は、状態ツリー内に複数の圧縮されたアカウントが存在することを確認し、一定の 128 バイト サイズを維持します。トランザクションが圧縮データにアクセスまたは変更する必要がある場合、データがオンチェーン状態のルートと一致するという証拠が提供されます。検証: 証明はオンチェーンで検証され、有効であればトランザクションの続行が許可されます。 重要な革新は、ゼロ知識証明、特に SNARK (Succinct Non-Interactive Arguments of Knowledge) を使用して、このプロセスで使用されるマークル証明を圧縮することです。
この圧縮により、圧縮されるアカウントの数に関係なく、プルーフ サイズが潜在的に数百バイトから一定の 128 バイトに削減されます。
このデータ サイズの大幅な削減により、開発者は単一のトランザクションで複数の圧縮されたアカウントを操作しながら、Solana のトランザクション サイズ制限内で作業できるようになります。
2) Solana ブロックチェーンに対する ZK 圧縮の利点
Solana エコシステムに対する ZK 圧縮の利点は次のとおりです。
A. 省エネと効率: ストレージとコンピューティングの要件を削減することで、運用のエネルギー消費が削減されます。
B. スケーラビリティ: Solana のデータ圧縮により、アプリケーションとトランザクションの処理能力が向上し、全体的なスケーラビリティが向上します。
レイヤ 1 チェーンのセキュリティを維持する: レイヤ 2 ソリューションとは異なり、圧縮データは Solana メイン チェーンのセキュリティ上の利点を完全に保持します。
C. 統合環境: 開発者は、層間のブリッジングを行わずに単一環境でアプリケーションを構築およびデプロイできるため、開発プロセスが簡素化されます。
D. コストの削減: オンチェーンのストレージ要件を削減することで、データ ストレージのコストが削減されます。
E. プログラマビリティ: 圧縮データは Solana のスマート コントラクトと完全に互換性があり、その実用性とプログラマビリティを維持します。
3) Solana ブロックチェーンにおける ZK 圧縮の欠点:
A. 計算の複雑さ: ゼロ知識証明の生成には大量の計算リソースが必要であり、その結果、コストが高くなり、パフォーマンスが低下する可能性があります。
B. 実装の課題: ZK 圧縮の開発と実装には専門的な暗号化の知識が必要であり、特定の技術的しきい値があります。
C. スケーラビリティの問題: ZK 圧縮はスケーラビリティの向上を目的としていますが、特にリソースに制約のある環境では、計算需要によってこれらの利点が相殺される場合があります。
D. 検証のオーバーヘッド: ゼロ知識証明の検証は、一般に、ゼロ知識証明を生成するプロセスよりもリソースの消費量は少ないですが、依然として計算リソースを必要とします。場合によっては、これにより遅延が発生し、システム全体の効率に影響を与える可能性があります。
E. 経済的コスト: 高いコンピューティング要件により、エネルギー消費と運用コストが増加します。これにより、特定の用途では ZK 圧縮の経済性が低下する可能性があります。
4. ZK圧縮の使用例
ZK 圧縮の考えられる使用例をいくつか示します。
DeFi アプリケーション: Jupiter Exchange などの Solana 上の DeFi プロトコルは、ZK 圧縮を利用して、手数料を削減し、トランザクションを高速化できます。
マイクロペイメント: Code のようなマイクロペイメント ソリューションでは、ZK Compression により、オンチェーン ストレージ要件を削減することで、Solana ネットワークでの支払いをよりコスト効率が高く持続可能なものにすることができます。
分散型ネットワーク: Helium などのプロトコルは分散型ワイヤレス ネットワークを提供し、数百万のユーザーとデバイスにサービスを提供します。 ZK 圧縮は、複雑な第 2 層ソリューションを必要とせずに、これらのネットワークによって生成される膨大な量のデータを管理する上で重要な役割を果たします。
ゲーム: ZK Compression は、Honeyland などのゲームのストレージ コストを最適化できます。すべてのゲームアセット、ゲームアイテム、NFTメタデータのコストが削減され、全体的なユーザーエクスペリエンスが向上します。
5. ZK ロールアップと ZK 圧縮の比較
1) 類似点
ゼロ知識証明の使用: どちらのソリューションもゼロ知識証明を利用してオフチェーン トランザクションを検証し、安全に処理します。
スケーラビリティの向上: オンチェーンのトランザクション処理とデータストレージを削減することで、ブロックチェーンのスケーラビリティを向上させることを目指しています。
レイヤ 2 ソリューション: どちらも、トランザクション スループットを向上させ、コストを削減するために、それぞれのブロックチェーン上に構築されたレイヤ 2 スケーリング ソリューションとみなされます。
2) 相違点
ブロックチェーン プラットフォーム: ZK Rollups は Ethereum で実行され、ZK Compression は Solana で実装されます。
主な焦点: ZK Rollups はスケーラビリティを強化するためにオフチェーン トランザクションを集約して処理することに重点を置いていますが、ZK Compression は主にデータ圧縮を通じてオンチェーン ストレージのコストを削減します。
実装方法: ZK ロールアップは複数のトランザクションを 1 つのプルーフにバンドルし、イーサリアムのメインチェーンに送信します。一方、ZK 圧縮は複数のアカウントの状態を Solana 上の単一のオンチェーン アカウントに圧縮します。
校正サイズ: ZK ロールアップは zk-SNARK または zk-STARK を使用して簡潔な校正を生成しますが、ZK 圧縮は zk-SNARK を活用してマークル校正を一定のサイズに圧縮します。
トランザクション処理: ZK Rollups はオフチェーンでトランザクションを処理し、証明をイーサリアムに定期的に送信します。一方、ZK Compression はゼロ知識証明を介して圧縮されたアカウント データをオンチェーンで処理します。
3) ユースケース
A. ZK ロールアップの現在の使用例
DeFi アプリケーション: 取引手数料を削減し、取引速度を向上させることで、分散型金融プロトコルを強化します。
分散型取引所 (DEX): プライバシーを維持しながら効率的なトークン交換を促進します。
ゲーム: より低コストでスケーラブルなゲームエコノミーと NFT 市場をサポートします。
支払い: 迅速かつ低コストのマイクロペイメントと国境を越えた支払いを可能にします。
B. ZK 圧縮の潜在的な使用例
DeFi アプリケーション: Solana の DeFi プロトコルの手数料が低くなり、トランザクションが高速化されます。
マイクロペイメント: オンチェーンストレージを最小限に抑えることで、少額のトランザクションをよりコスト効率が高く持続可能なものにします。
分散型ネットワーク: 分散型ワイヤレス ネットワークと IoT アプリケーションによって生成される膨大な量のデータを効率的に管理します。
ゲーム: ゲームアセットと NFT メタデータのストレージ コストを最適化し、ユーザー エクスペリエンスを向上させます。
6. まとめ
あなたがEth Maximysisに苦しんでいる場合でも、私のようにSolanaの熱心な支持者である場合でも、最も重要なことは、現在のニーズに合ったブロックチェーンを選択することです。
ZK ロールアップは、分散構造を維持しながらイーサリアムを拡張する信頼性の高い方法を提供するため、高いセキュリティを必要とし、イーサリアムの成熟したエコシステムの恩恵を受けるプロジェクトに最適であると私は信じています。
一方、ZK 圧縮を使用すると、SOL の価格が上昇しても、Solana は行き詰まることなくより多くのトランザクションを処理できます。したがって、Solana の ZK Compression は、速度、パフォーマンス、費用対効果が重要なアプリケーションに適していると思います。
Solana は、ブロックチェーン テクノロジーの普及にはスピードとコストが重要であるため、将来性のある高性能でコスト効率の高い分散型アプリケーション (dApps) を実現します。
要約すると、ZK ロールアップと ZK 圧縮は両方とも、トランザクションをより速く、より安く、したがってよりスケーラブルにするのに役立ちます。