2020:05:31   今天是星期日   16:53:34
APP下载 万链之家APP

Android

中钞区块链技术研究院:四大分布式数字身份架构的对比及研究

05-20 10:48

标签    区块链   区块链论坛   区块链媒体   比特币   以太坊

文章来源: 万链之家

在上个世纪 50年代到 90年代,数字身份紧跟着互联网的发展而发展,它可能是 email地址、IP地址、域名,通常由不同的网络服务提供。

当互联网建立了统一的协议标准,迎来了计算机技术和互联网应用的蓬勃发展,越来越多的工作和生活线上化。数字身份演变为复杂的体系,需要一套处理认证和访问控制的业务系统。这时出于便利性的考量,大多数互联网应用的数字身份一般是用户名密码。

当互联网应用的量级剧烈增加,质的变化悄然发生。

• 互联网巨头依靠平台效应垄断市场,利用用户数据作为护城河,产生了大量价值,但用户并没有对自己的数据拥有什么话语权和价值收入。

• 由于利益驱使,围绕着用户数据发生的非法收集、数据泄露和买卖行为防不胜防,损害用户安全。

• 用户的数字身份——账号密码由服务商控制,用户租借使用,服务商可以决定账号禁用、服务终止。

• 互联网的数字身份从属于应用系统,决定了用户要重复注册很多的账号密码,而且互联网在应用层面并不互联互通,一个跨应用的业务实现难度很大。尤其对于需要用户确权操作的跨应用业务,可能需要更改整个业务架构增加跨应用的用户身份。

为解决这些问题,人们已做了大量的尝试。

隐私保护政策纷纷落地。《中华人民共和国密码法》、《中华人民共和国网络安全法》、《信息安全技术个人信息安全规范》等国家技术标准出台,明确了企业在收集、使用、保存隐私数据时所需要达到的技术效果及建议使用的标准化技术手段。国际上,被称为史上最严格的隐私保护法案《通用数据保护法案》 (GDPR)除了明确技术效果之外,更引入了巨额的罚款措施。

区块链技术带来了新的启示。作为一种新的分布式系统形态,区块链技术用哈希链的数据结构改变了电子数据易被篡改的属性,用“区块+共识算法”解决分布式系统的数据一致性问题,拜占庭容错能力保证跨实体运行的系统不受少数节点恶意行为的影响,从而解决业务层面的信任难题,有望在服务商之间搭建互联互通的协议。

在政策、技术、市场因素的共同驱动下,产生了一种新的数字身份形态——分布式数字身份,它用分布式基础设施改变应用厂商控制数字身份的模式,让用户控制和管理数字身份,通过将数据所有权归还用户从根本上解决隐私问题。它通过定义身份层协议提供跨应用的互操作性,促进应用间的互联互通,创造了一种扁平化、弹性化的数字身份模式。

1. 分布式数字身份基本概念和模型

国际标准化组织/国际电子技术委员会将“身份”定义为“一组与实体关联的属性”,其中“实体”定义为“操作某个特定域的相关项,具有物理或逻辑形态,包括自然人、组织、设备、SIM卡、护照、网卡、应用软件、服务或网站”。数字身份通常由代表实体的身份标识符及与之关联的属性声明来表示,分布式数字身份包括分布式数字身份标识符和数字身份凭证(声明集合)两部分。

分布式数字身份标识符(DID)是由字符串组成的标识符,用来代表一个数字身份,它是一种去中心化可验证的标识符,实体可自主完成 DID的注册、解析、更新或者撤销操作,不需要中央注册机构就可以实现全球唯一性。通常,一个实体可以拥有多个身份,由实体自己进行管理、维护,不同的身份之间没有关联信息,可有效避免身份信息被第三方归集。

数字身份凭证中一般包含一个或多个“声明(claims) ”。声明信息是与身份关联的属性信息,通常包括:姓名,年龄、学历、职业等等。凭证由发行者签名,可通过密码学证明是否由凭证中声称的实体签发且未被篡改,因此被称为可验证凭证。

1.1 可验证凭证模型

数字身份系统的主要目的是认证数字身份所有者的身份属性,基于其身份信息提供应用系统的授权访问和服务。

基于上节中分布式数字身份的设计,可以很好地实现基于可验证凭证模型的工作流程:

  1. 凭证发行方根据身份所有者请求签署发布可验证凭证;


  2. 身份所有者将可验证声明以加密方式保存,并在需要的时候自主提交给凭证验证方进行验证;


  3. 凭证验证方在无需对接凭证发行方的情况下,通过检索身份注册表,即可确认凭证与提交者之间的所属关系,并验证属性声明的真实来源。

在分布式数字身份的模型中,将身份标识符的生成/维护,与身份属性声明的生成/存储/使用分离开来,有助于构建一个模块化的、灵活的、具有竞争力的身份服务生态系统。

1.2 体系架构

如前所述,分布式数字身份的核心模型是分布式数字身份标识符和可验证凭证流转,核心技术是分布式账本和密码学技术,这二者的结合用以创建不可抵赖、且不可篡改的身份记录。

从实现的角度而言,分布式账本基础设施、基于 DID的交互、可验证凭证应用、治理框架组成了分布式数字身份的四层体系架构。

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这几个具有一定时间跨度、方案特征差异性、不同场景中的代表性项目。

2.1 项目简介

uPort

uPort是 Consensys推出的基于以太坊的分布式数字身份管理服务,它可以允许用户进行身份验证、无密登录、数字签名并和以太坊上的其它应用交互。uPort旨在解决普遍存在的区块链用户密钥管理问题,为用户提供持久可用的数字身份。于 2017年发布白皮书。

Sovrin

Sovrin是 Evernym初始开发、Sovrin基金会运营、Hyperledger孵化开源的一种用户自主主权身份和去中心化信任的协议,它致力于提供自我主权身份的去中心化的全球公共网络,该网络于 2017年 7月正式启动。

微软 DID

微软 DID是一套基于 Azure云服务的分布式数字身份技术架构,它公开了源代码、标准,希望实现互联互通,于 2019年发布试用版本。

WeIdentity

WeIdentity是由微众银行推出的基于联盟链身份的实体身份标识和可信数据交换解决方案,依托权威机构提供用户 KYC服务,并以联盟链作为各用户角色的连接中心和信息的存证中心,促进数据可信交换。于 2019年发布。

2.2 架构比较

2.2.1 uPort

uPort是基于以太坊的分布式数字身份管理服务,它可以允许用户进行身份验证、无密登录、数字签名并和以太坊上的其它应用交互。

uPort的整体架构由智能合约、开发者库和移动 APP组成。其中移动 APP持有用户的密钥。以太坊智能合约构成身份管理的核心,包括用户的 uPort标识符管理、身份凭证的管理、以及可让用户在丢失移动设备时恢复身份的逻辑。开发者库可让第三方应用开发者把 uPort集成到他们的应用中。

分布式账本

uPort的底层基础设施是公有链以太坊。uPort DID方法已注册到 W3C维护的注册表。

基于 DID的交互

uPort智能合约设计体现了用户对数字身份的管理控制和使用。用户使用uPort DID登录其他在以太坊上注册的应用。

  • 标识符

其中,代理合约是用户数字身份的象征,uPort身份的核心标识符是代理合约的地址;控制合约,是代理合约的正式拥有者。控制合约维护了核心访问控制特性,包含密钥恢复和访问控制逻辑;控制合约由 uPort移动 App中安全存储的密钥进行控制。

这种设计允许用户使用密钥向代理合约自我认证,并代表代理合约行事,有利于用户在保持标识符不变的情况下替换私钥。

  • 交互

应用 DAPP与 uPort App均使用了以太坊智能合约,代理合约可以向应用合约转发交易,并且通过这种机制,uPort身份与以太坊区块链上的其他智能合约进行交互。

可验证凭证应用层

uPort的身份认证应用中的用户角色包含凭证发放机构、用户、应用、uPort共四方。

uPort和凭证发布机构合作,凭证发放机构在以太坊网络上注册自己的身份,能够签署和验证数据;凭证发放机构在其应用中提供二维码信息以便于用户交互,用户使用 uPort APP扫描二维码,向凭证发放机构注册自己的 uPort ID。凭证发放机构根据业务需求按自己的方式认证用户信息,认证通过后向用户发放带有签名的身份凭证。

uPort服务通过注册合约管理 uPort ID和用户的身份凭证信息,每一个 uPort身份标识符绑定了一个相关的链下数据结构(如 IPFS),身份凭证存储在链下。注册合约扮演逻辑上中心化,物理上去中心的注册表或查找表,将每一个 uPort身份标识符映射到一个 IPFS摘要上,这个 IPFS摘要与包含了用户属性、个人数据、见证的结构相链接。只有 uPort身份的所有者(设备密钥的持有者)才有权利去修改相对应的注册入口。

用户注册新的应用时,应用通过二维码与用户交互,获取 uPort ID和应用需要的凭证。如果用户注册合约中已经存储了相应的凭证,应用从 uPort服务器获取该凭证进行验证。验证通过后,应用将 uPort ID注册为用户账户,以后用户只需要使用 uPort ID即可登录该应用。

治理框架

uPort没有提出新的治理框架,遵循了以太坊的治理模式,即通过以太币支付网络交易费用。

2.2.2 Sovrin

Sovrin是一种用户主权身份的基础设施和全球可互操作的身份协议,它不是一种具体的解决方案,不依赖于特定软件实现,不同的解决方案实现厂商可基于Sovrin协议和基础设施搭建具有互操作性的平台。Sovrin定义了分层的、解耦合、模块化的模型。

Sovrin基金会牵头推进了 Hyperledger Indy项目,提供基于区块链或其他分布式账本技术的工具、代码库和模块化组件用于实现独立的数字主权身份。2019年,从 Indy项目中独立出了 Hyperledger Aries项目,用于实现其中的端到端交互。

分布式账本

Sovrin基金会管理了一个特定的账本 Sovrin Ledger,由 Stewards操作节点与 Sovrin共识协议进行通信维护,但同时 Sovrin协议可以运行在任何支持上面三层的分布式账本上,不依赖于一种特定的区块链或分布式账本技术,才能形成全球可互操作的用户主权身份网络。

基于 DID的交互

Sovrin支持基于 DID进行点对点相互认证和安全通信,并且在 Hyperledger Aries项目中孵化一套标准化的端到端交互软件基础设施,Aries项目于 2019年提出。

Aries的功能包括:建立和使用点对点连接,发送/接收点对点协议消息,并代表模块所代表的实体执行操作。它是 Sovrin基础架构的基石,通过该模块,Sovrin实体形成连接并共享 Sovrin身份。点对点连接是两个 Sovrin实体之间关系的基本单位,由一对仅被双方实体知道的匿名标识符组成,这样可以最大限度地避免一个实体的多个标识符被第三方归集。

可验证凭证应用层

基于零知识证明的匿名凭证技术实现了可验证凭证,支持凭证信息的最小化披露:

  • 支持对一个或多个凭证中的声明进行选择、组合并出示;

  • 凭证验证方不获得数据明文或密文,而仅获得数据的密码学验证方法,因此也无法复用它来模拟另一个用户。

典型例子是在不揭示实际出生日期信息的情况下,出示有关年龄情况的证明(如“18岁以上”)。

治理框架

Sovrin基金会发布了治理框架,建立用于自我主权身份的分布式网络所需的治理方法。框架定义了 Sovrin网络所有成员同意遵守的商业、法律和技术术语,并且规定了 Sovrin基金会和成员之间的法律合同。

2.2.3 微软 DID

微软 DID是一套基于 Azure云服务的分布式数字身份技术架构和基础功能,让解决方案实施商可方便的在不同区块链上实现分布式数字身份整体解决方案。微软是 DIF联盟的重要成员,以标准的开源技术、协议和参考实现为主要目标。

微软 DID的技术架构包括区块链 BAAS服务、注册 DID的 Layer2方法 ION、隐私数据管理模块 Identity Hub,均以 API的形式为开发者提供服务,ION和Identity Hub还提供了开源软件。在未实现的计划中,还包括手机端的身份管理模块。

•通过区块链 BAAS服务向不同区块链注册分布式数字身份标识,可以成为广泛使用的中间层,实现 DIF的互联互通目标。

•ION方法是 SideTree协议基于比特币网络的实现,用于解决向公有链注册 DID存在的效率低下问题。

•Identity Hub为开发者提供了管理用户隐私数据的基础模块。

分布式账本

微软 DID的基础设施不依赖于特定的分布式账本。与 Azure区块链服务的设计思想一脉相承,微软 DID依托于 Azure云服务支持多种分布式账本协议,并且注册了基于该分布式账本的 DID操作方法,对开发者隐藏分布式账本的接入细节,提供 Restful API接口。

目前微软 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操作源数据。


声明:万链之家登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。

爲尔倾鈊

0打赏金币 11所得总金币

    最新发表    最高金币  最高点击量

特约作者

7x24h快讯更多 >>
  • 11:53

    MFA电影链:“M万店计划”千万补贴推广支付生态MFA支付... [快讯详情]

  • 05.28 19:12

    GICC关于Green Chain主网上线的公告GICC今... [快讯详情]

  • 05.28 11:02

    BI ecology平台将于6月1日开启全球节点招募 据官... [快讯详情]

  • 05.28 10:54

    MSC集团宣布以宝二爷为战略中心,与其共创区块链算力生态新... [快讯详情]

  • 05.27 23:01

    百利达基金(Parvest)3000万美元助力推动飞链热交... [快讯详情]