Polygon ID是一个可信和安全的身份基础设施SSI (Self-Sovereign Identity),实现自治的身份和隐私。通过Polygon ID, 机构组合可以给用户颁发可验证的身份,用户可以通过零知识证明生成关于身份的证明,在不泄露隐私的情况下,其它的组构可以通过工具验证用户的身份关系。
Polygon ID 通过Iden3 Circom的零知识证明工具构建。
关键概念
每个身份是一个唯一的识别符 DID(Decentralized identifier) ,遵循W3C标准。每个基于身份的信息表示为 VC (Verifiable Credentials), VC可以是DAO的成员身份证书,或者用户的年龄信息等等。
Polygon ID 架构主要由三个模块(Issuer, Identity Holder, Verifier)构成:
- Issuer: 给Holers 签发 VC身份的实体,Issuer 可以是个人或者机构组织等,VC 由Issuer 签名, 需要保证Issuer 的可信。
- Identity Holder: 由Issuer 签发VC 给 Identy Holder, 放于钱包中。Identity Holder 可以生成零知识证明, 给Verifier 验证;
- Verifier: 验证由Holder 生成的零知识证明, 认证Holder 身份的真实有效性。
零知识证明的约束主要为:(1) Holder的 VC 是由Issuer 签发的,保证签名有效;(2) VC 匹配 Verifier要求的标准。
例如:对于酒吧作为一个Verifier, 只要验证用户满足18岁即可,不需要Identity Holder 暴露真实的年龄等信息。
注:验证可以在链上或者链下进行。
Polygon ID 需要采用钱包支持,Holder 需要钱包储存由Issuer 签发的 VC, 存储用户的私钥,生成零知识证明,需要严格保证钱包的安全性,防止Holder 敏感信息泄露。
主要的功能
- 对于Identy Holder, 可以通过零知识证明实现隐私保证,用户只需证明身份信息满足验证者的要求即可,同时Issuer 也无法追踪用户对VC的使用记录;
- 支持链上或链下验证:可以通过智能合约在链上验证证明,或者在链下进行。例如,可以通过智能合约仅对符合条件的VC 进行空投 。
- 自治: 用户可以通过私钥完全控制自己的身份,不受Issuer 的影响。
- 传递信任:Issuer 对Holder 签发的VC 可以被多个Verifier 验证,同时Holder 也可以在钱包通过多个Issuer 签发的VC 构建信任信息.
Issuer
Issuer 可主要签名 VC, Issuer 需要运行 Issuer Node (开源) . VC 可以由Issuer 灵活定义各种信息。
Issuer可以签发或者撤销VC, 可以在链上更新身份的状态。
钱包
钱包用来管理用户的身份凭证, Polygon ID 提供Wallet SDK, 允许其它的web3 钱包使用添加身份管理的功能。
Polygon ID 钱包主要支持的功能:
- 隐私和身份自治功能;
- 获取,存储和管理凭证;
- 生成身份验证的零知识证明;
- 和Issuer 和 Verifier 通信;
- 通过 seed phrase 恢复身份;
Verifier
Verifier 可以是一个web2或者web3平台,用于验证VC. 用户通过Query 获取Veriferi 的验证标准,然后生成ZK 证明。
Verifier SDK 提供验证的工具,支持链下(web2) 或 链上验证:
- 链下验证: 通过服务器或客户端的脚本验证;
- 链上验证: 通过智能合约验证。
使用场景
- DAOs: DAO的成员可以匿名参与DAO 治理;
- KYC: 进行KYC 验证;
- 电子商务:电子商务平台不需要存储用户的信息,即可认证用户的身份;
- 无密码的登录:不再需要密码进行登录;
- 无抵押贷款
- Portable Avatars & Reputation: 用户的数据可扩展到多个元宇宙或游戏内使用。
目前已经接近20个项目基于Polygon ID 构建应用,包含Blockchain Lock, Bloock, Clique, Collab.Land等。
开源情况
Polygon ID 代码全部开源,但目前还在开发中:
Issuer Node: https://github.com/0xPolygonID/sh-id-platform
wallet sdk: https://github.com/0xPolygonID/js-sdk
Verifier contracts: https://github.com/0xPolygonID/contracts
参考
https://github.com/0xPolygonID
https://0xpolygonid.github.io/tutorials/
https://www.w3.org/TR/did-core/
https://www.w3.org/TR/vc-data-model/
https://0xpolygonid.github.io/tutorials/wallet/wallet-overview/
网友评论