# zk.money

> zk.money 是一款基于 Aztec Network 构建的开源、自托管钱包，允许用户使用可读标签私密地发送和接收加密货币。

- Canonical URL: https://iq.wiki/zh/wiki/zkmoney
- Categories: Projects & Protocols
- Tags: Ethereum, Payments, Privacy
- Created: 2026-10-09T01:11:31.731Z
- Last updated: 2026-10-09T01:11:31.731Z
- Source: IQ.wiki — the world's largest blockchain and crypto encyclopedia (https://iq.wiki)

---

**zk.money** 是一款开源、自托管的[加密货币](https://iq.wiki/wiki/cryptocurrency)钱包，允许人们私密地发送和接收加密货币。它由总部位于英国的开发商 Aztec Labs 在 [Aztec](https://iq.wiki/wiki/aztec) Network 上构建。该钱包将资金私密地保存在 Aztec Network 上，这是一个建立在[以太坊](https://iq.wiki/wiki/ethereum)之上的注重隐私的 [Layer 2](https://iq.wiki/wiki/layer-2) 网络，因此系统内部进行的交易余额、金额、发送者和接收者都不会发布到任何公链上。[\[1\]](#cite-id-fvktqsq2gp)​[\[2\]](#cite-id-dousgnm9f3) 用户可以从以太坊存入资金，在 zk.money 内部私密地转移资金，并随时提现回以太坊[主网](https://iq.wiki/wiki/mainnet)。[\[3\]](#cite-id-6grjopt3vk)​



## Overview

zk.money 可以作为其自身域名的 Web 钱包使用，也可以作为本地运行的桌面应用程序使用，同一个通行密钥（passkey）允许在不同设备上访问同一个钱包。[\[1\]](#cite-id-fvktqsq2gp) 资金从 [Ethereum](https://iq.wiki/wiki/ethereum) 流入，在 zk.money 内部进行私密转移，并可以根据用户需求随时提取回以太坊。[\[4\]](#cite-id-ayzmyx8crt) 交易在发送前会在用户自己的设备上进行证明，因此私钥永远不会离开设备。[\[3\]](#cite-id-6grjopt3vk)​

该系统由运行在以太坊和 [Aztec](https://iq.wiki/wiki/aztec) 网络上的多个组件组成：不可变的链上[智能合约](https://iq.wiki/wiki/smart-contract)、名为 Oxide 的安全与迁移协议，以及 Web 界面或桌面应用。[\[4\]](#cite-id-ayzmyx8crt) Aztec 网络被描述为以太坊之上的一个完全私密、完全可编程的网络，是 zk.money 的票据（notes）和余额最终存放的地方。[\[1\]](#cite-id-fvktqsq2gp) zk.money 宣称在系统内部进行的支付无需支付以太坊 Gas 费，而从以太坊存入 zk.money 的资金则需要 [Ethereum](https://iq.wiki/wiki/ethereum) Gas 费且是公开的，因为所有以太坊交易都是公开的。[\[1\]](#cite-id-fvktqsq2gp)​

### Self-Custody and Passkeys

该钱包是非托管的，由不可变的[智能合约](https://iq.wiki/wiki/smart-contract)驱动。[Aztec](https://iq.wiki/wiki/aztec) Labs 表示，zk.money 钱包中持有的任何加密货币都完全由用户控制，除了用户本人外，没有人可以移动资金，不存在特权管理员角色，也没有拥有管理员密钥来移动资金的中心化 zk.money 服务器。[\[1\]](#cite-id-fvktqsq2gp) 系统内的单个运行角色可能会宕机或拒绝服务，但现有的余额仍然可以被提取。[\[3\]](#cite-id-6grjopt3vk)​

zk.money 不使用[助记词](https://iq.wiki/wiki/seed-phrase)，也没有需要单独记录的密钥；用户的两个密钥都是从通行密钥（passkey）派生出来的。[\[3\]](#cite-id-6grjopt3vk) 当用户登录时，钱包从通行密钥派生出私钥，并将其以未加密的形式保存在浏览器的存储中直到退出登录，因此刷新、打开新标签页或关闭浏览器都不会再次提示输入通行密钥。[\[3\]](#cite-id-6grjopt3vk) 文档指出，该私钥可以显示余额和历史记录，但不能移动资金。[\[3\]](#cite-id-6grjopt3vk) 备份账户意味着通过 iCloud 钥匙串、Google 密码管理器或 1Password 备份通行密钥；仅存储在硬件安全密钥上的通行密钥没有备份，丢失该密钥将导致丢失钱包。[\[3\]](#cite-id-6grjopt3vk) zk.money 不持有通行密钥的副本，没有托管服务，如果通行密钥在所有地方都丢失了，没有人能重建该账户。[\[1\]](#cite-id-fvktqsq2gp)​

### Oxide

Oxide 是一个与 [Aztec](https://iq.wiki/wiki/aztec) 网络并行运行的独立协议，针对网络证明系统中的漏洞提供独立的第二层安全保护。[\[1\]](#cite-id-fvktqsq2gp) 它构建在 AWS Nitro Enclaves 之上——这是一种可信执行环境（TEE），即一种硬件隔离的环境，代码在其中运行并与主机隔绝——其工作原理是让用户模拟 Aztec 网络交易。[\[1\]](#cite-id-fvktqsq2gp) Aztec Labs 表示，Oxide 可以在不了解操作内容的情况下证明操作的有效性，因此第三方无法看到交易详情；并且由于 Oxide 的信任假设与保护 Aztec 网络的[零知识](https://iq.wiki/wiki/zero-knowledge-proofs-zkps)（ZK）电路是分离的，一个系统的故障不会损害另一个系统。[\[4\]](#cite-id-ayzmyx8crt) 其既定目的是为防御密码系统中的漏洞增加另一层防线。[\[4\]](#cite-id-ayzmyx8crt)​

Oxide 在每个角色上都是开源且无需许可的。zk.money 为 Oxide 运行默认的飞地（enclave）和解析器，但任何人都可以运行自己的飞地和解析器，并将钱包指向它。[\[1\]](#cite-id-fvktqsq2gp)​[\[3\]](#cite-id-6grjopt3vk) 在实践中，L2BEAT 指出，每次提款和退款都需要 ZK 证明以及来自运行批准镜像的实时 AWS Nitro 飞地的签名；该飞地负责解密并读取其处理的操作。[\[5\]](#cite-id-ky8jvsxzb3)​

## History

最初的 zk.money 是一个运行在 [Aztec](https://iq.wiki/wiki/aztec) Connect 上的隐私[去中心化金融 (DeFi)](https://iq.wiki/wiki/defi) 应用程序。Aztec Labs 表示，在第一年，第一代 zk.money 就拥有超过 75,000 个独立钱包，交易额超过 1 亿美元，该公司将其视为隐私加密转账需求的早期证明。[\[4\]](#cite-id-ayzmyx8crt) 该应用程序于 2023 年停止接受存款，并于 2024 年 3 月关闭。[\[3\]](#cite-id-6grjopt3vk) Aztec Labs 将 2023 年的退役归因于隐私转账并非失败，而是因为它们需要当时尚不存在的基础设施。[\[4\]](#cite-id-ayzmyx8crt)​

该基础设施正是 [Aztec](https://iq.wiki/wiki/aztec) 网络本身。Aztec Labs 表示，它花了三年时间构建并启动了该网络，并将其描述为去中心化隐私层，可以让像 zk.money 这样的系统扩展到主流应用。随着网络的上线，它开始在其上发布开源隐私产品。[\[4\]](#cite-id-ayzmyx8crt) 该公司引用 ZKPassport 作为此类产品之一，并将重生的 zk.money 作为另一个产品。[\[4\]](#cite-id-ayzmyx8crt) L2BEAT 于 2026 年 10 月 1 日记录了对 zk.money 的首次完整发现。[\[5\]](#cite-id-ky8jvsxzb3)​

当钱包回归时，优先访问权被授予了之前 zk.money 的早期用户，通过与朋友分享自己的标签也可以获得立即访问权限。[\[4\]](#cite-id-ayzmyx8crt) 在发布后的几周内，团队表示已修复了未被清扫的存款，使滞留资金变得可追回，并增加了一个更快的提现选项，用户只需支付少量小费即可跳过证明队列，在五分钟内完成提现。[\[6\]](#cite-id-knxfh7awcz) 2026 年 10 月初，该项目表示参加了在新加坡举行的 token2049，其代表在主活动和隐私峰会（Privacy Summit）上发表了演讲。[\[6\]](#cite-id-knxfh7awcz)​

## 标签、支付与转账

每个账户不再需要复制冗长的十六进制地址，而是申领一个由通行密钥（passkey）保护的可读标签，例如 “yourname.zk.money”。[\[4\]](#cite-id-ayzmyx8crt) 标签在设计上是公开的，以便任何人都可以向其付款，但知道标签并不会泄露交易历史，且标签的余额和历史记录对他人都不可见。[\[3\]](#cite-id-6grjopt3vk) 标签遵循先到先得的原则，团队保留了少量标签；被保留的标签只能通过在 X 上使用与该保留标签完全匹配的账号向官方账号发送消息来申领，之后会发送申领链接。[\[3\]](#cite-id-6grjopt3vk) 在技术层面，标签公开映射到 [Aztec](https://iq.wiki/wiki/aztec) 地址和密钥，并有两个用途：通过 [以太坊域名服务 (ENS)](https://iq.wiki/wiki/ens) 链下查询推导 [第 1 层](https://iq.wiki/wiki/layer-1) (L1) 存款地址，以及让钱包从链上注册表中读取 Aztec 地址以路由私密的 [第 2 层](https://iq.wiki/wiki/layer-2) (L2) 转账。[\[5\]](#cite-id-ky8jvsxzb3)​

存款通过名为 SIPA 的单次使用 [第 1 层](https://iq.wiki/wiki/layer-1) 地址到达。任何人都可以从任何钱包或交易所向接收者的存款地址发送 [DAI](https://iq.wiki/wiki/dai)、[USDC](https://iq.wiki/wiki/usdc) 或 [USDT](https://iq.wiki/wiki/tether)，资金会自动归集到接收者的私有余额中；存入的 USDC 和 USDT 在存款时会通过 Curve 3pool 兑换为 DAI。[\[3\]](#cite-id-6grjopt3vk)​[\[5\]](#cite-id-ky8jvsxzb3) 每个存款地址都是单次使用的，用户被告知每次收款都要获取一个新地址，这样进账款项就无法被关联，因为重复使用 SIPA 会关联其存款。[\[1\]](#cite-id-fvktqsq2gp)​[\[5\]](#cite-id-ky8jvsxzb3) 为了避免直接提供地址，用户可以发送请求链接，或者在支持 ENS CCIP 的 [以太坊](https://iq.wiki/wiki/ethereum) 钱包中，交易对手可以输入类似 bob.zk.money 的标签，解析器会推导出其背后的新鲜存款地址。[\[3\]](#cite-id-6grjopt3vk)​

zk.money 支持两种可分享的链接。支付链接持有资金：发送者锁定一定金额并分享链接，任何使用自己的通行密钥申领该链接的人都会收到资金，无需事先拥有账户。每个支付链接都有 1 天、7 天或 30 天的申领窗口，以及一个立即开启的退款窗口，因此未被申领的链接可以由发送者随时收回；链接永远不会既被申领又被退款，以先发生的两种结果之一为准。[\[3\]](#cite-id-6grjopt3vk) 请求链接则相反——它请求某人付款并向其提供存款地址，在有人发送资金之前不持有任何资金。[\[3\]](#cite-id-6grjopt3vk) zk.money 内部的支付是最终的，钱包在确认前会显示解析后的接收者；对于不完全信任的交易对手，文档建议发送支付链接，因为未申领的资金会退回给发送者。[\[3\]](#cite-id-6grjopt3vk) 钱包使用 XMTP（一种端到端加密消息网络）来确认通过二维码或链接添加的联系人，并发送支付请求。[\[5\]](#cite-id-ky8jvsxzb3)​

启动时，系统支持 DAI 作为其内部资产，每笔存款、支付和提现最初都限制在 2,500 美元以下。[\[3\]](#cite-id-6grjopt3vk)​[\[1\]](#cite-id-fvktqsq2gp) L2BEAT 记录的这些上限各为 2,583 DAI，存款共享 50,000 [DAI](https://iq.wiki/wiki/dai) 的额度，该额度会在一天内自动恢复。[\[5\]](#cite-id-ky8jvsxzb3)​

该团队概述了其称将通过 zk.money 在 Aztec 上实现的进一步功能，包括储蓄库、银行和 IBAN 支付、私密资助 [Layer 2](https://iq.wiki/wiki/layer-2) 账户、通过 ZKPassport 实现零知识护照证明以解锁更高额度、共享“资金池”和团体账单，以及更多的通行密钥（passkey）支持。[\[6\]](#cite-id-knxfh7awcz) 这些是该项目描述的计划，而非已发布的功能。

## 费用

存款和提款会收取少量费用，从转移的金额中扣除。每笔费用的一部分会充入一个独立的付费合约，该合约为所有使用 zk.money 的用户支付网络费用，这就是为什么在覆盖额度内内部活动是免费的，而剩余部分则用于支付资金进出 [Ethereum](https://iq.wiki/wiki/ethereum) 的 [gas](https://iq.wiki/wiki/gas) 成本。[\[3\]](#cite-id-6grjopt3vk) 该项目表示，目前的免费内部覆盖额度为每天最多 100 笔交易，且不收集任何账户数据，该覆盖额度可能会发生变化。[\[3\]](#cite-id-6grjopt3vk) 存款费用为 0.35 美元，提款费用为 0.20 美元。[\[3\]](#cite-id-6grjopt3vk)​

申请标签的费用为 4.90 美元，外加支付给付费合约的 0.10 美元，总计 5.00 美元，从首次存款中扣除。首次存款必须至少为 15 美元的 [USDC](https://iq.wiki/wiki/usdc)、[USDT](https://iq.wiki/wiki/tether) 或 [DAI](https://iq.wiki/wiki/dai)；15 美元的 DAI 存款在扣除费用和任何兑换后大约剩余 10 美元。[\[3\]](#cite-id-6grjopt3vk) 对于能够证明拥有 2024 年停止服务的旧版 zk.money 系统钱包所有权，或者通过其分享链接邀请一人申请标签的用户，可以在注册流程中豁免 4.90 美元的部分；即使豁免，仍需至少 5 美元的首次存款，用户需支付 0.60 美元的费用，5 美元的 DAI 存款后剩余 4.40 美元。[\[3\]](#cite-id-6grjopt3vk) 根据 L2BEAT 的核算，归集（sweep）支付 0.25 DAI，申请名称时为 0.5 DAI；注册默认费用为 5 DAI（包括其归集费）；门户网站从每笔存款和普通提款中提取 0.1 DAI 以赞助 [Aztec](https://iq.wiki/wiki/aztec) 费用，赞助需要注册名称或凭证。[\[5\]](#cite-id-ky8jvsxzb3) 一个专门的出资人合约负责收集门户网站的资金分成，任何人都可以将其兑换为 AZTEC 并作为 Fee Juice 桥接到 L2 付费合约，从而支付用户的 Layer-2 费用。[\[5\]](#cite-id-ky8jvsxzb3)​

## 隐私和安全模型

zk.money 在其账本内部隐藏了发送者、金额以及存款与取款之间的联系，而名称、存款以及向 [Ethereum](https://iq.wiki/wiki/ethereum) 的取款在设计上是公开的。[[5]](#cite-id-ky8jvsxzb3)[[4]](#cite-id-ayzmyx8crt) L2BEAT 的分析针对不同的观察者对这种保护进行了不同等级的划分。公共观察者可以看到链接隐私得到了保留，但申请名称会将其与资金钱包绑定，向新联系人的首次付款会通过握手暴露该接收者，且注册后的首次赞助交易会与账户绑定。[[5]](#cite-id-ky8jvsxzb3) 链上分析师可能会使链接面临风险，因为匿名集仅限于 [Aztec](https://iq.wiki/wiki/aztec) 上的 zk.money 用户，且从系统外部向某个名称进行的首次付款会公开地与其绑定。[[5]](#cite-id-ky8jvsxzb3)

对于其他对手，风险会增加。网络观察者——如 RPC 提供商、中继器、索引器或互联网服务提供商——可以看到网络流量、IP 地址、时间戳以及存款和取款所落入的[区块](https://iq.wiki/wiki/block)，且桌面钱包不提供 Tor 或代理设置。[[5]](#cite-id-ky8jvsxzb3) 持有协议密钥或明文的特权内部人员——如升级管理员、排序器、查看密钥持有者、TEE 供应商、托管证明者或票据注册表运营商——可以完全链接存款和接收者，从而暴露发送者、接收者、金额和资产。[[5]](#cite-id-ky8jvsxzb3) 未来如果对手现在存档链上数据，并在以后破解椭圆曲线密码学，则可以解密发布到 [Ethereum](https://iq.wiki/wiki/ethereum) 的历史票据和付款事件。[[5]](#cite-id-ky8jvsxzb3)

托管资金的安全性建立在多重证明设计之上：门户网站仅在 [Aztec](https://iq.wiki/wiki/aztec) 证明了取款消息且一个注册的飞地签名者共同签署后才释放资金，因此窃取托管资金需要 ZK 层和飞地层同时失效，而其中任何一层的失效都会破坏隐私。[[5]](#cite-id-ky8jvsxzb3) L2BEAT 总结称，如果 Aztec 的私有执行或退款证明不健全且飞地层也失效，或者恶意钱包代码获取了有害签名，或者替换的合约列表重定向了未来的付款，或者名称的控制者重定向了未来的付款，资金就可能被盗。[[5]](#cite-id-ky8jvsxzb3) 如果用户丢失了通行密钥，或者所有经过 AWS 认证的飞地停止运行，或者解析器筛选[拦截](https://iq.wiki/wiki/block)了外部付款且接收者缺乏重新推导存款地址的工具，资金可能会丢失。[[5]](#cite-id-ky8jvsxzb3)

L2BEAT 将退出窗口评定为无限，因为托管和批准的飞地镜像是不可变的，但指出该协议未通过其“离场测试”：如果所有中心化参与者消失，用户将无法完全使用它，因为取款和退款需要一个在 AWS Nitro 上运行批准镜像的活跃飞地，且发布的钱包也依赖于 zk.money 的服务。[[5]](#cite-id-ky8jvsxzb3) 该项目被评为部分可复现——合约、桌面钱包、飞地和电路源码是公开的，且部署的退款和解析器验证器与发布的电路匹配，但批准的飞地二进制文件仍未被复现，且解析器、快照和托管钱包的发布源码尚未公开。[[5]](#cite-id-ky8jvsxzb3) 隐私评级假设使用的是 zk.money Desktop v0.1.0；托管的网页钱包在每次访问时都会从 zk.money 加载代码，这使其运营商成为事实上的内部人员，能够读取查看密钥，而独立设置——即修改桌面版本以固定验证地址、在自己的域名下提供服务并在 AWS 上运行批准的飞地——虽然可行但尚未经过测试。[[5]](#cite-id-ky8jvsxzb3)

zk.money 依赖于 Aztec Ignition 可信设置，这是由 Aztec 在 2019 年针对 BN254 曲线上的 KZG 承诺发起的一次仪式，共有 176 名参与者且公开开放参与，L2BEAT 将其评为最低风险级别；该电路使用 UltraHonk (Plonk) 证明系统。[[5]](#cite-id-ky8jvsxzb3)

### Compliance Screening

审查应用于链下服务而非链上。钱包通过 zk.money 将 [Ethereum](https://iq.wiki/wiki/ethereum) 地址发送给 Predicate 进行筛选，而直接资助存款 SIPA 则可规避此操作；中继器会根据 OFAC 制裁名单（以及可选的 Predicate）筛选代币转移，而自行提交的清扫和提款则会跳过中继器筛选。[[5]](#cite-id-ky8jvsxzb3) 名称解析器在 L2 通知接收者之前，会分别针对 OFAC 筛选存款地址和资助者；被拦截的付款会将资金留在钱包未知的地址中，仅能通过接收者自己的工具和 L1 授权进行恢复。[[5]](#cite-id-ky8jvsxzb3)

## 合约与治理

[Aztec](https://iq.wiki/wiki/aztec) 网络和 zk.money 的核心[智能合约](https://iq.wiki/wiki/smart-contract)都是不可变的。[\[5\]](#cite-id-ky8jvsxzb3) 在 [Ethereum](https://iq.wiki/wiki/ethereum) 上，ZkMoneyPortal 合约持有托管资金，且仅在经过验证的 Aztec L2 到 L1 消息（由注册的 TEE 签名者共同签署）下释放资金；任何人都可以通过经批准的飞地镜像（enclave image）的最新 AWS Nitro 证明来注册 TEE 签名者，在 L2BEAT 发现时已有两名注册签名者。[\[5\]](#cite-id-ky8jvsxzb3) 证明通过 NitroValidator 和 CertManager 进行验证，其唯一的信任锚点是硬编码的 AWS Nitro 根证书。[\[5\]](#cite-id-ky8jvsxzb3) 存款和注册地址由无许可工厂部署为确定性克隆，一旦 Aztec 的规范 Rollup 发生变化，任何人都可以永久冻结该门户——这种冻结会停止新存款，并允许在最后验证的检查点进行退款，而不会阻止已进入的资金转出。[\[5\]](#cite-id-ky8jvsxzb3)​[\[3\]](#cite-id-6grjopt3vk)​

尽管托管逻辑不可变，但命名和网络服务基础设施仍处于 Aztec Labs 的控制之下。两个 Aztec Labs 外部账户 (EOA) 治理着 \*.zk.money 命名空间：一个拥有 NameRegistry，可以更换其注册、元数据和解析器合约并更改域名所有者，以及批准存款地址实现；另一个负责授权或拒绝每个名称申请，并可以签署自定义注册费并添加永久费用受益人。[\[5\]](#cite-id-ky8jvsxzb3) 由于这些控制器可以重新分配名称并重定向未来的付款，且由于 Aztec Labs 在 [ENS](https://iq.wiki/wiki/ens) 中拥有 zk.money（可由 DNS 持有者收回）并控制托管钱包、桌面版本以及目前两个钱包使用的两个未签名合约列表，L2BEAT 将名称治理和钱包分发识别为系统的主要中心化点。[\[5\]](#cite-id-ky8jvsxzb3) 名称申请需要来自带有名称黑名单的闭源服务器的域名所有者签名，并且在新设备上访问账户需要已注册的名称。[\[5\]](#cite-id-ky8jvsxzb3)​

提现和退款由另外两个作为门户注册 TEE 签名者的 Aztec Labs EOA 共同签署；如果没有注册 TEE 签名者的签名，任何资金都无法离开门户。[\[5\]](#cite-id-ky8jvsxzb3) 辅助合约处理具体机制：提现即兑换（swap-on-withdraw）托管允许通过在固定[滑点](https://iq.wiki/wiki/slippage)范围内将 [DAI](https://iq.wiki/wiki/dai) 路由通过 Curve 3pool 或 [Uniswap](https://iq.wiki/wiki/uniswap)，以 [USDC](https://iq.wiki/wiki/usdc)、[USDT](https://iq.wiki/wiki/tether) 或 [ETH](https://iq.wiki/wiki/ether-eth) 形式支付提现；默认支付执行器支付接收者和中继者小费；一组 UltraHonk 验证器根据硬编码的验证密钥检查退款和解析器电路。[\[5\]](#cite-id-ky8jvsxzb3) 派生存款地址的解析器操作员可以链接钱包地址，因为它们共享一个密钥，但每次查询必须携带与用户注册密钥和 L2 地址匹配的 ZK 证明，从而防止操作员重定向付款，且用户可以选择自定义解析器操作员。[\[5\]](#cite-id-ky8jvsxzb3)​
