基于区块链的5G隐私保护模型研究

2022-01-12 04:45王永利
信息安全研究 2022年1期
关键词:分片提供者访问控制

陈 烨 王永利

(南京理工大学计算机科学与工程学院 南京 210014)

(chenye@njust.edu.cn)

随着5G通信的应用部署,海量数据共享成为当前移动互联网的发展新生产力[1].数据共享可以聚集大众智慧,为时代的发展提供多元化、全方位的支撑.然而,5G通信中数据快速传播与行为迅速蔓延等特点对数据安全共享和用户隐私提出严峻挑战[2].5G场景下海量物联网节点遍布用户周边,它们无时无刻地记录着用户日常行为、线上或线下活动等,致使用户有隐私被侵害的担忧[3].此外,在5G行业应用生态链中,网络运营商、云服务提供商、垂直行业应用提供商以及行业客户等各方,常根据自身需要彼此间共享各自拥有的用户个人信息,致使用户敏感数据因跨域流通而增加了安全风险[4].

集中式存储更是面临着单点故障、数据泄露等问题.近年来数据泄露事件愈发频繁,仅在2020年上半年,我国就发生了多起数据泄露事件.2020年1月,中国电信超2亿条用户信息被放在网络出售.2020年3月,有用户发现5.38亿条微博用户信息在暗网出售[5].因此,5G通信网络需要提供更加完善的用户隐私保护解决方案,采取去中心化的存储方案、细粒度的访问控制和数据加密技术.

区块链[6]是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式.区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本.区块链结构如图1所示,每一个区块由区块头(block header)和区块体(block body)构成.区块链本质上是一个去中心化的数据库[7],可以为我们解决5G场景下用户隐私保护提供重要的技术支持.区块链中的所有交易信息都会保存在区块中,方便对交易进行追溯,可以从根本上杜绝不安全数据与恶意行为.

图1 区块链结构图

本文基于区块链技术设计了一种5G场景下用户数据共享与隐私保护模型,主要贡献如下:

1) 提出基于区块链分片技术的模型,模型包括分片层和主链,分片层中的每个分片可以独立处理交易,主链则用于确认来自分片层的所有区块.系统容量可以随着分片数量增加而增加.

2) 利用星际文件系统(interplanetary file system, IPFS)进行数据存储,IPFS的分布式特性与加密算法使得数据存储更加安全,并且可以解决区块链存储效率低、成本高的问题.

3) 采用附带时间维度的基于密文策略属性加密技术(ciphertext-policy attribute-based encryption, CP-ABE),实现了对区块链中数据细粒度的访问控制.

1 相关研究

5G网络为终端用户提供智能服务,同时也带来了许多用户数据隐私问题,主要体现在数据隐私、位置隐私和身份隐私3个方面[8].数据隐私指的是存储数据的机密性和隐私性.5G业务场景下大量的数据交互场景,导致服务提供者可以未经许可存储、使用和共享个人隐私数据,给数据隐私带来巨大威胁.5G业务场景下,为了规避数据隐私带来的风险,需要引入新的技术,在保护隐私的同时也能进行高效的数据共享.

随着区块链技术的发展,区块链技术与5G领域的相关研究相继出现.Yazdinejad等人[9]提出利用区块链和SDN进行5G场景下的用户认证,在保护用户隐私的同时也提高了认证效率.Fan等人[10]提出利用区块链在5G内容共享网络中进行数据可靠传输和隐私保护,保证内容创作者对数据的控制权.Islam等人[11]针对物联网提出了一个基于区块链的访问控制系统,研究在物联网场景下如何进行安全数据传输.

随着5G时代数据共享的大量增加,区块链与数据共享也受到了广泛关注.文献[12]提出了基于区块链的医疗数据共享模型,使医疗数据可以受到患者控制,有效地提高了患者数据的隐私性,但是该方案并未考虑数据存储和访问控制问题.文献[10]提出了5G场景下基于区块链和身份的内容网络访问控制方案,内容创作者需要先对数据进行加密操作,并且设置相应的访问控制策略,满足访问控制策略的用户可以获取到内容和密文.但是事实证明,基于角色的访问控制不适合在分布式环境中实施细粒级访问控制.文献[13]提出了基于区块链和CP-ABE的数据安全共享方案,使用智能合约和序列化方法将 CP-ABE 的系统公钥、用户属性、密文和用户密钥等存储在链数据库中, 同时设置数据库的访问权限和注册认证数据集, 实现数据的细粒度共享.但是该方案直接将数据存储在链数据库中,将会带来网络堵塞、性能低下等问题.

2 基于区块链分片技术的数据共享和隐私保护模型

2.1 系统模型介绍

如图2所示,基于区块链分片技术的数据共享和隐私保护模型主要由4部分组成:星际文件系统IPFS[14-15]、区块链、数据提供者和数据使用者.数据提供者首先利用对称加密算法对需要共享的数据进行加密,把加密后的数据上传到IPFS中,再把IPFS返回的地址通过基于时间的CP-ABE[16]算法进行加密,最终把加密后的地址上传到区块链中.只有同时满足属性要求和时间要求,基于时间的CP-ABE算法才能够对数据进行解密.这样不但可以确保对数据的细粒度控制,也可以避免系统撤销密钥所带来的开销.数据提供者通过区块链把密钥分发给数据使用者.通过区块链,我们可以记录数据使用者和数据提供者的行为,方便进行追溯和审计.系统的具体功能如下:

图2 系统模型图

1) 区块链.存储加密后的IPFS地址,记录用户的行为,同时数据提供者利用区块链把消息传递给数据使用者.

2) IPFS.避免单点失效问题,提供可靠的分布式存储,确保数据的实时有效性.

3) 数据提供者.数据提供者需要对原始数据进行加密,并且上传到IPFS中,还需要设置包含时间维度的用户访问控制策略,密文只有在有效时间内才可被解密.

4) 数据使用者.只有当数据使用者的属性满足访问控制策略时,才能够获取并解密数据.

2.2 系统流程

基于区块链分片技术的数据共享和隐私保护模型由数据提供者发起,系统参数如表1所示,系统的具体流程如下:

表1 系统参数说明

1) 数据提供者DO创建系统,根据安全参数λ生成系统公钥PK以及系统主密钥MK,再部署智能合约.

(PK,MK)←SetUp(λ).

2) 数据使用者DU向DO发送注册请求,DU需要提供自己的公钥和属性Attr,DO根据系统公钥PK和系统主密钥MK,生成DU的密钥USK和对称加密算法密钥k,并用DU的公钥进行加密,加密后的USK′和k′写入区块链中.

3)DU从区块链中下载USK′和k′,利用自己的私钥进行解密,得到密钥USK和密钥k.

4)DO通过对称加密算法,利用密钥k去加密原始数据M,得到加密后的数据EM,将EM上传到IPFS中,得到返回的地址hloc.

5)DO执行CP-ABE加密算法,输入系统公钥PK,访问控制结构Acp和IPFS返回的地址hloc,得到加密后的地址Eloc,访问控制结构中需要设置访问有效时间T.

6)DO将Eloc写入区块链中.

7)DU去区块链中下载Eloc,用自己的密钥USK和系统公钥PK去进行解密操作,如果用户属性Attr∈Acp,那么DU将成功解密并得到hloc.

8)DU根据hloc去IPFS上下载文件,得到密文EM.

9)DU利用密钥k去解密EM,得到原始数据M.

2.3 基于分片技术的区块链模型

本文提出基于分片技术的区块链模型,将数字元内容存储在分片层中,主链自身不处理任何交易,只用于确认来自分片层的所有区块,从而提升系统的处理能力,降低整体网络的吞吐量.用户会根据其属性划分不同的组别,同一组的用户处于同一个分片中.

系统主要通过委托权益证明(delegated proof of stake, DPOS)[17]共识机制去达成共识,在5G这样的高并发、大量数据交互的情况下,传统的工作量证明(proof of work, POW)[18]、权益证明(proof of stake, POS)[19]等共识机制达成共识所需时间较长,将会带来较大的延迟[20].DPOS是一种基于投票选举的共识算法,每个分片中需要投票选举出几个节点来产生区块,如果节点作出对区块链有害的行为,随时会被投票出局,DPOS可以大大降低达成共识时间,更符合系统需求.

在本系统中,交易主要有2类:分片内的交易和跨分片交易.当数据提供者和数据使用者处于同一个组别中,他们的交易就是分片内的交易,每一个分片中因为包含了完整的账本信息,所以分片内的交易较为容易.当数据提供者和数据使用者处于不同组别中,他们的交易就是跨分片交易,因为交易输入和输出位于不同的分片中,跨分片交易很困难.通过利用主链去确认跨分片交易,交易就可以输出.跨分片交易如图3所示.

图3 跨分片交易示意图

比如分片1中的数据提供者需要和分片2中的数据使用者进行跨分片交易,分片1执行交易,生成一个跨分片交易记录Rcross,分片1 中某个区块A可能包含多个跨分片交易,需要打包生成的记录发送给分片2,公式如下:

key=hash(A),
value=[Rcross1,Rcross2,…,Rcrossn].

主链出块B,广播给分片2,分片2出块C,指向主链中的区块B,从B中得到hash(A),再去取出对应的交易记录Rcross,修改数据使用者对应的状态.

3 安全性分析

3.1 隐私性分析

在本方案中,数据提供者拥有对数据的控制权,不需要借助可信的第三方去为用户生成密钥,数据拥有者可以直接为用户生成、分发密钥.在传统的ABE方案中,需要借助第三方去存储、传输密钥,而利用区块链,可以摆脱对第三方的依赖.并且利用区块链中交易的不可篡改性,每一笔交易都会留下记录,方便进行追溯和取证,提高用户的隐私性.

在本文存储方案中,通过利用IPFS这种去中心化的存储方案,相较于传统的云存储,可以有效避免单点失效问题,利用IPFS自身的点对点技术、分布式哈希表(distributed hash table, DHT)技术和比特流(BitTorrent)技术,可以有效地满足5G场景下的用户数据交互与隐私保护需求.

3.2 外部攻击者

当外部攻击者想要窃取区块链中的用户数据时,即使可以获取到数据在区块链中的存储地址,但是,因为外部攻击者的属性无法满足CP-ABE中的用户属性要求,并且无法在规定时间内访问数据,无法解密加密后的IPFS存储地址,从而无法下载到用户数据.

如果外部攻击者想要对IPFS进行攻击,获取用户数据.假定此时用户数据文件大于256 KB,那么此时IPFS会将文件拆分成若干个256 KB的块,此时再逐块计算哈希值:

File={block1,block2,…,blockn}.

hashn=hash(blockn),

将所有的blockhash凑成1个数组,再计算1次hash,便得到了文件最终的hash:

hashfile=hash(block1,block2,…,blockn).

因为攻击者无法直接获取IPFS中的存储地址,只能通过攻击部分节点来尝试,但是即使他获取部分节点内容,根据哈希函数的特性,外部攻击者仍然无法通过部分节点的哈希值去计算出整个文件的哈希地址,从而无法获取到整个文件内容.

3.3 区块链安全分析

分叉攻击:基于分片的区块链因为每一个分片中都存在区块链,使得整体网络中的算力较为分散,我们可以利用玻色子共识[21]算法,避免区块链遭受分叉攻击.玻色子共识算法主要包含2个部分:

1) 每个分片都运行一个叫主链优先(root-chain-first)的共识算法,分片向主链提交区块头,当出现分叉时,主链比较长的分叉胜出.这样保证攻击分片需要同时攻击主链,增大了攻击难度.

2) 主链会收每个分片的税,通过调整税率可以使得主链上的算力更加集中,从而增大攻击难度.

3.4 方案的对比分析

本节将提出的方案与目前已有的基于区块链的解决方案进行比较,考虑到5G场景下海量终端接入、大带宽和高速通信的特点,分别从数据存储方案、用户访问控制粒度、数据隐私性、数据可扩展性和数据传输时延5个方面进行分析对比.方案对比如表2所示:

表2 模型方案对比

4 总 结

随着区块链技术的发展,区块链与5G的结合将越来越多,5G场景下的隐私安全、数据共享等问题也得到了越来越多的关注.本文提出的基于区块链分片技术的数据共享和隐私保护模型,包括基于分片的区块链模型、数据安全存储、访问控制,能够在5G这种高并发、低时延的场景下提供一种去中心化、高效率的数据共享方案,满足用户数据安全共享和存储需求.

猜你喜欢
分片提供者访问控制
上下分片與詞的時空佈局
一种跨策略域的林业资源访问控制模型设计
基于MongoDB 分片集群的海量数据存储设计
物联网区块链中基于演化博弈的分片算法
网络交易平台提供者的法律地位与民事责任分析
云的访问控制研究
论网络侵权的归责原则
网络言论自由的行政法规制研究
网络服务提供者的著作权间接侵权责任研究
云计算访问控制技术研究综述