PDPChain: 一种基于联盟链的个人数据隐私保护方法
Wei Liang, Yang Yang(杨洋), Ce Yang, Yonghua Hu, Songyou Xie, Kuan-Ching Li, Jiannong Cao. “PDPChain: A consortium blockchain-based privacy protection scheme for personal data.” IEEE Transactions on Reliability, 2022. (国外SCI检索期刊) (IF = 5.883) (中科院JCR 2区, TOP期刊)
论文下载地址:https://ieeexplore.ieee.org/abstract/document/9851493
本论文简介如下。
研究背景与动机
目前的个人数据隐私保护方案还存在中心化处理和显式存储、用户缺少数据所有权及实现细粒度访问控制、数据缺少透明度和可审计性等方面的缺陷。
针对以上问题,如何实现一种安全可靠的个人数据保护和共享的方法,已成为一个亟待解决的现实课题。区块链作为一个去中心化的分布式账本,可以实现可追溯、防篡改和可共享的交易,为解决个人数据的显式存储存在的单点故障、数据篡改等问题提供了一种崭新的解决方案。
现有的通过区块链技术解决个人数据的隐私保护方法有一些潜力,但这些方案只提供了初步的方法探索或模型概念,没有详细的技术分析和实施。其次,解决问题的场景比较单一性,并没有真正实现个人隐私数据的所有场景面临的问题。总的来说,缺少一个全面的框架和模型来解决个人数据隐私保护的所面临的问题。
为了解决个人数据的隐私保护和安全共享问题,本文提出了一种基于CP-ABE的细粒度数据访问控制方法,通过Hyperledger Fabric构建联盟链并基于IPFS搭建IPFS私有集群,结合Paillier同态加密机制实现数据安全保护。
本文贡献
- 本文提出了一种基于联盟链的个人数据隐私保护方法。数据所有者对其隐私数据实现细粒度的访问控制,最大化的去中心化保护与共享。结合分布式应用系统(DAPP)实现用户对隐私数据的可视化存储和追踪。
- 本文基于IPFS私有集群存储加密数据。数据所有者可以高效且安全的将数据存储在去中心化的IPFS,形成链上链下的聚合存储。实现数据信息的保护、验证、监管和共享。
- 本文采用CP-ABE和Fabric-CA技术协同解决用户对数据的权限控制。数据所有者可以通过其他用户的身份属性制定访问控制策略,只有符合策略的用户才能访问数据。
- 本文利用改进的Paillier同态加密机制实现数据在区块链上以密文而不是明文的形式传输。同时,使数据可被安全的应用到云计算、机器学习、联邦学习等场景中,实现数据的可用不可见。
提出的PDPChain方法的简介
我们提出了总体方法设计,主要包括PDPChain系统架构、PDPChain系统组成以及数据的全生命周期可信存储和安全共享过程。
PDPChain系统架构
如下图是PDPChain方案的总体架构图。本文提出的方法架构主要由Blockchain Network、IPFS私有集群、分布式应用系统(DAPP)三个部分协同完成。
- 区块链网络通过HyperLedger Fabric来保证隐私数据的可信存储。并且结合设计的基于CP-ABE的访问控制方法来保证数据在区块链上进行细粒度访问控制和安全可靠的传输。
- 本文通过搭建IPFS私有集群解决区块链上数据存储大小和速度问题,实现加密数据有效且安全的在链下存储。IPFS存储加密数据的原始信息。IPFS计算生成加密数据对应的hash,再将数据hash值在区块链上可靠的保存和可追溯的访问控制。
- DAPP运行在区块链网络之上,可以是个人数据管理系统、文件系统、档案系统等一切保护用户隐私数据的去中心化应用系统。为了给用户提供良好的接入联盟链的访问窗口,将联盟链底层的技术和应用通过DAPP可视化的展现给用户,让操作更加透明和公开化。系统服务以RESTful接口的形式为DAPP分布式应用系统提供智能合约和IPFS接口调用。
PDPChain系统组成
如下图为PDPChain系统组成图。PDPChain系统一共包含了如下部分:Initialize、Register、Storage、Chain、Decrypt。
Initialize:
Owner和Visitor输入一个安全参数,区块链网络中的Fabric-CA认证中心返回一个系统公共参数和主密钥。
Register:
通过在Initialize阶段得到的PK和MK,以及参与者的属性集,基于Fabric的可信第三方Fabric-CA生成参与者的证书,以及CP-ABE方法中用户属性的私钥。
Storage:
基于Paillier同态加密机制加密原始数据,加密得到的密文存储到IPFS,通过IPFS计算得到密文哈希值。最后将hash值通过安全通道返回给数据所有者Owner。
Chain:
基于CP-ABE属性加密的密文存储在联盟链的智能合约里。在Fabric联盟区块链中,基于RAFT共识机制通过将交易共识到区块链网络,背书节点验证签名、执行交易,完成后将交易打包给排序节点。排序节点对交易排序并生成区块,并向所有节点广播区块。记账节点同步区块,并将区块保存到账本,完成整个上链过程。
Decrypt:
基于CP-ABE的访问控制方法,如果Visitor的属性集满足需访问数据文件的访问控制策略,则可以通过和得到。接下来就可以通过在IPFS计算得到Paillier加密的结果。
数据的全生命周期可信存储和安全共享过程
为了实现隐私数据在区块链上可信存储和安全共享,我们的方法分为六个部分:1. Paillier加密原始数据。2. 加密的数据上传到IPFS。3. 数据hash可信上链。4. 链上数据访问控制。5. IPFS根据hash获取加密数据。6. 存储计算结果。
如上图是PDPChain方案的全生命周期存储与共享过程图。
实验简介
实验设置:
区块链网络使用的实验环境配置为Intel Core i5-5257U CPU、8GB RAM、系统配置是Ubuntu系统(18.04 version,64bit)。区块链网络使用Hyperledger Fabric 1.4部署,共包括2个组织,每个组织由2个peer节点和2个用户组成。IPFS集群由3台具有相同配置的服务器构成的私有化集群,集群配置系统是Ubuntu系统(16.04 version,64bit)。
主要实验结果:
在性能测试中,将原始数据通过Paillier加密后,通过文件形式进行保存。我们选取四个关键步骤进行性能测试,分别是1. Paillier同态加解密原始数据耗时、2. 文件上传到IPFS获取hash、3. 文件hash加密上传到区块链、4. 链上数据的访问控制。我们测试每个关键步骤的时间消耗情况。
在Paillier同态加解密原始数据耗时部分,与其他方案相比,本文改进的方案加解密整体耗时上降低25%,在加密耗时上降低48%。
整个文件加密上链时间,是向Fabric-CA获取证书、加密耗时、上链耗时的总和。从图中数据我们可以看出CP-ABE加密技术时间成本在整个上链阶段的开销很小,且时间的递增是随着访问策略复杂度来递增。
如下图所示,可以发现解密速度与策略复杂度无关。因为在测试解密过程与策略复杂度的关系,随着访问策略复杂度的增加,解密时间的消耗并没有改变多少。时间成本稳定在0.2s左右,时间总体消耗也非常小。
如下图可知,整个方案中耗时占比最高的是文件传输过程,但如上测试结果文件传输速度也有一定的提升,但同时可以看出,本文改进的加密技术中数据上链和加解密时间开销十分小,且整个方案开销非常小。
本文总结
为解决云存储的显式存储、用户缺少数据所有权及数据透明度和可审计性、不能实现粒度访问控制等问题,我们提出了PDPChian,一种基于联盟链的个人数据隐私保护方法。我们提出的方法基于联盟链来实现个人数据的可信存储与安全共享,并设计了一种基于密文属性加密的访问控制策略实现对个人数据的细粒度访问控制和安全可追溯共享。为了解决区块链存储速度受限问题,本文通过IPFS存储加密数据,计算的hash在区块链上传输,以此方式提高存储速率。此外,在方案中流通的数据都是通过改进的Paillier同态加密机制加密,实现数据的安全审计和可用不可见。通过安全性分析和实验结果表明,本文提出的方案具有高安全性、高可用性、角色功能明确、细粒度访问控制、高性能等优势,能以较低的使用开销和系统较高的解耦性,实现对个人数据的可信存储和安全共享存在问题的完善和解决。