Zcash 中的后量子安全
TL;DR
- 量子计算机是一种未来风险,因为它们可能破解当今区块链所使用的一些公钥密码学。
- “后量子”指的是在普通计算机上运行、但专门设计用来抵御未来量子计算机攻击的密码学。
- 如今的 Zcash 还不是完全后量子的。
- Shielded Zcash 减少了未来攻击者可研究的公开交易数据量,但使用 shielded 并不等同于完全具备量子抗性。
- Zcash 正通过研究、ZIP 以及诸如 ZIP 2005 和 Project Tachyon 的升级提案进行准备。
- 安全的后量子迁移必须同时保护资金、隐私、钱包、交易所和共识规则。
有关 Ironwood 的变更内容及各部分的截至日期状态,请参阅 Zcash 是否具备后量子能力?。
什么是量子计算?
普通计算机以比特存储信息。每个比特要么是 0,要么是 1。
量子计算机使用量子比特,也就是 qubit。qubit 可以被特殊算法利用,以比普通计算机快得多的速度解决某些数学问题。
这并不意味着量子计算机在所有事情上都更快。风险是特定的。一些密码学依赖于这样的数学问题:对普通计算机来说非常难,但对足够强大的量子计算机来说会容易得多。
对于区块链来说,最重要的例子是公钥密码学。公钥和签名用于证明某个用户有权花费这些币。
为什么区块链关心这个问题
区块链使用密码学来完成几种不同的工作:
| 密码学工具 | 作用 | 量子影响 |
|---|
| 数字签名 | 证明所有者授权了一次花费 | 常见椭圆曲线系统面临高风险 |
| 哈希函数 | 构建地址、承诺、Merkle 树和挑战值 | 风险较低,但安全裕度很重要 |
| 零知识证明 | 在不泄露细节的情况下,证明 shielded 交易有效 | 取决于证明系统及其假设 |
| 密钥协商 | 帮助钱包为接收者加密 note 数据 | 在量子威胁模型下需要谨慎审查 |
足够强大的量子计算机可能威胁当今使用的许多签名方案,包括椭圆曲线签名。这很重要,因为签名正是让网络知道一笔交易已由正确密钥授权的依据。
哈希函数则不同。Grover 算法可以加速暴力搜索,但它不会以同样直接的方式破解哈希函数。更大的安全裕度会有所帮助。
什么是后量子密码学?
后量子密码学是指这样一种密码学:它被设计为既能抵御普通计算机,也能抵御未来量子计算机的攻击。
这并不意味着这种密码学要使用量子计算机。它的意思是,该系统建立在不同的高难度数学问题之上。
在 2024 年,NIST 发布了首批正式定稿的后量子标准:
- 用于密钥建立的 ML-KEM
- 用于数字签名的 ML-DSA
- 基于哈希的数字签名 SLH-DSA
这些标准是一个重要里程碑,但区块链不能在一夜之间简单地把一种算法换成另一种。共识规则、钱包、硬件钱包、交易大小、手续费和隐私都必须纳入考虑。
量子风险如何在链上体现
理解这种风险的一个简单方式是:
- 用户创建一对密钥。
- 公钥或签名数据可能出现在链上。
- 未来的量子攻击者可能能够利用这些公开材料推导出私钥。
- 如果资金仍由该密钥控制,就可能面临风险。
透明区块链按设计会暴露大量信息。地址、金额和交易关联都是公开的。公钥材料也可能在币被花费时变得可见。
这也是地址复用有害的原因之一。复用会让观察者今天就能关联更多数据,也会给未来攻击者留下更多可供分析的历史材料。
Zcash 有什么不同?
Zcash 同时支持透明交易和 shielded 交易。
透明 Zcash 更像 Bitcoin 风格的公开区块链使用方式。地址、金额和交易关系都是可见的。
Shielded Zcash 则不同。shielded 交易使用零知识证明,因此网络可以验证一笔交易是否遵守规则,而无需暴露发送者、接收者或金额。
这给了 Zcash 一个重要的隐私优势:
- 向所有人公开发布的交易数据更少。
- 用户在保持 shielded 状态时,不会创建公开的支付图谱。
- 未来的观察者能分析的公开金融历史更少。
- 选择性披露可以通过 viewing keys 实现,而不是依赖默认公开的记录。
但 shielded Zcash 并不会自动成为后量子的。shielded 池仍然依赖密码学假设。花费授权、note 承诺、nullifier、证明系统、加密以及钱包密钥都需要谨慎审查。
简短版本是:
使用 shielded 能减少公开暴露,但 Zcash 仍然需要有计划地进行后量子升级。
Zcash 风险地图
| 领域 | 面向初学者的解释 | 后量子担忧 |
|---|
| 透明地址 | 公开地址和公开交易图谱 | 与其他透明区块链类似的风险 |
| 花费授权 | 证明用户有权花费资金的依据 | 签名方案可能需要替换或迁移 |
| Shielded notes | shielded 池内部的私密价值记录 | 某些组件可能需要新的假设或恢复工具 |
| zk-SNARKs | 证明 shielded 交易有效的证明 | 证明系统假设需要审查 |
| 钱包扫描 | 钱包如何发现并解密收到的 note | 密钥协商和 note 加密需要审查 |
| 迁移 | 将资金迁移到更安全的密码学体系 | 必须同时避免资金损失和隐私泄漏 |
Zcash 如何进行准备
Zcash 有一套网络升级流程
Zcash 以前就更换过其密码学。Sapling 让 shielded 交易更容易使用。NU5 引入了 Orchard、Unified Address 和 Halo 2。
这很重要,因为后量子就绪不是打一行软件补丁就能完成的事。它需要协调一致的网络升级、钱包变更、审计以及给用户迁移留出时间。
过去 Zcash 的升级表明,这个生态系统在从旧密码学迁移到新设计方面已有经验。
Halo 和 Orchard 减少了旧有假设
Halo 2 被用于 Orchard,也就是 Zcash 现代的 shielded 池。一个重要改进是,Halo 移除了 Orchard 证明系统对可信设置的需求。
这与后量子安全不是一回事。但它依然相关,因为这表明当更好的设计可用时,Zcash 能够替换关键的密码学基础模块。
ZIP 2005 聚焦量子可恢复性
ZIP 2005 的标题是 “Orchard Quantum Recoverability”。它提出了一些变更,旨在帮助 Orchard 用户在针对旧假设的量子攻击变得可行时恢复或迁移资金。
可恢复性并不等于完整的后量子安全。它更狭义,但仍然有用:
- 完整的后量子安全试图阻止量子攻击奏效。
- 可恢复性则是在旧密码学变得不安全时,为诚实用户提供更好的应对路径。
对初学者来说,可以把它理解为一个紧急出口方案。它不能替换整栋建筑,但如果旧锁变弱了,它可以帮助人们安全离开旧房间。
Project Tachyon 着眼于更大范围的协议改进
Project Tachyon 是一个提议中的 Zcash 升级,重点关注扩展性、同步和状态增长。其公开网站表示,该提案旨在缩小交易体积、减少验证者状态增长,并顺带实现完全的后量子隐私。
由于 Tachyon 仍是一个提案,它在激活之前仍取决于工程实现、审查和社区批准。更适合将其理解为 Zcash 当前研究和升级方向的一部分,而不是用户今天已经拥有的功能。
研究与标准正在推进
更广泛的密码学领域也在推进。NIST 的后量子标准为实现者提供了更强的签名和密钥建立基础模块。零知识研究者也在持续研究能够在量子假设下依然成立的证明系统。
Zcash 可以从这些工作中受益,但仍需要将其适配到一个保护隐私的区块链中。
未来可能的升级路径
后量子花费授权
Zcash 最终可能需要不依赖易受量子攻击签名方案的花费授权机制。
这可以使用后量子签名、混合签名或其他设计。混合设计是在过渡期同时使用经典和后量子检查,这样系统就不会只依赖单一假设。
挑战在于体积和成本。后量子签名可能比今天的签名更大,这会影响交易大小、带宽、手续费、移动钱包和硬件钱包。
新的地址和密钥格式
新的密码学通常需要新的密钥和地址。用户需要从旧格式迁移到更安全格式的清晰路径。
钱包中的迁移过程应当尽量简单。大多数用户不应为了保持安全而必须理解每一个密码学细节。
保护隐私的迁移
对于 Zcash 而言,迁移尤其敏感。如果大量用户以明显模式将资金从旧池迁移到新池,那么迁移本身就可能泄露信息。
一个好的迁移方案需要保护:
- 用户资金
- 用户隐私
- 钱包兼容性
- 交易所支持
- 硬件钱包支持
- 网络共识安全
后量子证明系统审查
仅仅替换签名还不够。Zcash 的 shielded 设计还依赖零知识证明和承诺。
未来的工作可能需要审查或替换:
- zk-SNARK 假设
- 多项式承诺
- Fiat-Shamir 挑战哈希
- note 承诺
- nullifier 构造
- Merkle 树假设
- note 加密和 viewing key 行为
某些组件也许只需调整参数就可以接受。其他组件则可能需要全新的设计。
面向初学者的例子
例子 1:旧锁
想象一个保险箱,它的锁在今天很牢固。但未来发明的新工具可能会迅速打开这把旧锁。
后量子密码学就像把这把锁更换成一种预计不会被新工具破解的设计。
对于区块链来说,更换这把锁并不容易,因为每个钱包、节点、交易所和硬件设备都必须理解这种新设计。
例子 2:公开收据箱
透明区块链数据就像把每一张收据永远放进一个公开箱子里。即使今天还没人能读出所有模式,未来的工具也可能学到更多。
Shielded Zcash 试图一开始就不发布这些收据。这有助于长期隐私,但保护 shielded 系统的那把锁仍然必须针对量子时代进行审查。
例子 3:出口方案
可恢复性就像在失火前先规划好逃生路线。你希望永远用不上,但比起在紧急情况下临时设计,提前准备要安全得多。
ZIP 2005 对 Orchard notes 就符合这个思路。
用户今天可以做什么
用户不需要恐慌。如今还没有能够破解已部署区块链密码学的大型公共量子计算机。
良好的习惯仍然有帮助:
- 在可能的情况下,优先使用 shielded Zcash。
- 避免重复使用地址。
- 保持钱包更新。
- 关注 Zcash 网络升级公告。
- 留意关于可恢复性或迁移的 ZIP 和钱包指导。
- 不要假设透明活动是私密的。
- 不要基于传言转移资金;应等待值得信赖的 Zcash 开发者和钱包团队给出明确指引。
挑战
后量子升级对每条区块链来说都很困难。
常见挑战包括:
- 更大的密钥和签名
- 更大的交易
- 更高的验证成本
- 更多带宽使用
- 新的安全审计
- 硬件钱包支持
- 移动钱包性能
- 交易所和托管集成
- 迁移期间的隐私泄漏
- 社区就共识变更达成一致
对 Zcash 来说,最难的部分不仅是保持币可花费。难点在于,在保留 Zcash 独特隐私特性的同时,仍让这些币保持可花费。
总结
量子计算机最终可能威胁区块链所使用的一些密码学。后量子密码学是长期答案,但必须谨慎部署。
如今的 Zcash 还不是完全后量子的。不过,Zcash 拥有一些有用的优势:shielded 交易减少公开暴露,网络拥有密码学升级历史,而像 ZIP 2005 和 Project Tachyon 这样的当前研究已经在面向未来的量子风险。
对初学者来说,核心观点很简单:今天的隐私能够减少未来的数据暴露,而谨慎的升级则能帮助 Zcash 在不牺牲可用性的前提下,迈向更强的量子时代安全性。
相关页面
参考资料