伴随着区块链技术的飞速发展,数据隐私和安全俨然成为一项核心议题。零知识机器学习(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 去中心化身份 DID 的建设。此前,私钥、助记词等身份管理模式使 Web3 用户体验较差,真正的 DID 建设可以通过 ZKML 进行 Web3 主体生物信息的识别完成,同时,ZKML 能保证用户生物信息隐私的安全性。Worldcoin 正在应用 ZKML 实现基于虹膜扫描的零知识 DID 验证。
本文将从 Worldcoin 和 Vanna 两个案例出发,深入探讨 ZKML 技术的发展和挑战,并助推该技术在区块链领域的广泛应用和繁荣。
1. Worldcoin案例分析: ZKML在身份验证与隐私保护中的应用
-
DApp 接入 Worldcoin
Worldcoin ID 可用于身份认证。Worldcoin 提供一个 IDKit SDK 用于使用 World App 进行身份认证,具体流程如下:
通过上述流程处理后将用户的生物信息作为登陆凭证,最终在 Worldcoin App 中生成了用于证明身份的 proof。
Worldcoin 中的 ZKML 应用
-
ML 在 Worldcoin 中的应用
通过在自托管生物识别数据(用户终端)上运行 IrisCode 模型,验证用户是否在本地创建了有效且唯一的 WorldID,并在具有有效身份承诺的 WorldID Semaphore 身份组上调用 _addMember(uint256 groupId, uint256小白导航 identityCommitment) 函数使协议公开无权限。
-
ZK 在 Worldcoin 中的应用
注册流程
在Worldcoin的注册过程中,用户通过虹膜扫描生成WorldID,并在具有有效身份承诺的Semaphore身份组上调用_addMember函数,实现协议的公开无权限访问。
Signup Sequencer:注册排序器对批量提交给以太坊智能合约的数据(身份)进行排序。
Semaphore MTB:SMTB 是一项用于批量处理 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在区块链中的应用网络通过其独特的设计和功能,展示了ZKML在区块链中的应用潜力。其并行推理预执行、验证计算分离以及质押与惩罚机制。
3.ZKML开发利剑 EZKL: 简化零知识证明的生成与验证
EZKL 概述
EZKL 获取程序的高级描述并设置零知识证明器和验证器。重点是以pytorchAI/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将在区块链领域发挥更加重要的作用,推动更广泛的应用和创新。
参考资料
文章来源于互联网:深入解析 ZKML 在 Web3 中的应用与前景
加密社交的未来在何处? 撰文:Pzai,Foresight News 前言 随着 friend.tech 的日活锐减到不足百人,加密社交似乎正从风口中退出。一方面,以加密经济模型为主要模式的社交项目正从注意力中淡化;另一方面,Farcaster 和 Solan…