一年前,微软在其官方博客中宣布,将在旗下微软身份验证(Microsoft Authenticator)应用程序内整合基于区块链的去中心化 ID 验证技术,标志着微软正式开始进入DID(分布式身份验证)这一赛道。

 

在实现去中心化生态的道路上,分布式身份认证是一道必解之题,而建立一套能够个人自主控制、可移植的分布式身份认证体系,是未来DPKI(分布式公钥基础设施)认证体系的重要建设目标。近期,一批与DID(分布式身份认证)有关的项目涌现,它们的创立者或来自大型跨国科技公司,或来自新兴区块链公司,或来自于国际行业联盟,从不同的技术路径出发,提出了不同的解决方案。现在,CPChain也正积极地在物联网领域尝试引入DID技术构建基于区块链网络的身份认证系统。

 

基于以上背景,本文希望探讨以下两个问题:

问题 1 :如果DPKI是未来身份验证技术的发展趋势,那么我们该如何理解它与PKI之间的关系?

 

问题 2 :目前关于DPKI的研究已经有哪些进展?未来DPKI的主要应用市场在哪里?DID未来的商业模式可能是什么?

 

 

如何理解DPKI与原有PKI体系之间的关系?

 

在回答这一问题之前,需要先简单的梳理PKI的概念及发展路径,以及DPKI与PKI的区别。

 

首先,PKI的发展与互联网的发展有着千丝万缕的联系。互联网的快速发展,使得越来越多重要的国家、组织、公司或个人信息通过网络来存储、传输和处理。

 

于此同时,这些关键信息被黑客盗取的风险也正日益上升。

分布式身份认证——未来信任生态的基石-编程知识网

 

大量的数据泄露事件,往往是黑客利用网络身份认证体系的漏洞,攻克整个网络安防系统而造成的。在网络安全中,身份认证是第一道,甚至是最重要的一道防线。

 

网络身份认证机制经过了数十年来的发展,已形成包括基于口令的身份认证机制、挑战/ 响应认证机制、基于DCE/Kerberos 的认证机制和基于公共密钥的认证机制在内的多种机制。

 

基于口令的身份认证技术

基于口令的身份认证技术一般包括账户名和密码,用户通过固定的用户名确认身份信息,通过密码验证是否是本人,这也是我们日常接触最多的身份认证系统。

分布式身份认证——未来信任生态的基石-编程知识网

 

挑战/ 响应认证机制

即认证服务器端向客户端发送不同的挑战码,客户端程序收到挑战码后,根据客户端和服务器之间共享的密钥信息以及服务器端发送的挑战码,做出相应应答。服务器根据应答的结果确定是否接受客户端的身份声明。

分布式身份认证——未来信任生态的基石-编程知识网

典型基于挑战/响应的认证机制的认证过程

 

基于挑战/响应认证机制的身份认证系统一定程度上加强了安全性,但并不能完全阻止黑客破坏。比如未验证黑客身份为超级用户,黑客有可能使用拒绝服务性的攻击方式,使授权用户不能通过认证。

 

基于DCE/Kerberos 的认证机制

Kerberos 是为解决分布式网络认证而设计的可信第三方认证协议。它可用来为网络上的各种server提供认证服务,使口令不再以明文方式在网络传输,并且联接之间通讯是加密的。Kerberos的认证系统基于私钥体制(对称密码体制),该认证过程的实现不依赖于主机操作系统的认证,无需基于主机地址的信任,不要求网络上所有主机的物理安全,并假定网络上传送的数据包可以被任意地读取、修改和插入数据。

 

由于Kerberos 身份认证采用的是对称加密机制,加解密都需要相同的密钥,交换密钥时的安全性不能保障。此外,在Kerberos中,客户信息和服务器认证信息都集中存放在AS 服务器中,其安全性严重依赖于AS 和TGS 的性能和安全。

 

基于公共密钥的认证机制

基于公共密钥的安全策略进行身份认证,即使用符合X.509 协议的身份证明。须有一个第三方的证明授拟中心为客户签发身份证明。客户和服务器信任该证明授权中心,并各自获取证明,在会话和通讯时首先交换身份证明,其中包含了将各自的公钥交给对方,然后才使用对方的公钥验证对方的数字签名、交换通讯的加密密钥等。在确定是否接受对方的身份证明时,还需检查有关服务器,以确认该证明是否有效。

分布式身份认证——未来信任生态的基石-编程知识网

基于公共密钥的认证机制架构

 

基于公共密钥的认证机制拥有Kerberos 的认证机制的优点,同时使用非对称加密技术,拥有极高的安全性,也解决了用户过多时密钥管理的问题,是目前应用中最为安全可靠的方法。

 

在基于公共密钥的认证机制中,目前较为流行和完善的是以PKI(公钥基础设施,Public Key Infrastructure)为核心的一套信息安全系统。

 

PKI是用公钥概念与技术来实施和提供安全服务的普适安全基础设施,是产生、管理、储存、分发和撤销基于公开密钥密码学的公钥证书所必须的软件、硬件、人、策略和处理过程的集合;也是国际公认的能够全面解决信息安全问题的、普遍适用的一整套信息安全系统。

 

PKI的建立依赖于权威的认证,离不开ICANN、域名注册机构、证书颁发机构(CA)等协同工作,在PKI所构建的用户身份认证体系之中,可信第三方是用户身份认证管理的核心。在此基础之上,PKI 能够为信息系统提供密钥管理和证书管理等基础性安全服务,为应用提供认证、加密和数字签名等安全支撑,运用多种技术保障网络安全,构建国家网络信任体系的基础。

分布式身份认证——未来信任生态的基石-编程知识网

PKI技术架构

 

在20世纪80年代,美国学者率先提出了PKI的概念。

 

为了推进PKI在美国联邦政府范围内的应用,美国在1996年成立了联邦PKI指导委员会,同年,以Visa、Mastcard、IBM等数家公司推出SET协议,CA和证书概念。

 

1998年,中国国际电子商务中心开始对认证系统进行研究开发,同年,湖南CA中心开始试运行。

 

1999年,美国PKI论坛成立,中国上海CA中心开始试运行。

 

2000年4月,美国国防部宣布采用PKI安全倡议法案。

 

2001年6月,亚洲PKI论坛成立,同年,中国电子口岸执法系统完成。

 

到目前为止,在互联网上运行的各类网站以及应用系统,大部分都采用了PKI/CA作为它的安全支撑体系。

 

从PKI的发展路径来看,PKI是当代互联网发展到一定阶段的历史产物,其作用在于保障网络的身份安全认证。

 

PKI的建立需要权威机构作为可信第三方(CA),集中管理并颁发数字身份证书,是一套中心化的认证体系。CA是这套中心化认证体系的核心,负责签发证书、认证证书、管理已颁发证书。CA需要制定政策和具体步骤来验证、识别用户身份,并对用户证书进行签名,以确保证书持有者的身份和公钥的拥有权。

 

PKI的问题在于整个系统依赖于可信第三方,在PKI系统中,用户无法管理自己的身份,用户的身份受往往是由可信第三方CA来定义。此外,CA机构仍然存在着被攻击的风险,例如,2011年发生的DigiNotar事件是荷兰证书颁发机构公司的欺诈性证书因袭击而发布。

 

而DPKI(分布式公钥基础设施)所要构建的则是一种分布式的认证体系。

 

DPKI与PKI在业务流程上并无明显区别:均是用户先发起申请(ID),填写相关信息,用户ID及信息审核,证书颁发,证书得到验证。

 

这一认证体系与PKI的不同点在于:

 

身份自主控制:每个用户的身份不是由可信第三方控制,而是由其所有者控制,个人能自主管理自己的身份,而不是依赖于应用方;

 

身份可移植:个人可以携带自己的身份,从一处漫游到另一处,而非仅仅局限于某一个平台或某一个系统之中;

 

分布式认证:认证的过程不需要依赖于提供身份的应用方,任何人都可以创建身份标识。

分布式身份认证——未来信任生态的基石-编程知识网

 

在分布式身份认证系统中,发证归发证,验证归验证,个人身份验证不再依赖于发证方(CA)。

 

DPKI并非对PKI的全盘抛弃和替代,整个分布式身份体系的技术基础仍然是分布式PKI,DPKI是在原有PKI认证体系的基础之上的一种改进和补充,也是未来网络信任生态的基础设施。

 

DID(分布式身份认证)则是DPKI体系的一部分,在DPKI建立的基础之上 ,各大公司、机构开发各种DID系统,建设各自去中心化解决方案。

 

 

目前DPKI研究已有哪些进展?未来DPKI主要应用市场在哪里?商业模式又会是怎样的?

 

当前DPKI应用领域已从线上延伸到线下不同应用场景之中。

2018 年 2 月,微软正式宣布将在旗下微软身份验证应用程序内整合基于区块链的去中心化 ID 验证技术,并于 2018 年 10 月发表《去中心化身份》白皮书。从白皮书可以看出:微软 DID 技术基础框架,由W3C 去中心化身份标识、去中心化系统、DID 用户代理、全局 DID 解析器、身份中心、DID 认证、去中心化应用和服务 7 个技术模块构成。

分布式身份认证——未来信任生态的基石-编程知识网

 

随后,在2019年5月,微软发布了ION(Identity Overlay Network,身份覆盖网络)的去中心化身份网络的早期预览版。其中,微软引入了W3C去中心化身份为全球唯一的标识符,与去中心化公钥基础设施(DPKI)元数据相关联,这些元数据由含有公钥材料、身份验证描述符和服务终端的JSON文档组成。任何人都可以使用这个运行在比特币区块链之上的专用公网来创建去中心化身份标识。

 

W3C分布式身份是由万维网联盟(W3C)制定的去中心化标识,除了微软之外,ArcBlock,uPort,Civic,Sovrin等公司都已经围绕 W3C DID 规范的草案各自推出了 DID 方案。

 

分布式身份认证——未来信任生态的基石-编程知识网

W3C 目前的的 DID 提供者列表

 

2019年7月,国际汽车区块链联盟Mobility Open Blockchain Initiative(MOBI)旗下车辆识别工作组创建并推出了首个基于区块链技术的去中心化车辆标识(VID)标准。VID是车辆存在、行为和性能的主要数据密钥,在整个生命周期内支持利益相关者之间的数据透明,协调和自动化。未来,该标准还将在车辆生命周期中添加产品定义,所有权历史记录和关键事件日志等维度。

 

对于该标准的创建,MOBI的创始人兼首席执行官Chris Ballinger认为:“区块链身份认证标准可支持多种移动应用程序,为交通出行降本增效,提升道路安全。我们希望这些标准为“用者付费”提供支付基础,即越多使用道路资源,造成越多的拥堵和污染,则支付越多。最终能让城市更环保、更安全、更宜居”。

 

此外,还有区块链云服务平台Z-BaaS的分布式身份标识解决方案、区块链项目本体的信任锚等等。

 

从以上应用案例之中,我们可以看出DPKI应用场景不再局限于互联网线上身份认证,而是逐渐延伸到不同线下应用场景之中。其中的一个重要原因在于:当前整个社会正处于数字化进程之中。随着互联网的不断下沉,网络基础设施的逐渐完善,越来越多的物联设备接入网络,物理世界中的众多实体正被映射到数字世界中并形成数字孪生对象。每一个人在网络世界之中的身份越来越多元,每个身份之下所包含的个人信息类型以及信息量也越来越丰富,此外,除了各种人的身份信息之外,各种物联设备也开始逐渐拥有自己的数字身份。因此,DPKI相比于PKI所面向的应用场景更加广泛。

 

未来,DPKI将与其他技术或产品协同形成新型商业模式。

 

目前,仅依靠DPKI自身很难找到盈利点。

 

从微软推出微软DID来看,其建设去中心化身份标识体系的目的在于进一步加强微软在云计算市场的地位。微软希望微软DID能够与微软云相结合,实现对现有微软云身份系统的升级。让任何个人以及组织能够掌控自己的数字身份和数据——分享什么、与谁分享,以及在必要时收回,完全为己掌控。为个人或组织提供一个安全、加密的数字中心。微软将DID内置于微软云服务之中,以此提升微软云在同类系统之中的竞争力,进而扩大微软云市场份额实现盈利。

 

而MOBI推出的VID标准,其目的也是服务于车联网系统,通过区块链技术实现“数字孪生”,使联网车辆能够互相识别,共享数据,并支持与其他车辆以及基础设施进行自主交易,在此基础之上,打造一套完善的出行生态系统,实现其商业价值。

 

从目前来看,业界更多是将DPKI作为一项基础服务与当前已有的产品/系统相结合,通过DPKI增强整个产品/系统的性能或竞争力,提升用户的体验,满足用户需求,进而吸引用户参与其中,实现盈利。

 

 

结语

作为物联网公链,CPChain一直在探索物联网与区块链相结合种种可能,对于DPKI技术也展开了相应的探索。目前,CPChain正积极地在智能网联汽车领域尝试关于DID技术应用,构建基于区块链网络的出行身份系统,赋予出行参与方身份(如车、充电桩、红绿灯等),为用户提供更好的出行体验,推动新型出行生态系统的建设。