ブロックチェーンアプリケーションにおけるzk-SNARKs技術の包括的解析と未来の展望

zk-SNARKs技術のブロックチェーン分野における応用と発展

まとめ

zk-SNARKs(ZKP)技術はブロックチェーン分野で最も重要な革新の一つと見なされており、リスク投資の重点関心分野でもあります。本稿では、ZKPの40年近くの発展経歴と最新の研究進展を包括的に概説します。

まず、ZKPの基本概念と歴史的背景を紹介し、回路に基づくZKP技術、特にzkSNARK、Ben-Sasson、Pinocchio、Bulletproofs、Ligeroなどのモデルの設計、応用、最適化を重点的に分析しました。計算環境の観点から、ZKVMとZKEVMが取引処理能力を向上させ、プライバシーを保護し、検証効率を高める方法について探討しました。記事では、Layer 2拡張ソリューションとしてのZK Rollupの作業メカニズムと最適化方法、さらにハードウェアアクセラレーション、ハイブリッドソリューション、および専用ZK EVMの最新の進展についても紹介しました。

最後に、本稿ではZKCoprocessor、ZKML、ZKThreads、ZK Sharding、ZK StateChannelsなどの新興概念を展望し、これらがブロックチェーンのスケーラビリティ、相互運用性、およびプライバシー保護における潜在能力について探討しました。

これらの技術と発展傾向を分析することで、本稿はZKP技術の理解と応用に対する包括的な視点を提供し、ブロックチェーンシステムの効率と安全性を向上させる上でのその巨大な潜在能力を示し、将来の投資決定に重要な参考を提供します。

目次

前書き

  1. ゼロ知識証明の基礎知識

  2. 概要

  3. ゼロ知識証明の例

  4. 非対話型のゼロ知識証明

  5. 背景

  6. NIZKの提案

  7. フィアット・シャミール変換

  8. ジェンス・グロスとその研究

  9. その他の研究

  10. 回路ベースのゼロ知識証明

  11. 背景

  12. 回路モデルの基本概念と特徴

  13. ゼロ知識証明における回路設計と応用

  14. 潜在的な落とし穴と課題

第四に、ゼロ知識証明モデル

  1. 背景

  2. 一般的なアルゴリズムモデル

  3. 線形PCPと離散対数問題に基づくスキーム

  4. 一般人による証明に基づくスキーム

  5. ゼロ知識(PCP)確率主義に基づく検証可能な証明

  6. CPC( Universal Proof Construction )のセットアップ段階に基づいて分類します

  7. ゼロ知識仮想マシンの概要と開発

  8. 背景

  9. 既存のZKVMの分類

  10. フロントエンドとバックエンドのパラダイム

  11. ZKVMのパラダイムの利点と欠点

六、zk-SNARKsイーサリアム仮想マシンの概説と発展

  1. 背景

  2. ZKEVMのしくみ

  3. ZKEVMの実装プロセス

  4. ZKEVMの特徴

  5. ゼロ知識レイヤー2ネットワークソリューションの概要と開発

  6. 背景

  7. ZK Rollupの動作メカニズム

  8. ZK Rollupの欠点と最適化

  9. ゼロ知識証明の今後の展開方向

  10. コンピューティング環境の開発を加速する

  11. ZKMLの提案・開発

  12. ZKP拡張技術の開発

  13. ZKPの相互運用性の開発

  14. まとめ

イントロダクション

Web3時代の到来に伴い、ブロックチェーンアプリケーション(DApps)は急速に発展しており、毎日新しいアプリケーションが登場しています。近年、ブロックチェーンプラットフォームは毎日数百万人のユーザーの活動を支え、数十億件の取引を処理しています。これらの取引から生成される膨大なデータには、ユーザーの身分、取引金額、アカウントアドレス、残高などの敏感な個人情報が含まれていることがよくあります。ブロックチェーンのオープン性と透明性により、保存されているデータはすべての人に公開されているため、さまざまなセキュリティとプライバシーの問題が引き起こされています。

現在、いくつかの暗号技術がこれらの課題に対処できます。これには、同型暗号、リング署名、安全なマルチパーティ計算、そして零知識証明が含まれます。同型暗号は、暗号文を解読せずに演算を実行することを可能にし、アカウント残高や取引額の安全を保護するのに役立ちますが、アカウントアドレスの安全を保護することはできません。リング署名は、署名者の身元を隠すことができる特殊なデジタル署名形式を提供し、アカウントアドレスの安全を保護しますが、アカウント残高や取引額の保護には無力です。安全なマルチパーティ計算は、複数の参加者間で計算タスクを分配でき、いかなる参加者も他の参加者のデータを知らずに済むため、アカウント残高や取引額の安全を効果的に保護しますが、同様にアカウントアドレスの安全を保護することはできません。さらに、これらの技術は、取引額、アカウントアドレス、アカウント残高を漏らさずに、ブロックチェーン環境内で証明者が十分な取引額を持っているかどうかを検証するために使用することはできません。

zk-SNARKs(ZKP)は、より包括的なソリューションです。この検証プロトコルは、仲介データを開示することなく特定の命題の正しさを検証することを可能にします。このプロトコルは、複雑な公開鍵インフラストラクチャを必要とせず、その繰り返しの実施も悪意のあるユーザーに追加の有用な情報を取得する機会を提供しません。ZKPを通じて、検証者はプライベートな取引データを漏らすことなく、証明者が十分な取引額を持っているかどうかを検証できます。検証プロセスには、証明者が主張する取引額を含む証明を生成し、その証明を検証者に渡し、検証者が証明に対して事前定義された計算を行い、最終的な計算結果を出力して、証明者の主張を受け入れるかどうかの結論を出すことが含まれます。もし証明者の主張が受け入れられれば、彼らは十分な取引額を持っていることを意味します。上記の検証プロセスは、ブロックチェーン上に記録でき、偽造はありません。

ZKPのこの特性は、ブロックチェーン取引や暗号通貨アプリケーションにおいて核心的な役割を果たします。特にプライバシー保護とネットワーク拡張の面で、学術研究の焦点となり、分散型台帳技術の成功した実装以来、最も重要な技術革新の1つと広く見なされています。同時に、業界の応用やリスク投資の重点分野でもあります。

これにより、ZKPに基づく多くのネットワークプロジェクトが次々と登場しています。例として、ZkSync、StarkNet、Mina、Filecoin、Aleoなどがあります。これらのプロジェクトの発展に伴い、ZKPのアルゴリズム革新が次々と現れており、報告によればほぼ毎週新しいアルゴリズムが発表されています。また、ZKP技術に関連するハードウェア開発も急速に進展しており、ZKPに最適化されたチップが含まれています。例えば、一部のプロジェクトは大規模な資金調達を完了しており、これらの進展はZKP技術の急速な進歩を示すだけでなく、汎用ハードウェアからGPU、FPGA、ASICなどの専用ハードウェアへの移行を反映しています。

これらの進展は、zk-SNARKs技術が暗号学分野における重要なブレークスルーであるだけでなく、特にプライバシー保護と処理能力の向上において、より広範なブロックチェーン技術の応用を実現するための重要な推進力であることを示しています。

したがって、私たちは将来の投資判断をより良く支援するために、零知识证明(ZKP)に関する知識を体系的に整理することを決定しました。そのために、私たちはZKPに関連する核心的な学術論文(を関連性と引用数に基づいてレビューしました)。また、私たちはこの分野におけるリーディングプロジェクトの資料とホワイトペーパー(を資金調達規模に基づいて詳細に分析しました)。これらの総合的な資料の収集と分析は、本文の執筆に堅実な基盤を提供しました。

1. ゼロ知識証明の基礎知識

1. 概要

1985年、学者Goldwasser、MicaliとRackoffは論文《The Knowledge Complexity of Interactive Proof-Systems》中で初めて零知识证明(Zero-Knowledge Proof、ZKP)と交互式知识证(Interactive Zero-Knowledge、IZK)を提案しました。この論文は零知识证明の基礎的な作品であり、後の学術研究に影響を与える多くの概念を定義しました。例えば、知識の定義は「不可行计算の出力」とされています。つまり、知識は出力でなければならず、不可行計算である必要があります。これは単純な関数ではなく、複雑な関数であることを意味します。不可行計算は通常、NP問題と理解され、解の正しさを多項式時間内で検証できる問題を指します。多項式時間とは、アルゴリズムの実行時間が入力サイズの多項式関数で表されることを意味します。これは計算機科学においてアルゴリズムの効率と可行性を測る重要な基準です。NP問題の解法プロセスは複雑であるため、不可行計算と見なされていますが、その検証プロセスは相対的に簡単であるため、零知识证明の検証に非常に適しています。

NP問題の一つの古典的な例は巡回セールスマン問題であり、一連の都市を訪れ、出発点に戻る最短経路を見つけることです。最短経路を見つけることは難しいかもしれませんが、与えられた経路が最短であるかどうかを検証するのは比較的簡単です。なぜなら、具体的な経路の総距離を検証することは多項式時間内に完了できるからです。

Goldwasserらはその論文で「知識の複雑性」という概念を導入し、インタラクティブ証明システムにおいて証明者が検証者に漏らす知識の量を定量化しました。彼らはまた、インタラクティブ証明システム(Interactive Proof Systems,IPS)を提案し、証明者(Prover)と検証者(Verifier)が複数回のインタラクションを通じてある命題の真実性を証明します。

以上のように、Goldwasserらがまとめたzk-SNARKsの定義は、検証者が検証プロセス中に文の真偽値以外の追加情報を得ることのない特別なインタラクティブ証明である。また、以下の3つの基本的な特性を提案している:

  1. 完全性:もし証明が真実であれば、誠実な証明者は誠実な検証者にこの事実を納得させることができる。

  2. 信頼性:もし証明者が宣言の内容を知らなければ、彼は検証者を欺くことができるのは微々たる確率だけである;

  3. ゼロ知識性: 証明プロセスが完了した後、検証者は「証明者がこの知識を持っている」という情報のみを得ることができ、追加の内容は得られない。

2. ゼロ知識証明の例

より良くzk-SNARKsとその属性を理解するために、以下は証明者が特定の秘密情報を持っているかどうかを検証する例であり、この例は設定、チャレンジ、応答の3つの段階に分かれています。

第一歩:設定(セットアップ)

このステップでは、証明者の目標は、秘密の数字sを知っていることを証明する証拠を作成することですが、sを直接示さないことです。秘密の数字sを設定します;

二つの大きな素数pとqを選び、それらの積nを計算します。素数pとqを設定し、得られたnを計算します;

v=s^2 mod nを計算します。ここで、vは証明の一部として検証者に送信されますが、それだけでは検証者や他の観察者がsを推測することはできません。

ランダムに整数rを選び、x=r^2 mod nを計算して検証者に送信します。この値xはその後の検証プロセスに使用されますが、sも同様に公開されません。ランダム整数rを設定し、計算して得られたx。

ステップ2:チャレンジ(Challenge)

検証者はランダムに位置a(を選択し、それは0または1)である可能性があります。そして、それを証明者に送信します。この「チャレンジ」は、証明者が次に取るべきステップを決定します。

ステップ 3: (Response)に応答する

検証者が発行したa値に基づき、証明者は応答します:

もしa=0の場合、証明者はg=r(を送信します。ここでrは彼が以前にランダムに選んだ数)です。

もしa=1の場合、証明者はg=rs mod nを計算し、送信します。検証者が送信したランダムビットaに基づいて、証明者はgを計算します;

最後に、検証者は受け取ったgに基づいてg^2 mod nがxa^v mod nに等しいかどうかを検証します。等式が成立すれば、検証者はこの証明を受け入れます。a=0のとき、検証者はg^2 mod nを計算し、右側でxa^v mod n=xを検証します; a=1のとき、検証者はg^2 mod nを計算し、右側でxa^v mod n=xvを検証します。

ここで、検証者が計算したg^2 mod n=xa^v mod nは、証明者が検証プロセスを成功裏に通過し、同時に彼の秘密の数字sを漏らさなかったことを示しています。ここで、aは0または1のいずれかしか取れないため、2つの可能性しかありません。証明者が運に頼って検証を通過する確率は、aが0のとき(で1/2)です。しかし、検証者はその後、証明者にk回挑戦し、証明者は関連する数字を次々と変更し、検証者に提出し、常に成功裏に検証プロセスを通過します。こうなると、証明者が運に頼って検証を通過する確率は(1/2)^k(が無限に近づき、0)に収束します。証明者が確かにある秘密の数字sを知っているという結論が証明されます。この例は、零知识证明システムの完全性、信頼性、及び零知識性を証明しています。

次に、非対話型のゼロ知識証明

1. バックグラウンド

zk-SNARKs(ZKP)は、従来の概念では通常、インタラクティブでオンラインのプロトコル形式です。たとえば、Sigmaプロトコルは認証を完了するために通常3〜5回のインタラクションを必要とします。しかし、即時取引や投票などのシナリオでは、多回のインタラクションを行う機会がないことが多く、特にブロックチェーン技術の適用において、オフライン検証機能が非常に重要になります。

2. NIZKのご提案

1988年、Blum、Feldman、Micaliは、非対話型のゼロ知識(NIZK)証明の概念を初めて提案し、複数回の相互作用がなければ、 認証者が検証者と(Prover) (Verifier)していても、認証プロセスを完了できる可能性。 このブレークスルーにより、次のことが可能になります

ZK2.94%
原文表示
このページには第三者のコンテンツが含まれている場合があり、情報提供のみを目的としております(表明・保証をするものではありません)。Gateによる見解の支持や、金融・専門的な助言とみなされるべきものではありません。詳細については免責事項をご覧ください。
  • 報酬
  • 3
  • 共有
コメント
0/400
FlashLoanKingvip
· 4時間前
ZKP素晴らしいあ兄弟
原文表示返信0
FlatlineTradervip
· 19時間前
ZKの究極の簡単な歴史
原文表示返信0
PanicSellervip
· 07-25 04:32
強気だが理解できない
原文表示返信0
いつでもどこでも暗号資産取引
qrCode
スキャンしてGateアプリをダウンロード
コミュニティ
日本語
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)