zk-SNARK:革新的なゼロ知識証明とその応用

中級11/28/2023, 12:24:18 PM
zk-SNARKテクノロジーは、プライバシー保護と暗号化検証の分野における重要なブレークスルーを表しています。 強力なプライバシー保証を提供するだけでなく、ブロックチェーンやその他のさまざまなアプリケーションのスケーラビリティを強化する上でも実用的です。

経歴

ゼロ知識証明 (ZKP) は、1980 年代初頭に S. Goldwasser、S. Micali、C. Rackoff によって The Knowledge Complexity Of Interactive Proof Systems というタイトルの論文で最初に提案された暗号化技術です。 本論文では、証拠を明かさずに数学的言明を検証するという問題に取り組むための理論モデルとして概念化しました。 この概念は、従来の暗号化技術の限界に挑戦し、機密情報を処理するための新しいアプローチを提供したため、学術界で大きな注目を集めました。

時が経つにつれて、ZKPは抽象的な理論的概念から、さまざまなアプリケーションに統合できる具体的なプロトコルに進化しました。 2010年、Grothは Short Pairing-based Non-interactive Zero-Knowledge Argumentsというタイトルの論文を発表し、ZKPの重要なソリューションであるzk-SNARKの開発において独創的な研究となりました。 ZKPの最も重要な実用化は、2015年にZ-cashが使用したゼロ知識証明システムであり、取引と金額のプライバシー保護を実現しました。 その後、zk-SNARKはスマートコントラクトと組み合わされ、より幅広いアプリケーションにつながりました。

zk-SNARKの技術原理

従来のZKPが遵守する必要がある原則は次のとおりです。

  • 完全性:ある陳述が真実であれば、誠実な証明者は検証者にその真実性を納得させることができます。
  • 健全性:陳述が虚偽である場合、詐欺的な証明者は、検証者にその陳述が真実であると信じ込ませる可能性がごくわずかしかありません。
  • ゼロ知識: ステートメントが真である場合、検証者はステートメントが真であるという事実以外の追加情報を学習しません。 言い換えれば、検証プロセスでは、証明の作成に使用できる情報は公開されません。

ZKPの原理は、簡単な例で理解できます:私がBの電話番号を知っていることをAに証明する必要がある場合、私はA Bの電話番号を直接教える必要はありません。 代わりに、Bの電話番号を直接ダイヤルし、通話が接続されると、Bの電話番号を実際に知っていることを証明できます。 このプロセスでは、Bの番号情報は開示されません。

そして、zk-SNARKはこれに基づいてさらにアップグレードし、次の特性を備えています。

  • ゼロ知識:検証者は証明から有用な情報を得ることができません。
  • 簡潔: 証明のサイズが小さく (通常は数十バイト)、検証時間が短い (通常は数ミリ秒のみ) 。
  • 非インタラクティブ:証明者は、それ以上の通信を行うことなく、証明を検証者に一度送信するだけで済みます。
  • 信頼できるパラメータ: 証明者と検証者の両方が、信頼できる第三者によって生成された共通参照文字列(CRS)を使用する必要があります。 CRSには機密情報が含まれている可能性があり、漏洩または改ざんされると、システムのセキュリティが脅かされる可能性があります。

グロスの論文では、計算問題を二次演算プログラム(QAP)に変換し、楕円曲線暗号とハッシュ関数を使用して効率的な証明を構築する、ペアリングに基づく非対話型のゼロ知識証明法を提案しました。 zk-SNARKの後期設計には、通常、次の4つのステップが含まれます。

  • セットアップ:信頼できるサードパーティによって実行され、証明を生成するための証明キー(pk)と証明を検証するための検証キー(vk)を含むCRSを生成します。 このプロセスは一度だけ実行する必要があり、CRSは複数回再利用できます。
  • 問題の符号化: 計算問題 f(x) = y は QAP 形式 A(x)·B(x) = C(x)·ここで、A(x)、B(x)、C(x)はfの回路構造によって決定される多項式、Z(x)は固定多項式、xはランダムに選択された点、yはfの出力です。 このステップは、証明者または検証者によって実行され得るか、または第三者によって事前に行われることができる。
  • 証明生成: 証明者によって実行され、pk、x、および f の入力 w を使用して証明πを生成し、w の特定の値を明らかにすることなく、f(w) = y を満たす w を知っていることを証明します。 このプロセスには、多項式計算、楕円曲線演算、およびハッシュ関数演算が含まれ、最終的に複数の楕円曲線点とハッシュ値で構成されるπが生成されます。
  • 証明検証: 検証者によって実行され、vk、x、y、およびπを使用して、証明者が f(w) = y を満たす w を実際に知っているかどうかを検証します。 このプロセスには、多項式計算、楕円曲線演算、ハッシュ関数演算も含まれ、最終的に証明の有効性を示すブール値を生成します。

理解を助けるために、簡単な例を考えてみましょう:埋もれた宝物の正確な場所を案内できる宝の地図があるとします。 地図の内容や宝物の実際の場所を明かさずに、宝物の場所を知っていることを誰かに証明したい。 zk-SNARK技術を使う場合、宝の地図の複雑なパズルを作る必要があります。 パズルの小さなピース(プルーフ)を選んで相手に見せると、パズル全体を見なくても、パズル全体を見なくても、パズル全体がどのように組み合わさっているか、つまり宝物の場所を知っていると納得させることができます。 ただし、これを実現するには、パズルのピースが本物であるという証拠となる特別なマーキングを信頼できる印刷所から入手する必要があります。

なぜzk-SNARKが必要なのか?

ゼロ知識証明の従来のアプローチでは、証明者が検証者に「はい」か「いいえか」の質問を繰り返し、正解に達するまで対話型の証明方法を採用していました。 このプロセスは非効率的です。 しかし、zk-SNARKは、信頼できる第三者からCRSを取得することで、繰り返しのやり取りを不要にします。 すべての証明者は、CRSを直接比較して真実性を判断できます。 これにより、ゼロ知識証明の効率が大幅に向上します。

さらに、zk-SNARKには次の利点があります。

  • プライバシー保護:zk-SNARKは、証明者が個人情報を明かすことなく、検証者に知識や特定の条件の充足を証明できるようにします。 これは、ID 認証、匿名投票、プライベート トランザクションなど、機密データやプライベート データを含むシナリオで特に役立ちます。
  • スケーラビリティ:zk-SNARKは、複雑な計算問題を小さくて高速な証明に圧縮し、検証者の計算負荷とストレージ要件を軽減します。 これは、クラウド コンピューティング、ブロックチェーンのスケーラビリティ、検証可能な計算など、大量のデータの効率的な検証と保存を必要とするシナリオで役立ちます。
  • セキュリティ:zk-SNARKは、離散対数問題や双線形写像問題など、数学的に難しい問題に基づいており、高いセキュリティを提供します。 非量子コンピューティングを前提とすると、信頼できる第三者がCRSを漏洩したり改ざんしたりしない限り、証明者が証明を偽造したり、検証者が検証結果を偽造したりすることは不可能です。

zk-SNARKの実社会への応用

zk-SNARKの最初のアプリケーションはZcashで、ユーザーはzk-SNARKを使用して送信者、受信者、金額などの情報を隠すことで、完全に匿名の取引を行うことができます。 現在のWeb3空間では、zk-SNARKテクノロジーはブロックチェーンのスケーラビリティと取引所準備金管理において重要な役割を果たしています。

ブロックチェーンのスケーラビリティ

ブロックチェーンのコンセンサスメカニズムとセキュリティ要件により、そのスループットと効率は大幅に制限されます。 この問題に対処するには、ブロックチェーン上に追加のレイヤーを構築して、大量のトランザクションや計算をメインチェーン(レイヤー1)からレイヤー2に移行するレイヤー2テクノロジーを使用するのが一般的な解決策であり、それによってシステムのパフォーマンスと使いやすさが向上します。

zk-SNARKは、Layer2のトランザクションや計算を小さくて高速な証明に圧縮し、メインチェーンで検証のために送信することで、Layer2の正確性と一貫性を確保することができるため、このソリューションで重要な役割を果たします。 現在、zk-SNARKをベースにしたLayer2ソリューションには、ZK-rollupとValidiumの2つがあります。

  • ZK-rollup: このソリューションでは、すべての状態データをメインチェーンに保存しますが、証明を使用して状態遷移の有効性を検証します。 これにより、レイヤー2データの可用性とセキュリティが確保されますが、メインチェーンのストレージ負荷が増加します。 例えば、zkSyncはイーサリアムのメインチェーンに状態データを保存し、ゼロ知識証明を通じて状態遷移の有効性を保証します。 同様のプロジェクトには、Polygon、zkEVM、Scrollなどがあります。
  • Validium: このソリューションは、すべての状態データを Layer2 またはその他の信頼できるサードパーティに保存し、状態遷移の有効性を検証するために証明のみを使用し、メインチェーンに証明を送信します。 これにより、メインチェーンのストレージの負荷は軽減されますが、レイヤー2データの可用性とセキュリティが低下する可能性があります。 DeversiFiは、Validiumテクノロジーを利用して、データのプライバシーを確保しながら、レイヤー2トランザクションの速度と効率を維持します。 Loopringは、メインチェーンのストレージ圧力を軽減するためにValidiumモードを提供します。

取引所の資金を準備する

暗号通貨市場のボラティリティと不確実性により、多くの取引所は潜在的なリスクや需要に対処するために一定額の準備金を保有する必要があります。 しかし、これらの準備金は透明性と信頼性に欠けることが多く、ユーザーは取引所が本当に資産を保護するのに十分な準備金を持っているかどうか確信が持てません。

zk-SNARKは、取引所が特定の資産の詳細や場所を明らかにすることなく、十分な量と価値の準備金を保有していることをユーザーや規制機関に証明できるようにすることで、この点に関する解決策を提供することができます。

典型的な例は Gate.io で、zk-SNARKとマークルツリーの組み合わせを利用します。 ユーザーデータを暗号化し、制約回路を使用して100の異なるトークンの準備金の証明を生成し、100%のソルベンシー能力を実証します。

出典: https://www.gate.io/proof-of-reserves

参考文献: zk-SNARKが Gate.io プルーフ・オブ・リザーブをどのように改善するか

zk-SNARKは、Web3アプリケーションに加えて、以下のようなブロックチェーン以外のドメインでも使用することができます。

  • 本人認証:zk-SNARKは、年齢、国籍、学歴などの個人情報を一切明かすことなく、特定のID属性や資格を第三者に証明することができます。 これは、オンライン ショッピング、オンライン教育、デジタル署名など、ID の認証または承認を必要とするシナリオで役立ちます。
  • 電子投票:zk-SNARKは、ユーザーが投票内容やメタデータを開示することなく、特定の投票活動への参加や特定のプロトコルやルールの遵守を第三者に証明することを可能にします。 これは、民主的な選挙、コミュニティ ガバナンス、公共の意思決定など、投票のプライバシーとセキュリティの保護を必要とするシナリオで有益です。

技術的な制限と課題

前節では、zk-SNARKの技術原理を紹介し、zk-SNARKはCRSを生成する信頼できる第三者を見つけることで証明効率を向上させると述べました。 しかし、これはzk-SNARKに内在するいくつかの制限と課題にもつながります。

  • 信頼できるパラメータ:zk-SNARKには、機密情報を含む可能性のある信頼できるサードパーティによって生成されたCRSが必要です。 漏洩したり改ざんしたりすると、システムのセキュリティが損なわれる可能性があります。 この問題に対処するために、いくつかのプロジェクトでは、複数の参加者が共同で生成プロセスに貢献し、秘密情報を破棄するCRSを生成するためにマルチパーティ計算(MPC)のアプローチを採用しています。 ただし、このアプローチには、参加者の整合性、コミュニケーション コスト、調整の難しさなどの課題があります。
  • 普遍性:現在、zk-SNARKはQAPやR1CSなどの特定の計算問題にのみ適用でき、任意の計算問題には適用できません。 この制限に対処するために、いくつかのプロジェクトでは、zk-SNARKの適用性を拡張するために、General Circuits(GC)またはGeneral Recursive Proof(GRS)の使用が検討されています。 ただし、このアプローチには、プルーフサイズの増加、効率の低下、複雑さの増大などのトレードオフが伴います。
  • 検証可能性:zk-SNARKは、証明者が個人情報を漏洩しないことを保証しますが、証明者が検証者を騙したり欺いたりしないことを保証するものではありません。 この問題に対処するために、一部のプロジェクトでは、証明者の整合性を強化するために、検証可能なランダム関数(VRF)または検証可能な遅延関数(VDF)が導入されています。 ただし、このアプローチでは、システムの複雑さとオーバーヘッドも増加します。

要約すると、zk-SNARKの固有の制限に対処するためのさまざまなアプローチがあります。

今後のアプリケーションシナリオ

zk-SNARKは、革新的な暗号技術として、特にプライバシーの分野において、幅広い将来のアプリケーションシナリオを持っています。

  • プライバシースマートコントラクト:zk-SNARKを使用すると、ユーザーは、契約のロジックや状態を明らかにすることなく、特定のスマートコントラクトを実行し、正しい出力を取得したことを第三者に証明できます。 これは、サプライチェーン管理、保険金請求、著作権保護など、企業秘密や機密性の高いルールを含むシナリオで特に役立ちます1。
  • プライバシー保護計算:zk-SNARKは、ユーザーが入力データや出力データを公開することなく、特定の計算タスクを実行し、正しい結果を得たことを第三者に証明することを可能にします。 これは、医療診断、データ分析、機械学習など、機密データやプライベートデータを含むシナリオに適用されます。
  • プライバシー保護コミュニケーション:zk-SNARKは、ユーザーが通信内容やメタデータを開示することなく、特定のコミュニケーション活動に従事し、特定のプロトコルやルールを遵守していることを第三者に証明することを可能にします。 これは、インスタント メッセージング、ソーシャル ネットワーク、電子メールなど、通信のプライバシーまたはセキュリティを保護する必要があるシナリオで役立ちます。

結論

zk-SNARKテクノロジーは、プライバシー保護と暗号化検証の分野における重要なブレークスルーを表しています。 強力なプライバシー保証を提供するだけでなく、ブロックチェーンやその他のさまざまなアプリケーションのスケーラビリティを強化する上でも実用的です。 技術的な課題や限界はあるものの、継続的な研究と革新を通じて、zk-SNARKは進化を続け、既存のシステムを最適化し、新しいアプリケーションモデルを刺激して、プライバシー保護と暗号化技術の進歩を促進することを期待しています。 テクノロジーの成熟と社会におけるデータプライバシーの重視が高まる中、zk-SNARKはデジタル時代に不可欠なツールになる可能性を秘めており、ユーザーが自分の情報をより細かく管理できるようにし、安全で透明性の高いデジタルインタラクションを促進します。

المؤلف: Wayne
المترجم: Sonia
المراجع (المراجعين): KOWEI、Piccolo、Elisa、Ashley He、Joyce
* لا يُقصد من المعلومات أن تكون أو أن تشكل نصيحة مالية أو أي توصية أخرى من أي نوع تقدمها منصة Gate.io أو تصادق عليها .
* لا يجوز إعادة إنتاج هذه المقالة أو نقلها أو نسخها دون الرجوع إلى منصة Gate.io. المخالفة هي انتهاك لقانون حقوق الطبع والنشر وقد تخضع لإجراءات قانونية.

zk-SNARK:革新的なゼロ知識証明とその応用

中級11/28/2023, 12:24:18 PM
zk-SNARKテクノロジーは、プライバシー保護と暗号化検証の分野における重要なブレークスルーを表しています。 強力なプライバシー保証を提供するだけでなく、ブロックチェーンやその他のさまざまなアプリケーションのスケーラビリティを強化する上でも実用的です。

経歴

ゼロ知識証明 (ZKP) は、1980 年代初頭に S. Goldwasser、S. Micali、C. Rackoff によって The Knowledge Complexity Of Interactive Proof Systems というタイトルの論文で最初に提案された暗号化技術です。 本論文では、証拠を明かさずに数学的言明を検証するという問題に取り組むための理論モデルとして概念化しました。 この概念は、従来の暗号化技術の限界に挑戦し、機密情報を処理するための新しいアプローチを提供したため、学術界で大きな注目を集めました。

時が経つにつれて、ZKPは抽象的な理論的概念から、さまざまなアプリケーションに統合できる具体的なプロトコルに進化しました。 2010年、Grothは Short Pairing-based Non-interactive Zero-Knowledge Argumentsというタイトルの論文を発表し、ZKPの重要なソリューションであるzk-SNARKの開発において独創的な研究となりました。 ZKPの最も重要な実用化は、2015年にZ-cashが使用したゼロ知識証明システムであり、取引と金額のプライバシー保護を実現しました。 その後、zk-SNARKはスマートコントラクトと組み合わされ、より幅広いアプリケーションにつながりました。

zk-SNARKの技術原理

従来のZKPが遵守する必要がある原則は次のとおりです。

  • 完全性:ある陳述が真実であれば、誠実な証明者は検証者にその真実性を納得させることができます。
  • 健全性:陳述が虚偽である場合、詐欺的な証明者は、検証者にその陳述が真実であると信じ込ませる可能性がごくわずかしかありません。
  • ゼロ知識: ステートメントが真である場合、検証者はステートメントが真であるという事実以外の追加情報を学習しません。 言い換えれば、検証プロセスでは、証明の作成に使用できる情報は公開されません。

ZKPの原理は、簡単な例で理解できます:私がBの電話番号を知っていることをAに証明する必要がある場合、私はA Bの電話番号を直接教える必要はありません。 代わりに、Bの電話番号を直接ダイヤルし、通話が接続されると、Bの電話番号を実際に知っていることを証明できます。 このプロセスでは、Bの番号情報は開示されません。

そして、zk-SNARKはこれに基づいてさらにアップグレードし、次の特性を備えています。

  • ゼロ知識:検証者は証明から有用な情報を得ることができません。
  • 簡潔: 証明のサイズが小さく (通常は数十バイト)、検証時間が短い (通常は数ミリ秒のみ) 。
  • 非インタラクティブ:証明者は、それ以上の通信を行うことなく、証明を検証者に一度送信するだけで済みます。
  • 信頼できるパラメータ: 証明者と検証者の両方が、信頼できる第三者によって生成された共通参照文字列(CRS)を使用する必要があります。 CRSには機密情報が含まれている可能性があり、漏洩または改ざんされると、システムのセキュリティが脅かされる可能性があります。

グロスの論文では、計算問題を二次演算プログラム(QAP)に変換し、楕円曲線暗号とハッシュ関数を使用して効率的な証明を構築する、ペアリングに基づく非対話型のゼロ知識証明法を提案しました。 zk-SNARKの後期設計には、通常、次の4つのステップが含まれます。

  • セットアップ:信頼できるサードパーティによって実行され、証明を生成するための証明キー(pk)と証明を検証するための検証キー(vk)を含むCRSを生成します。 このプロセスは一度だけ実行する必要があり、CRSは複数回再利用できます。
  • 問題の符号化: 計算問題 f(x) = y は QAP 形式 A(x)·B(x) = C(x)·ここで、A(x)、B(x)、C(x)はfの回路構造によって決定される多項式、Z(x)は固定多項式、xはランダムに選択された点、yはfの出力です。 このステップは、証明者または検証者によって実行され得るか、または第三者によって事前に行われることができる。
  • 証明生成: 証明者によって実行され、pk、x、および f の入力 w を使用して証明πを生成し、w の特定の値を明らかにすることなく、f(w) = y を満たす w を知っていることを証明します。 このプロセスには、多項式計算、楕円曲線演算、およびハッシュ関数演算が含まれ、最終的に複数の楕円曲線点とハッシュ値で構成されるπが生成されます。
  • 証明検証: 検証者によって実行され、vk、x、y、およびπを使用して、証明者が f(w) = y を満たす w を実際に知っているかどうかを検証します。 このプロセスには、多項式計算、楕円曲線演算、ハッシュ関数演算も含まれ、最終的に証明の有効性を示すブール値を生成します。

理解を助けるために、簡単な例を考えてみましょう:埋もれた宝物の正確な場所を案内できる宝の地図があるとします。 地図の内容や宝物の実際の場所を明かさずに、宝物の場所を知っていることを誰かに証明したい。 zk-SNARK技術を使う場合、宝の地図の複雑なパズルを作る必要があります。 パズルの小さなピース(プルーフ)を選んで相手に見せると、パズル全体を見なくても、パズル全体を見なくても、パズル全体がどのように組み合わさっているか、つまり宝物の場所を知っていると納得させることができます。 ただし、これを実現するには、パズルのピースが本物であるという証拠となる特別なマーキングを信頼できる印刷所から入手する必要があります。

なぜzk-SNARKが必要なのか?

ゼロ知識証明の従来のアプローチでは、証明者が検証者に「はい」か「いいえか」の質問を繰り返し、正解に達するまで対話型の証明方法を採用していました。 このプロセスは非効率的です。 しかし、zk-SNARKは、信頼できる第三者からCRSを取得することで、繰り返しのやり取りを不要にします。 すべての証明者は、CRSを直接比較して真実性を判断できます。 これにより、ゼロ知識証明の効率が大幅に向上します。

さらに、zk-SNARKには次の利点があります。

  • プライバシー保護:zk-SNARKは、証明者が個人情報を明かすことなく、検証者に知識や特定の条件の充足を証明できるようにします。 これは、ID 認証、匿名投票、プライベート トランザクションなど、機密データやプライベート データを含むシナリオで特に役立ちます。
  • スケーラビリティ:zk-SNARKは、複雑な計算問題を小さくて高速な証明に圧縮し、検証者の計算負荷とストレージ要件を軽減します。 これは、クラウド コンピューティング、ブロックチェーンのスケーラビリティ、検証可能な計算など、大量のデータの効率的な検証と保存を必要とするシナリオで役立ちます。
  • セキュリティ:zk-SNARKは、離散対数問題や双線形写像問題など、数学的に難しい問題に基づいており、高いセキュリティを提供します。 非量子コンピューティングを前提とすると、信頼できる第三者がCRSを漏洩したり改ざんしたりしない限り、証明者が証明を偽造したり、検証者が検証結果を偽造したりすることは不可能です。

zk-SNARKの実社会への応用

zk-SNARKの最初のアプリケーションはZcashで、ユーザーはzk-SNARKを使用して送信者、受信者、金額などの情報を隠すことで、完全に匿名の取引を行うことができます。 現在のWeb3空間では、zk-SNARKテクノロジーはブロックチェーンのスケーラビリティと取引所準備金管理において重要な役割を果たしています。

ブロックチェーンのスケーラビリティ

ブロックチェーンのコンセンサスメカニズムとセキュリティ要件により、そのスループットと効率は大幅に制限されます。 この問題に対処するには、ブロックチェーン上に追加のレイヤーを構築して、大量のトランザクションや計算をメインチェーン(レイヤー1)からレイヤー2に移行するレイヤー2テクノロジーを使用するのが一般的な解決策であり、それによってシステムのパフォーマンスと使いやすさが向上します。

zk-SNARKは、Layer2のトランザクションや計算を小さくて高速な証明に圧縮し、メインチェーンで検証のために送信することで、Layer2の正確性と一貫性を確保することができるため、このソリューションで重要な役割を果たします。 現在、zk-SNARKをベースにしたLayer2ソリューションには、ZK-rollupとValidiumの2つがあります。

  • ZK-rollup: このソリューションでは、すべての状態データをメインチェーンに保存しますが、証明を使用して状態遷移の有効性を検証します。 これにより、レイヤー2データの可用性とセキュリティが確保されますが、メインチェーンのストレージ負荷が増加します。 例えば、zkSyncはイーサリアムのメインチェーンに状態データを保存し、ゼロ知識証明を通じて状態遷移の有効性を保証します。 同様のプロジェクトには、Polygon、zkEVM、Scrollなどがあります。
  • Validium: このソリューションは、すべての状態データを Layer2 またはその他の信頼できるサードパーティに保存し、状態遷移の有効性を検証するために証明のみを使用し、メインチェーンに証明を送信します。 これにより、メインチェーンのストレージの負荷は軽減されますが、レイヤー2データの可用性とセキュリティが低下する可能性があります。 DeversiFiは、Validiumテクノロジーを利用して、データのプライバシーを確保しながら、レイヤー2トランザクションの速度と効率を維持します。 Loopringは、メインチェーンのストレージ圧力を軽減するためにValidiumモードを提供します。

取引所の資金を準備する

暗号通貨市場のボラティリティと不確実性により、多くの取引所は潜在的なリスクや需要に対処するために一定額の準備金を保有する必要があります。 しかし、これらの準備金は透明性と信頼性に欠けることが多く、ユーザーは取引所が本当に資産を保護するのに十分な準備金を持っているかどうか確信が持てません。

zk-SNARKは、取引所が特定の資産の詳細や場所を明らかにすることなく、十分な量と価値の準備金を保有していることをユーザーや規制機関に証明できるようにすることで、この点に関する解決策を提供することができます。

典型的な例は Gate.io で、zk-SNARKとマークルツリーの組み合わせを利用します。 ユーザーデータを暗号化し、制約回路を使用して100の異なるトークンの準備金の証明を生成し、100%のソルベンシー能力を実証します。

出典: https://www.gate.io/proof-of-reserves

参考文献: zk-SNARKが Gate.io プルーフ・オブ・リザーブをどのように改善するか

zk-SNARKは、Web3アプリケーションに加えて、以下のようなブロックチェーン以外のドメインでも使用することができます。

  • 本人認証:zk-SNARKは、年齢、国籍、学歴などの個人情報を一切明かすことなく、特定のID属性や資格を第三者に証明することができます。 これは、オンライン ショッピング、オンライン教育、デジタル署名など、ID の認証または承認を必要とするシナリオで役立ちます。
  • 電子投票:zk-SNARKは、ユーザーが投票内容やメタデータを開示することなく、特定の投票活動への参加や特定のプロトコルやルールの遵守を第三者に証明することを可能にします。 これは、民主的な選挙、コミュニティ ガバナンス、公共の意思決定など、投票のプライバシーとセキュリティの保護を必要とするシナリオで有益です。

技術的な制限と課題

前節では、zk-SNARKの技術原理を紹介し、zk-SNARKはCRSを生成する信頼できる第三者を見つけることで証明効率を向上させると述べました。 しかし、これはzk-SNARKに内在するいくつかの制限と課題にもつながります。

  • 信頼できるパラメータ:zk-SNARKには、機密情報を含む可能性のある信頼できるサードパーティによって生成されたCRSが必要です。 漏洩したり改ざんしたりすると、システムのセキュリティが損なわれる可能性があります。 この問題に対処するために、いくつかのプロジェクトでは、複数の参加者が共同で生成プロセスに貢献し、秘密情報を破棄するCRSを生成するためにマルチパーティ計算(MPC)のアプローチを採用しています。 ただし、このアプローチには、参加者の整合性、コミュニケーション コスト、調整の難しさなどの課題があります。
  • 普遍性:現在、zk-SNARKはQAPやR1CSなどの特定の計算問題にのみ適用でき、任意の計算問題には適用できません。 この制限に対処するために、いくつかのプロジェクトでは、zk-SNARKの適用性を拡張するために、General Circuits(GC)またはGeneral Recursive Proof(GRS)の使用が検討されています。 ただし、このアプローチには、プルーフサイズの増加、効率の低下、複雑さの増大などのトレードオフが伴います。
  • 検証可能性:zk-SNARKは、証明者が個人情報を漏洩しないことを保証しますが、証明者が検証者を騙したり欺いたりしないことを保証するものではありません。 この問題に対処するために、一部のプロジェクトでは、証明者の整合性を強化するために、検証可能なランダム関数(VRF)または検証可能な遅延関数(VDF)が導入されています。 ただし、このアプローチでは、システムの複雑さとオーバーヘッドも増加します。

要約すると、zk-SNARKの固有の制限に対処するためのさまざまなアプローチがあります。

今後のアプリケーションシナリオ

zk-SNARKは、革新的な暗号技術として、特にプライバシーの分野において、幅広い将来のアプリケーションシナリオを持っています。

  • プライバシースマートコントラクト:zk-SNARKを使用すると、ユーザーは、契約のロジックや状態を明らかにすることなく、特定のスマートコントラクトを実行し、正しい出力を取得したことを第三者に証明できます。 これは、サプライチェーン管理、保険金請求、著作権保護など、企業秘密や機密性の高いルールを含むシナリオで特に役立ちます1。
  • プライバシー保護計算:zk-SNARKは、ユーザーが入力データや出力データを公開することなく、特定の計算タスクを実行し、正しい結果を得たことを第三者に証明することを可能にします。 これは、医療診断、データ分析、機械学習など、機密データやプライベートデータを含むシナリオに適用されます。
  • プライバシー保護コミュニケーション:zk-SNARKは、ユーザーが通信内容やメタデータを開示することなく、特定のコミュニケーション活動に従事し、特定のプロトコルやルールを遵守していることを第三者に証明することを可能にします。 これは、インスタント メッセージング、ソーシャル ネットワーク、電子メールなど、通信のプライバシーまたはセキュリティを保護する必要があるシナリオで役立ちます。

結論

zk-SNARKテクノロジーは、プライバシー保護と暗号化検証の分野における重要なブレークスルーを表しています。 強力なプライバシー保証を提供するだけでなく、ブロックチェーンやその他のさまざまなアプリケーションのスケーラビリティを強化する上でも実用的です。 技術的な課題や限界はあるものの、継続的な研究と革新を通じて、zk-SNARKは進化を続け、既存のシステムを最適化し、新しいアプリケーションモデルを刺激して、プライバシー保護と暗号化技術の進歩を促進することを期待しています。 テクノロジーの成熟と社会におけるデータプライバシーの重視が高まる中、zk-SNARKはデジタル時代に不可欠なツールになる可能性を秘めており、ユーザーが自分の情報をより細かく管理できるようにし、安全で透明性の高いデジタルインタラクションを促進します。

المؤلف: Wayne
المترجم: Sonia
المراجع (المراجعين): KOWEI、Piccolo、Elisa、Ashley He、Joyce
* لا يُقصد من المعلومات أن تكون أو أن تشكل نصيحة مالية أو أي توصية أخرى من أي نوع تقدمها منصة Gate.io أو تصادق عليها .
* لا يجوز إعادة إنتاج هذه المقالة أو نقلها أو نسخها دون الرجوع إلى منصة Gate.io. المخالفة هي انتهاك لقانون حقوق الطبع والنشر وقد تخضع لإجراءات قانونية.
ابدأ التداول الآن
اشترك وتداول لتحصل على جوائز ذهبية بقيمة
100 دولار أمريكي
و
5500 دولارًا أمريكيًا
لتجربة الإدارة المالية الذهبية!