W3C 可验证凭证 v2.0:去中心化身份的隐形脊梁

GitHub June 2026
⭐ 359
来源:GitHub归档:June 2026
W3C 正式定稿可验证凭证 v2.0,这一基础性标准为去中心化身份体系定义了通用数据模型与验证协议,有望取代传统身份孤岛。AINews 深入解析其技术革新、关键参与方,以及围绕数字信任未来展开的高风险博弈。

W3C 可验证凭证(VC)v2.0 规范已正式达到 W3C 推荐标准状态,标志着历时十年的标准化努力终成正果——它定义了数字凭证在无需中心化权威的情况下如何发行、存储和验证。该规范核心基于 JSON-LD 数据模型,支持从大学文凭到驾驶执照等各类凭证以加密可验证的方式呈现,用户可选择性地披露信息,在保障真实性的同时保护隐私。相比 v1.1,本次更新引入了关键改进:简化的证明格式、与去中心化标识符(DID)核心规范的更好对齐,以及基于 BBS+ 签名或类似零知识证明友好方案的正式化选择性披露机制。该规范已在真实世界中获得采用,涵盖企业员工身份、跨境学历认证及教育凭证网络等多个场景。

技术深度解析

W3C 可验证凭证 v2.0 规范并非一次简单的增量更新——它是对数字系统中信任表达方式的根本性重构。核心数据模型基于 JSON-LD(链接数据 JSON),提供了一种语义框架,使凭证能够以机器可读、可互操作的方式表达。每份凭证都是一个 JSON-LD 文档,包含三个强制属性:`@context`、`id` 和 `type`,以及可选属性如 `issuer`、`issuanceDate`、`credentialSubject` 和 `proof`。

证明机制演进

v2.0 中最重大的技术变化是弃用了 `credentialSchema` 属性,转而采用更灵活的证明套件系统。新规范明确支持多种密码学证明类型,包括:
- DataIntegrityProof:一种新的证明格式,取代了旧的 LinkedDataProof,设计上可与任何密码学套件(Ed25519、secp256k1、BBS+)配合使用。
- BBS+ 签名:支持选择性披露——即只揭示声明的子集(例如,证明你超过 21 岁而不透露具体出生日期),同时保持密码学可验证性。
- 零知识证明(ZKP):规范为集成 ZKP 提供了框架,但具体实现交由扩展规范处理。

JSON-LD 上下文处理

VC v1.x 一直饱受批评的一点是 JSON-LD 上下文解析的复杂性。v2.0 通过引入强制性的 `@context` 来定义词汇表和处理规则,从而解决了这一问题。然而,该规范仍然要求实现者获取并缓存远程上下文,从而造成对网络可用性的依赖。社区已开发出一种解决方案:`vc-jwt` 规范,它将 VC 编码为 JSON Web Token(JWT),采用紧凑且无上下文的格式。这种双轨方法——JSON-LD 用于语义丰富性,JWT 用于简洁性——是一种务实的折中方案。

验证流程

v2.0 中的验证过程被正式定义为三步算法:
1. 凭证验证:检查凭证的结构完整性(必需属性、有效日期)。
2. 证明验证:使用发行者的公钥(从 DID 文档或其他密钥注册表中检索)验证密码学签名。
3. 状态检查:可选地通过 StatusList2021 或类似机制检查凭证的状态(撤销、暂停)。

GitHub 生态

参考实现位于 `w3c/vc-data-model`(359 星,活跃度低),但真正的行动在下游仓库中:
- `digitalbazaar/vc-js`:用于创建和验证 VC 的 JavaScript 库(1.2k 星)。
- `transmute-industries/vc.js`:集成了 DID 的替代实现(400 星)。
- `mattrglobal/vc-json-schema`:基于 JSON Schema 的凭证验证方法(150 星)。

| 特性 | VC v1.1 | VC v2.0 |
|---|---|---|
| 证明格式 | LinkedDataProof | DataIntegrityProof(灵活套件) |
| 选择性披露 | 原生不支持 | BBS+ 签名、ZKP 框架 |
| 上下文处理 | 可选、模糊 | 强制,带 JWT 回退 |
| DID 对齐 | 独立规范 | 与 DID Core 紧密集成 |
| 状态机制 | CredentialStatusList | StatusList2021(更高效) |

数据要点: v2.0 向 DataIntegrityProof 和 BBS+ 支持的转变是最重要的升级——它将 VC 从简单的数字签名转变为保护隐私的凭证。然而,JSON-LD/JWT 双轨方法如果实现者只选择其中一条路径,则存在碎片化风险。

关键参与方与案例研究

VC v2.0 生态系统是两种竞争理念的战场:"加密原生"阵营(由 DIF 和 ToIP 基金会领导)对阵"企业合规"阵营(由微软和 IBM 领导)。

Microsoft Entra Verified ID

微软一直是最大胆的企业采用者。其平台为员工徽章、学生 ID 和合作伙伴凭证发行 VC。他们采用混合方法:JSON-LD 用于语义丰富性,但 JWT 用于性能。微软的策略是将 VC 发行直接嵌入 Azure Active Directory,使其成为传统 SAML/OAuth 身份的即插即用替代品。他们最近与 LinkedIn 的集成允许用户展示经过验证的工作经历凭证。

欧洲区块链服务基础设施(EBSI)

欧盟的 EBSI 项目是最大的政府级 VC 部署,目标是在跨境文凭验证和专业执照方面实现应用。EBSI 要求所有成员国在 2025 年前遵守 VC v2.0 规范。他们开发了自己的配置文件——EBSI 可验证凭证,增加了特定的状态列表和撤销机制。规模巨大:超过 1000 所大学和 200 个政府机构处于试点阶段。

学习经济基金会(LEF)

LEF 正在使用 VC v2.0 构建一个去中心化的教育凭证网络。其平台 "LearnCard" 发行微凭证和学位证书,利用 BBS+ 签名实现选择性披露,允许学习者只分享必要的学业成就。LEF 已与多个美国州立大学系统合作,并计划在 2025 年扩展到 K-12 教育领域。

更多来自 GitHub

Code断言库:Hapi.js生态的轻量级测试利器,正悄然淡出历史舞台Code是专为hapi.js框架及其配套测试运行器lab设计的极简断言库,其核心价值在于流畅的链式API,使测试断言高度可读——例如`expect(result).to.be.a.string().and.to.have.length(10Python Markdown 的 Emoji 插件:填补生态空白的小巧之作Python Markdown 生态长期以来一直缺乏一个原生、高性能的 Emoji 插件,来服务于日益流行的 markdown-it-py 库。而 mdit-py-emoji 的出现,正是为了解决这一痛点——它是成熟 JavaScript SWC官方Node.js包:重塑JavaScript构建的隐形基础设施swc-project/pkgs仓库是SWC Node.js包的官方大本营,提供一系列npm模块,直接与SWC基于Rust的核心编译器集成。这些包旨在加速JavaScript和TypeScript的转译、打包和压缩,可作为Babel和Ter查看来源专题页GitHub 已收录 2833 篇文章

时间归档

June 20261934 篇已发布文章

延伸阅读

BBS+签名:隐私保护数字身份背后的密码学密钥mattrglobal 最新开源的 BBS+ 签名实现,将这一强大的隐私保护密码学原语带入 Node.js 与浏览器环境。作为 W3C 候选标准,它支持对已签名文档进行选择性披露,有望重塑数字身份与可验证凭证在数据最小化原则上的实践方式。Ed25519Signature2020:重塑可验证凭证的轻量级数字签名标准W3C可验证凭证生态系统迎来关键性能升级:Ed25519Signature2020链接数据证明套件正式登场。这一开源项目将Ed25519曲线的高速特性与JSON-LD的语义互操作性完美融合,为去中心化身份与凭证签发提供了一种比传统证书链更轻vc.js:去中心化身份基础设施中不为人知的脊梁Transmute Industries 推出的模块化 JavaScript 库 vc.js,低调实现了 W3C 可验证凭证标准,并与去中心化标识符深度集成。尽管社区活跃度不高,但其架构定位使其成为去中心化身份领域的基础工具包,然而采用之路Hyperledger Aries RFC:去中心化身份未来的技术蓝图Hyperledger Aries 并非又一个身份项目,而是新一代信任互联网的协议骨架。AINews 深入剖析 Aries RFC 仓库,解读其点对点架构、ACA-Py 等真实世界实现,以及这对中心化与去中心化身份系统之争意味着什么。

常见问题

GitHub 热点“W3C Verifiable Credentials v2.0: The Invisible Backbone of Decentralized Identity”主要讲了什么?

The W3C Verifiable Credentials (VC) v2.0 specification has officially reached W3C Recommendation status, marking a decade-long effort to standardize how digital credentials are iss…

这个 GitHub 项目在“W3C Verifiable Credentials v2.0 vs ISO mDL comparison”上为什么会引发关注?

The W3C Verifiable Credentials v2.0 specification is not merely an incremental update—it is a fundamental re-architecture of how trust is expressed in digital systems. The core data model is built on JSON-LD (JSON for Li…

从“how to implement VC v2.0 selective disclosure with BBS+”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 359,近一日增长约为 0,这说明它在开源社区具有较强讨论度和扩散能力。