ZKThreadsとその仕組み
ホーム
記事
ZKThreadsとその仕組み

ZKThreadsとその仕組み

中級者
公開済 Jun 6, 2024更新済 Jul 23, 2024
6m

要点

  • ZKThreadsは、ゼロ知識証明(ZKP)を使用して分散型アプリケーション(DApps)のパフォーマンスとスケーラビリティを拡張するフレームワークです。

  • ZKThreadsの長所には、ユーザーエクスペリエンスの向上、トランザクションコストの削減、セキュリティの強化などといった点が挙げられます。

  • ZKThreadsは、分散型取引所(DEX)、セッションベースのゲーム、ZKセキュアミドルウェア、オンチェーンAIシステムなど、さまざまなアプリケーションで使用され得ます。

はじめに

分散型アプリケーション(DApps)にとって、セキュリティ、コンポーザビリティ、相互運用性は、効率的なパフォーマンスを実現する鍵といえる一方、これらのバランスを取るのはかなりの困難を伴います。ZKThreadsは、このトリレンマに対する解決策を提案します。この記事では、ZKThreadsとその仕組み、他のZKソリューションとの相違点、メリットとユースケースについて取り上げます。

ZKThreadsとは

ZKThreadsは、DAppsのパフォーマンスとスケーラビリティを向上させるゼロ知識(ZK)フレームワークです。ZKThreadsはStarknetの機能を活用し、標準化されたフレームワーク(開発環境)でのアプリケーション開発、ならびにブロックチェーン上でアプリケーション間の相互運用を実現します。

ZKThreadsの仕組み

1. アプリケーションロジックのデプロイ

まず、アプリケーションロジックをZKThreadsのアプリコントラクトにデプロイします。基本的に、アプリコントラクトにはアプリケーションの動作方法を管理するルールと手順が含まれます。

2. トランザクションのバッチ処理

ZKThreadsは、各トランザクションを個別に処理せず、複数のトランザクションを1つのバッチにまとめます。これにより、大量のトランザクションを効率的に処理できます。

3. 証明(プルーフ)の作成

続いて、バッチ内のすべてのトランザクションがコントラクトルールに従い正常に処理されるよう、STARK証明と呼ばれる暗号証明が作成されます。

4. 検証

次に、STARKS証明がレイヤー2シーケンサーに送信され、dAppのカノニカル(Canonical)レコードと照合されます。カノニカルレコードとは、アプリケーションで検証され、承認されたステートを指します。

StarknetのコントラクトであるZKThread検証器は、証明をチェックしてその正確性をチェックします。二重支払が発生していないことのチェック、すべてのトランザクションが承認されていることの確認、さらにステートの結果がブロックチェーンのルールと一致するようにトランザクションを維持、管理します。

証明が有効であれば、ZKThread検証器はDAppのカノニカルステートレコードを更新します。証明が無効であれば、変更は拒否され、アプリケーションの整合性が保証されます。

ZKThreadsとその他のZKソリューションの比較

データ処理

ZKThreadsは、トランザクションを検証するためにゼロ知識証明(ZKP)を利用しながら、オフチェーンでステートとトランザクションの両方のデータを保存するように設計されています。これは、計算をオフチェーンに移しながらもトランザクションデータをオンチェーンに保存する従来の多くのゼロ知識ロールアップ(ZKロールアップ)とは異なります。

ZKThreadsはすべてのデータをオフチェーンに保管し、メインブロックチェーン上のデータ負荷を大幅に削減してスケーラビリティの向上とコストの削減を実現します。逆に、zkSyncなどのZKロールアップは、バッチ処理されたトランザクションデータを定期的にオンチェーンに送信し、ベースレイヤーがデータの可用性に対応できるようにします。

相互運用性

ZKThreadsの場合、アプリケーション間の断片化を減らし、相互運用性が優先され、異なるDAppが同じエコシステム内でシームレスに相互運用されることを保証します。対照的に、zkEVMなどの他のソリューションでは、互換性に重点が置かれています。

検証メカニズム

ZKThreadsの検証プロセスでは、バッチ処理されたトランザクションとステート変更が正当であることを検証するSTARK証明が作成されます。これらの証明は、DAppのカノニカルステートに対して検証されます。対照的に、zkSyncなどのZKロールアップは、zk-SNARKまたはzk-STARKを使用して、オンチェーン上で検証される暗号証明を作成します。

ZKThreadsのメリット

ユーザーエクスペリエンスの向上

ZKThreadsは、異なるdApps間のシームレスなやり取りを実現し、ユーザーエクスペリエンスを向上させます。ネットワークを切り替えることなく、複数のアプリケーションにアクセスできます。

コストの削減

ZKThreadsはトランザクションをまとめて一度に処理することで、メインのブロックチェーンに記録するトランザクション数を削減します。そのため、トランザクション手数料が下がり、DApps利用コスト全体が削減されます。

さらに、ZKPを通じてセキュリティと完全性を維持しながら、ステートとトランザクションデータの両方をオフチェーンに保存します。これにより、ブロックチェーン上のデータ負荷が軽減され、ガス代の削減につながります。

セキュリティの向上

ZKThreadsは、ZKPを利用してセキュリティを向上させます。ZKPは、基礎となるデータを明らかにすることなくトランザクションの検証を可能にし、プライバシーを保護します。さらに、すべてのトランザクションが事前に定義されたルールに従って処理されることを保証し、不正行為を防止します。

ZKThreadsのユースケース

レイヤー2分散型取引所

ZKThreadsは、トランザクション手数料を削減し、Starknet上のDEXをより効率的に運用できます。通常、Starknet上のDEXは、取引するたびに手数料を支払う必要があり、実用的とは言えません。ZKThreadsを採用すれば、手数料の支払いは資金を引き出す時にのみ発生します。取引全体にかかるコストが削減され、DEXの利用の実用性が向上します。

セッションベースのゲーム

ポーカーやチェスのようなセッションベースのゲームでは、手数料の集計処理にZKThreadsが役に立ちます。一手ごとに手数料を請求する代わりに、ゲーム終了時に最終結果がStarknetに記録される時点で1回のみ手数料を支払います。高いトランザクションコストを心配することなく、より幅広い完全なオンチェーンゲームの開発が実現されます。

Zkセキュアミドルウェアと共有型流動性インフラストラクチャ

ZKThreadsは、オラクルやブリッジなどのミドルウェアアプリケーションに対し、セキュアで効率的なフレームワークを提供します。ZKThread内部に直接機能を組み込むことで、これらのアプリケーションはZKPを活用してセキュリティと相互運用性を確保できます。

オンチェーンAI

ZKThreadは、AIモデルをブロックチェーン上で直接実行するために必要なコンピューター能力を提供します。つまり、AIプログラムはZKThread内部で管理され、そのコアデータと運用の一貫性が維持されます。これらのAIモデルは、ゲーム、ソーシャルメディアプラットフォーム、生産性向上ツールなどのさまざまなアプリケーションで使用可能です。

まとめ

ZKThreadsは、ZKPを使用してスケーラブルでセキュアなDApps開発のためのフレームワークです。Starknet DEX、セッションベースのゲーム、ミドルウェアアプリケーションに活用できます。他のZKソリューションとは異なり、ZKThreadsは相互運用性を重視し、すべてのデータをオフチェーンに保ち、異なる検証メカニズムを利用しています。将来的に、ZKThreadsはDAppsのパフォーマンスと使い勝手を大幅に向上させる可能性を秘めています。

参考文献

免責事項:このコンテンツは、一般的な情報および教育目的でのみ「現状有姿」で提供するもので、いかなる種類の表明または保証もありません。財務、法律、またはその他の専門的なアドバイスとして解釈されるべきではなく、特定のプロダクトやサービスの購入を推奨するものでもありません。適切な専門アドバイザーから独自のアドバイスを求める必要があります。記事が第三者の貢献者によって寄稿されたものである場合、表明された見解は第三者の貢献者に属し、必ずしもBinance Academyの見解を反映するものではないことに注意してください。詳細については、完全な免責事項である、こちらをお読みください。デジタル資産価格は不安定です。投資価値が上下する可能性があり、投資した金額を取り戻すことができない場合があります。投資決定についてはお客様が単独で責任を負い、Binance Academyはお客様が被る可能性のある損失について責任を負いません。この資料は、財務、法律、またはその他の専門的なアドバイスとして解釈されるべきではありません。詳細については、利用規約およびリスクに関する警告を参照してください。