基于区块链技术的私有数据访问控制模型设计
2024-06-01王苗苗
王苗苗
摘要:随着云计算和大数据技术的不断发展,数据已经成为社会经济发展的关键要素,其安全问题也日益凸显。为解决不同企业及其部门之间在数据快速共享过程中私有数据的有效保护问题,文章应用区块链技术,借助智能合约机制,并利用改进的权重属性加密机制,设计了一种私有数据访问控制模型。该模型在提升数据可追溯性的同时,能够降低恶意攻击行为发生的概率以及数据加解密的时间成本。最后,通过仿真实验验证,该模型具有高可靠性,能够有效解决私有数据共享问题,完全符合预期的设计标准和要求,为相关人员提供了有效的借鉴和参考。
关键词:区块链技术;私有数据;访问控制模型;设计
中图分类号:TP393 文献标识码:A
文章编号:1009-3044(2024)10-0088-03
0 引言
在云计算和大数据的时代背景下,数字经济正在快速发展,数据已成为推动经济发展的重要动力。如何确保私有数据的保密性和安全性,已成为不同企业及其部门间实现数据共享的主要挑战[1]。因此,构建适用于不同应用场景的数据共享安全模型或解决方案已成为亟待解决的问题。针对传统数据共享模型无法有效阻止软件恶意查询行为、数据预览摘要实现难度高、开销成本大以及数据访问控制复杂等问题,私有数据访问控制模型的设计和应用成为一个有效的解决途径。
本文主要基于区块链技术,采用联盟链链下计算方式设计私有数据访问控制模型。该设计的核心:一是利用区块链中的联盟链链下计算技术,在多个成员通信过程中增加认证环节,从而在确保私有数据安全共享的同时提高数据的可追溯性。二是借助智能合约机制设置访问控制策略,降低恶意攻击行为发生的概率。三是利用改进的权重属性加密机制,在控制和保护数据机密性的基础上,降低私有数据加解密的时间成本。
1 区块链定义与特性
区块链是通过哈希函数将多个区块按照其生成时间的先后顺序链接起来形成的一个链式结构。区块链主要融合了非对称加密算法、哈希算法以及可编程的智能合约机制,形成了一个数据分布式存储的对等网络。其中,智能合约机制主要由合约值、合约状态、代码三大组成部分构成,实现了计算机协议的传播、验证和执行功能。
区块链技术作为一种分布式数据库技术方案,具备以下3个显著特性:1) 去中心化。在区块链中,每个节点的权利和义务都是相同的,它们都会存储本区块链的所有数据。这类似于对等网络,没有中心节点的管辖与干预,从而有效降低了服务成本,避免了单点故障的风险。2) 不可篡改性。区块链使用的哈希算法的定长哈希值和雪崩效应,能够识别任何细微的变化,从而有效地防止数据和事务被恶意篡改。3) 数据透明可追溯性。区块链的数据对用户是透明的,每个事务发生时都会形成时间戳。用户可以根据这些时间戳来验证和追踪历史数据来源,实现数据的追溯。
区块链可以分为以下3类:1) 公有链。具有一定的开放性,允许所有人员参与其中,且不受任意节点的影响。2) 私有链。是指由个人、机构或组织内部私有的一种区块链,内含若干个节点。3) 联盟链。其性质介于公有链和私有链之间,由多个成员组合后形成。若想使用联盟链,必须通过认证后方可使用,它具有灵活性高、通信便利、隐私保护性能好等优势。
2 基于区块链技术的私有数据访问控制模型构建
2.1 同态加密
同态加密允许第三方(如云服务提供商)在不解密的情况下,直接对密文数据执行某些可计算的功能,同时保留密文数据的功能和格式,这既减少了用户数据泄露的风险,又实现了数据的“可算不可见”,在抵抗攻击行为方面发挥了重要作用[2]。根据其满足同态的具体算法情况,同态加密可以分为全同态算法和半同态算法。
2.2 模型构建
2.2.1 构建思路
基于区块链技术的私有数据访问控制模型图如图1所示,整个模型主要包含TC可信中心、数据拥有者、数据请求者、联盟链、云存储中心五大组成部分。该模型主要运用半中心化的聯盟链[3],结合全同态加密算法对数据摘要和数据关键字进行保护,应用密文策略属性基加密(CP-ABE) 方案来确保细粒度访问控制的安全性和保密性,采用签名值对比的方式来分析和判断访问控制的私有数据的一致性。此外,为实现私有数据的智能化监控,保证私有数据的可追溯性,还须接入安全化节点。
在检索数据期间,我们借助了智能合约机制对部分非法访问操作行为进行了过滤。这不仅保障了本次访问行为的安全控制,还通过“学习”模式,向联盟链中存储了非法访问的关键字索引密文,从而确保了下次非法访问的检索与拦截。这一措施为后期精确化、高效化检索所需数据提供了匹配样本[4]。
2.2.2 构建流程
私有数据访问控制模型的构建流程包括以下几个步骤:1) TC可信中心向首次进入联盟链的数据请求者颁发相应的数字证书。数据请求者须向TC可信中心提交用户身份信息、单位、密级等相关注册信息。只有经过TC可信中心对数据请求者的身份进行认证授权后,数据请求者才能获得所需的公私钥和数字证书等。2) 数据拥有者向数据请求者共享私有数据。在这一环节中,需要在制定和优化智能合约规则的基础上,构建访问控制策略结构,精细化访问控制私有数据的粒度,以保证私有数据的完整性和机密性。随后,在提取数据摘要信息的基础上,运用加密模糊处理技术,确保私有数据的可预览性。3) 数据请求者如要获取所需的私有数据,必须在获得相关权限后,方可对私有数据进行安全访问控制。4) 联盟链节点中通常涉及多个不同企业、同企业多个部门、同部门不同级别个体等。这些元素之间须建立良好的合作关系,共同维护区块链。此外,将私有数据的摘要密文、元数据统一存储到联盟链中,有助于降低私有数据被恶意入侵和篡改的风险,从而确保私有数据的安全性、完整性和机密性。5) 云存储中心为用户提供强大的加密数据存储功能,方便用户存储和管理私有数据,这为实现私有数据的最大化利用以及保证私有数据访问控制的安全性和可靠性提供了重要的依据和参考。
2.3 模型方案划分
2.3.1 系统初始化阶段
在系统初始化阶段,我们借助密文策略属性基加密方案形成密钥。具体而言,利用公钥密码算法生成密钥。密文策略属性基加密方案所生成的密钥主要包含密钥设置和密钥解密两个环节。
2.3.2 数据存储阶段
联盟链数据存储的实现流程如下:数据拥有者须精确计算出元数据的存储位置索引、数据关键字以及哈希值,随后将这些信息存储到联盟链中,以确保链上数据的隐私性和机密性。具体步骤包括:1) 从TC 可信中心获取密钥后,采用对称加密方式对明文数据进行加密运算,得到相应的密文,然后将密文上传至云存储服务器,并计算出相应的存储位置索引。2) 采用预处理方式,将各个属性的权重相加后,将得到的权重值设置为叶子节点,以降低计算开销[5],并制定相应的访问策略。3) 运用密文策略属性基加密方案,结合访问策略和对称密钥,获得相应的密文。4) 结合随机数,对关键字和数据摘要所对应的同态加密密文进行精确化计算。5) 计算出各个元数据所对应的哈希值,并将元数据及相关信息存储到联盟链中。
2.3.3 数据搜索与共享访问阶段
数据请求者进行数据搜索与共享访问的流程如图2所示。为实现数据的高效搜索与安全共享,提高数据访问效率,本文详细介绍访问数据的具体操作步骤:1) 设定智能合约规则,并据此科学划分和确定数据密级和保密期限。数据请求者首先使用设置好的智能合约规则,检验自身密级是否匹配所设定的数据密级;其次,结合确定的数据保密期限,全面审查数据的密级和保密期限是否符合智能合约规则。若两项检验结果均满足条件,则执行数据解密操作;若不满足,则意味着数据访问失败,退出数据访问流程。此外,还须启动定时轮询检测功能,对文件期限进行检测,当发现文件期限设置不符合智能合约规则时,及时提醒数据拥有者更改和发布元数据。2) 数据请求者采用关键词查询方式,对不同数据的关键字密文或摘要密文进行查询,并计算出相应数据文件的哈希值。同时,运用密文策略属性基加密方案,验证访问策略结构树,若验证数据请求行为符合访问控制要求,则数据请求者使用解密技术获取索引地址和对称密钥。3) 在云存储服务器上查询并下载所需数据密文,解密后获取对应的明文。4) 计算云存储服务器上解密得到的明文哈希值,并与原数据文件计算得到的哈希值进行比较,以验证数据在传输、搜索和共享获取过程中是否发生篡改或差错,确保私有數据的完整性和安全性。
3 基于区块链技术的私有数据访问控制模型仿真验证
为有效验证和评估本文所设计模型的相关性能,我们在VMware Workstation 12 上安装了Ubuntu16.04.7 操作系统,并采用了区块链开源工具Hy?perledger Fabric v1.4。通过设置链码,重构并设计了智能合约。在确定了多种属性策略后,以512字节的数据为样本进行仿真实验,发现:一是随着元数据数量的不断增加,数据处理的时间开销并未出现爆炸性增长,反而呈下降趋势,如图3所示,这符合实际应用需求;二是在智能合约机制中,使用的私有数据必须通过访问控制策略进行身份信息验证,从而避免了私有数据被恶意入侵和篡改的风险;三是该模型在向区块链网络的数据块中存储私有数据时,区块链网络中透明度的高低并不会对私有数据的安全性构成威胁。
4 结束语
本文所设计的基于联盟链的私有数据访问控制模型采用同态加密算法加密,确保了共享私有数据的安全性;通过添加属性的权重,满足了私有数据安全化访问控制的需求;采用密文策略属性基加密方案,降低了数据加解密的时间开销;借助联盟链智能合约机制,优化了数据密级匹配流程,降低了联盟链内私有数据被恶意下载等风险。该模型实现了节点的安全化接入和私有数据的安全化共享,有效解决了私有数据访问控制安全性差等问题。因此,本文模型具有较高的应用价值和应用前景,值得进一步推广和应用。
参考文献:
[1] 童飞,邵冉冉.基于区块链的云上数据访问控制模型研究[J].计算机科学,2023,50(9):16-25.
[2] 张杰,许姗姗,袁凌云.基于区块链与边缘计算的物联网访问控制模型[J].计算机应用,2022,42(7):2104-2111.
[3] 叶进,庞承杰,李晓欢,等.基于区块链的供应链数据分级访问控制机制[J].电子科技大学学报,2022,51(3):408-415.
[4] 王永刚.基于区块链的云存储数据访问安全控制算法[J].河北北方学院学报(自然科学版),2021,37(11):7-12.
[5] 杜瑞忠,张添赫,石朋亮.基于区块链且支持数据共享的密文策略隐藏访问控制方案[J].通信学报,2022,43(6):168-178.
【通联编辑:代影】