type
Post
date
May 19, 2026
slug
agent/zk
summary
一些瞎想
status
Published
tags
AI
LLM
Agent
category
技术茶点
icon
password
当我们谈论元宇宙时,很多人第一反应是虚拟形象、沉浸式空间、数字资产和链上经济。但如果把时间线再往前推一步,元宇宙真正复杂的地方并不是“场景是否足够逼真”,而是:在一个由 AI Agent、数字身份和数据资产共同组成的网络里,我们如何判断某个行为背后到底有没有真实的人、真实的授权,以及真实的数据依据?
未来的元宇宙不会只是人和人聊天,也不会只是人控制一个 Avatar。更可能出现的是:每个人、每个组织、每个品牌、每个 DAO、每个医疗机构、每个创作者,都拥有一组可以自主执行任务的 Agent。这些 Agent 可以替我们谈判、推荐、交易、审核、创作、教学、陪伴、诊疗辅助、资产管理,甚至代表我们参与某些链上治理或商业协作。
这带来了一个新问题:
当一个 Agent 说“我是某个真实用户授权的”“我拥有某项资质”“我使用的数据资产是真实的”“我执行的操作符合授权范围”时,其他 Agent、平台、合约或用户凭什么相信它?
传统互联网的答案是账号、密码、KYC、平台背书和中心化数据库。Web3 的答案可能是钱包地址、签名、链上资产和智能合约。但在 Agent 大规模交互的场景下,这些还不够。因为我们不仅要证明“这个地址能签名”,还要证明:
- 这个 Agent 背后是否真的有一个唯一真人;
- 这个真人是否授权了该 Agent;
- 这个真人是否具备某些资质;
- 该 Agent 是否只能在授权范围内行动;
- 该 Agent 声称使用的数据资产是否真实存在;
- 验证这些事实时,是否可以不泄露人的真实身份和原始数据。
这正是零知识证明可以发挥价值的地方。
一句话概括:
元宇宙中的 Agent 身份系统,不应该只是“谁控制了一个私钥”,而应该能够证明“这个 Agent 背后有合格真人授权,且它使用的数据资产可验证”,同时不暴露真人身份和原始数据。
一、为什么 Agent 交互需要新的身份体系?
在今天的互联网里,我们通常认为“账号就是人”。一个用户登录账号、点击按钮、发出请求,系统就认为这是该用户的行为。
但在 AI Agent 时代,这个假设会失效。
因为大量行为不再由人直接点击,而是由 Agent 自动完成。例如:
- 你的理财 Agent 帮你分析投资机会;
- 你的医疗 Agent 帮你整理病历并申请保险预授权;
- 你的创作者 Agent 帮你授权数字作品进入虚拟展厅;
- 你的商务 Agent 在元宇宙会议中与其他公司 Agent 谈判;
- 你的治理 Agent 代表你参与 DAO 投票;
- 你的教育 Agent 根据你的学习数据推荐课程;
- 你的数字分身 Agent 在虚拟空间中与他人互动。
这时,其他系统关心的不是“这个 Agent 会不会说话”,而是:
它有没有资格说这句话?它有没有被真人授权?它使用的数据是不是可信?它有没有越权?
如果没有新的身份和证明机制,元宇宙里的 Agent 生态会面临几个严重问题。
第一是女巫攻击。一个人可以批量创建成千上万个 Agent,伪装成大量独立用户,影响投票、刷信誉、骗取空投、操纵市场或制造虚假舆论。
第二是资质伪造。某个 Agent 可以声称自己背后是医生、律师、投资顾问、教师、认证工程师或企业代表,但对方很难在不侵犯隐私的情况下验证其真实性。
第三是数据造假。Agent 可能声称自己基于真实病历、真实交易记录、真实资产、真实学历、真实作品版权或真实行为数据作出判断,但验证方无法知道这些数据是否存在、是否被篡改、是否被选择性呈现。
第四是隐私泄露。如果为了验证真实性,要求用户直接交出身份证、执照、病历、资产证明、聊天记录或商业数据,那么元宇宙会变成一个更大规模的隐私泄露场。
所以我们需要一种新的技术组合:
既能证明真实性,又不暴露隐私;既能让 Agent 自动交互,又能让真人授权关系可验证;既能连接链上身份,又能证明链下真实数据资产。
这就是“真人授权 + 真实数据资产 + 零知识证明”的核心价值。
二、零知识证明在这里解决什么?
零知识证明听起来很抽象,但它解决的问题很直接:
我可以向你证明某件事是真的,但不把证明这件事所依赖的秘密告诉你。
在 Agent 身份场景中,它可以用来证明:
- 我是一个经过验证的唯一真人,但不告诉你我是谁;
- 我持有某个资质证书,但不公开证书编号和真实姓名;
- 我授权了某个 Agent,但不暴露我的主钱包地址;
- 我的 Agent 执行某个操作没有超出授权范围;
- 我的数据资产满足某个条件,但不公开完整原始数据;
- 某个结论来自真实数据计算,而不是 Agent 编造的。
例如,一个医疗 Agent 想在元宇宙医疗空间中为用户提供病历摘要服务。对方平台可能要求:
“这个 Agent 背后必须是持证医生或受授权的医疗机构工作人员。”
传统做法可能是上传医生执照、身份证、医院证明。这样隐私暴露很严重。
零知识证明的做法是:
“我证明这个 Agent 背后绑定了一个持有有效医生资质的人,并且该资质未过期、未撤销,且该人授权了这个 Agent。但我不公开医生姓名、身份证号、执照编号、所在医院等敏感信息。”
这就是隐私保护下的可信身份。
三、这个系统证明的不是“不是机器人”,而是“有真人背书”
这里要避免一个常见误解:
零知识证明不能直接证明“某个 Agent 不是机器人”。
因为 Agent 本身当然是软件,它本来就是“机器人”。真正要证明的是:
这个 Agent 背后是否绑定了一个唯一真人,并且这个真人是否授权它在某个范围内行动。
所以更准确的说法是:
Proof of Human-Backed Agent,即真人背书的 Agent 证明。
如果还需要加入资质条件,可以进一步称为:
Proof of Qualified Human-Backed Agent,即具备资质真人背书的 Agent 证明。
这类系统的目标不是消灭机器人,而是让机器人世界具备可验证的责任边界。
在未来的元宇宙里,我们并不一定反对 Agent 存在。恰恰相反,Agent 会成为主要生产力。问题在于:
- 哪些 Agent 是匿名脚本批量生成的?
- 哪些 Agent 是真实用户授权的?
- 哪些 Agent 背后有专业资质?
- 哪些 Agent 能访问真实数据资产?
- 哪些 Agent 可以代表用户做高风险操作?
这才是身份系统要解决的问题。
四、三层身份模型:真人、Agent、授权关系
一个可行的架构,应该把身份拆成三层。
1. 真人身份层
这一层对应真实世界中的人。
它可以来自:
- KYC 服务;
- 去中心化真人证明系统;
- 政府或机构签发的数字证件;
- 企业员工凭证;
- 医师、律师、教师等专业资质凭证;
- DAO 或社区声誉凭证;
- 某个 Web2 平台账号的可信证明。
关键点是:真人的原始身份信息不应该直接上链。
链上不应该出现身份证号、真实姓名、手机号、住址、执照编号、病历号等敏感信息。真正上链的应该是承诺值、哈希、根节点、吊销状态和验证结果。
2. Agent 身份层
这一层对应 Agent 自己。
每个 Agent 可以拥有:
- Agent DID;
- Agent 公钥;
- Agent 钱包或智能账户;
- Agent 能力清单;
- Agent 使用的模型、工具和策略哈希;
- Agent 的元数据文件;
- Agent 的声誉和历史行为记录。
Agent 身份不是人的身份。一个人可以授权多个 Agent。一个 Agent 也可以被限制在非常具体的任务范围内,例如只读数据、只能草拟邮件、只能生成报告、不能转账、不能发起外部交易。
3. 授权关系层
这一层是系统的核心。
它证明:某个真人授权了某个 Agent,并且授权是有范围、有期限、可撤销的。
例如:
注意,这里的
human_commitment 不是人的真实身份,而是一个无法反查个人信息的承诺值。验证方只需要知道:
- 确实有一个合格真人;
- 这个真人授权了该 Agent;
- 该 Agent 当前操作在授权范围内;
- 授权没有过期,也没有被撤销。
验证方不需要知道这个人是谁。
五、真实数据资产证明:Agent 不能只靠“嘴说”
在元宇宙中,数据本身会成为资产。
一个用户的健康数据、学习记录、游戏成就、链上交易历史、创作版权、社交声誉、工作经历、设备数据、消费记录,都可能成为 Agent 作出判断或提供服务的依据。
但问题是:Agent 很容易编造数据。
例如:
- “我的用户完成过某课程”;
- “我的用户拥有某件数字藏品”;
- “我的用户是某游戏的高级玩家”;
- “我的用户有某项医疗检测结果”;
- “我的用户持有某项专业资格”;
- “我的用户账户资产超过某个阈值”;
- “我的用户过去 30 天有真实活跃行为”;
- “我的数据集来自真实用户授权”。
这些声明都需要验证。
但验证不能简单等于公开全部数据。
零知识证明可以让 Agent 证明数据资产满足某些条件,而不公开完整数据资产。
例如:
这种机制可以被称为:
Proof of Real Data Asset,即真实数据资产证明。
它的本质不是把数据搬上链,而是把“数据真实性”和“数据使用权”变成可验证的密码学声明。
六、整体技术架构
一个完整系统可以分成八层。
下面逐层解释。
七、第一层:真实身份与资质发行层
这一层负责把现实世界中的身份和资质变成数字凭证。
发行方可以是:
- KYC 机构;
- 学校;
- 医院;
- 医师协会;
- 律师协会;
- 企业;
- DAO;
- 游戏平台;
- 数据平台;
- 政府或公共机构。
发行的不是明文身份,而是可验证凭证。
例如:
这个凭证可以存放在用户自己的钱包或本地安全环境里,不一定公开上链。
八、第二层:DID / VC 凭证层
DID 是去中心化身份标识。VC 是可验证凭证。
通俗理解:
- DID 解决“你是谁的标识”;
- VC 解决“谁证明了你有什么属性”;
- ZKP 解决“如何证明这些属性存在,但不暴露完整信息”。
一个用户可以拥有多个 DID。一个 Agent 也可以拥有自己的 DID。一个医生、律师、教师、创作者、投资者、DAO 成员,都可以持有不同的 VC。
这些 VC 不一定要公开展示。用户可以在需要时选择性证明其中某个属性。
例如只证明:
而不暴露:
九、第三层:零知识证明钱包层
钱包不只是存资产,也可以存身份凭证、数据凭证和授权凭证。
未来的钱包可能同时承担几种功能:
- 保存用户的 VC;
- 管理用户的身份密钥;
- 生成零知识证明;
- 授权某个 Agent;
- 撤销某个 Agent;
- 控制数据资产的使用范围;
- 生成一次性或周期性的 nullifier,防止重复注册和女巫攻击。
其中 nullifier 是一个非常关键的概念。
它可以理解为“不可反查身份的一次性防重复标记”。
例如系统要求“一名真人只能注册一个投票 Agent”。用户不想暴露自己是谁,但系统又要防止同一个人注册十万个 Agent。
这时可以生成:
验证方看到 nullifier,可以判断这个人是否重复参与。但因为它是哈希结果,不能反推出人的真实身份。
十、第四层:Agent 授权与委托层
这一层定义真人如何授权 Agent。
授权不能是无限制的。合理的授权应该包含:
- Agent 公钥;
- 授权人承诺值;
- 授权范围;
- 有效期;
- 风险等级;
- 可调用工具;
- 可访问数据范围;
- 是否允许转授权;
- 是否允许执行资金操作;
- 撤销方式。
例如,一个医疗 Agent 的授权可能是:
一个交易 Agent 的授权可能是:
关键是:Agent 的权限应该由代码和证明系统共同约束,而不是只靠 prompt 约束。
十一、第五层:链上 Agent Registry
Agent Registry 是链上的身份登记系统。
它不保存隐私明文,只保存可验证状态。
例如:
这个 Registry 可以回答几个问题:
- 这个 Agent 是否注册过?
- 它绑定的公钥是什么?
- 它的能力清单哈希是什么?
- 它的授权是否过期?
- 它是否被撤销?
- 它对应的证明策略是什么?
- 它是否通过了某个真人或资质证明?
但 Registry 不应该回答:
- 这个真人叫什么名字?
- 他的身份证号是什么?
- 他的完整证书编号是什么?
- 他的完整数据资产是什么?
也就是说,链上记录的是可信状态,而不是隐私本身。
十二、第六层:数据资产承诺与证明层
这一层解决“真实数据资产”的问题。
如果 Agent 声称某个数据存在,不能只让它口头声明。可以让数据先生成承诺值:
然后把数据承诺、数据 schema、授权策略和证明结果关联起来。
例如:
当 Agent 需要使用该数据时,可以生成零知识证明:
比如在医疗场景中:
在教育场景中:
在资产场景中:
在创作者场景中:
十三、第七层:Agent Harness 运行时
Agent Harness 是 Agent 的工程外壳。
它负责:
- 加载 Agent 身份;
- 管理 Agent 密钥;
- 签名每一次操作;
- 检查授权范围;
- 管理工具调用;
- 过滤敏感数据;
- 生成或引用 ZK proof;
- 记录审计日志;
- 接收撤销信号;
- 防止 prompt injection 导致越权操作。
一个成熟的 Agent Harness 不应该让 LLM 直接接触所有工具和所有数据。
它应该采用这样的结构:
也就是说,LLM 可以负责规划和语言理解,但真正的权限、身份、数据访问、外部执行,必须由 harness 的确定性规则控制。
Agent 每次对外行动时,都应该附带:
验证方可以检查:
- 签名是否来自该 Agent;
- Agent 是否在 Registry 中 active;
- 该操作是否在授权范围内;
- 该 Agent 是否有真人背书;
- 所需资质是否存在且未撤销;
- 数据资产证明是否通过;
- 当前请求是否超过频率、额度或风险限制。
十四、第八层:元宇宙应用与 Agent-to-Agent 验证
在元宇宙应用里,验证方可能不是人,而是另一个 Agent。
例如:
每次交互都可以变成:
这会让元宇宙从“账号互相喊话”升级为“可验证代理网络”。
十五、一个完整例子:元宇宙医疗保险场景
假设未来有一个元宇宙医疗服务空间。用户的个人医疗 Agent 想向保险公司的 Agent 申请某项检查的预授权。
保险 Agent 要求:
- 请求必须来自真人授权的医疗 Agent;
- 背后真人必须是持证医生或授权医疗机构;
- 患者必须满足某项医学条件;
- 患者数据必须经过脱敏;
- 申请材料不能暴露完整病历;
- 每次申请都必须可审计。
流程可以是:
保险公司得到的是:
保险公司不需要得到:
这就是“真实数据可验证,隐私不裸奔”。
十六、另一个例子:元宇宙创作者资产场景
一个创作者 Agent 想把用户的数字艺术品授权给某个虚拟展厅展示。
展厅 Agent 需要确认:
- 该作品确实属于该用户;
- 该用户授权了创作者 Agent;
- 授权范围允许展览展示;
- 授权期限有效;
- 作品没有被重复授权到冲突场景;
- 收益分配规则可验证。
创作者不一定想公开完整版权合同,也不想公开全部收入条款。
此时可以证明:
这样,Agent 可以在元宇宙里自动完成授权协商,但平台仍然可以验证其合法性和真实性。
十七、系统中的关键证明类型
一个完整的真人授权与数据资产证明系统,可能包含以下几类证明。
1. 真人唯一性证明
证明某个 Agent 背后绑定了一个唯一真人,防止批量女巫攻击。
2. 资质证明
证明真人拥有某类资质,例如医生、律师、教师、企业员工、认证投资者、DAO 成员。
3. 授权证明
证明真人授权了某个 Agent,并且授权范围覆盖当前操作。
4. 数据存在证明
证明某份数据资产真实存在,且与某个承诺值匹配。
5. 数据条件证明
证明数据满足某个业务条件,但不公开原始数据。
6. 数据授权证明
证明数据所有者允许当前 Agent 在指定目的下使用该数据。
7. 非重复证明
证明同一真人、同一数据或同一资产没有在特定场景中重复使用。
8. 未撤销证明
证明 credential、Agent 授权或数据使用权当前没有被撤销。
9. 执行合规证明
证明 Agent 的某次操作经过了指定 policy、权限检查、脱敏流程或工具包装器。
十八、链上与链下如何分工?
一个常见误区是:把所有东西都上链。
这在身份和隐私场景中非常危险。
更合理的分工是:
链下保存
- 原始身份信息;
- 原始证件;
- 原始病历;
- 原始合同;
- 原始学习记录;
- 原始行为数据;
- 原始商业数据;
- 完整 VC 内容。
链上保存
- Agent Registry;
- credential root;
- revocation root;
- data commitment;
- policy hash;
- proof verification result;
- nullifier;
- attestation;
- agent status。
可以理解为:
原始数据留在链下,可信状态放到链上,证明在需要时生成,验证结果可被多方复用。
十九、为什么不能只靠签名?
签名只能证明“某个私钥同意了某件事”。
但签名无法直接证明:
- 私钥背后是真人;
- 真人是唯一的;
- 真人有某项资质;
- 数据资产是真实的;
- 数据满足某个条件;
- Agent 没有越权;
- credential 没有被撤销;
- 原始数据没有被篡改。
因此,签名是必要条件,但不是充分条件。
在这个系统里,签名负责表达授权和操作意图,零知识证明负责表达隐私保护下的事实验证。
两者应该组合使用:
二十、安全边界:这个系统不能解决所有问题
任何身份系统都不能被神化。
真人授权与零知识证明可以显著提升可信度,但它不能证明:
- 用户没有把钱包卖给别人;
- 用户当前真的坐在屏幕前;
- Agent 的判断一定正确;
- LLM 不会被 prompt injection 影响;
- credential issuer 一定不会作恶;
- KYC 机构一定不会放水;
- 数据源一定没有被上游污染;
- Agent 永远不会被攻击或盗用。
所以系统还需要配套机制:
- 定期重新认证;
- Passkey 或硬件密钥;
- Agent 密钥轮换;
- 授权撤销;
- 风险分级;
- 高风险操作二次确认;
- 工具调用沙箱;
- 行为审计;
- 异常检测;
- issuer 声誉系统;
- 数据源治理;
- 人工仲裁机制。
零知识证明不是信任的全部,而是信任体系中的一块关键基础设施。
二十一、MVP 可以怎么做?
如果要做一个最小可用版本,不建议一开始做得过重。
可以从以下路径开始:
MVP 版本目标
实现一个 Agent Registry,证明:
第一阶段
- 使用现有真人证明或 KYC 凭证;
- 创建 Agent DID 和 Agent 公钥;
- 真人钱包签名授权 Agent;
- 链上注册 Agent;
- 每个 Agent 请求都带签名;
- dApp 查询 Registry 验证 Agent 状态。
第二阶段
加入资质凭证:
Agent 可以证明背后真人拥有某项资质,但不公开真实身份。
第三阶段
加入真实数据资产证明:
Agent 不再只是“被真人授权”,还可以证明自己使用的数据是真实、授权、满足条件的。
第四阶段
加入 Agent-to-Agent 协议:
不同 Agent 之间可以自动交换:
最终形成一个可验证的 Agent 网络。
二十二、未来的元宇宙不是虚拟空间,而是可验证代理网络
很多人理解元宇宙时,仍然停留在视觉层面:3D 场景、虚拟形象、VR 设备、数字土地。
但更深层的元宇宙,可能不是“看起来像现实世界”,而是“拥有现实世界级别的身份、资产、授权和协作关系”。
在这个世界里,每个人不只拥有 Avatar,还拥有一组可验证的 Agent。每个 Agent 不只是一个聊天机器人,而是一个被授权、可审计、可撤销、可证明的数据与行为代理。
它可以代表你出现,但不能无限代表你。
它可以使用你的数据,但必须证明数据使用被授权。
它可以和其他 Agent 协作,但必须证明自己的身份、资质和权限。
它可以处理真实资产,但必须接受策略、合约和证明系统的约束。
这可能是元宇宙从“虚拟体验”走向“可信经济网络”的关键一步。
结语
AI Agent 会让数字世界的行动主体爆炸式增长。Web3 会让这些行动主体拥有资产、身份和合约能力。元宇宙会让这些行动主体进入更丰富的交互空间。
但如果没有可信身份、授权边界和数据真实性证明,这个世界也可能迅速变成机器人泛滥、身份伪造、数据造假和隐私裸奔的混乱网络。
零知识证明提供了一种新的可能性:
证明我是真人授权的,但不暴露我是谁;证明我有资质,但不公开完整证书;证明我的数据真实,但不交出原始数据;证明 Agent 可以行动,但行动必须在授权边界内。
这不是单纯的密码学炫技,而是未来 Agent 经济的信任基础设施。
如果说钱包解决了“谁拥有资产”,智能合约解决了“规则如何执行”,那么真人授权与真实数据资产的零知识证明,正在尝试解决下一个问题:
在一个由 Agent 参与的元宇宙里,我们如何在不牺牲隐私的前提下,证明身份、资质、授权和数据都是真的?
这可能会成为下一代元宇宙身份层、Agent 协议层和数据资产层共同交汇的地方。
- Author:沈林曦
- URL:https://blog.aibhtt.com/article/agent/zk
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!
Relate Posts









