王妮娜 杨 帆 桑 杰 许雪姣
1(数据通信科学技术研究所 北京 100191)2(兴唐通信科技有限公司 北京 100191)3(北京科技大学数理学院 北京 100083)
随着科技的发展,网络化、数字化逐渐渗透到人类活动的各个领域.现实世界中金融、社交、公共服务等社会活动所依赖的传统自然人实体身份证明,如身份证件、学位证书和驾驶证等,将在网络空间被新的身份表达形式所延续——数字身份.数字身份是现实空间的身份在网络空间的映射,是网络刻画实体的数字表达.对于自然人来说,数字身份包含了个人标识及与标识所绑定的个人信息,并以可验证身份凭证的方式为自然人在数字空间提供真实身份及属性的证明.
数字身份的广泛应用必定伴随国家对数字身份治理要求的提高.传统数字身份依赖于中心化机构的支持与管理,实体未享有对其数字身份的自主权,存在身份与账户共生、身份信息易被泄露的风险.在中心化背景下,不同机构的数字身份属性信息相互隔离,不可共享,且难以在保护身份隐私条件下公开证明身份信息.支持权威机构发布和治理的、实现自主控制、分布式证明真实性的防伪数字身份,将成为数字身份在网络空间中发展的新目标.
一般认为,数字身份经历了3个阶段的演进,分别是中心化数字身份(centralized identity)、联盟式数字身份(federated identity)、分布式数字身份(decentralized identity, DID)[1].
1) 中心化数字身份.
数字身份由单一的中心化机构提供,并由该机构对身份进行管理和控制.中心化机构负责存储服务提供商所需的用户身份信息,其可直接参与所有身份验证过程.因此作为身份提供商的中心化机构可以潜在地了解用户在何时何地进行身份验证,从而跟踪用户并了解用户的行为.
尽管中心化数字身份模型在国内外已得到广泛的应用,但现阶段身份应用中存在的痛点问题已逐步显现:
① 不利于身份信息安全共享和互通证明.基于中心化机构管理的数字身份,用户的身份信息通常存在于各个机构中,用户需重复认证和注册,不同的身份系统之间相互独立,无法有效进行身份信息的安全共享和证明,不利于数字身份的应用.
② 不同机构对用户数据的保护等级不同,易造成用户隐私泄露.
③ 基于中心化的身份认证模式负载量极大.在互联网应用充分融合的发展趋势下,用户身份认证数量将达到空前量级,中心化身份管理和认证方式将产生巨大的认证负担.
2) 联盟式数字身份.
由多个中心化机构或者联盟进行管理和控制的数字身份,用户的身份数据具备一定程度的可移植性.本质上联盟式身份管理仍然是一种中心化身份管理解决方案,它支持跨多个域或机构的单点登录.联盟式身份模型通过建立多个身份提供商之间的信任关系,从而形成一个信任圈.使得属于该信任圈的身份提供商可以互相委托身份验证请求.
3) 分布式数字身份.
身份信息是由用户完全拥有和控制的数字身份,通过将数据所有权归还至个人,从根本上解决用户的隐私安全问题.在分布式数字身份中,身份不依赖于中心化机构管理,各个身份提供商在分布式账本(distributed ledger)上注册具有互操作性的凭证发布信息,并将凭证直接颁发至请求用户;用户与服务提供商以点对点的方式实现身份验证.分布式身份技术的实现推动了自我主权身份(self-sovereign identity, SIS)的应用和发展.分布式强调的是去中心化验证的特性,而自我主权则更加倾向于对用户身份的所有权,表达了用户对个人身份信息隐私的保护和对使用其身份信息的许可权.
在备受瞩目的数据泄露和数据滥用事件之后,用户越来越意识到对自己的数据和数字身份缺乏控制和隐私,且相应的法律法规也强调了对用户数据的保护.在政策、需求及技术等多因素的共同驱使下,数字身份正由中心化向分布式逐步迈进.
2021年6月3日,欧盟委员会提出欧盟数字身份(European Digital Identity)框架计划[2].该计划旨在为所有欧盟公民、居民和企业提供在欧盟各国可通用的数字身份.在欧盟出台的《电子身份认证和信任服务条例》(Regulation on Electronic Identification and Trust Services, eIDAS)[3]中,规定欧盟各成员国各自的国家数字身份系统需要做到彼此互认.根据这一计划,欧盟成员国需向其公民、常住居民、企业提供数字钱包,其钱包将与能够证明其个人信息的国家身份文件相连接(如驾照、学历证书、银行账户等).该数字钱包能够充分保证个人数据安全性,轻松便捷验证个人身份并访问在线服务.此外,欧盟近年对个人数据的保护也给予高度重视,其于2018年5月25日颁布了《一般数据保护条例》(General Data Protection Regulation, GDPR)[4],旨在保护自然人对个人数据的权利.随着分布式数字身份概念的提出,为最大化程度保护用户的个人数据,欧盟也将自我主权的思想积极融入到数字身份计划的实施中.欧盟委员会正在建设的国家级区块链基础设施(European blockchain services infrastructure, EBSI),其核心功能之一就是提供基于DID的欧盟国家公民电子身份认证服务.
近年来,美国同样聚焦于开发分布式数字身份的应用.万维网联盟(WWW Consortium, W3C)于2019年成立DID专项工作组,并随后于2021年9月正式发布《DID——核心架构、数据模型及表示(v1-0)》标准[5].2021年5月,IEEE成立了致力于物联网应用与DID技术相结合的专项工作组,旨在实现基于DID的智能设备可信接入和设备间的点到点直接通信.美国国土安全部(United States Department of Homeland Security, DHS)已分批次投入专项资金(截至2021年已达400万美元),用于支持DID的技术研究和应用实现,包括与美国公民及移民服务局(United States Citizenship and Immigration Services, USCIS)合作,通过区块链技术实现官方证件数字化、基于区块链技术开发可替代美国社会安全号码的身份标识等.同时,美国国土安全部支持本国企业在W3C组织中发起并成立DID工作组.
欧盟旨在建立一个在欧盟各成员国间能彼此互认的数字身份,使欧盟各行业以数字化的方式在成员国间实现最大互通.美国在分布式数字身份建设方面取得初步进展,已开展多个基于区块链技术的数字身份相关项目,且获得美国国土安全部多方面的支持.总体而言,欧盟及美国在数字身份的建设方面,聚焦于如何将身份主权交至个人手中,其数字身份技术的发展态势已经由中心化向分布式的方向演进.
当前,我国数字身份系统的发展受多方因素的影响.
首先,近年来我国数字化发展迅速,各领域、各行业对数字身份系统展现出迫切的应用需求[6].在“十四五规划纲要”中,明确指出以数字化转型整体驱动生产方式、生活方式和治理方式的变革,从数字经济、数字社会及数字政府多方面推动“数字中国”的建设.数字身份是各领域、各行业数字化的基石,是促进数字经济发展的必备基础,是数字化时代的重要基础设施.为适应我国数字化的快速发展,落实数字身份系统在各行各业中的应用势在必行.
其次,为保护个人数据,我国已颁布实施了一系列相关的法律法规和标准,其中包括《中华人民共和国数据安全法》和《中华人民共和国个人信息保护法》等.随着用户对数据隐私保护意识的提高,分布式数字身份及自主身份管理或成为我国数字身份发展的新方向.由我国多家机构组成的分布式数字身份产业联盟于2020年8月共同发布了《DIDA白皮书》[7],其详尽地阐释了分布式数字身份的现状及未来发展,并就基础设施建设、技术规范等问题进行了全面的研究,是我国首份系统研究分布式数字身份技术的白皮书.未来的数字身份应帮助我国居民掌握其个人数据,实现数据在各数字化活动之间自由流转.
最后,互联网已经成为我国重要的基础设施,加强网络监管是保障国家信息安全、促进数字化发展、维护健康网络环境的根本需求.近年来,我国对于网络环境的监管力度逐渐增强.我国已颁布了《中华人民共和国网络安全法》等法规,以增强网络监管力度,完善网络监管体系.一方面,众多的互联网企业应共同参与到治理网络违法犯罪的活动中,落实安全保护技术措施,完善各自平台的条例条规,配合相关部门的监管工作.另一方面,个人用户在网络中的责任不断被强调.数字身份是居民在网络中的身份映射,网络不是法外之地.目前我国网络平台已实施注册用户实名认证,并逐步增强网络犯罪相关方面的法律规范,完善对网络恶意行为追溯追责的技术支撑手段.但是,目前的监管措施及技术更适用于中心化管理的环境,当数字身份由中心化向分布式转变时,如何兼容实施身份可信、隐私保护、身份监管,将成为我国数字身份建设的另一挑战.
通过调研国内外分布式数字身份应用案例,本节将从多个角度对案例进行横向对比,深入探讨分布式数字身份的技术性和安全性.
本节将叙述实现自我主权数字身份的技术基础及现有案例采用的方法.根据国际电子技术委员会对身份的定义,可以将数字身份描述为身份标识符及其关联的属性结合.W3C组织为推进自我主权身份的实现,在2019年首次发布了分布式标识符(decentralized identifiers, DIDs)规范[5]和可验证凭证(verifiable credential, VC)数据模型规范[8].在自我主权身份背景下,DIDs与VC为身份标识及属性提供了基础规范.DIDs和VC可由实体通过数字身份钱包自主管理,实现对其身份的自主控制.在分布式身份生态系统[8]中,通常包含发行方、持有者和验证方3个参与方,以及1个去中心化的注册机构(其一般由分布式账本实现).
2.1.1 分布式账本
在分布式身份背景下,分布式账本包括身份标识注册表、公钥注册表、模式(schema)注册表、凭证定义(credential definitions)注册表和撤销注册表.分布式账本为身份标识和密钥提供了统一的维护和验证机制,是实现身份标识和密钥去中心化管理的基础设施.分布式账本具有去中心化、无单点故障、难以篡改等特点,为实现分布式数字身份提供了技术保障.
目前,国外自我主权身份应用案例中,所支持的分布式账本主要包括Ethereum,Hyperledger Fabric,Hyperledger Besu,Sovrin等.
2.1.2 DIDs的产生与作用
DIDs是一种新型的身份标识符,其可由实体自主产生.W3C将DIDs的创建、解析、更新和删除定义为DID Method,目前DID Method并没有统一的标准,机构或组织可在W3C CCG工作组所管理的DID Method注册表上进行注册.在现有的案例中,DIDs的产生通常依赖于与其所绑定的密钥,包括:
1) 直接将公钥本身作为DIDs,如Trinsic DID;
2) 取公钥的加密哈希函数作为DID,如Jolocom DID取公钥keccak256的哈希值、uPort DID取公钥secp256k1的哈希值;
3) 取模板化DID文档(templated DID Document)的加密哈希函数或编码作为DIDs,如百度CloudDID;
4) 取部分公钥进行重新编码,如Sovrin DID取公钥的前16B进行base 58编码.
DIDs作为一种新型标识,与传统身份标识相比具有多个作用:
1) DIDs是实体的一个身份标识;
2) DIDs用于创建连接邀请;
3) DIDs用于将模式或凭证定义写入分布式账本(对于发行方而言);
4) DIDs用于建立安全通信通道;
5) DIDs作为实体的假名.
2.1.3 VC的产生与作用
可验证凭证由发行方向持有者颁发,包含1组对持有者属性的声明.可验证凭证包含了发行方的DIDs及数字签名,生态系统中的任何参与方都可在分布式账本上获得发行方的公钥,从而对凭证进行验证.
可验证凭证的产生包括:
1) 创建模式.构建凭证的结构以及设置需要颁发的属性.这里的属性设置包括2个部分:一部分是持有者实体的属性设置;另一部分是关于凭证验证的属性设置,如是否设置撤销.若启用撤销,则需将该撤销设置写入分布式账本中的“撤销注册表”.模式通常由权威机构或发行方创建,并写入“模式注册表”以供各发行方访问使用.
2) 创建凭证定义.各发行方基于模式创建特定于发行方的凭证定义,其中增加了发行方的DIDs及公钥等信息,并写入分布式账本中的“凭证定义注册表”.
3) 发行方发行.发行方根据凭证定义填充实体的属性并签名,最终向持有者颁发可验证凭证.
可验证的凭证与其他类型的数字文档不同,其能够验证以下事项:
1) 原始发行实体(数据源);
2) 申请凭证的实体(数据的主体);
3) 内容是否被篡改(数据的真实性);
4) 颁发者是否在特定时间点撤销凭证(数据的状态).
2.1.4 数字身份钱包
在自我主权身份的背景下,数字身份钱包是一种由实体(通常指持有者)所控制的加密数据库,用于存储自我主权身份所需的凭证、密钥及其他信息.钱包为身份所有者提供了自行创建密钥的功能,与分布式账本共同组成了去中心化公钥的基础设施,摆脱了基于中心化CA(certificate authority)对密钥的颁发与托管.同样地,钱包还提供了创建身份标识的功能,身份标识和公钥可注册到分布式账本上.目前,已存在的数字钱包产品通常以Web或移动应用程序的形式向用户提供.
根据欧盟数字身份框架计划,欧盟成员国将向其公民、常住居民、企业提供EUDI钱包[9],钱包将与能够证明其个人信息的身份文件相连接(如驾照、学历证书、银行账户等).EUDI钱包组件如图1所示:
图1 欧盟EUDI钱包架构
EUDI钱包的功能包括:
1) 可在本地或远程进行电子识别、存储和管理认可的属性电子证明(QEAA)和非认可的属性电子证明(EAA);
2) 请求并从提供者的证明中获取认可的属性电子证明(QEAA)和非认可的属性电子证明(EAA);
3) 提供或访问加密功能;
4) EUDI钱包与外部实体间的相互身份验证;
5) 对PID,QEAA,EAA进行选择、组合,并与依赖方共享;
6) 支持用户感知和显式授权机制的用户界面;
7) 以认可的电子签名/印章(QES)方式签署数据;
8) 向外部各方提供接口.
本节将从安全性角度出发,首先叙述一些典型的分布式数字身份应用案例,然后对它们进行横向对比分析,最后对调研涉及的所有案例进行保障等级划分.
2.2.1 德国Jolocom智能钱包
Jolocom智能钱包是由Jolocom GmbH公司开发的自我主权身份解决方案,用于数字身份的访问和管理,身份持有者的个人信息加密存储在钱包中.Jolocom基于数字签名技术和DID技术实现了凭证的可验证性,凭证验证方可根据凭证发行方的公开DIDs对数字签名进行验证.Jolocom智能钱包支持可验证凭证的选择性披露,从而使得持有者对数字身份达到细粒度的控制.并通过DIDs标识符、密钥及分布式账本技术实现了点对点的安全通信.同时,Jolocom钱包支持用户创建多个DIDs用于与不同实体间的通信,使用户在特定背景下的交互过程中始终保持匿名.
2.2.2 美国Sovrin网络
Sovrin网络是由美国的Evernym公司基于分布式账本技术建立的身份验证区块链,用于支持分布式数字身份和可验证凭证的验证.Sovrin网络支持点对点的相互认证和安全通信,与Jolocom类似,双方的通信由1对仅被对方知道的匿名DIDs标识所建立.但与Jolocom不同的是,Sovrin网络通过零知识证明技术实现了对可验证凭证的匿名化.凭证验证方所接收的信息并不是明文或密文的,而是凭证的密码学验证方法,更大程度地保护了实体的隐私安全.值得一提的是,Sovrin网络的创造者Evernym公司也开发了一款名为Connect.me的数字身份钱包,旨在为用户提供存储数字凭证的容器.
2.2.3 瑞士Zug ID
Zug ID是由瑞士楚格市政府与卢塞恩大学共同创建的数字身份项目,也是早期的自我主权身份项目之一.不同于Jolocom和Sovrin的DID技术,Zug ID仅在Ethereum网络上注册唯一的身份标识,无法做到通信的匿名化.身份凭证由楚格市政府颁发,其中所有的身份信息均经市政府的密钥进行签名,Zug ID持有者可对身份信息进行选择性出示.Zug ID的持有者可通过Uport移动应用程序接收、存储及使用凭证,其身份信息以数字证书的形式加密存储在Uport的数字保险柜(locker)中,该移动应用程序与身份钱包功能相似.
2.2.4 安全性综合分析
综合上述案例,本文针对以下3个方面进行安全性对比分析.安全通信方面,Jolocom与Sovrin支持产生多个DIDs标识用于建立通信,使身份持有者在不同场景下的通信保持匿名,而Zug ID仅支持通过唯一的身份标识建立通信;凭证披露方面,三者均支持凭证信息的选择性披露,在此基础上Sovrin还支持以零知识证明的方式向验证方出示证明,具有更高的隐私保护性;信息存储方面,三者均提供了数字身份钱包或具有相同功能的移动程序,用于将持有者的身份信息加密存储在本地.
2.2.5 安全等级划分
美国国家标准技术研究院(National Institute of Standards and Technology, NIST)于2017年发布的数字身份验证准则SP 800-63[10-12]中提出IAL(identity assurance level),AAL(authenticator assurance level),FAL(federation assurance level)的概念,其均被划分为3个保障等级.IAL是指身份保障等级,其针对身份核验过程,是保证身份核验可靠性的等级;AAL是指鉴别保障等级,其针对身份鉴别过程,是保证身份鉴别可靠性的等级;FAL是指联合过程中断言强度的等级,联合表示向依赖方传递身份验证和属性信息的过程.注意,FAL不是必须存在的,因为并非所有数字系统都将利用联盟身份体系结构.本文根据身份标识来源的不同,将各应用案例划分为政府机构产生、私营机构产生和自主产生3个类别;将各数字身份案例依次采用IAL,AAL,FAL的等级标准进行划分,具体如表1、表2和表3所示.
表1 国内外数字身份应用案例的IAL
表2 国内外数字身份应用案例的AAL
表3 国内外数字身份应用案例的FAL
在以DID为技术支持的数字身份钱包产品中,验证方与持有者之间的身份鉴别均基于公开密钥加密算法实现,虽然鉴别过程未涉及其他的验证因素,但本文将这类产品归入AAL 3的保障等级.某些数字身份系统在应对不同安全等级的服务时,划分了不同的等级验证方式,对于此类数字身份,本文对其不同等级的验证方式单独归类.
在所调研的数字身份应用中,联盟式数字身份的案例共有2例:加拿大Verified.Me和德国的IDnow,该类案例包括了联合过程.值得一提的是,上述产品均是通过银行等金融机构实现对实体的身份验证.
我国数字身份的建设正处于由中心化向分布式转变的探索阶段.一方面,居民对个人隐私数据的保护意识逐渐增强;另一方面,我国对网络安全的监管问题逐渐重视.建设符合我国国情和法律法规、满足居民信息安全需求的数字身份是我国的主导方向.
在现存的分布式身份DIDs产生机制中,DIDs由用户通过钱包等产品申请或自主创建获得,并自主注册至分布式账本.首先,身份的注册过程不依赖于中心化机构,各国对其监管政策不同,导致身份可信度参差不齐,使数字身份背后的轨迹图难以追踪;其次,同一实体基于DID Method可独立生成多个DIDs,同一实体的各DIDs间在逻辑上无关联,难以追溯某一DIDs背后的实体在网络上的其他行为.因此,尽管自我主权的数字身份满足了身份隐私保护的需求,但在现有应用案例中,仍然存在缺乏可信性、身份真实性难追溯等诸多问题.应另辟自我主权身份的建设道路,建设统一签发、分布式认证、统一监管的自我主权数字身份体系.
从技术体系而言,应考虑从初始自主DIDs的注册过程入手,以经中心化的权威机构所认证的身份为可信根(如法定身份证件[13]),并启动自主身份DIDs的产生,从而增强对自主身份的监管.DIDs作为根身份的衍生假名,为监管提供了技术手段用于可追踪、可追溯,以实现对数字身份实体的可追责.从技术角度来讲,对于同一实体产生的多个DIDs,应从DID Method入手,实现由同一实体所创建的DIDs在逻辑上可关联于根身份,为可追踪、可追溯、可追责的实现提供技术可能.
目前,我国数字身份建设仍以中心化形式为主,对分布式数字身份仅处于初步的探索阶段,可供参考的案例较少.尽管国外的分布式数字身份应用并不适用于我国国情,但在技术层面上仍具有一定参考价值.我国数字身份建设应牢牢把握基于中心化机构授权或发行可信的根身份,再在各应用场景中扩展分布式数字身份,充分发挥权威机构的身份保障作用.在可实现自主管理的基础上,建设适合我国国情的分布式数字身份.