基于区块链的身份管理研究*

2018-08-06 08:15陈宇翔张兆雷刘地军
网络安全与数据管理 2018年7期
关键词:比特合约身份

陈宇翔,张兆雷,卓 见,彭 笛,刘地军

(中国电子科技集团公司第三十研究所,四川 成都 610041)

0 引言

身份管理是信息安全的关键技术[1]。进入大数据时代,与日俱增的数据量对中心化身份管理系统带来的压力越来越大,中心化数据库被攻击的风险高,用户不能把握个人数据的主动权,出现隐私泄露而不知情等[2-3]。在这样的背景下,ALLEN C[4]提出了自主权身份,并对身份管理系统提出了10项要求,这些要求描述了用户实体独立存在(Existence),控制自己身份(Control),直接访问自己的数据(Access),系统逻辑的透明性(Transparency),身份持久存在(Persistence),轻便可移植性(Portability),让身份尽可能广泛使用的互操作性(Interoperability),用户控制自己信息(Consent),声明揭露信息量尽可能小(Minimization),用户权益被保护(protection)等方面。

区块链技术分布式、不可篡改的技术特点为满足IMS(Identity Management System)的上述要求提供了重要手段。区块链分布式身份管理系统与传统中心式身份管理系统对比如表1所示。

表1 传统中心化身份系统和基于区块链的身份系统对比

1 区块链引入身份管理的早期探索

比特币作为分布式无中心的系统安全运行了数十年,彻底颠覆了中心化管理系统架构,西方最早进行了区块链与身份管理结合的尝试。比如荷兰的PKIoverheid[5]、Idensys项目[6],爱沙尼亚的e-Residents等[7],更早在2014年Bitnation就发布了“世界公民身份证”项目,该项目的身份系统为用户创建全新且没有从属关系的身份[7]。但这些早期尝试的项目缺点也很明显,大多使用了比特币区块链,比特币区块链的成千上万个节点都有分布式账本,每次验证需要众多节点同步数据库,花费十几个小时,对用户认证很不友好。且比特币平台对所有人开放,没有商业理由吸引公司在该平台创建推广身份管理系统,支付高额的软件许可费,第三方对用户行为的关联分析也一定程度泄露隐私等[8]。

早期的概念验证项目让人们意识到基于区块链的身份系统相比传统中心化身份系统的巨大优势,也激励着后续更加成熟的基于区块链的身份管理方案不断涌现。

2 主流方案对比分析

2.1 ShoCard

ShoCard[9]是早期尝试区块链身份管理的公司并发展至今,具有代表性(技术框架如图1所示),当前基于区块链的身份技术思路形成共识,即用户终端存储个人数据,区块链作为去中心的交换承诺而存在,不存储敏感信息,保证信息的有效性、完整性。其他公司方案都在此共识基础上加入自己的特点,以下重点分析其它方案的创新细节及实践经验。

图1 基于区块链的身份管理技术框架

2.2 Uport

Uport[10]作为一种自主权身份建立在以太坊平台,不依赖中心身份提供者,其身份以Ethereum地址的形式存在,可以是人、程序、设备等。

Uport方案创新之处在于其核心是全网唯一且持久的Uport标识符,该标识符被以太坊代理(proxy)合约定义,代理合约(proxy)可以传递交易,通过该合约机制与以太坊区块链的其他智能合约互动(如图2所示)。

图2 Uport身份结构

当用户想与特定应用智能合约互动时,通过控制合约发送事务,代理合约将事务传递给应用合约。其中控制合约包含了访问控制策略。因为其不变的标识符,特定应用则把代理合约看做互动实体。通过代理合约的方式在用户私钥和应用合约引入了中间件,也能够让用户在丢失终端后替换原有私钥。

控制合约保持了还原网络(图3),其成员由用户指定,可以是好友、可信机构等。一旦终端丢失,在获取了新终端后(步骤2),向还原网络广播新公钥(步骤3),还原网络中成员通过还原合约将用户新公钥确认并发送到控制合约中保存,当达到要求的成员数量(比如2/3)确认后(步骤4),控制合约更新用户公钥(步骤5),用户身份恢复(步骤6)。

图3 还原账户

Uport也可用于非区块链身份相关用例(如图4所示),通过存储合约以密码方式将额外数据结构绑定Uport标识符,密码方式的绑定定义在智能合约的访问控制策略中,只有代理合约可以更新存储合约。存储合约包括了从Uport标识符到IPFS哈希的映射。IPFS是存储、关联和传输数据的分布式系统,以哈希保证数据结构的完整性。

图4 Uport非区块链应用

2.3 Civic方案

2.3.1Civic概述

Civic[11]是通过区块链促进identity verification(IDV)服务向着按需求、安全、低访问开销发展的一个生态系统,让每次身份查验不用从头开始。

Civic最大的创新是引入了激励机制CVC(Civic通证),以CVC换取IDV相关服务,来提高用户体验,增强安全和隐私保护,打破现有IDV供应链。

2.3.2Civic创新分析

Civic通证的引入让管理激励成为可能,使系统向参与者有利的方面发挥作用。系统内通证不是像比特币通过挖矿产生,介绍新用户、注册、提供身份、提供证明等方式均可获得。

通证与IDV结合流程如图5所示,用户申请服务提供商A的服务,通过Civic APP向A发送所需PII(步骤1),服务商A用已有方法验证用户提供的PII是否符合服务条件(步骤2),服务商A将用户出示的PII计算哈希值,并将哈希值在区块链上记录作为“证明”,“证明”除PII外还包括元数据(比如验证等级,验证细节,应用工业标准等)。同时将该区块链事务的“证明”细节给提供用户(步骤3)。之后用户申请服务商B的服务(步骤4),B发送要求的用户PII、相关规则等,用户端APP则检查自己数据是否满足B的需求。假设用户有并愿意出示要求的PII,且用户和B之间就谁(之前验证过用户,且验证的是相同数据和规则的角色)来验证达成共识(本例中假设为A),A以CVC的形式出示价格,服务商B选择是否接受(步骤5、6)。B接受后,用户向B发送A的证明的数据类型、区块链位置信息等。B将用户提供的元数据PII重新哈希后与区块链事务对比以确认所得到信息的有效性,如果有效,B支付该证明所需的(价格)CVC到托管账户中(通过智能合约)(步骤7)。一旦B支付了CVC,用户可以发送服务商B所要求的PII明文数据(步骤8)。然后用户触发托管账户中CVC释放,释放的CVC将以智能合约中约定的比例分配给用户和服务商A,交易到此完成。

图5 数据证明流程

2.4 其他方案

ShoCard、Uport Civic三个代表性方案对比如表2所示。

表2 三大代表性方案对比

以上三个方案在区块链的身份管理领域具有代表性,分别突出了总体技术路线、自主管理身份和通证激励,对其他方案影响较大,比如:IDHub[12]是国内世纪互联公司的首个基于区块链的去中心数字身份平台,用于网络新型登录方式公民权利相关的身份认证等[14](架构如图6所示)。

香港的SelfKey[13]致力实现自主管理身份的生态系统,同样借鉴了通证激励方式和Uport智能合约管理方法,外部应用采用通证激励关系,如图7所示。

乌克兰的REMME[15]方案致力用区块链实现不涉及密码的登录服务。在其去中心化网络存储用户的唯一SSL设备证书,通过REMME按钮和电话确认等双因素认证,消除验证过程中的人为因素,防止潜在的攻击途径。

3 结论

分析了知名区块链的身份管理方案,分别介绍了其技术路线、突出特点。本文将以上方案横向对比,如表3所示。

从ID发行方看,除了IDHub外,其他方案都有固定的ID发行方,由平台内部或其支持方对参与系统的角色发行ID,比如Civic、ShoCard由方案本身发行参与者ID,UportID由支持方ConsenSys发布。IDHub中,任何人、机构、组织都可发行ID,让成员依据该合法身份开发相应区块链应用来参与生态系统运行,强调兼容性、可扩展性,有利于系统生长。

图6 IDHub架构

图7 SelfKey外部应用关系

表3 区块链身份管理方案比对

在账号管理方面,Uport,IDHub,SelfKey采用事先约定好的智能合约实现以用户为中心的账号管理,其中IDHub因为任何人可发行ID,相应采用多种类型的身份管理合约来集成各类区块链应用,理念先进。ShoCard、Civic、Air则采用了IDProvider为中心的账户管理方案。

在相应身份使用范围来看,ShoCard、Civic、SelfKey、Air的身份都只能在相应的生态系统内部使用。Uport、IDHub将身份使用范围分为链上和链下,在智能合约中准确记录换Key操作,将用户区块链身份(标识符)与链下用户公私钥对绑定,实现生态系统外的使用。

在用户数据存储方面,从早期到当前的主流技术方案都将用户数据存储在手机终端,比如ShoCard、Civic等。但Uport将所有数据存储在IPFS(星际文件系统),存在泄漏风险。IDHub在此基础上做了区分:把数据分为公开数据和隐私数据,公开数据存储在IPFS,将隐私数据存在用户终端,上链服务不保存用户信息。

主流方案中除Uport外,其他方案任何人都可对给出的认证记录在区块链上校验,Uport身份是以太坊地址,安全性依托于以太坊区块链,未提供传统管理系统中的证书服务。

各方案系统性能受所使用的区块链平台影响,可用于身份管理的平台主要有,Ethereum、Rootstock、Hyperledger等,也未能达成统一共识,根据不同需求选择。以太坊属于典型公有链,基于Uport身份的企业级应较少。Civic采用的RootStock是建立在比特币网络上的中间件,提供安全可扩展的智能合约解决方案,并能创建完全不同于比特币的通证(token)用于系统激励。IDHub方案兼容多种区块链,计划随跨链交换技术成熟后迁移到具有跨链功能的专用区块链上。Air所使用的Hyperledger平台针对企业级应用,国内外采用较多。

通过对比各个方案细节和实践经验,ShoCard实践较早,Uport身份依托于以太坊,最大的创新是用分级的智能合约方式实现以用户为中心的账号管理和依托账号管理实现非区块链应用身份的关联具有很好的兼容性,并被后来的IDHub、SelfKey等方案所借鉴。Civic最大的特点在于引入token(通证)激励机制,并受到越来越多的共识,不同于比特币、以太币等加密货币,通证作为一种系统权益,代表比代币更高维度的价值,比如身份权证、积分、信用、服务等功能性权证,也包含物理世界的资产,从国内区块链公司IDHub和SelfKey即可看出。IDHub不但有佛山禅城公证处这样的落地项目,更吸取了其他方案的优秀理念,比如Uport账号管理方案、Civic通证激励机制。此外IDHub提出任何人可发行ID,期望成为所有区块链的公共身份,效果如何,尚有待观察。

通过分析身份管理系统各参与方需求以及国内权威机构监管需求,身份管理系统的发展不会完全去中心,也不能完全中心化,因此通过联盟链构建基于区块链的身份管理系统会成为国内主流技术解决方案。此外,从区块链技术特点及上述基于区块链的身份管理系统来看,对于用户可提供以用户为中心的安全、可控、便捷的身份管理,对于身份提供方可提供有效的激励机制,对于依赖方可降低身份验证成本。但是挑战与机遇并存,区块链的发展将会给公司、政府、金融等各行业的中心化身份管理系统带来冲击,只有通过技术方案和产品的改革才能更好地适应技术的发展。

猜你喜欢
比特合约身份
比特币还能投资吗
跟踪导练(三)(5)
比特币分裂
妈妈的N种身份
身份案(下)
比特币一年涨135%重回5530元
神秘的比特币
放松一下 隐瞒身份
合约必守,谁能例外!——对“情势变更”制度不可寄于过高期望