Page 349 - 《软件学报》2021年第7期
P. 349
姚前 等:区块链系统中身份管理技术研究综述 2267
它包含与 DID 验证相关的密钥信息和验证方法(目前大多为公钥和数字签名),提供了一组使 DID 控制者能够证
明其对 DID 控制的机制.实体在需要进行身份信息证明时,可向相关发行方申请可验证凭证,用于实现对实体特
定属性的声明.可验证凭证通常由至少两组信息组成:其一表示可验证的凭证本身,包含凭证元数据(metadata)
和声明(claim);其二表示数字证明,通常是数字签名.经过上述过程,分布式数字身份系统即可通过 DID 来标识一
个实体,通过可验证凭证来向身份验证方出示实体所具有的身份属性信息,并证明自己的属性是可信的,从而完
成身份认证过程.一个实体的分布式数字身份的组成如图 5 所示.
Fig.5 Composition of distributed digital identity
图 5 分布式数字身份的组成
在分布式数字身份模型中,基于区块链系统将身份标识符的生成、维护与身份属性声明的生成、存储和使
用相分离,有助于构建一个分布式、模块化和更具弹性的身份服务生态系统.目前国内外已有多个项目基于区
块链系统实现了分布式数字身份.例如,国内微众银行的 WeIdentity 项目 [23] .此外,为了满足属性证明过程中特定
的隐私保护需求,WeIdentity 项目还提供了选择性信息披露的功能.发行方在构建可验证凭证签名时,将声明中
的不同字段分别计算哈希值再连接其他信息进行签名.实体在进行身份证明时,希望披露的字段能够提供原文,
隐藏字段仅提供哈希值.这样,验证方就仍可连接所有字段的哈希值并正确地验证签名.
综上所述,分布式数字身份提供了一种更灵活的身份标识和属性证明方法.但从目前的方案来看,DID 仍然
是基于非对称密码技术来实现的,用户身份与一对公私钥仍形成绑定关系并通过签名实现对 DID 使用的控制.
因此,DID 在区块链交易系统中标识资产权属时仍然可以使用与现有系统同样的方法,但也会面临相同的安全
隐私威胁.
3 区块链系统中的身份认证
3.1 匿名(假名)认证
公有链中的比特币、以太坊、门罗币和零币等强调用户的身份隐私保护,为交易用户提供了匿名认证,即
用户在注册过程中无需出示真实身份即可获得身份标识并将其用于身份认证.由于系统采用无准入机制的开
放网络架构,系统中无类似 CA 的可信认证中心来管理身份,用户基于非对称密码算法自主生成和管理身份,采
用第 2.1 节中的方法实现身份标识,即采用公钥作为身份标识符、私钥签名实现身份认证,身份管理的全周期过
程中用户都是匿名的.此外,为了实现交易过程中的身份隐私保护,同一用户还可通过使用多个不同的身份标识
符(假名)来降低交易地址与真实身份以及不同交易之间的关联性.
虽然匿名认证能够在一定程度上保护用户隐私,但值得注意的是,由于区块链交易系统具有账本公开、多
方确认的特点,简单使用匿名(假名)认证并不能完全有效地解决交易身份隐私保护的问题.因此,必须引入相应
的身份隐藏机制来解决动态交易过程中的身份隐私保护问题,详细内容可参见第 4 节.
3.2 实名认证
为了实现用户的准入控制并符合交易监管要求,Fabric、Corda、趣链 [24] 、微众银行的 FISCO BCOS [25] 等联