Trust Console × Credential Wallet
DID / VC 双端平台
让数字证明由可信机构签发、由个人持有,并在需要时只出示必要信息。
这是由组织侧信证台与个人侧信证钱包组成的数字凭证平台。它把学历、资质、体检结论等可证明事实转化为带有签名和状态的数字凭证,连接签发方、持有者与验证方,完成从签发到核验的可信闭环。
- 适合谁
- 需要签发证明的机构、管理个人凭证的持有者,以及需要快速核验材料的业务组织。
- 什么时候使用
- 适用于入职核验、资质证明、培训认证等需要跨组织传递可信事实,同时又希望减少重复提交和过度披露的场景。
一次使用,只披露所需。
签发方负责证明事实,个人负责持有凭证,验证方负责核验结果。
一张凭证如何被签发、持有与验证
角色是可扩展的信任关系,而不是对行业的限制。
- A 大学:学历有效
- B 医院:体检合格
- 张三:持有者签名匹配
- 01多方签发
每家机构只为自己确认的事实签名。
- 02字段组合
张三从一张或多张 VC 中分别勾选必要字段。
- 03最小披露
Verifier 收到一份 VP,而不是张三的完整资料。
多枚小球代表不同 Issuer 签发的独立 VC;张三可以从一张或多张 VC 中选择必要字段,组合为一份 VP 交给 Verifier。
一次面试,为什么要背着一整袋人生证明?
为了完成入职核验,张三可能要准备户口本复印件、身份证复印件、学位证书、毕业证书、体检报告,以及其他岗位要求的证明材料。少带一张就可能来回补交;原件和复印件还会遗失、破损、被重复留存。证明一旦损坏或丢失,他还要联系原签发机构,等待重新开具。
一次签发,个人持有,按需组合,跨组织验证,状态可查。
DID / VC 双端平台把散落的纸质证明转化为由可信机构签名、由个人钱包持有、由验证方按需核验的数字凭证。当签发方完成数字化接入后,张三无需反复搬运整套材料,只需从钱包中选择本次业务真正需要的字段,生成一次定向、可验证的数字出示。
不再携带整袋材料
凭证随钱包持有,减少忘带、遗失、破损和重复补交。
不再过度暴露信息
验证方需要什么,就组合并披露什么,而不是交出整份材料。
不再依赖肉眼辨真伪
签名、有效期、凭证状态与 Holder 控制权可以被逐项验证。
不只是求职材料,
而是一种通用的数字信任基础设施。
传统材料核验依赖复印件、扫描件和人工确认。材料会被重复提交、过度收集,验证方也很难实时判断签发来源与凭证是否已经暂停、过期或撤销。演示以求职者 A 向某企业人事出示学历和体检信息为例,但系统角色并不限定行业:签发方可以是医院、大学或其他可信机构,验证方也可以是企业、政务或业务服务方。
一个组织工作台,
一个个人钱包
信证台
签发方与验证方进入各自租户空间,管理机构 DID、版本化凭证模板、凭证签发与验证业务。
- 机构 DID 与公钥历史
- 动态模板和 VC 签发
- 暂停、恢复、替代与撤销
- 组合证明验证与审计台账
信证钱包
个人在浏览器本地创建身份、领取不同机构签发的凭证,并自主决定向哪个验证方披露哪些字段。
- 本地生成 did:key
- 不可导出私钥与本地凭证库
- 收件箱领取与导入
- 多 VC 选择性披露与 Holder 签名
从身份建立到跨组织验证
- 01求职者 A · HOLDER
建立钱包身份
钱包通过 Web Crypto 本地生成 Ed25519 密钥与 did:key,私钥作为不可导出的 CryptoKey 保存在 IndexedDB。
- 02信证台 · REGISTRY
登记公开 DID
钱包签署公开登记包;平台只保存 DID Document 与公钥,不接收、不创建 Holder 私钥。
- 03签发方(比如医院、大学)· ISSUER
分别签发 VC
不同可信机构依据版本化模板签发相应凭证,Issuer 私钥仅在机构 KMS 边界内解密并用于 Ed25519 签名。
- 04信证钱包 · INBOX
领取并本地持有
钱包使用 Holder 私钥签署一次性 Challenge,通过验证后领取交付包并导入本地凭证库。
- 05求职者 A · PRESENTATION
组合最小披露
从两张 VC 中只选择学历、专业、体检结论等必要字段,组成 SD-JWT 披露并对 Challenge、Domain 和组合内容签名。
- 06验证方(比如企业人事)· VERIFIER
实时验证并留痕
验证 Holder 控制权、两家 Issuer 签名、DID 与密钥版本、有效期、VC 状态以及 Challenge 防重放结果。
将信任边界落实到工程分层
Vue 3 信证台
TypeScript、Vite、Pinia 与 Vue Router 组成机构工作台;Issuer 与 Verifier 使用同一产品,但权限和租户数据严格隔离。
独立信证钱包
独立 Web 客户端使用 Web Crypto 与 IndexedDB 管理 Holder 身份、凭证和出示签名,账号体系与组织平台分离。
Node.js 领域服务
DID、VC、披露、验证、身份访问和收件箱服务围绕仓储层拆分,通过同源 API 与两个前端协作。
MySQL + KMS + 可选 EVM 锚定
15 组 Schema 迁移支撑多租户与生命周期;敏感数据以 AES-256-GCM 加密,可选将 DID 与 Document 哈希锚定到本地 EVM。
签名、加密、权限与审计各司其职
密钥各归其主
Holder 私钥只在钱包本地;Issuer 私钥由机构 KMS 使用。公开 DID Document 用于验签,不与敏感凭证正文混为一谈。
签名与加密分工
Ed25519 证明来源和完整性;AES-256-GCM 保护数据库静态敏感内容;密码使用 scrypt 与随机盐处理。
默认不解密
凭证列表只读取非敏感元数据。完整正文需要独立数据读取角色、受控用途和事务内强制审计。
状态与防重放
签名通过不代表凭证仍有效;验证还会检查生命周期状态,并原子消费只保存 SHA-256 哈希的一次性 Challenge。
不只完成演示,也为结果留下证据
独立 Web 产品
组织信证台 + 个人信证钱包
核心 VC 验证项
格式、DID、状态、密钥、签名、有效期、凭证状态
数据库迁移
从初始模型演进到多租户、钱包请求与定向出示
自动化测试层级
单元、集成、API、功能、安全与 Chromium UI
- 这是可运行、可验证的课程结业 MVP,不宣称已经具备正式跨机构互操作和去中心化治理。
- did:example 与 EducationalEd25519Signature2026 用于教学演示;正式产品需要接入标准 DID Method 与注册 cryptosuite。
- 当前“碰一下”保留一次性 Challenge 和目标域绑定,但不是正式 NFC 协议实现。
- 生产演进仍需外部 KMS/HSM、企业身份源、系统安全区与跨设备恢复、标准 Holder Binding 和定向加密交付。
- 01信证台与信证钱包双端产品
- 02Holder 私钥本地自托管
- 03多 VC 组合与字段级最小披露
- 04凭证生命周期与防重放验证
- 05多租户、最小权限与审计留痕
- 06六层自动化验证证据链