
Web3におけるZKMLの応用と将来性に関する詳細な分析
TechFlow厳選深潮セレクト

Web3におけるZKMLの応用と将来性に関する詳細な分析
本稿は、WorldcoinおよびVannaの2つの事例から出発し、ZKML技術の発展と課題について深く考察するとともに、ブロックチェーン分野におけるこの技術の広範な応用と繁栄を推進するものである。

ブロックチェーン技術の急速な発展に伴い、データのプライバシーとセキュリティは主要な課題となっている。ゼロ知識機械学習(Zero-knowledge machine learning, ZKML)は、ゼロ知識証明(ZKP)の安全性と機械学習(ML)の知能性を効果的に統合した新興技術であり、Web3世界に前例のない機会をもたらしている。
現在、ZKML技術はブロックチェーン分野で広く応用されており、主に以下の側面がある。
-
ハードウェアアクセラレーション:ZK証明の計算が複雑であるため、CysicやUlvetannaなどのプロジェクトは、ハードウェアアクセラレーションを活用してオンチェーン計算の効率を高めている。
-
オンチェーンデータ処理:AxiomやHerodotusなどのプロジェクトは、オンチェーンデータをMLトレーニングに適した形式に変換し、ML出力結果をオンチェーンから簡単にアクセスできるようにすることに注力している。
-
計算の回路化:ML計算をブロックチェーンのZK処理に対応させるために、Modulus LabsやJason Mortonなどのプロジェクトは、ML計算パターンを回路形式に変換している。
-
結果のZK証明:MLモデルに対する信頼性の問題を解決するため、RISC ZeroやAxiomなどのプロジェクトは、ZK-SNARKsに基づく証明を用いてモデルの真実性を検証している。
ZKMLは現在急速に発展しており、応用面ではWeb3の非中央集権型ID(DID)構築を支援できる。これまで、秘密鍵やリカバリフレーズなどによるID管理方式はWeb3ユーザー体験を損ねてきたが、真のDID構築にはZKMLを活用してWeb3主体の生体情報を識別することで可能になる。同時に、ZKMLはユーザーの生体情報のプライバシー保護も保証できる。Worldcoinは現在、虹彩スキャンに基づくゼロ知識DID認証をZKMLで実現しようとしている。
本稿では、WorldcoinおよびVannaの二つの事例から出発し、ZKML技術の発展と課題について深く考察するとともに、この技術のブロックチェーン分野における広範な応用と繁栄を促進する。
1. Worldcoin事例分析:ZKMLの認証とプライバシー保護への応用
-
DAppがWorldcoinに接続
Worldcoin IDは身元認証に使用できる。Worldcoinは、World Appを使用した身元認証のためにIDKit SDKを提供しており、具体的な流れは以下の通りである。


上記のプロセスにより、ユーザーの生体情報がログイン資格情報として扱われ、最終的にWorldcoinアプリ内で身元を証明するproofが生成される。
WorldcoinにおけるZKMLの応用
-
WorldcoinにおけるMLの応用
自己ホスト型の生体認証データ(ユーザー端末)上でIrisCodeモデルを実行することで、ユーザーがローカルで有効かつ一意のWorldIDを作成しているかを検証し、有効なアイデンティティコミットメントを持つWorldID Semaphoreアイデンティティグループ上で_addMember(uint256 groupId, uint256 identityCommitment)関数を呼び出すことで、プロトコルの公開無許可アクセスを実現している。
-
WorldcoinにおけるZKの応用
登録プロセス
Worldcoinの登録プロセスでは、ユーザーは虹彩スキャンによってWorldIDを生成し、有効なアイデンティティコミットメントを持つSemaphoreアイデンティティグループ上で_addMember関数を呼び出すことで、プロトコルの公開無許可アクセスを実現する。
Signup Sequencer:登録シーケンサーは、イーサリアムスマートコントラクトに一括提出されたデータ(アイデンティティ)を順序付ける。
Semaphore MTB:SMTBはMerkleツリー更新を一括処理するサービスである。Merkleツリーの更新を受け取り、それを一つの更新にまとめる。これにより、ブロックチェーンに提出するトランザクション数を削減できる。SNARKを生成することで、一括Merkleツリー更新の正確性を保証できる。
Tx Sitter:トランザクションに署名し、ブロックチェーンへ送信する。
Proofの入力はexternal nullifier(public 32-byte value that scopes the uniqueness of verifications)とsecret identity nullifierであり、これら二つからnullifier hashを計算し、ユーザーの身元識別に使用する。
ログインプロセス
ログインプロセスでは、ユーザーが提出したidentity nullifierがproofに変換される。このプロセスはzkrollupに似ており、ユーザーがidentity nullifierを提出した後、複数のMerkle状態更新が集約され、ブロックチェーンに発行される。
まとめ
Worldcoinの技術実装は、IrisCodeモデルのローカル実行、External-nullifierの生成、Semaphore MTBによる一括処理、Tx Sitterによるトランザクション処理など、多層的な要素を含んでいる。特に、IrisCodeモデルを実行して虹彩情報をWorld IDに変換するプロセスはユーザー端末上で行われ、外部ノードがこれを実行しないため、ユーザーのプライバシーが守られている。これらの技術の融合により、Worldcoinはユーザーのプライバシーを保護しつつ、効率的かつ安全な身元認証を実現している。
Worldcoinの事例は、ZKML技術が実際の応用において持つ可能性と効果を示している。ゼロ知識証明と機械学習を組み合わせることで、Worldcoinは身元認証の安全性を向上させると同時に、ユーザーのプライバシー保護に強力な支援を提供している。
この事例は、他のブロックチェーンプロジェクトにとって貴重な参考と示唆を与えるものである。
2. VannaネットワークとZKML:ブロックチェーンにおけるスマート推論と検証
Vannaネットワーク概要
Vannaネットワークは革新的なブロックチェーンプラットフォームであり、効率的なゼロ知識証明の生成・検証サービスを提供することに特化している。透明性と不変性を持つブロックチェーンと、プライバシー保護機能を持つゼロ知識証明を組み合わせることで、ユーザーに安全で信頼できるデータ処理環境を提供する。
Vannaネットワークの機能

-
データ照会:スマートコントラクトに対してクロスチェーン照会を行い、Oracleフィードデータやオンチェーン状態にアクセスする。
-
前処理:Vannaの組み込みプリコンパイラを利用して照会した生データを前処理し、推論の準備を行う。
-
推論実行:ユースケースに適した任意の暗号セキュリティレベルで、シームレスかつ拡張可能な形で推論を実行する。
-
推論検証:すべての推論を保証する暗号証明は、Vannaネットワーク上の検証者ノードによって検証される。
-
発行とトレーサビリティ:推論結果はクロスチェーンメッセージを通じて任意のチェーン上のコントラクトに送信でき、データ可用性レイヤーに発行される。
Vannaネットワークの特徴
-
並列推論の事前実行

三段階に分けられる。
第一段階:シミュレーション
Vannaはシミュレータを用いて各トランザクションを実行し、そのトランザクションがどのような推論要求を発行するかを特定する。この段階では実行は行われない。
第二段階:推論メモリプール
トランザクションおよびその推論要求は推論メモリプールに追加され、このプールが要求をVanna推論ノードに送信する。ここで推論と証明の実行が必要となる。
第三段階:EVM実行
推論結果をEVMに注入し、トランザクションがそれらを他の変数と同じように直接読み取れるようにする。その後、トランザクションを実行し、ブロックチェーンに提出する。
-
検証と計算の分離

Vanna Networkは、検証ノードと推論ノードの二種類のノードを採用し、ネットワーク検証と推論計算をそれぞれ異なるタイプのノードに分岐させる。
検証ノード:Rollupノードは独立してトランザクションを検証し、Vannaネットワークの状態を検証する。Vannaネットワーク上のRollupノードは、推論ノードが生成した暗号証明の検証にも参加する。
推論ノード:推論ノードはネットワーク上のトランザクションやブロックの検証を行わず、AI/ML推論の計算およびその推論に対する暗号証明の生成にのみ集中する。
-
ステーキングとペナルティ
Vannaネットワークはアプリケーション層のステーキング契約の形で暗号経済的安全性を提供する。推論ノードがネットワーク保護に参加するためにオンラインになったとき、Vannaトークンを担保としてステーキング契約に預け入れなければならない。ステーキング契約は推論ノードの行動を強制し、その没収条件には以下が含まれる(但不限らない)。
-
zkML- 暗号的に検証できない無効な証明を生成
-
opML- ノードが生成した推論に対するチャレンジが成功
-
zkFP- ノードが生成した推論に対するチャレンジが成功、またはその推論を証明するZK SNARKを生成できない
まとめ
Vannaネットワークは、独自の設計と機能により、ZKMLがブロックチェーンにおいて持つ応用可能性を示している。並列推論の事前実行、検証と計算の分離、ステーキングとペナルティの仕組みがその特徴である。
3. ZKML開発の利器EZKL:ゼロ知識証明の生成と検証の簡素化
EZKL概要
EZKLはプログラムの高レベル記述を取得し、ゼロ知識証明器と検証器をセットアップする。特にpytorchのAI/MLモデルや他の計算グラフ表現のプログラムに重点を置いている。セットアップ後、証明器は以下の文を証明できる。
-
「私はこの公開されたニューラルネットワークをいくつかの非公開データで実行し、この出力を得た」
-
「私は私の非公開ニューラルネットワークをいくつかの公開データで実行し、この出力を得た」
-
「私はこの公開されたニューラルネットワークをいくつかの公開データ上で正しく実行し、この出力を得た」
EZKLのワークフロー
EZKLのワークフロー図は以下の通りである。

-
ニューラルネットワークモデルの定義:シンプルなニューラルネットワークを定義する
-
モデル訓練:入力データを生成し、モデルを通じて出力を得る
-
モデルエクスポート:モデルをONNX形式にエクスポート
-
ゼロ知識証明設定の生成:設定ファイルを生成
-
回路のコンパイル:モデルをコンパイルして回路ファイルを生成
-
ゼロ知識証明の生成:SRS、witnessファイル、証明鍵、検証鍵を生成
-
ゼロ知識証明の検証:ゼロ知識証明を生成し、ローカルで検証する、あるいはEVM検証器用のSolidityコードとABIファイルを作成してコントラクトをデプロイし、オンチェーンで証明を検証する
4. ZKMLの課題と展望
ブロックチェーン技術の進化に伴い、ゼロ知識機械学習(ZKML)はアプリケーションのプライバシーとセキュリティを高めるキーテクノロジーになりつつある。これはスマートコントラクトのプライバシー保護や非中央集権型金融(DeFi)のセキュリティ強化といった革新応用の出現を予示するだけでなく、ブロックチェーン技術に不可欠な構成要素となり、より安全でプライバシーを重視するデジタル世界の構築に堅固な技術基盤を提供することが期待されている。
課題
ZKMLの潜在能力は大きいものの、その応用にはいくつかの課題がある。
-
技術的複雑さ:ZKMLの実装には深い数学および暗号学的知識が必要であり、開発および維持の難易度が高まり、開発者に高い専門スキルが求められる。
-
パフォーマンスのボトルネック:ゼロ知識証明の生成と検証は計算量が大きく、システムの応答時間や処理能力に影響を与える可能性がある。この問題を解決するため、Lumozが提供するモジュラー計算層のように、パフォーマンスを向上させる取り組みもある。
-
ユーザー受容性:ZKMLは強力なプライバシー保護機能を提供するが、ユーザーはその複雑さや安全性について十分理解していないため、懐疑的になる可能性がある。
-
規制の課題:プライバシー保護技術の発展は、規制当局が新たな技術に適応した法規制を整備することを求める。
展望
課題はあるものの、ZKML技術の深化とブロックチェーンの将来は希望に満ちている。
-
技術進歩:研究の深化と技術の成熟に伴い、ZKMLの実装はより効率的かつユーザーフレンドリーになる。
-
ユーザー教育:教育と普及活動により、ユーザーがZKML技術の複雑さと安全性を理解し、受容性を高めることができる。
-
規制の適応:規制当局の適応と革新が、ZKML技術の発展に法的・政策的支援を提供する。
-
応用の革新:ZKML技術の進歩はさらなる革新応用を引き起こし、ブロックチェーン技術のより広範な分野への応用を促進する。
5. 結び
ZKML技術の発展はブロックチェーン分野における大きな一歩であり、まったく新しいデータプライバシーとセキュリティの時代の到来を示している。技術的複雑さ、パフォーマンスのボトルネック、規制の課題に直面しながらも、楽観的であるべきだ。技術の進歩とユーザー受容性の向上とともに、ZKMLはブロックチェーン分野でさらに重要な役割を果たし、より広範な応用と革新を推進していくだろう。
参考資料
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News














