本文由中钞区块链技术研究院授权巴比特资讯独家首发,转载需注明出处。
原题《分布式数字身份架构及项目研究》
作者:中钞区块链技术研究院潘镥镥
概述
数字身份伴随着计算机科学的应用而发展。
在上个世纪50年代到90年代,数字身份紧跟着互联网的发展而发展,它可能是email地址、IP地址、域名,通常由不同的网络服务提供。
当互联网建立了统一的协议标准,迎来了计算机技术和互联网应用的蓬勃发展,越来越多的工作和生活线上化。数字身份演变为复杂的体系,需要一套处理认证和访问控制的业务系统。这时出于便利性的考量,大多数互联网应用的数字身份一般是用户名密码。
当互联网应用的量级剧烈增加,质的变化悄然发生。
?互联网巨头依靠平台效应垄断市场,利用用户数据作为护城河,产生了大量价值,但用户并没有对自己的数据拥有什么话语权和价值收入。
?由于利益驱使,围绕着用户数据发生的非法收集、数据泄露和买卖行为防不胜防,损害用户安全。
?用户的数字身份——账号密码由服务商控制,用户租借使用,服务商可以决定账号禁用、服务终止。
?互联网的数字身份从属于应用系统,决定了用户要重复注册很多的账号密码,而且互联网在应用层面并不互联互通,一个跨应用的业务实现难度很大。尤其对于需要用户确权操作的跨应用业务,可能需要更改整个业务架构增加跨应用的用户身份。
为解决这些问题,人们已做了大量的尝试。
隐私保护政策纷纷落地。《中华人民共和国密码法》、《中华人民共和国网络安全法》、《信息安全技术个人信息安全规范》等国家技术标准出台,明确了企业在收集、使用、保存隐私数据时所需要达到的技术效果及建议使用的标准化技术手段。国际上,被称为史上最严格的隐私保护法案《通用数据保护法案》(GDPR)除了明确技术效果之外,更引入了巨额的罚款措施。
区块链技术带来了新的启示。作为一种新的分布式系统形态,区块链技术用哈希链的数据结构改变了电子数据易被篡改的属性,用“区块共识算法”解决分布式系统的数据一致性问题,拜占庭容错能力保证跨实体运行的系统不受少数节点恶意行为的影响,从而解决业务层面的信任难题,有望在服务商之间搭建互联互通的协议。
在政策、技术、市场因素的共同驱动下,产生了一种新的数字身份形态——分布式数字身份,它用分布式基础设施改变应用厂商控制数字身份的模式,让用户控制和管理数字身份,通过将数据所有权归还用户从根本上解决隐私问题。它通过定义身份层协议提供跨应用的互操作性,促进应用间的互联互通,创造了一种扁平化、弹性化的数字身份模式。
1分布式数字身份基本概念和模型
国际标准化组织/国际电子技术委员会将“身份”定义为“一组与实体关联的属性”,其中“实体”定义为“操作某个特定域的相关项,具有物理或逻辑形态,包括自然人、组织、设备、SIM卡、护照、网卡、应用软件、服务或网站”。数字身份
通常由代表实体的身份标识符及与之关联的属性声明来表示,分布式数字身份包
括分布式数字身份标识符和数字身份凭证两部分。
分布式数字身份标识符是由字符串组成的标识符,用来代表一个数字身份,它是一种去中心化可验证的标识符,实体可自主完成DID的注册、解析、更新或者撤销操作,不需要中央注册机构就可以实现全球唯一性。通常,一个实体可以拥有多个身份,由实体自己进行管理、维护,不同的身份之间没有关联信息,可有效避免身份信息被第三方归集。
数字身份凭证中一般包含一个或多个“声明”。声明信息是与身份关联的属性信息,通常包括:姓名,年龄、学历、职业等等。凭证由发行者签名,可通过密码学证明是否由凭证中声称的实体签发且未被篡改,因此被称为可验证凭证。
1.1可验证凭证模型
数字身份系统的主要目的是认证数字身份所有者的身份属性,基于其身份信息提供应用系统的授权访问和服务。
基于上节中分布式数字身份的设计,可以很好地实现基于可验证凭证模型的工作流程:
凭证发行方根据身份所有者请求签署发布可验证凭证;身份所有者将可验证声明以加密方式保存,并在需要的时候自主提交给凭证验证方进行验证;凭证验证方在无需对接凭证发行方的情况下,通过检索身份注册表,即可确认凭证与提交者之间的所属关系,并验证属性声明的真实来源。图1可验证凭证流转模型
在分布式数字身份的模型中,将身份标识符的生成/维护,与身份属性声明的生成/存储/使用分离开来,有助于构建一个模块化的、灵活的、具有竞争力的身份服务生态系统。1.2体系架构
如前所述,分布式数字身份的核心模型是分布式数字身份标识符和可验证凭证流转,核心技术是分布式账本和密码学技术,这二者的结合用以创建不可抵赖、且不可篡改的身份记录。
从实现的角度而言,分布式账本基础设施、基于DID的交互、可验证凭证应用、治理框架组成了分布式数字身份的四层体系架构。
图2分布式数字身份体系架构
1.2.1分布式账本具有分布式key-value数据存储能力的分布式账本,用作分布式数字身份标识符的注册表,只要确保身份所有者保持对其私钥的控制权,则任何第三方都无法拥有该标识符的使用权,也就无法冒充身份持有者意愿,危害其利益。
分布式账本不可篡改的特点,让它既适合用于分布式数字身份数据的发布和维护,也适合用于被多方信任的公开信息的公示和验证。
1.2.2基于DID的交互
分布式数字身份主张用户管理和控制数字身份,不同用户之间不依赖于第三方进行安全通信。通过用户自己管理的DID标识符和密钥、注册到分布式账本的分布式数字身份数据,满足基于DID的点对点相互认证和安全通信需要。
就两点间通信而言,其安全通信的工作原理依然是基于传统PKI挑战响应机制和协商数据加密方式。这种安全通信的底层协议可使用HTTP、RPC、蓝牙、NFC或其它协议,成为不同解决方案之间端到端互联互通的标准通信方式;
就全网所有节点而言,通过部署在去中心化服务器及个人客户端的身份密钥钱包,以及全网共享的DID分布式账本,代表任意不同实体身份的节点之间都可以实现基于非对称密钥方式的认证交互,并最终通过这种实体间的信任传递实现全网信任。
1.2.3可验证凭证应用
可验证凭证应用层包括各类基于DID交互的上层应用。数字身份应用的主要目的是认证身份属性,和基于其身份信息提供应用系统的授权访问。可验证凭证提供了一种以身份持有方为主导,连接凭证发行方和凭证验证方,凭证发行方和凭证验证方不需要通信的凭证流转方式。
除可验证凭证流转外,将来在这层也能实现其它点对点的典型应用,如加密社交、股份转移,等等。
1.2.4治理框架
要在分布式网络中建立人类信任,需要建立业务和法律协议,这是治理框架的工作。
治理框架指管理分布式数字身份生态系统的一套决策体系。它对于在没有权利中心进行决策的生态中,有效发挥生态的作用非常重要。治理框架的主要元素包括治理角色、决策范围、决策程序,通俗的说即人、事、规则。
2分布式数字身份项目
分布式数字身份出现的历史虽短,且仍在快速演化中。通过横向比较具有代表性的一些项目特点,有助于我们更好的理解其技术本质/模式,也有助于了解其未来走向。
本研究选取的比较研究对象是uport、sovrin、微软DID、WeIdentity这几个具有一定时间跨度、方案特征差异性、不同场景中的代表性项目。
表1项目概况
项目历史主导机构设计思想uPort2017年发布白皮书Consensys建立在以太坊区块链上的分布式身份管理应用Sovrin2017年正式启动网络,2018年发布白皮书Sovrin基金会负责运营,HyperledgerIndy和Aries为实现方案自我主权身份和去中心化信任的数字身份生态和网络微软DID2019年发布试用版本微软和DIF基于Azure云服务的DID基础设施组件和标准WeIdentity2019年发布微众银行基于联盟链的可信数据交换解决方案2.1项目简介1.uPort
uPort是Consensys推出的基于以太坊的分布式数字身份管理服务,它可以允许用户进行身份验证、无密登录、数字签名并和以太坊上的其它应用交互。uPort旨在解决普遍存在的区块链用户密钥管理问题,为用户提供持久可用的数字身份。于2017年发布白皮书。
2.Sovrin
Sovrin是Evernym初始开发、Sovrin基金会运营、Hyperledger孵化开源的一种用户自主主权身份和去中心化信任的协议,它致力于提供自我主权身份的去中心化的全球公共网络,该网络于2017年7月正式启动。
3.微软DID
微软DID是一套基于Azure云服务的分布式数字身份技术架构,它公开了源代码、标准,希望实现互联互通,于2019年发布试用版本。
4.WeIdentity
WeIdentity是由微众银行推出的基于联盟链身份的实体身份标识和可信数据交换解决方案,依托权威机构提供用户KYC服务,并以联盟链作为各用户角色的连接中心和信息的存证中心,促进数据可信交换。于2019年发布。
2.2架构比较
表2项目架构对比
对比项uPortSovrin微软DIDWeIdentity分布式账本以太坊SorvinLedger或其他DLT基于Azure云服务的多链账本FISCO-BCOSDID方法did:Ethrdid:sovdid:ion-test;did:test
did:weid(符合W3C,不具有互操作性)基于DID的交互通过智能合约之间转发交易进行交互遵循HyperlegerAries,标准化的端到端交互模式IdentityHub支持基于DID和密钥的相互认证、安全通信用户依赖于用户代理机构转发可验证凭证应用基于智能合约绑定DID和链下的身份凭证,使其成为一种新型的用户控制的“数字证书”
遵循W3C可验证凭证数据模型不提供身份认证应用,提供应用需要使用的隐私数据存储管理模块IdentityHub基于W3C可验证凭证数据模型的数据分享,有直接出示和链上授权两种方式治理框架以太币支付交易费用的公有链方式Sovrin治理框架基于云服务的中心化治理联盟链治理方式2.2.1uPortuPort是基于以太坊的分布式数字身份管理服务,它可以允许用户进行身份验证、无密登录、数字签名并和以太坊上的其它应用交互。
uPort的整体架构由智能合约、开发者库和移动APP组成。其中移动APP持有用户的密钥。以太坊智能合约构成身份管理的核心,包括用户的uPort标识符管理、身份凭证的管理、以及可让用户在丢失移动设备时恢复身份的逻辑。开发者库可让第三方应用开发者把uPort集成到他们的应用中。
1、分布式账本
uPort的底层基础设施是公有链以太坊。uPortDID方法已注册到W3C维护的注册表。
2、基于DID的交互
uPort智能合约设计体现了用户对数字身份的管理控制和使用。用户使用uPortDID登录其他在以太坊上注册的应用。
图3?uPort基于标识符的交互方式
标识符其中,代理合约是用户数字身份的象征,uPort身份的核心标识符是代理合约的地址;控制合约,是代理合约的正式拥有者。控制合约维护了核心访问控制特性,包含密钥恢复和访问控制逻辑;控制合约由uPort移动App中安全存储的密钥进行控制。
这种设计允许用户使用密钥向代理合约自我认证,并代表代理合约行事,有利于用户在保持标识符不变的情况下替换私钥。
交互
应用DAPP与uPortApp均使用了以太坊智能合约,代理合约可以向应用合约转发交易,并且通过这种机制,uPort身份与以太坊区块链上的其他智能合约进行交互。
3、可验证凭证应用层
uPort的身份认证应用中的用户角色包含凭证发放机构、用户、应用、uPort共四方。
uPort和凭证发布机构合作,凭证发放机构在以太坊网络上注册自己的身份,能够签署和验证数据;凭证发放机构在其应用中提供二维码信息以便于用户交互,用户使用uPortAPP扫描二维码,向凭证发放机构注册自己的uPortID。凭证发放机构根据业务需求按自己的方式认证用户信息,认证通过后向用户发放带有签名的身份凭证。
uPort服务通过注册合约管理uPortID和用户的身份凭证信息,每一个uPort身份标识符绑定了一个相关的链下数据结构,身份凭证存储在链下。注册合约扮演逻辑上中心化,物理上去中心的注册表或查找表,将每一个uPort身份标识符映射到一个IPFS摘要上,这个IPFS摘要与包含了用户属性、个人数据、见证的结构相链接。只有uPort身份的所有者才有权利去修改相对应的注册入口。
用户注册新的应用时,应用通过二维码与用户交互,获取uPortID和应用需要的凭证。如果用户注册合约中已经存储了相应的凭证,应用从uPort服务器获取该凭证进行验证。验证通过后,应用将uPortID注册为用户账户,以后用户只需要使用uPortID即可登录该应用。
4、治理框架
uPort没有提出新的治理框架,遵循了以太坊的治理模式,即通过以太币支付网络交易费用。
2.2.2Sovrin
Sovrin是一种用户主权身份的基础设施和全球可互操作的身份协议,它不是一种具体的解决方案,不依赖于特定软件实现,不同的解决方案实现厂商可基于Sovrin协议和基础设施搭建具有互操作性的平台。Sovrin定义了分层的、解耦合、
模块化的模型。
Sovrin基金会牵头推进了HyperledgerIndy项目,提供基于区块链或其他分
布式账本技术的工具、代码库和模块化组件用于实现独立的数字主权身份。2019年,从Indy项目中独立出了HyperledgerAries项目,用于实现其中的端到端交互。
1.分布式账本
Sovrin基金会管理了一个特定的账本SovrinLedger,由Stewards操作节点与Sovrin共识协议进行通信维护,但同时Sovrin协议可以运行在任何支持上面三层的分布式账本上,不依赖于一种特定的区块链或分布式账本技术,才能形成全球可互操作的用户主权身份网络。
2.基于DID的交互
Sovrin支持基于DID进行点对点相互认证和安全通信,并且在HyperledgerAries项目中孵化一套标准化的端到端交互软件基础设施,Aries项目于2019年提出。
Aries的功能包括:建立和使用点对点连接,发送/接收点对点协议消息,并代表模块所代表的实体执行操作。它是Sovrin基础架构的基石,通过该模块,Sovrin实体形成连接并共享Sovrin身份。点对点连接是两个Sovrin实体之间关系的基本单位,由一对仅被双方实体知道的匿名标识符组成,这样可以最大限度地避免一个实体的多个标识符被第三方归集。
3.可验证凭证应用层
基于零知识证明的匿名凭证技术实现了可验证凭证,支持凭证信息的最小化披露:
支持对一个或多个凭证中的声明进行选择、组合并出示;
?凭证验证方不获得数据明文或密文,而仅获得数据的密码学验证方法,因
此也无法复用它来模拟另一个用户。典型例子是在不揭示实际出生日期信息的情况下,出示有关年龄情况的证明。
4.治理框架
Sovrin基金会发布了治理框架,建立用于自我主权身份的分布式网络所需的治理方法。框架定义了Sovrin网络所有成员同意遵守的商业、法律和技术术语,并且规定了Sovrin基金会和成员之间的法律合同。
2.2.3微软DID
微软DID是一套基于Azure云服务的分布式数字身份技术架构和基础功能,让解决方案实施商可方便的在不同区块链上实现分布式数字身份整体解决方案。微软是DIF联盟的重要成员,以标准的开源技术、协议和参考实现为主要目标。
微软DID的技术架构包括区块链BAAS服务、注册DID的Layer2方法ION、隐私数据管理模块IdentityHub,均以API的形式为开发者提供服务,ION和IdentityHub还提供了开源软件。在未实现的计划中,还包括手机端的身份管理模块。
?通过区块链BAAS服务向不同区块链注册分布式数字身份标识,可以成为广泛使用的中间层,实现DIF的互联互通目标。
?ION方法是SideTree协议基于比特币网络的实现,用于解决向公有链注册DID存在的效率低下问题。
?IdentityHub为开发者提供了管理用户隐私数据的基础模块。
1.分布式账本
微软DID的基础设施不依赖于特定的分布式账本。与Azure区块链服务的设计思想一脉相承,微软DID依托于Azure云服务支持多种分布式账本协议,并且注册了基于该分布式账本的DID操作方法,对开发者隐藏分布式账本的接入细节,提供RestfulAPI接口。
目前微软DID支持以下两个DID操作方法:
?Ion-test:注册到比特币测试网络
test:注册到微软数据库同时正在开发对以下三个分布式账本的支持:
?比特币正式网络
?通过uport的DID方法,注册到以太坊
?通过Sovrin的DID方法,注册到Sovrin网络
在DID注册和查询过程中,为解决公链效率低下的问题,微软和DIF联盟的几个成员发起了SideTree协议,构建了L1层公链和L2层DID操作的分层架构:
?L2层保存了DID操作的源数据并推送到IPFS网络,汇聚尽可能多的DID操作后锚定到L1层;
?L2层的每个“节点”各自与L1层同步,获取Sidetree锚定交易后,拉取DID操作源数据。
图4SideTree架构
2.基于DID的交互&可验证凭证应用微软DID中未提供完整的DID交互和可验证凭证应用软件,由开发者根据自己需求进行设计。微软DID主要为开发者提供了IdentityHub模块,它的目标是为用户存储和管理隐私数据,以增强数据表达能力的“语义数据模型”实现。在DIF的认可下,已发布了第一版开源代码。
与传统的数据存储解决方案相比,IdentityHub具有去中心化的特性:
?标准化接口:Hub的实现厂商需要满足标准化的数据存取接口,包括为每个用户的Hub注册DID,不同用户的Hub通过DID标识符进行互操作。
开源:通过开源代码,鼓励开发者运营自己的Hub。
IdentityHub支持与用户通过DID进行点对点的安全通信,遵循DIDAuth的相互认证和加密传输。
2.2.4WeIdentity
WeIdentity是基于联盟链的可信数据交换解决方案,它是一套基于FISCO-BCOS区块链底层平台的解决方案,也是BCOS联盟链的应用场景。联盟链为各用户角色提供了接入中心,为数据交换提供了数据存证和验证功能。
WeIdentity中的用户角色包括凭证发行者、凭证验证者、用户代理和用户共四种,其中用户代理一般为权威可信机构,为用户KYC并生成数字身份标识符,用户的数字身份和隐私数据托管于用户代理中。
1.分布式账本
WeIdentity基于微众银行的FISCO-BCOS联盟链实现,其整体架构具有明显的联盟链特征。
2.基于DID的交互
用户的数字身份标识符、个人数据均托管于用户代理中,由用户代理与凭证发行方和凭证验证方进行通信。
因此,用户与其它实体之间的通信均通过用户代理进行转接。用户代理由场景选择,一个场景中一般具有一个用户代理,这个用户代理成为一个联盟链网络中的中心转接点。
本方案中的数字身份标识符等同于联盟链中的身份合约,是一条链上的唯一标识,提供了链上行为的可验证和追溯特性。由于用户的实体身份和标识符通过用户代理机构绑定,用户行为可查可归集。
3.应用层
应用层是WeIdentity解决方案的重点,以可验证凭证数据模型规范作为标准的数据组织方式并进行分享。其目的是借助区块链实现可信数据的交换,提供直接出示和链上授权两种方式。
1)直接出示
2)链上授权
i.凭证发行方产生凭证,同时上链存证凭证摘要
ii.用户向凭证验证方发行一个授权凭证,并上链存证授权凭证摘要
iii.凭证验证方向凭证发行方请求数据,出示用户授权凭证,凭证发行方进
行验证。
iv.验证通过后,凭证发行方与凭证验证方建立数据传输通道进行数据传输
4.治理框架
WeIdentity是基于场景落地的联盟链解决方案,治理方式也具有明显的联盟链特征。
联盟链中,新成员加入都需要进行KYC。个人用户通过用户代理机构进行KYC和业务接入,比如使用用户代理机构提供的身份管理工具App;机构用户可通过部署区块链节点、或通过业务发起方提供开放平台的方式接入联盟链。
除用户代理外,系统中还有一类具有特殊权限的权威机构。链上每个WeIdentityDID持有者都可以成为凭证发行者,但只有联盟链里面的权威机构才可以注册成为AuthorityIssuer。每个注册为AuthorityIssuer的新成员需要联盟链内其他机构投票通过。
系统中还有一些联盟链的内部治理角色,如系统管理员、机构委员会等。
WeIdentity的角色权限管理通过智能合约实现,不同类型的合约角色分配不同的权限。
2.3特性比较
本研究抽取了隐私保护和跨应用互操作性这两个关键维度,对代表性项目的现状和趋势进行了分析。
一、隐私保护
隐私保护不完全等同于信息安全,信息安全强调在计算机技术层面上信息的保密性、完整性和可用性,目标在于保障授权用户能够在需要信息的任何时间点,获得保密的、没有被非法更改过的数据,是隐私保护的基础。
隐私保护的目标在于防止隐私数据被非授权的主体使用或者以一种未授权的方式使用。隐私数据的范畴包括了所有的非公开数据。对于个人来讲,隐私数据是关于自己和周边环境包括社交网络的个人数据。对于企业来讲,隐私数据是关于自己和合作伙伴的业务和其他非公开数据。
目前,已有多种技术用于分布式数字身份系统以解决隐私性问题,主要可以分为改变数据控制权、使用多个标识符和基于密码学三类。
改变数据控制权是指通过改变用户数字身份数据的所有权从根本上解决隐私性问题。
绝大多数分布式数字身份项目主张自我主权身份,自我主权身份意味着用户是身份管理的中心,包括使用、授权和存储等各个环节。
用户将身份信息、密钥和其它数据存储在自己的设备上,而非互联网公司的服务器上。如此一来,所有数据都始终掌握在个人手中,可以随时新增或删除数据,授权或取消给他人读取或写入数据。用户不需要以牺牲个人隐私、牺牲个人数据自主权的方式,来交换互联网公司提供的免费服务。基于这个目的,用户对管理身份、存储数据的软件服务应具有选择权,软件运营商应提供可移植性以便用户迁移。
使用多个标识符指不同场景使用新的身份标识符,使攻击者难以分析标识符和用户实体之间的联系,从而避免用户信息的归集。
基于密码学的技术依靠密码学中的同态加密、零知识证明等技术,在敏感信息不外泄的基础上实现系统功能。密码学技术主要用于应用层可验证声明数据模型和数据存储软件中。
各项目使用了几种隐私保护技术的集合:
表3项目隐私保护特性对比
uportSovrin微软DIDWeIdentity改变控制权提倡自主主权身份,为用户提供了个人身份钱包客户端以便管理控制数字身份标识符,和自己链下的身份凭证。提倡自主主权身份,为用户提供了个人身份钱包客户端以便管理密钥、点对点连接、可验证凭证,提供云代理服务作为客户端和区块链的中间层;个人身份钱包客户端和云代理服务应满足可移植性提倡用户自主控制数据;提供去中心化特性的基础设施,IdentityHub的标准化接口已提交DIF等标准制定组织,并且通过开源鼓励开发者自己运营。依赖于用户代理对个人、企业用户进行KYC、生成链上ID并托管私钥和可验证凭证。隐私信息的控制权在于用户代理机构。多个标识符无除发证方、应用方需要公示的身份信息外,其余标识符均不上链,仅在交互双方间共享,每一对新的交互主体产生一对新标识符无
无
基于密码学比较简单,可以对注册合约中的特定属性单独加密,但其结构仍然可见。存储在IPFS中的数据存在泄露风险。基于零知识证明的匿名凭证技术实现了可验证凭证,支持最小化披露。凭证验证方不获得数据明文或密文,而仅获得数据的密码学验证方法。
典型例子是在不揭示实际出生日期信息的情况下,出示有关年龄情况的证明在用户隐私数据的管理软件IdentityHub中,设计了数据加密功能,目标是用端加密数据,Hub不知道明文。基于哈希算法实现了可验证凭证,用户出示可验证凭证时可选择凭证中字段,支持最小化披露。与sovrin匿名凭证技术的区别是,凭证验证方获得字段明文信息,不支持范围证明。
二、跨应用互操作性提供跨应用互操作性目的是为了促进应用间的互联互通,解决互联网信息孤岛、跨应用合作困难的问题,以及在未来获得非线性增长的能力。
一种方案是否有助于促进互联互通和它是否支持标准化建设、适用范围和应用增长速度这三个方面都有着重要关系。
标准化建设
分布式数字身份研究时间不长,但发展迅速,也已从最初的单一项目、单一技术研究进入到超大型技术公司为主导的标准化研究进程。分布式数字身份中的关键数据的组织形式,如分布式标识符及可验证凭证规范已由国际化标准组织W3C牵头制定中。
适用范围
适用范围指一个方案可以使用的边界和适合应用的场景,它决定了一个方案能达到互联互通的上限。
应用增长速度
以HTTP协议为例,一个最终被广泛应用的协议不一定是最优秀的,和营销、发展速度也有关。若能形成网络效应可以获得超线性的增长速度。
一方面,网络协议具有网络效应,随着越来越多的人使用,对用户会更有价值。另一方面,凭证发行方和凭证验证方具有典型的双边网络效应,任何一组用户的增加会增加对另一组用户的需求。
表4项目跨应用互操作性对比
项目
uPort
Sovrin
微软DID
WeIdentity
标准化建设
遵循W3CDID规范
遵循W3CDID、可验证凭证规范,DKMS规范,DIDAuth规范,开发标准化的端到端交互模块
遵循W3CDID规范,DIDAuth规范,制定SideTree、IdentityHub规范并开放源码
遵循W3C数据规范
适用范围
以太坊生态内
支持Sovrin协议的各种分布式数字身份解决方案
支持DID规范、DIDAuth规范的各种解决方案
需加入联盟链,不开放
适用场景
应用单点登录
用户主权的身份验证、基于点对点的任何场景
广泛
数据交换
应用增长速度
uPort需要和凭证发布机构合作以提供更多的凭证,工作量较大
通过Steward启动分布式网络;应用层需考虑凭证发行方和凭证验证方的引入策略
本质上提供云服务,对网络效应的依赖不大
场景式落地,不依赖于网络效应,不形成网络效应
3?分布式数字身份应用案例
目前在W3C的DID注册表中已注册了50多个项目,这些构建在分布式基础设施上的数字身份项目都统称为分布式数字身份,而通过上一章我们也看到不同项目的差异性非常大。在应用落地的过程中,通常针对不同场景中的不同需求采取了不同的实现方案。通过这些应用案例的分析,有助于我们理解不同分布式数字身份方案的价值。
3.1??VON
VON全称VerifiableOrganizationNetwork,即可验证企业网络,是Sovrin协议的开源项目HyperledgerIndy的应用。由加拿大的哥伦比亚省政府发起,目前已在哥伦比亚省和安大略省公开商用,为企业签发了数百万个可验证凭证。
作为政府,关心如何为企业提供优质服务、以及提高整体经济活力。相比个人应用来说,企业在线上的商业应用非常少,几乎只有商品交易和广告,因此线上经济具有强大的潜力。线上经济最大的挑战还是对企业数字身份的认证和识别,政府拥有绝大多数企业所需的数字身份的认证能力,但传统的数字身份方案从属于应用,且数字身份易被黑客攻击和窃取,难以让企业数字身份产生可信和具有规模的跨应用使用,从而带来最大的经济活力。
应用了HyperledgerIndy后,用户自主控制的特性增加了身份窃取和伪装的难度,加上可验证凭证流转提供了可信的数字身份属性,为企业提供标准化可验证的数字身份,将政府的高可信属性传递给企业,减少社会总体信任成本。
由于政府是天然的凭证发行方,在既没有凭证发行方/验证方、也没有企业身份所有者来接收和存储凭证的情况下,哥伦比亚省政府选择了“构建企业公开信息注册表,引入凭证发行方”的策略。即由可信机构运营企业凭证的公开注册表OrgBook,接收凭证发行方发出的企业凭证,并向个人和企业提供企业信息的搜索和验证。因此在当前阶段,VON仅支持企业公开信息的签发,不支持隐私场景。将来,通过企业自己管理数字身份数据,凭证发行方可将隐私数据签发至企业自己。
针对凭证发行方/验证方,VON提供便利、个性化的接入方式以完成快速对接,具体包括监控凭证发行方数据源并向Indyagent批量推送发证数据、以及通过OrgBook提供的API验证企业凭证以确认企业是否拥有申请某凭证的前置条件。
图5VON方案架构
VON是一系列生态系统,每个生态系统均由一个司法管辖区域运营,一般由一个OrgBook和围绕着OrgBook的一组凭证发行方/验证方Agent组成。按照VON的设想,以及按照标准化端到端交互模块的实际实现,多个生态系统之间可以互相连接,以形成跨区域的可验证组织网络。分布式数字身份在VON项目中的应用带来了以下特性:
一、可信数据
基于匿名凭证技术实现的可验证凭证,由密码学保证了凭证的发行方和凭证的接收方真实可信、凭证内容未被篡改、以及凭证未被撤销,能够成为企业的可信基础,并提供离线验证特性,即凭证验证方无需联系凭证发行方,通过分布式账本和密码学技术即可验证数据的可信。
二、易于扩展
VON遵循Sovrin协议,在HyperledgerIndy的基础上实现,目前一直在持续地产品化和模块化,未来能兼容HyperledgerAries标准。因此VON网络非常易于扩展,形成跨区域跨应用的可验证组织网络。
3.2??澳门智慧城市
澳门智慧城市建设的“证书电子化”项目中应用了WeIdentity方案。
早在2005年,澳门特别行政区就制定了《个人资料保护法》,规定了以公开、透明以及尊重资料当事人意愿的原则处理个人资料,设置了严格的安全保护措施。比如机构向当事人收集个人资料,无论通过哪种途径、用于何处、交由其它机构,都必须告知当事人并取得同意。
在用户求职等场景中,求职企业需要验证个人用户的毕业证书、职业证书等凭证。由于政府机构也受到上述法律法规的约束,不能随意收集用户数据,因此澳门没有类似于学信网这一类政府运营、提供公开服务的第三方机构,企业必须通过联系不同的凭证发行方才能验证真伪。
WeIdentity方案主要通过区块链提供的存证功能解决凭证验证问题。凭证发行方和验证方都通过区块链节点接入网络,凭证发行方将个人资料的密码学摘要作为可验证凭证发布上链,凭证验证方收到个人资料后向区块链查询真伪。在这过程中不需要第三方存储和收集个人资料明文信息。
在该项目中,澳门特别行政区身份证明局承担了用户代理的角色。身份证明局是由行政法务司监督,辅助澳门特别行政区行政当局在民事与刑事身份认别及旅行证件的行政机构,本就具有对个人用户KYC的能力与职责;澳门生产力中心、澳门理工大学等机构承担了凭证发行方角色;澳门电讯等企业承担了凭证验证方角色。
分布式数字身份在澳门“证书电子化”项目中的应用带来了以下特性:
一、可信数据WeIdentity方案中,可验证凭证以摘要形式存证在区块链上,任何人可根据数据原文验证可验证凭证的内容未被篡改。
二、隐私保护
基于属性分片进行摘要算法实现的链上可验证凭证,支持凭证验证方对其中部分属性进行验证,从而支持用户只向凭证验证方出示部分属性。这通过使用一种比匿名凭证技术更加简单的方式实现了部分匿名凭证的功能,匿名凭证技术的优势在于不需要向凭证验证方出示属性明文,而仅出示属性的密码学证明。
三、场景式落地
用户代理是方案中的控制中心和数据中心,托管了用户密钥和可验证凭证。因此实际上用户不具有对自己数据的控制权。由于联盟链的本质和中心化管理方式,不同场景之间不需要进行连通,可根据不同场景进行定制化开发。
3.3??更多
本文中提到的4个项目仅是分布式数字身份蓝图中的一小部分,更多项目已在全球各地产生和应用。
一、ShoCard
ShoCard是较早尝试分布式数字身份管理的项目,它利用分布式账本为用户绑定标识符和现有的可信凭证,记录验证历史,为用户提供分布式的可信身份。
ShoCard的典型应用是与SITA航空合作的旅行认证解决方案。人们在跨国旅行时,在机场安检的过程中要不断出示护照、登机牌、面部核验等信息,这些信息组成的数字身份是个人与身份验证方互动的关键。
旅行者使用移动终端对身份证件拍照,将元数据加密存储在本地,将可验证信息存证于区块链,当用户出示证件进行验证时,身份验证方除了验证物理证件,还可验证区块链记录。如果验证通过,身份验证方请求ShoCard成员管理服务器生成认证证书。认证证书存储在用户终端,同时在区块链存证。以后可用于提供给有相同要求的身份验证方。
ShoCard实践较早,应用广泛。包括:与多家银行合作将用户KYC信息作为可信凭证发送给用户,以便银行在不查询其它金融机构数据库的情况下授权客户,减少重复KYC流程;为繁忙的医护人员提供胸牌安全凭证,对于与多个医疗保健机构签约的医疗工作者可以在不需要中心化身份的情况下访问多家机构的资源。
ShoCard作为一个早期方案,在适用范围、隐私保护上均有所欠缺。其用户数字身份由身份提供方创建,只能在相应的生态系统内使用。而成员管理服务器的存在,可以关联用户与身份验证方的关系,也造成了用户使用的不确定性——当公司不存在时,用户将无法使用已获得的证书。
ShoCard的价值主要是创新性的提出了技术思路,即在个人终端存储密钥和凭证等个人数据,以区块链作为去中心的交换承诺而存在,不存储敏感信息,保证信息的可信和完整。其它较早期的分布式数字身份方案均在此共识基础上加入创新,包括Civic、IDHub等等。
二、IdentiCAT
2019年9月,西班牙加泰罗尼亚自治区政府宣布启动用户主权的分布式数字身份项目IdentiCAT,这是欧洲第一个开放的数字身份。IdentiCAT提倡用户控制自己的数字身份和相关数据,构建在分布式账本基础上,居民通过自己的软件管理数字身份,维护隐私。它遵循欧盟的eIDAS规范,因此可在欧盟的所有国家使用。在该项目中,政府不收集数据,主要承担项目保障的角色,为居民、企业提供工具和可信赖的法律框架。
趋势与展望
相比传统数字身份系统,分布式数字身份具有隐私保护、可控安全、持久可用等特点,基于属性的授权访问方式能够更好的支持开放环境下灵活的访问策略。短短几年时间,已取得了丰富的规范和技术标准化研究成果。随着标准化成果的继续拓展,未来越来越多的应用可方便、安全的切换到分布式数字身份基础设施上来,形成互联互通的互联网身份网络。
参考文献:
W3C.DecentralizedIdentifiers(DIDs)v1.0..https://w3c-ccg.github.io/did-spec/
W3C.VerifiableCredentialsDataModel1.0..https://w3c.github.io/vc-data-model/
ChristopherAllen.Thepathtoself-sovereignidentity..http://www.lifewithalacrity.com/previous/.
OskarVanDeventer.Self-sovereignidentity-thegood,thebadandtheugly;May2019..https://blockchain.tno.nl/blog/self-sovereign-identity-the-good-the-bad-and-the-ugly/
WebofTrust...https://github.com/WebOfTrustInfo/rwot6-santabarbara/blob/master/final-documents/did-auth.md
WebofTrust...https://github.com/WebOfTrustInfo/rwot1-sf/blob/master/final-documents/dpki.pdf
ConsenSys...https://www.uport.me/
Dr.ChristianLundkvist,RouvenHeck,JoelTorstensson,ZacMitton,MichaelSena.UPort:APlatformforSelf-SovereignIdentity..https://blockchainlab.com/pdf/uPort_whitepaper_DRAFT20161020.pdf
Sovrin.Sovrin:AProtocolAndTokenForSelf-SovereignIdentityAndDecentralizedTrust..?https://sovrin.org/library/sovrin-protocol-and-token-white-paper/
NathanGeorge.HyperlegerAriesProposal..https://wiki.hyperledger.org/display/HYP/HyperledgerAriesProposal
Microsoft.DecentralizedIdentity:Ownandcontrolyouridentity..https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE2DjfY
TheSidetreeProtocol:ScalableDPKIforDecentralizedIdentity..https://medium.com/decentralized-identity/the-sidetree-scalable-dpki-for-decentralized-identity-1a9105dfbb58
WeBank..https://fintech.webank.com/weid/
AboutVerifiableOrganizationsNetwork(VON)...https://vonx.io/about/
周比特币BTC看涨期权?代码周BTC看涨0527期权标的BTC合约类型欧式看涨期权计价单位USDT最小价格单位0.0001USDT合约比例1000:1.
尊敬的LBank用户: 近日,GRAMS项目方宣告因不可抗力终止项目,同时退还初始投资者的投资款,并提出两种退币方式.
尊敬的BiONE用户: BiONE共识计划首期项目NGU得到用户积极参与,现公布摇号中签尾号为:0、2、8.
GateChain3.0已经发布三周,在这个过程中,我们收到不少热心用户的测试反馈。同时我们在Gate.io平台进行了首次治理投票,最终方案2.1以87.06%的高得票率获胜,我们决定执行此方案.
本文正文字数:1500预计阅读时间:5分钟重要?通知各位校长的粉丝大家好,目前越来越多的人在进入合约市场,而大部分人都是亏损严重,为了带大家挽回亏损,走向收益,校长正式建立合约社群.
为庆祝WHC重磅上线,WBF将于新加坡时间5月18日12:00—5月20日23:59:59期间推出“充值、交易WHC,赢DUSD大礼”活动.