互联网时代,我们越来越多的在网络上与各种应用程序、设备、服务机构进行交互,但是其中交互的数据经常被泄露,尤其是个人数字身份信息。随着数字经济改革的深入,数字身份已经成为了当今时代的重要基础设施。
本期将从数字身份的含义、演进历史展开,在对比传统数字身份与分布式数字身份的不同之处后,提出一个开放、可信、可交互的分布式身份认证系统方案。
数字身份
随着互联网的出现,纸质材料逐渐转变为电子信息,传统的身份也有了另一种表现形式即数字身份。数字身份是互联网中用户身份的标识,用于向相关人员、单位、机构提供身份所有者的社会身份信息及相关行为数据。在数字经济时代,数字身份不仅能指代人、还能指代物。
数字身份的演进一共经历了四个阶段,分别是:中心化身份、联盟身份、以用户为中心的身份以及去中心化身份。
中心化身份:由单一的中心机构进行管理和控制;
联盟身份:由多个机构或者联盟进行管理和控制,用户的身份数据有一定程度的可共享、可移植性,例如QQ、微信的跨平台登录;
以用户为中心的身份:身份服务节点需要通过用户的授权和许可才能进行身份数据的共享,例如OpenID;
去中心化身份:身份信息由用户完全拥有和控制。
传统数字身份
传统的数字身份主要表现形式为中心化身份,由于其容易出现身份信息泄露、信任成本高等问题,已经不适合现阶段数字经济的发展要求。具体问题如下:
(1)身份数据存在于各个机构,用户需重复注册认证,而且各个机构数据难以共享;
(2)身份数据容易被他人盗取利用,造成用户隐私泄露;
(3)传统中心化身份认证模式信任成本高,由于为单一服务机构,容易出现节点失效问题;
(4)传统的数字身份无法覆盖所有人,根据统计,全球约有11亿人没有个人身份证明,他们无法拥有医疗、教育、保险等权利。
相对于传统的基于PKI(公钥基础设施)的数字身份,基于区块链技术建立的分布式数字身份认证系统具有数据可共享、用户数据可信、用户隐私安全、可移植、难以失效等特征。
分布式身份认证系统利用区块链账本的不可篡改性,并结合密码学算法,将用户的身份数据加密上链,用户通过掌握个人身份私钥进行身份信息的可信授权。
分布式身份认证系统
在现实生活中,用户经常会向大量的应用程序、设备、服务机构授予身份信息许可,在这个过程中,用户需要时刻关注自身的身份信息的流向以确保身份数据的安全性。通过基于区块链技术的分布式身份认证系统可以为用户带来更隐私、更安全、更便捷的体验,让用户能够对自身的身份数据有足够的控制权。
目前大多数分布式身份认证系统是基于W3C分布式身份标识协议(DID),使用区块链网络和密码学技术建立的身份框架,可以帮助用户保护自身信息数据的隐私与安全,具有去中心化、隐私保护、自主管理等特点。
数秦研究院将分布式身份认证系统技术栈分为自上而下的四层结构,第一层是网络协议,第二层为区块链网络,第三层为DID协议,第四层为应用程序。第二层结构通过使用区块链技术可以让用户的身份信息更加可信,并应用密码学算法保护用户信息隐私和数据安全;第三层结构包含基础层的DID标识符、JSON文档、应用层的可验证声明(VC)、DNS、去中心化存储数据库方案;第四层主要包含分布式身份管理应用程序。
-●-
DID标识符
分布式身份认证系统的用户标识符(DID)是由算法所生成,分布式身份认证系统利用数字签名技术来实现用户对于自身DID的管理权。生成DID的同时,会生成与DID绑定的一对公私密钥,DID与公钥、用户身份信息将会加密存储在去中心化加密存储数据库中,DID与公钥生成的哈希值上传到区块链网络上进行存证,用于保证该身份可信,私钥则由用户保管。
-●-
可验证声明
分布式身份认证系统应用层的可验证声明(VC)与用户的真实身份信息相关联,用来证明用户的身份。该声明可以被任何实体验证,它由声明元数据、声明事实及声明者的签名组成,其中声明事实可以是任何数据。VC的生命周期由发行者、验证者、拥有者进行管理。
·发行者:拥有用户数据并能签发VC的实体,如学校、银行、政府等机构和组织;
·拥有者:持有可验证声明的用户或机构。拥有者可以自主决定身份信息向谁公开,并可以选择公开的内容;
·验证者:需要验证用户身份的应用或机构,验证者不需要与身份拥有者直接交互,只需要根据拥有者的身份ID从分布式身份认证系统中获取其公钥信息即可认证身份是否可信。
-●-
去中心化加密存储数据库
去中心化加密存储数据库用于存储用户重要的数据。众所周知,互联网巨头都是通过中心化存储控制用户的数据,这些数据会发生泄露等问题,而分布式身份认证系统的各个环节的数据使用都需要经过用户的许可,所以中心化存储方案无法满足分布式身份认证系统的需要。
同时由于区块链账本无法支撑海量的数据存储,因此数秦研究院提出了“去中心化加密存储数据库”解决方案,该存储数据库采用数据分片、数据加密等技术将用户数据分块,由不同的分布式存储服务器存储一部分数据块,分布式存储服务器将数据哈希上传到区块链网络进行存证,大大加强了用户数据的安全性与可信性。
-●-
管理应用程序
分布式身份管理应用程序用于创建用户的DID身份标识、管理数据和权限以及数据存储的方式。
通过应用上述技术,分布式身份认证系统在运行过程中较难受到外部因素的影响,其优点如下:
1、分布式身份认证系统不会像中心化身份认证系统一样容易受到单节点故障和断网的影响。在分布式身份认证系统中,如果一个节点掉线,剩余节点仍然可以进行信息交互、身份验证。
2、在分布式身份认证系统中,身份信息具有独立的存储空间,用户数据在分布式区域存储,不予传输到公共区块链上,避免了用户信息的泄露。
3、分布式身份认证系统将用户的身份数据进行加密,转为哈希值存储在分布式数据库上,并通过区块链网络建立有效的监督机制和共识机制,一旦恶意节点想要通过攻击等手段盗取用户信息,其行为马上会被多个验证方进行阻止并惩罚。
身份数据隐私保护
分布式身份认证系统中结合软硬件和多种密码学技术来保护用户身份数据隐私:
(1)安全多方计算
安全多方计算(Secure Muti-party Computation,简称 MPC)允许多个数据所有者在互不信任的情况下进行协同计算,输出计算结果,并保证任何一方均无法得到除应得的计算结果之外的其他任何信息。简而言之,MPC 可以获取数据使用价值,却不泄露原始数据内容。
安全多方计算的特点包括输入隐私性、计算正确性及去中心化。
(2)零知识证明
零知识证明(Zero—Knowledge Proof)指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。
在分布式身份认证系统解决方案中,零知识证明可以结合可验证声明VC为验证者提供用户身份的验证,在验证过程中分布式身份认证系统仅提供验证结果,不会提供详细用户信息,保证了用户的隐私。
(3)可信执行环境
可信执行环境(Trusted Execution Environment,TEE)是一个由处理器直接管理的隔离区域,在可信执行环境中运行的代码将完全隔离于系统。将TEE引入分布式身份认证系统,可以将用户的私钥与信息加载在TEE中,所有的身份授权与签名的过程都将在TEE里执行,使得身份信息处于保护状态。
(4)分布式密钥管理
分布式身份认证系统解决方案中内置了分布式密钥管理系统 ( Distributed key manage system) ,该系统具有良好的密钥容错性和安全性,可以提供密钥管理、密钥分布式存储、代理重加密 (Proxy re-encryption)等服务。
分布式身份认证系统准则
分布式身份认证系统应在在安全性、可控性、兼容性三个维度定义相关准则。
·安全性
用户的身份信息必须得到充分的保护,用户身份信息暴露程度限制在身份可信前提的最低水平;
·可控性
用户可自主决定身份信息的注册、删除、注销;用户可以自主选择个人信息是否公开;任何机构使用、存储用户的信息时,必须得到用户的授权许可;
·兼容性
分布式身份认证系统中的各类协议的实现都兼容国内外的主要协议标准和体系。
总结
随着数字经济的发展,分布式身份认证可以更好的帮助用户和机构进行KYC和监管,促进跨部门、跨地域的身份认证和数据合作,同时随着联盟链、跨链技术、区块链应用的发展,分布式身份认证可以为此形成可信安全的身份信息互通体系,促进区块链生态的建设与发展。
本文来源:数秦科技原文标题:分布式身份认证:数字经济的基础设施