本聪老师:我们花了一段时间学习了与去中心化数字身份相关的基础知识,今天开始学习本书的重点内容:去中心化数字身份的原理机制。我们首先了解一下去中心化数字身份的体系中包括哪些核心概念以及它们之间有什么关系,这样先有一个框架性的认识,再详细介绍每部分内容。
3.1.去中心化数字身份体系架构
本聪老师:我们本书提到的去中心化数字身份体系,主要是以W3C的DID规范和可验证凭证(Verifiable Credential)规范,还有一些组织比如DIF,RWOT等也在补充DPKI(分布式公钥基础设施)、通信协议等内容以完善规范内容,这些内容形成了去中心化数字身份体系。
小云:那他们到底是什么?之间有哪些关系呢?
本聪老师:问得好。我们再次强调一下学习方法,首先梳理知识结构,初步了解各个重要的概念,明白他们之家的关系,然后逐个深入各个重要的概念。我们从下面这张图(图3-1)开始。这是去中心化数字身份体系架构。
小明:这个体系架构感觉内容好多啊。
本聪老师:不着急,看着多,我们慢慢深入。这里我们梳理出六个层级,分别是基础设施层、可验证数据注册表、身份资源层、身份代理层、身份角色层和应用场景层。先简单介绍下身份资源层。身份资源层是整个去中心化身份的核心,包括DID和VC,都来自于W3C规范。简单来讲,DID是全局唯一的去中心化ID,相当于人类的身份证号码,VC是可验证凭证,是与DID对应的凭证或者证件,比如人类的身份证、毕业证、驾驶证等等。DID中还有文档(Document),负责记录DID对应的属性,比如公钥等等信息,解析器(Resolver)就是负责将DID标识符解析成文档。可验证凭证VC中包括声明(Claim),它是关于某个主体的一个断言,比如姓名张三是身份证这个VC中的一个断言,多个声明组成关于该主体的凭证,比如姓名加上性别、出生日期、住址等等就组成了这个人的身份证VC。DID和VC完全可以分开使用,它们诞生之初是为了与其他技术一起使用的,不过后来的部署方更愿意采取一起部署的方式。接下来,我们从最下面的那一层开始。
图3-1去中心化数字身份体系架构示意图
小云:能看明白的也就是基础设施层,看起来应该分为存储基础设施和安全两类。
本聪老师:对。去中心化身份可以架构在分布式账本这样的区块链基础设施,也可以架构在中心化的存储平台,如何选择需要根据实际情况综合考虑。安全也是必须考虑的,这里提到了通道安全、密码学安全以及数据完整性,另外就是身份中的隐私保护需要借助于其他技术,比如安全多方计算、联邦学习等技术来实现。
本聪老师:第二层是可验证数据注册表,又叫VDR。VDR是负责DID和VC的登记注册的,是DID体系中最重要的落盘数据,单独分层就是凸显它的重要性。其中包括DID的标识符与Doc也就是文档的映射关系,也保存了VC方案和其他数据。
本聪老师:第四层是身份代理层。
小天:身份代理是不是就是身份对应到计算机软件系统的代理软件?
本聪老师:对,身份功能是通过代理软件实现相的。服务器段部署有app,用户客户端是pc或者移动端app,核心功能是钱包(这里的钱包是指私钥的容器)。它们之间的互动涉及到密钥管理(DKMS),通信消息协议(DIDComm)和认证机制(DIDAuth)。
本聪老师:第五层是身份相关的角色,这些角色都是DID主体,负责的职能不同。用户是宽泛的概念,一般是凭证所属的主体,发证方(Issuer)负责根据需求发行该主体的凭证,验证方(Verifier)负责使用凭证时进行核验。
小天:稍等一下,老师,跟不上了,容我理解一下。就是说参与DID生态中各方都是主体,都有自己的DID标识符。有的主体负责颁发证件,有的负责核验证件,但是它们都是为用户这个主体服务的。
本聪老师:哈哈,好的,对,是这样的,我们现在先大致了解下体系,这些内容后面都会详细介绍。还要补充一点,对于用户来讲,还有凭证控制方(Controller)、持证方(Holder)角色。一般情况下它们都是用户自己保存并管理自己的凭证,但对于无行为能力的人,比如儿童就只是主体,不是控制方。
本聪老师:第七层是去中心化身份的应用场景。这些场景不仅是人类常用的场景,比如国家公民ID号,身份证件,还有教育身份、工作身份、医疗健康身份,以及在游戏、元宇宙等世界的虚拟身份。除了人类之外,现实世界中其他实体也有身份,比如企业组织自身的身份以及他们的资产,产品、物联网传感器甚至是财务票据都可以有自己唯一的DID标识符及凭证。还有虚拟世界的游戏道具、NFT藏品以及元宇宙资产也是去中心化身份的适合场景。
本聪老师:下面我们开始介绍体系架构中涉及的主要内容。
本文内容摘自《对话去中心化数字身份》。作者:乔布施。首发平台:https://ytm.app
欢迎转载,请注明出处及作者。