叶岳洋,张兴兰
Fabric中的匿名身份认证技术研究
叶岳洋,张兴兰
北京工业大学信息学部,北京 100124
解决联盟链上用户的隐私问题成为加速区块链实际应用落地的关键。基于联盟链的典型代表Hyperledger Fabric平台设计了一套基于公钥基础设施的匿名身份认证方案。通过将私钥分解为两部分,由不同的角色使用各自私钥对匿名证书生成联合签名的方式实现证书生成过程中的权限分离,并解决匿名证书追踪过程中的单点攻击问题。分析表明,改进后的方案能够以更低的计算和存储开销,实现比原有方案更高的安全性。
联盟链;超级账本;公钥基础设施;匿名身份认证;非对称加密
区块链作为一种新兴存储技术,以其去中心化和不可篡改等特性而受到很多行业的广泛应用[1]。但作为一种公共账本,其存储在链上的数据能够直接被任何在该系统网络下的其他节点所查看,因此带来了严重的隐私泄露问题。例如,攻击者可以对区块链上的公开数据进行分析,由于链上数据保存了大量的交易样本,通过对输入输出地址建立映射关系并结合交易内容不难推断出交易账户背后对应的实体身份;还可以追踪交易数据在P2P组网的传播路径,分析交易账户对应的IP地址,从而确定账户对应的实体身份[2-4]。
相较于公有链,联盟链的特点在于它是由多个机构共同参与管理的区块链,网络节点的加入需要经过组织机构的准许,每个组织机构管理一个或多个节点,链上的数据只允许系统内部节点进行读写和发送。这种轻量级、可管理的区块链能够更好地落实在实际商业应用场景中,由于其链上往往会保存非公开的商业机密数据,数据隐私保护对于联盟链更为重要。因此,分析并解决区块链尤其是联盟链的安全隐私问题是推动区块链技术广泛应用于实际业务场景的关键。
目前,大部分联盟链通过公钥基础设施(PKI)体系完成系统内部成员身份的互相认证。用户将自己的真实身份与PKI系统内的CA(certificate Authority)颁发的自签名证书相互绑定,由于系统内的所有用户对CA是信任的,因此数字证书上用户的身份信息也是可信的[5-6]。这种认证体系的优点在于完成验证只需要验证证书上保存的CA自签名的有效性,证书的监管也由第三方CA来承担,无须给系统带来额外负担,但这样做的缺点也很明显,用户在网络上的行为都是实名制的,无法匿名化。
为解决这一问题,当前应用范围最广、落地项目最多的联盟链Fabric 构建了身份证书和交易证书这样的二级证书体系。对于一般可公开的交易,用户可以直接使用基于传统PKI的身份认证体系,而当需要执行匿名交易时,用户可以使用由身份证书派生出的匿名证书实现认证节点的匿名化[7]。并且,在必要时,交易证书颁发机构和区块链的监管节点可以对交易去匿名化,降低用户滥用匿名证书的风险,从而实现前台可匿名、后台可监管的功能[8-9]。但通过分析发现,Fabric这种二级证书体系存在一些缺陷。首先,在交易证书的生成方案中使用了大量的HMAC运算,计算量比较大。其次,交易证书结构复杂,其扩展域中保存了大量用于生成交易证书的私钥的密文,但这在匿名认证的过程中是用不到的。最后,在监管方面,TCA和监管节点都可以利用自己保存的密钥揭露交易证书持有者的真实身份,在功能上重叠,没有实现权限分离,因此其中一方不诚实或遭受单点攻击,匿名证书就失去了安全性[10]。针对上述问题,本文在Fabric已构建好的二级证书体系的基础上,通过改进交易证书生成算法,降低了证书生成过程中的计算量,优化了证书结构,实现了权限分离和解决了单点攻击问题并增强证书的匿名性,为Fabric提供了更为灵活、高效的匿名身份认证方案。
表1 Fabric中的Tcert证书结构
当用户需要申请匿名证书时,首先要向TCA提交申请,TCA接收到用户提交的申请后,为了生成匿名证书,TCA执行生成公钥、扩展域和私钥3个步骤,分别如图1~图3所示。
(1)TCA生成匿名证书公钥。
①TCA选取随机数种子1计算后续用于派生的密钥。
②计算扩展密钥。
图1 匿名证书公钥生成步骤
Figure 1 Anonymous certificate public key generation step
图2 匿名证书扩展域生成步骤
Figure 2 Anonymous certificates extend the domain generation step
图3 匿名证书私钥生成步骤
Figure 3 Anonymous certificate private key generation step
(2)TCA生成匿名证书扩展域。
②加密Index。
(3)用户生成匿名证书私钥。
③用户计算扩展密钥。
④用户计算扩展值。
通过分析上述流程可以发现原始方案满足了匿名证书应具备的匿名性、无关联性以及可追踪性,但仍然存在以下几个问题。
②存储结构复杂:匿名证书中存储了身份证书标识的密文以及匿名证书索引的密文,因此证书的数据结构比较复杂。
为了在实现现有方案功能的基础上,解决2.3节中提出的问题,本文设计了一个可以实现权限分离的匿名证书解决方案。
图4为改进方案匿名证书生成步骤,该方案模型中主要角色为监管者、TCA、CA以及用户。其中TCA和监管者均由CA的授权机构担任,CA负责为监管者和TCA分别颁发身份证书,且监管者、TCA以及CA各自具有独立数据库以便对匿名证书进行追踪和存储时所使用加密数据。
图4 改进方案匿名证书生成步骤
Figure 4 Anonymous certificate generation steps in improved scheme
匿名证书生成步骤如下。
表2 符号说明
当发现匿名证书被滥用或私钥泄露时,服务提供者(SP)可以向TCA提交匿名身份追踪请求,具体追踪步骤如下。
由于匿名证书是由用户的实名证书构造得出,因此如果发现存在匿名证书私钥泄露、被他人私自使用以及时间过期的情况,则需要撤销该证书,撤销的具体步骤如下。
①用户需要向TCA发出撤销匿名证书的请求,并且附带个人相关信息。
②利用追踪功能,提交需要撤销证书的序列号确定到个人ID。
③ TCA会将用户的个人ID以及撤销证书的申请一起发送给CA。
④ CA会在库中通过提交的用户ID,查找出实名证书,并验证用户提交的信息,待验证无误后准许证书撤销请求,同时将实名证书加入CRL撤销数据中,并向TCA回复应答信息。
⑤撤销匿名证书,TCA会将匿名证书计入CRL撤销数据中,同时将撤销的结果回传给用户。
本文方案中发布的匿名证书虽然是由用户的实名证书派生,但用户的匿名证书标识是通过组合用户实名公钥以及随机生成的机密数并利用哈希运算方法得到的,同时在生成的匿名证书中不会存在用户的相关信息数据,所以匿名证书可以有效保护用户的个人信息,实现匿名性。
表3 两种方案计算复杂度的对比
通过改进前后的对比,能够清晰地看到改进后的方案比原有方案哈希运算次数减少6次,解密运算次数减少2次。
图5 改进方案匿名证书结构
Figure 5 Anonymous certificate structure in improved scheme
与原有方案相比,改进后的方案在匿名证书的生成过程中实现了TCA对证书内容可见,用户身份不可见。监管者对用户身份可见、对证书内容不可见的特性,增强了用户的匿名性。而且在用户真实身份追踪的过程中,需要TCA和监管者分别提供各自掌握的关键信息,解决了TCA和监管者单方不诚实以及单点攻击对匿名证书安全性造成的威胁。
本文提出了一种基于Hyperledger Fabric平台的权限分离的匿名认证体系。与原有方案相比,在安全性上,改进后的方案不仅实现了前台可匿名、后台可追踪的功能,还对监管者和TCA进行了权限分离,解决了TCA与监管者单方不诚信以及单点攻击等问题。在存储效率方面,改进后的方案在证书结构上无须保存在匿名证书生成阶段使用的密文,节省了系统对于匿名证书的存储开销。在证书生成效率方面,改进后的方案大幅减少了哈希以及解密的运算次数,节省了系统的计算开销。
[1] 工业和信息化部. 中国区块链技术和应用发展白皮书[R]. 2016.
The Ministry of Information Industry. White paper on blockchain technology and application development in China[R].2016.
[2] 张奥, 白晓颖. 区块链隐私保护研究与实践综述[J]. 软件学报, 2020, 31(5): 1406-1434.
ZHANG A, BAI X Y. Review of blockchain privacy protection research and practice[J]. Journal of Software, 2020, 31(5): 1406-1434.
[3] 沈鑫, 裴庆祺, 刘雪峰. 区块链技术综述[J]. 网络与信息安全学报, 2016, 2(11): 11-20.
SHEN X, PEI Q Q, LIU X F. An overview of blockchain technology[J]. Journal of Network and Information Security, 2016, 2(11): 11-20.
[4] 刘九良, 付章杰, 孙星明. 区块链安全综述[J]. 南京信息工程大学学报(自然科学版), 2019, 11(5): 513-522.
LIU J L, FU Z J, SUN X M. Blockchain security review [J]. Journal of Nanjing University of Information Science & Technology (Natural Science Edition), 2019, 11(5): 513-522.
[5] 侍伟敏. PKI、IBE关键技术的研究及应用[D]. 北京: 北京邮电大学, 2006.
SHI W M. Research and application of PKI and IBE key technologies[D]. Beijing: Beijing University of Posts and Telecommunications, 2006.
[6] 赵伟, 张问银, 王九如, 等. 基于区块链的企业管理系统框架设计与分析[J]. 网络与信息安全学报, 2019, 5(2): 13-22.
ZHAO W, ZHANG W Y, WANG J R, et. Design and analysis of enterprise management system framework based on blockchain. Journal of Network and Information Security, 2019, 5(2): 13-22.
[7] WANG R, HE J, LIU C, et al. A privacy-aware PKI system based on permissioned blockchains[C]//2018 IEEE 9th International Conference on Software Engineering and Service Science (ICSESS). 2018: 928-931.
[8] Membership service providers (MSP) [EB].
[9] 张青禾. 区块链中的身份识别和访问控制技术研究[D]. 北京: 北京交通大学, 2018.
ZHANG Q H. Research on identity recognition and access control technology in blockchain[D]. Beijing: Beijing Jiaotong University, 2018.
[10] 郭青霄. Fabric中的身份隐私和数据隐私保护技术研究[D]. 北京: 北京交通大学, 2019.
GUO Q X. Research on identity privacy and data privacy protection technology in Fabric [D]. Beijing: Beijing Jiaotong University, 2019.
[11] Hyperledger fabric documentation, getting started and developer guides[EB].
Research on anonymous identity authentication technology in Fabric
YE Yueyang, ZHANG Xinglan
Faculty of Information Technology, Beijing University of Technology, Beijing 100124
Solving the privacy problem of users in the consortium blockchain becomes the key to accelerate the implementation of the practical application of blockchain. A set of anonymous identity authentication scheme based on PKI is designed based on Hyperledger Fabric platform, a typical representative of the consortium blockchain. By splitting the private keyinto two parts, different roles use each private key to generate the joint signature of the anonymous certificate to achieve the separation of permissions in the process of certificate generation and solve the single point attack problem in the process of anonymous certificate tracking. The analysis shows that the improved scheme can achieve higher security than the original scheme with lower computing and storage overhead.
consortium blockchain, Hyperledger Fabric, PKI, anonymous identity authentication, asymmetric encryption
TP309
A
10.11959/j.issn.2096−109x.2021036
2020−11−26;
2021−01−07
叶岳洋,739541460@qq.com
国家自然科学基金(61801008)
The National Natural Science Foundation of China(61801008)
叶岳洋, 张兴兰. Fabric中的匿名身份认证技术研究[J]. 网络与信息安全学报, 2021, 7(3): 134-140.
YE Y Y, ZHANG X L. Research on anonymous identity authentication technology in Fabric[J]. Chinese Journal of Network and Information Security, 2021, 7(3): 134-140.
叶岳洋(1992−),男,北京人,北京工业大学硕士生,主要研究方向为区块链和信息安全。
张兴兰(1970−),女,山西吕梁人,博士,北京工业大学教授,主要研究方向为区块链和经典密码学。