これらのシャドウ プルーフは、zkSync Era のメインネット バージョンには必要ありません。これは引き続き既存のプルーフ システムによって駆動されます。私たちは、システムをさらにテストして最適化するためにこれらのシャドウ プルーフを検証しているだけですが、zkSync Era のユーザー アクティビティの実際の運用データを使用しています。
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
zkSync Boojum のアップグレードを 1 つの記事で読んでください: より安全で効率的な zkEVM
原作者: zkSync
原文編集:Deep Tide TechFlow
TLDR
zkSync の使命は、すべての人の個人の自由を推進することです。トラストレス、安全、許可不要、手頃な価格、使いやすく、回復力があり、無限に拡張可能なブロックチェーン ネットワークを構築することで、デジタル自己所有権を普遍的にアクセスできるようにすることです。
この使命に沿って、zkSync Era のアルファ版が 3 か月ほど前に一般公開され、その反響は驚異的でした。ネットワークのハイライト:
2023 年 3 月に、3 年近くメインネットで zkSync Lite をサポートしてきた、歴戦のテスト済み回路フレームワークを利用して、SNARK ベースの zkSync Era が誕生しました。ただし、これが zkSync Era プルーフ システムの最終バージョンではないことはわかっていたため、システムを再生成せずに根本的な変更を加えられるようにシステムを設計しました。これは、開発者やユーザーを混乱させることなく、主要な暗号化アップグレードを展開できることを意味します。
私たちは舞台裏で長い間、暗号化のアップグレードに取り組んできました。本日、最初のアップグレードを発表できることをうれしく思います。zkSync Era は、「Boojum」と呼ばれる新しい Proof-of-STARK システムに移行しています。
ブージャムに会いましょう
Boojum は、ZK 回路、zkSync Era および ZK Stack のアップグレード バージョンを実装するために使用する Rust ベースの算術および制約ライブラリです。
ブージャムとは何ですか?
ブージャムの特徴:
Boojum は、デフォルトでサイズ 2^64 - 2^32 + 1 の素数フィールド (「ゴルディロックス フィールド」と呼ばれる) を使用し、ポセイドン 2 ハッシュ関数などの対応するフィールド バインディング プリミティブの実装と、ルックアップ テーブル ベースの実装を提供します。 SHA 256、Kecck 256、Blake 2 などのより標準的な暗号化プリミティブ。
重要なのは、最後のステップでは、STARK 証明を非透過的なペアリングベースの SNARK でラップし、イーサリアム上でこの SNARK を検証することです。この証明ははるかに小さく、検証コストが安くなります。このステップにより、証明システムのコストが削減され、したがってトランザクション自体のコストが削減されます。
Boojum を選ぶ理由は何ですか?
Boojum を設計する際、この決定の背後には 2 つの重要な要素がありました。(1) 世界クラスの証明パフォーマンス、および (2) 分散化のためのハードウェア要件の削減です。
ワールドクラスのパフォーマンス
現在の SNARK ベースのシステムは、現時点では有効ですが、ZK スタックでの大容量のほぼリアルタイムのトランザクションに拡張することはできません。 zkSync Era をハイパーチェーンとして実行する将来の目標は、これらのシステムを今後何年にもわたってサポートすることです。これらのシステムに対する私たちのビジョンは、証明を安価かつ迅速に生成および検証できるようにして、ハイパーチェーン間の高速ファイナリティと相互運用性を可能にすることです。
証明システムのパフォーマンスは、ユーザーが取引に対して支払う手数料に直接影響するため、これらのコストは時間の経過とともにゼロに近づく必要があります。現在のバージョンの証明システムは、わずか数か月で zkEVM を構築して数百万のトランザクションを処理できるほど効率的ですが、Boojum を使用するとさらに優れた処理が可能です。
ネットワークのプルーフ生成時間 (およびパフォーマンスに関連するその他の重要な指標) を測定するために、私たちは Celer と提携しました。Celer のチームは、複数のプルーフ システムのベンチマークと分析で豊富な経験を持っています。下の画像では、プロファイリングされたほとんどのシステムで Boojum が非常に良好にパフォーマンスしていることがわかります。結果はそれ自体を物語っています。私たちの実装は世界クラスの証明パフォーマンスを実証しており、私たちの知る限りでは、現在運用環境で使用されている最速の証明システムです。
公平な比較のために、Celer は CPU ベースのプルーバーでこれらのベンチマークを実行しましたが、メインネット システムははるかに高速な GPU ベースのプルーバーを使用しています。
STARK ベースのプルーフ システムへの移行は、パフォーマンスの大幅な向上を意味し、zkSync Era およびその他の ZK Stack ベースのシステムのアクティビティ レベルの増加をサポートするファイナリティと低レイテンシーを確保するのに役立ちます。
分散型ハードウェア要件の削減
これらのパフォーマンス結果は、これが私たちが最適化している唯一の指標ではなく、システムを実行するためのハードウェア要件を削減しながらシステムのパフォーマンスを向上させたいと考えていることを考えると、特に印象的です。
当社の既存のシステムを含め、現在一般的に使用されているプルーフ システムには、比較的高いハードウェア要件があります。現在の実証システムは、それぞれ 80 GB の RAM を搭載した A100 GPU のセットで実行されています。高価で強力なマシンの必要性は、ユーザー主導の分散プルーフ生成の未来という私たちの目標にとって大きな障害となります。この目標を達成するには、プルーフ生成をパーミッションレスにするだけでは十分ではなく、ユーザーが参加するために数百ギガバイトの RAM を搭載した高価なマシンを必要とすべきではありません。
これも、私たちが非常に目覚ましい進歩を遂げたもう 1 つの分野です。 Boojum 用の GPU 証明者は 16 GB の RAM しか必要としません。この低いしきい値は、私たちが思い描く将来にとって重要なステップです。 CPU ベースのプルーフでは、RAM をわずか 64 GB しか使用できませんが、これを 32 GB まで削減して、最新のマルチコア プロセッサを最大限に活用できるようにしたいと考えています。
最後に、zkSync Era の Rust ベースのシーケンサーは、すでに 100 トランザクション/秒 (TPS) 以上を処理できます。新しいプルーフ システムの導入により、パフォーマンスが向上するだけでなく、ハードウェア要件も軽減され、シーケンサーを理想的に補完するものになります。 Boojum によってもたらされるパフォーマンスの向上は、システムがトランザクションをより迅速に証明できることを意味し、同時にハードウェア要件が軽減されることで、より安価なマシンへのネットワーク アクセスが向上し、水平方向のスケーラビリティが向上します。
Boojum のメインネットの旅
チームはこのアップグレードの開発に数か月を費やし、メインネットでシステムをテストする段階に到達したことを嬉しく思います。これまでのストーリーもいくつか共有したいと思いました。
zkSync時代をアップグレードする
まず、zkSync Era の設計により、時間の経過とともに各コンポーネントをアップグレードすることができ、プルーフ システムも例外ではありません。
イーサリアムと同様に、マークル ツリー データ構造を使用してネットワークの状態に関する情報を保存します。システムの状態に関するステートメントを証明していることを考えると、この情報はシステムを証明するために必要です。このマークル ツリー (および証明システムがマークル ツリーと相互作用する方法) に関して、重要な設計上の決定は、非代数ハッシュ関数、特に Blake 2 を使用することでした。証明の生成を容易にするためだけに最適化する場合は、代数ハッシュ関数 (例: ポセイドン 2) を使用することになりますが、この選択では、素数フィールドの選択など、観察可能な状態と証明システムのパラメーターが結合されます。証明システムをアップグレードするには、状態を完全に再生成する必要があります。
デザインからレビューまでのBoojumの旅
約 1 か月前、私たちは新しい証明システム実装の完全なエンドツーエンド バージョンの縮小を開始しました。この変更の複雑さとシステムの正確性の重要性を考慮して、私たちは一連の内部および外部監査に着手しました。
当時、zkEVM 回路と Boojum 算術ライブラリはまだ積極的に開発中でしたが、私たちは外部のセキュリティ監査人と協力して、メイン回路と Boojum コンポーネントの健全性に関する潜在的な問題を早期に特定することに重点を置きました。私たちは緊密に連携し、完全なソース コードとドキュメントへのアクセスを提供し、自動テスト方法と手動テスト方法の両方を使用して、zkEVM 回路と Boojum ガジェットをレビューおよびテストしました。
Boojum: レビューからテストまで
これにより、今日は段階的ロールアウトの次のステップであるメインネット シャドウ モードに進みます。 Boojum は現在ベータ版のみですが、新しい証明システムを既存の証明システムと並行して実行していることを発表できることを嬉しく思います。私たちはメインネットブロックの「シャドウプルーフ」の生成と検証を開始しました。
これらのシャドウ プルーフは、zkSync Era のメインネット バージョンには必要ありません。これは引き続き既存のプルーフ システムによって駆動されます。私たちは、システムをさらにテストして最適化するためにこれらのシャドウ プルーフを検証しているだけですが、zkSync Era のユーザー アクティビティの実際の運用データを使用しています。
Boojum: テストからメインネットまで
私たちのあらゆる活動と同様、安全は常に最優先事項です。新しいシステムのテストに完全に満足した場合にのみ移行を検討し、今後数週間から数か月以内に詳細を共有します。また、このエキサイティングなアップグレードを完全な展開に近づけ、現在の認証システムを段階的に廃止するために、さらなる監査とセキュリティ評価を実施する予定です。
私たちは、Boojum がより安全でスケーラブルで効率的な zkEVM の次の段階であると信じています。