1. 数字身份的发展现状

随着互联网的出现和普及,身份有了另外一种表现形式,即数字身份。数字身份的演进经历了四个阶段,分别是:中心化身份、联盟身份、以用户为中心的身份以及自我主权身份。

  • 中心化身份

中心化身份是由单一的权威机构进行管理和控制的。中央集权化的机构,像是1988年成立的IANA(Internet Assigned Number Authority,互联网号码分配局)管理着国际互联网中使用的IP 地址、域名和许多其他参数。

  • 联盟身份

20 世纪末,数字身份的发展获得了重大进展。中心化身份导致的身份数据的混乱而零碎等弊端,催生出了联盟身份这种由多个机构或联盟管理控制的身份体系。简单地说,用户的在线身份数据具备了一定程度的可移植性,例如允许用户登录某个网站时,可以使用其他网站的账户信息,类似于QQ、微信或者微博的跨平台登录。

  • 以用户为中心的身份

以用户为中心的身份,希望实现用户可以通过授权、许可来决定身份的存储、正常使用以及在跨服务跨平台业务中的使用。因此侧重于三个元素:用户的许可、互操作性以及基于用户对数据的完全掌控。

  • 自我主权身份

自我主权身份是以用户为中心的身份的进阶阶段,二者的共同之处在于,都以用户完全掌控自己的身份数据为出发点,但自我主权身份更进一步,数据的收集、存储和使用都去中心化地分布在一个生态系统中,同时对于个人身份的验证,允许其他的普通用户发表含有他人身份信息的声明(即下文将提到的“可验证声明”)。自我主权身份提供了三个必需的元素:单独控制、安全性和完全可移植性。它取消了上述三个阶段的集中外部控制。身份完全由个人(或组织)拥有、控制和管理。从这个意义上说,个人是他们自己的身份提供者——没有外部的一方可以声称为他们“提供”身份,因为身份本质上是他们的。个人的数字存在是独立于任何单一组织的。

2.DID

传统的身份管理系统基于集中权限,例如公司的目录服务,证书颁发机构或者域名注册。从加密信任验证的角度来看,每一个集中式权限机构都是一个信任根,要使身份管理跨系统工作,需要实现联合身份管理。

分布式账本技术(区块链技术:DLT)的出现,为完全分散的身份管理提供了机会,在分散的身份系统中,实体可以自由的使用任何共享的信任根。全球分布式账本,分散式P2P网络或者其他具有类似功能的系统,提供了管理信任根的方式,既没有集中权限也没有单点故障。结合使用,DLT和分散式身份系统使任何实体都能够在任意数量的独立信任根的基础上创建和管理自己的标识符。

实体由分布式标识符(DID)标识,并且可以通过可验证的证明内容(例如:数字签名,生物识别等)进行身份认证。DID指向DID文档,每个DID文档中包含一组服务端点,用于与DID标识的实体进行交互。遵循隐私设计,任何实体可以根据不同的需求申请任意数量的DID,以尊重实体所需的身份,角色和背景的分离。

DID方法是指在特定的分布式账本或者网络上创建,读取,更新,停用DID及其关联的DID文档的机制,DID方法使用单独的DID方法规范定义。

此设计消除了对集中式注册表以及证书颁发机构的依赖性。由于DID保存在分布式账本上,因此每个实体可以充当自己的根权限-DPKI体系结构。

DID的优势

  • 去中心化:基于区块链,避免了身份数据被单一的中心化权威机构所控制。
  • 身份自主可控:基于DPKI (分布式公钥基础设施),每个用户的身份不是由可信第三方控制,而是由其所有者控制,个人能自主管理自己的身份。
  • 可信的数据交换:身份相关数据锚定在区块链上,认证的过程不需要依赖于提供身份的应用方。

3. 可验证声明

可验证声明用来证明实体的某些身份属性,它可以作为一个数据单元进行存储和传输,并可被任何实体验证。

详情:可验证声明

4. DID解析器

DID解析器是一个软件组件,其API设计用于接收DID查找请求并执行相应的DID方法以检索权威DID文档。为了符合此规范,DID解析器满足以下要求:

  • 应该根据DID方法规范验证DID是否有效,否则会产生错误。
  • 在执行DID解析操作时,必须符合适用的DID方法规范的要求。
  • 如果签署了DID文档,应该提供验证DID文档完整性的服务。
  • 可以提供返回DID文档的请求属性的服务。