谷歌采用 Ligero 构建其 ZK 技术栈
1. 引言
前序博客有:
- Ligero 和 Ligetron 中的 MPC 和 ZK
- Ligetron:Nim Network开发的针对AI的zkVM
- Ligetron:基于MPC-In-The-Head范式的zkVM简介
在隐私保护身份验证领域迈出重要一步,谷歌最近宣布 将零知识证明(ZKP)集成到其数字钱包中。
该功能允许用户证明某些属性(如年龄),而无需泄露敏感的个人数据(如全名、地址或身份证号码)。
这不仅是谷歌的重要里程碑,也是零知识密码学在现实应用中广泛采用的重要进展。
目前,年龄或身份验证通常需要完整披露护照或驾照等官方文件。
虽然这种方式有效,但它会暴露出远超必要的信息,这是纸质系统的副作用。
随着数字凭证的出现,隐私风险变得更严重,因为信息披露会留下数字痕迹,使第三方能够跟踪、聚合并去匿名化用户,即使是无意的。
零知识证明提供了一种解决方案。
- 它允许用户证明某个声明是真实的,而无需透露其为何为真。
如,在年龄验证的场景中,ZKP 可以证明用户已年满 18 岁,而无需披露其确切出生日期或其他任何属性。
这种选择性披露能力正是下一代数字身份系统所需要的:
- 最小化披露、最大化信任。
2. Ligero ZKP 在谷歌技术栈中的作用
谷歌的实现(2024年论文Anonymous Credentials from ECDSA) 的特别之处在于其技术基础。
该团队通过结合两个核心组件构建其 ZKP 系统:
- 原始的 Ligero 协议(2017年论文Ligero: Lightweight Sublinear Arguments Without a Trusted Setup)(由 Ligero Inc. 的创始人共同发明并在 ACM CCS 2017 发表)
- 以及 Goldwasser-Kalai-Rothblum (GKR) 协议(2015年论文Delegating Computation: Interactive Proofs for Muggles),一种成熟的可扩展证明系统技术。
这种精心的集成实现了一个既快速(低于 2 秒)又轻量的证明器,使其适用于内存受限的 Android 手机。
然而,这一解决方案也存在权衡。
- 它专门针对受限的数据模型,仅支持 CBOR 编码的移动驾驶证(MDL)格式,并且使用 P-256 曲线上的 ECDSA 和 SHA-256 验证签名。
虽然这对于当前的 MDL 实现已足够,但随着数字身份生态系统的发展,尤其是 后量子密码学(PQC) 的兴起和数据格式的多样化,这种方案可能难以长期维持。
3. Ligetron ZK:下一代 zkVM
这正是 Ligero 下一代系统 Ligetron ZK 发挥作用的地方。
- 该系统在 IEEE S&P 2024 上首次亮相,继承了原始 Ligero 协议的内存效率,但进行了大幅扩展。
- 它支持大规模的任意计算,并专门为通用虚拟机(尤其是 WASM)设计,使开发者能够使用 C++ 或 Rust 等高级语言 编写零知识应用程序。
Ligetron 的真正独特之处 在于:
- 其 原生浏览器开发平台。
与许多需要复杂工具链和自定义编译器的 ZK 框架不同,Ligetron 允许开发者直接在浏览器中构建和测试零知识应用。
这种转变大幅降低了入门门槛,加速了真实世界零知识应用的开发。
在身份验证的背景下,这意味着开发者可以构建支持自定义格式、后量子密码学原语及本地隐私策略的凭证验证应用,而不仅仅局限于狭义标准化机构定义的格式。
随着全球各国政府开始采用 PQC 标准,这种灵活性将变得至关重要。
4. 超越身份:走向自我主权的合规体系
Ligero 的愿景不仅限于身份领域。
- 将零知识证明视为 自我主权合规层 的基础,不仅适用于个人,也适用于机构。
如,用户从法币通道进入加密货币领域时,往往需要在多个服务提供商处进行 KYC(身份验证),反复共享敏感数据。
使用零知识证明,这一过程可以大幅简化:
- 用户可以持有可验证凭证,并向任何服务提供商证明合规性,而无需暴露原始数据。
同样,金融机构也可以使用零知识证明来证明其内部策略和交易符合监管要求,
在不泄露竞争性或专有信息的前提下向审计人员或监管机构提供透明度。
这使得合规模式更加可信且高效,而无需承担传统全面数据披露的成本。
5. 更广泛的转变
谷歌采用零知识证明向整个行业发出了强烈信号:
- 零知识已不再是实验性技术,而是必需品。
但这只是开始。
随着数字身份和合规系统的发展,灵活性、可扩展性 和 开发者可及性 将成为关键。
借助 Ligetron ZK,正在努力确保这些系统可以在全球任何设备上 安全、私密且高效地构建。
参考资料
[1] 2025年5月9日博客 Google Adopts Ligero for ZK Stack