FINA:分布式数字身份原理、模型与关键技术

前情提要

2021年1月15日,北京金融科技产业联盟成功举办“基于区块链的金融分布式数字身份技术应用研讨会”。本次研讨会邀请金融机构和科技公司专家,共同探讨分布式数字身份技术理论、模型原理和体系架构,分享技术实现、应用案例及落地实践经验,加强产用端的交流与合作。

中钞区块链技术研究院首席产品专家平庆瑞从分布式数字身份概念、工作机制、技术架构和技术特点等几方面做了详尽阐述。

本篇文章基于嘉宾演讲内容整理。

分布式数字身份的起源

我们知道人类的文明史也是一部人类的迁徙史,为了生存和繁衍,数万年前我们的远古祖先从亚非大陆出发,长途迁徙,经历农耕社会、工业革命,人类终于踏上了地球的每一块土地。今天,生活在世界各地的人们,通过信息技术实现远程通信,进行跨地域的社会交往。

互联网的出现大大改变了人们的生活方式,越来越多现实生活中的活动正在迁移到网络世界中。网络空间已经被公认为继陆、海、空、天之后的第五疆域。

然而,互联网在发展之初没有构建身份协议层,只是用来为传输信息而设计,因此无法解决网络上的身份互信问题。1993年,《NewYork》上的这幅漫画阐释了互联网的信任缺失问题。

为了在互联网上提供服务,实现可信交互,产生了中心化身份账户身份解决方案。

该方案是指由网络应用服务提供商对其用户进行身份管理,包括提供身份注册服务以分配用户身份标识、保存用户身份信息数据,进行用户身份的识别、验证和服务授权等。后来为了解决中小服务商难以提供用户身份管理的问题,产生了联盟身份,即由大的网络服务提供商来代为提供用户管理。中心化的身份账户存在以下主要问题。

首先,用户身份依赖身份提供者;其次,用户身份容易被盗用,无法实现行为的防抵赖;再次,不支持身份跨应用互认,因而难以实现服务协同。联盟身份的发展导致了数据高度集中,形成了垄断趋势,一旦用户数据泄露,对用户造成的损失影响重大。

分布式身份正是在这样一种时代背景下的产物,它将替代中心化身份认证的方案,以协议层方式重构互联网底层信任基础设施。

分布式身份将解决身份所有权、身份安全性以及身份互联互信的问题,是开启下一个互联网时代的入口。简单来讲,基于分布式数字身份基础设施可以实现:一是协议层的身份解决方案,促进应用孤岛的融合。二是服务提供商不需要进行用户身份管理,只需要通过API实现用户数据的请求和验证。三是用户持有身份数据,控制其身份数据的授权访问。四是每个组织都可以简单地介入互联网的身份层,并从已经存在的生态组织中获益。五是能够创造具有网络规模效应的价值。

分布式数字身份的工作机制

我们说身份有三个维度,这三个维度分别是身份标识、身份的属性以及身份的交互。在物理世界,身份实体所有者本身就是身份的标识,在数字世界,我们需要用一个字符串来指代身份的所有者。在分布式数字身份中,分布式数字身份标识符由字符串组成,不需要中央注册机构就可以实现全球唯一性,它可以用来指代身份主体在不同场景下的身份角色。

一个实体所具有的属性是指,比如他是某国家的公民,某公司的员工,他具有某种车型的驾照。在数字世界里,需要通过与标识符所关联的身份属性断言来表示,这种断言因为有权威数据方的背书而具有公信力。在分布式数字身份中,身份的属性通过可验证凭证数据来表达。

与其他数字身份一样,分布式数字身份交互也要解决身份的识别、验证和授权问题。所不同的是,由于去中心化特征,分布式身份将发展出标准化的点对点通信协议。在讨论分布式身份工作机制之前,我们需要进一步了解分布式身份的三个维度。

首先是去中心化标识符,大家看到的是。W3C关于分布式标识标准中的一个数据结构示例,一个标准的分布式数字身份标识符,通过结构化的DIDDock表示。除了分布式数字身份标识符以外,DIDDock中还包括与此身份相关联的公钥信息、授权支持信息、服务入口点地址、以及用于审计的时间戳和用于数据完整性校验的签名数据。可以看出,分布式数字身份其实是一种公钥设施,身份DID的持有证明,也是DID私钥的持有证明,通过公钥验签方式来实现。此外,通过授权支持可以实现身份主体与身份控制者的分离,支持身份委托需求。

分布式身份中的第二个维度是可验证凭证。简单来说,可验证凭证就是关于某身份主体具有某种身份属性的背书断言数据,包括身份断言和身份断言签名两部分。如图,是W3C可验证凭证数据结构规范中的一个简例,这是一个关于姓名的可验证凭证,断言部分只包括姓名属性,签名Proof的内容包括Proof验证方法与凭证发行者ID所关联的关于断言的私钥签名。

分布式身份第三个维度是分布式通信协议,这个通信协议的2.0版本规范正在由DIF组织起草。DIDCommunication协议与传统的WebAPI的主要不同在于,不是通过服务器来控制所有各方的交互状态。相反,DID各方都是对等的,他们通过彼此对规则和目标的共同理解以及共识来进行互动。

协议主要包括两个特征:一是DID通信协议是基于消息、异步和单工机制的。二是消息的安全性是基于对等身份验证来建立的。基于DID通信协议进行自定义消息传递和处理,可以实现不同场景下的业务需求和扩展。我们可以看到DIDCommunication不依赖任何第三方组织可以最大程度满足点对点实体的自由交互,激发数字化应用创新。

在了解了分布式身份的三个维度之后,我们来看一下分布式身份的工作模型。分布式身份的生态可以简化为发行者、持有者和验证者三方,其工作原理即可验证凭证流转模型。

首先,身份各方将自己的身份在分布式账本上进行公示,以提供后续身份交互过程中的数据验证支持。第二,发行人向身份持有者签发身份凭证,身份持有人接收验证并保存凭证。第三,身份验证方向持有人请求身份凭证信息,持有者签名并出示可验证凭证,身份验证方验证凭证的归属和凭证签发来源。可验证凭证流转模型的主要特点或者说是主要优势在于:一是支持实体ID通过不同场景下角色来进行表达,从而避免了角色信息被归集。二是DID与可验证凭证解耦,支持了用户名下的凭证信息可以被重新组合复用。三是基于分布式身份构建的可信Web不需要遵循任何预先建立的层次结构。

我们看这一点就与传统的CA体系有很大的不同。中心化的CA系统之间如果要进行互认,那么需要依赖顶层的CA,这就需要在CA系统构建之初就进行规划设计,明确下来。

分布式数字身份技术架构

去中心化公钥基础设施是分布式身份的基石,它为分布式数字身份提供了连接安全。与传统PKI不同,去中心化公钥基础设施不需要中心化的CA组织来实现密钥的分发与托管,而是身份所有者自己进行身份密钥的创建与注册。分布式账本提供了统一的密钥公式、维护和发现机制。与传统PKI相比,去中心化公钥基础设施具有以下特征:它不依赖单一的中心化机构,没有后门和管理员特权,无系统单点故障,具有弹性的信任基础结构,支持互操作性。

基于去中心化公钥基础设施,可以有效的去除从前PKI体系下的中间人攻击问题。那么我们需要如何建立DPKI的基础设施呢?在分布式身份中,每个实体拥有不止一个DID,每个ID对应一个关系,一个私有的消息安全通道。怎样来管理这些DID和私钥?如果这些信息丢失了又应该怎么办?答案是分布式密钥管理系统。

分布式密钥管理系统基于分布式账本组件和身份代理软件构建。分布式账本用于发布连接验证公钥和数据所有者验证公钥信息,提供公开的身份验证和凭证验证。代理代表独立的身份所有者和身份控制者,拥有唯一体现其授权的加密密钥,代理基于DID通信协议进行交互。

代理软件通常包括消息通信组件、身份钱包组件、本地数据容器组件。消息代理组件负责与外界的交互,以实现消息的收发。其次消息代理组件负责调用本地的身份钱包和数据容器,进行消息的加解密与存储。身份钱包组件主要是进行密钥和秘密数据的管理,具体而言,它会负责进行代理管理、DID连接管理以及凭证管理。

代理软件根据其部署的位置不同,又分为边缘代理和云代理。管理身份密钥的代理软件,多数情况下会安装在个人所有的移动智能通讯设备上。为了实现持久消息在线和边缘设备寻址,需要扩展身份代理到云端,云代理可以有不同的厂商来实现和维护,被注册的边缘代理提供消息路由服务。此外,云代理服务可以简化边缘代理的密钥找回机制,并实现边缘代理的数据备份和多设备同步需求,但是不会形成对边缘设备的绑架和数据的窃听。边缘设备是唯一用户身份密钥管理设备,因而唯一可以代表身份持有者的意愿。

身份数据通常在边缘设备的身份钱包中加密以后上传云代理托管。在消息传输的过程中,边缘代理发起交互,并进行消息加解密,云代理则主要提供消息路由、路由加解密功能,DKMS规范约束了钱包和代理的行为,其制定的宗旨是使身份代理标准化,消除安全隐私和供应商锁定的隐患。

可验证凭证技术提供了分布式数字身份中的数据安全,前面我们已经讲到可验证凭证是DID实体之间进行数据交换的方式,通过发行者签名确保数据不可篡改。与可验证凭证相对应的可验证表述是身份所有者向身份验证者提供数据的形式,它由分布式数字身份钱包中的加密组件进行构造,它也是一种防篡改的表述,来自一个或多个可验证凭证,由披露该对象的主体进行签名,无论是直接或者是间接引用可验证凭证,身份属性都以可验证表述的方式进行提交,这也就是说可验证表述中不包括可验证凭证的原文,因此不会产生可验证凭证接收者进行身份盗用的问题。

概括而言分布式数字身份系统的分布式体现在以下四个部分。

一是DID发现。基于开放的分布式账本,而不是基于某一个中心化机构的系统。二是DID验证。它是一种基于属性的验证,由代理之间相互认证,而不需要依赖第三方。三是DID交互。它是典型的点对点通信协议,与传输协议无关,他们之间的交互也不需要依赖第三方。四是DID数据存储。基于分布式加密存储,其推广和分享都需要由所有者进行授权,数据具有可移植性,是不需要绑定在DID存储商身上。

基于以上架构,分布式身份有效地建立了网络主体之间的机器信任和人的信任,实现了身份的自主性、安全性和可移植性。

特别补充说明,在分布式数字身份可验证凭证技术中,采用基于零知识证明的匿名凭证技术,可以有效解决隐私保护问题,实现凭证属性的最小披露和基于逻辑范式的结果证明。分布式数字身份技术很好的回答了如何实现未来数字身份的十项基本要求。

从应用层面看,分布式数字身份将对数字化生活带来哪些重要的影响呢?一是以用户为中心,分布式身份改变了传统的数据依赖方直接对接数据发行方的模式,使得数据回归所有者,服务与数据分离,网络应用得以以身份所有者为中心展开。二是基于属性的访问授权将逐渐取代基于角色的访问授权,应用服务不再是千人一面,而是真正可以做到千人千面的定制化服务。三是基于分布式身份可以实现所有实体之间的可信身份交互和可信数据流转,这不仅仅是分布式系统之间的,也包括中心化系统之间以及中心化系统到分布式系统之间,从而建立起真正的全网可信。四是可信数据与数据凭证化流转将激活数据的资产属性,也使得线下资产得以以数据化流转,数字经济将借由可信网络而繁荣和发展。五是分布式身份和点对点通信协议将促进去中心化组织的发展,释放人类在数字世界的创新潜能,加快人类经由数字化发展,提高集体社会智能的脚步。

本文来源:区块链专业委员会

本文作者:中钞区块链技术研究院平庆瑞

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:0ms0-3:410ms