基于区块链的ABAC静态策略冲突优化算法

2024-12-31 00:00:00李健华
电子产品世界 2024年11期
关键词:区块链

摘要:为解决大数据与云计算环境下策略冲突检测与管理的难题,首先,介绍了区块链技术与基于属性的访问控制(attribute-based access control,ABAC)模型的基本概念,为后续算法设计奠定了理论基础;其次,设计了ABAC静态策略冲突优化算法,包括基本元素、优化流程、相似度值计算、策略区块分组以及冲突策略优化算法设计;最后,实验结果表明,ABAC静态策略冲突优化算法在冲突检测、决策效率、存储优化等方面具有显著优势。该算法可以实现策略冲突的高效检测与智能优化,大幅提升了策略管理的效率与精确性,同时也为基于区块链的ABAC策略管理提供了新的思路和有益参考。

关键词:区块链;ABAC;静态策略;策略冲突优化算法

中图分类号:TP311.13 文献标识码:A

0 引言

随着大数据与云计算技术的迅速发展,基于属性的访问控制(attribute-based access control,ABAC)策略在确保信息安全中扮演重要的角色。然而,现有ABAC静态策略在复杂环境中可能面临冲突问题,管理与检测效率低,影响系统响应速度与安全性。这种背景下,充分利用区块链不可篡改性与智能合约自动执行等特性,设计ABAC静态策略冲突优化算法具有重要现实意义,这不仅有助于提升策略冲突的解决能力,增强策略管理的透明性,还能够保证大规模信息系统长期可靠

运行。

1 ABAC模型

ABAC模型作为分布式系统中访问权限管理的核心框架,其核心思想在于依据实体属性而非传统角色进行访问授权。该模型将访问控制要素分为客体、主体、操作和环境四大属性集,通过逻辑操作与属性值谓词定义授权策略,确保访问控制的灵活性与细粒度。ABAC模型中的主体携带特定属性以请求访问,客体代表被访问资源,环境属性动态反映了访问时的系统状态,而操作属性则定义了访问的具体行为[1]。策略集作为访问控制的依据,借助策略决策点来评估属性访问请求,最终由策略执行点执行访问控制决策。ABAC模型示意图如图1所示。

图1 ABAC模型示意图

ABAC静态策略在复杂系统中易产生冲突,从而影响访问控制的准确性。为此,结合区块链技术的不可篡改性与智能合约的自动化特性,提出并设计了ABAC静态策略冲突优化算法。该算法借助区块链存储策略集,利用哈希值来确保策略一致性,而智能合约用于自动检测并解决策略冲突,大幅提升了策略管理的安全性与效率。具体来说,本文首先引入Jaccard相似系数作为衡量策略属性间相似度的标准,用以量化布尔与符号度量间的重叠程度;其次,明确定义静态策略冲突的条件,即策略间决策属性相反、操作行为存在交集且策略条件属性与值具有重叠,则视为冲突;最后,构建基于区块链的访问控制策略架构,充分利用区块链不可篡改性及智能合约自动化特性,存储与管理访问控制策略,确保策略执行的透明度与高效性[2]。其中,智能合约作为策略表示与执行的载体,由资源所有者创建并永久存储在区块链上,支持访问请求的即时评估与决策生成,全程自动化处理,大幅提升了策略冲突检测与优化的效率与精度。

2 ABAC静态策略冲突优化算法设计

2.1 基本元素

基本元素定义了访问控制的核心组成部分。主体作为访问请求的发起者,利用其主体属性如安全等级、年龄、身份等特征来识别其身份或特性。客体是指被访问的目标服务或资源,其对象属性描述了安全级别、资源类型等信息。资源属性进一步细化了被访问实体的具体特征,如文件创建日期、类型及大小。环境属性动态反映了访问发生时的上下文状态,包括但不限于安全级别、位置、时间等信息。操作属性定义了访问的具体行为,如执行、读、写等。决策属性指示了访问请求的结果,通常包括拒绝、允许,以及在不明确时返回未知状态。此外,相似值(Jaccard相似系数)用于量化两个策略属性间的相似程度,而相似度待定值是一个0~1的数值,用于策略冲突优化过程中的比较与判断[3]。

2.2 优化流程

为确保策略的有效性与一致性,ABAC静态策略冲突优化算法需遵循以下系统化流程:①在策略分析阶段,将策略集中的规则按照资源、主体、操作、环境属性进行解析,构建属性集,以反映策略的决策效果(允许或拒绝)。②结合Jaccard相似系数来计算策略间的相似值,用以量化策略间的重叠程度。在处理冲突检测过程中,算法通过比较策略条件与访问请求,识别并标记出对同一请求产生不一致决策的策略集,即策略冲突。③为进一步管理这些冲突,策略区块分组负责将策略集按照操作属性与资源属性的相似度完成逻辑分组,确保有针对性地处理冲突。④策略冲突优化阶段采用了一种高效算法,其在维持策略的基础上,优先处理拒绝决策,通过删除、拆分、合并策略的方式,系统性地解决策略冲突问题。ABAC静态策略冲突优化流程如图2所示。

2.3 相似度值计算

ABAC静态策略冲突优化算法遵循Jaccard相似系数原理,客观量化了策略间同名属性的相似程度。该计算过程将策略属性视为一个集合,通过比较两个策略中同名属性的并集与交集的大小,得到一个0~1的相似度值。该数值直接反映了策略属性间的重叠程度,为后续的冲突检测与策略优化提供了坚实的数据支撑。

2.4 策略区块分组

策略区块分组作为处理冲突策略的关键步骤,主要过程是从原策略集中选取策略,并基于数据引用完成区块细分。每个区块的生成涉及对输入参数的特定处理与更新,以确保新策略集的准确性与一致性。策略冲突仅可能发生在针对同一资源执行相同操作的策略之间,因此,策略区块分组的关键依据为操作属性与资源属性的相似度。为避免策略被错误地分配至多个组,优化算法要求两个策略在操作属性与资源属性上的相似度值必须为1,这主要借助智能合约的严格管理来实现。智能合约由资源所有者创建,并存储到区块链上,保证策略执行的不可篡改性与透明性。函数调用需严格按照顺序执行,并允许参与者验证最后结果,以此维护策略分组的精确性与系统整体安全性[4]。

2.5 冲突策略优化算法设计

针对ABAC静态策略中的冲突问题,本文基于区块链设计了一种ABAC静态策略冲突优化算法。首先,该算法依据操作属性与资源属性的相似度值来区块分组策略集。其次,深入分析各组中环境属性与主体属性的相似度,在保持策略完整性的前提下,优化算法旨在通过精准操作去除冲突部分,同时,最大限度地保留原策略的有效内容。优化过程中,若两组策略在环境属性与主体属性上的相似度均为最高(相似度值为1),则采取拒绝优先原则,直接删除允许访问的策略,并保留拒绝访问的策略,以确保系统安全。针对相似度非完全一致的情况,该算法会识别并剥离冲突属性范围,尝试利用交叉组合来生成新的策略组合。若策略间存在属性范围包含关系,应优先保留范围更广泛的策略,同时删除或调整相关策略部分[5]。该优化算法设计一方面体现了对策略细节的精准把控;另一方面通过引入区块链技术,有效保证了策略管理与执行的不可篡改性与透明性,为大规模分布式系统中的静态策略冲突管理提供有力的技术支撑。

3 实验及结果分析

本文采用一台配置为Intel(R)Core(TM)i7-6700HQ的中央处理器(central processing unit,CPU),其主频为2.60 GHz、内存为16 GB,并将其用于运行Windows 10专业版操作系统的计算机上以完成实验部署。通过对ABAC静态策略优化算法进行仿真,旨在验证其在现实应用场景中的效能。为了全面且深入地评估该算法的性能,本文构建了一个包含丰富属性的综合数据集,具体涵盖6个操作属性、5个资源属性、12个环境属性以及10个主体属性。在实验过程中,本文遵循可扩展访问控制标记语言(eXtensible access control markup language,XACML)规范,将策略库定义成数据集,同时选取了不同规模的策略集(如5 000、

10 000、15 000、20 000个)完成测试,以便深入分析冲突检测的决策结果、决策时间、准确性及总存储量的变化情况。为客观准确评估算法在策略冲突检测方面的性能,本文进行了10次实验,每次实验都针对不同数量的策略冲突进行测试。策略冲突检测率结果如表1所示。

本文提出的基于区块链的ABAC静态策略冲突优化算法展现了卓越的性能,其平均检测率高达93.42%,充分证明了该算法在策略冲突检测方面的强大能力。即使策略冲突次数不断增加,该算法的检测率依然保持在一个较高的水平,这进一步证明了其在处理复杂策略冲突时的有效性。此外,本文还对冲突检测准确率与策略数量之间的关系进行了深入分析。

无论策略数量如何变化,本文提出的算法的冲突检测准确率均稳定在95%左右,这充分表明该算法在识别与处理策略冲突方面具有较高的准确性与稳定性。这一结果证明了该算法在策略冲突检测领域的可靠性与实用性。为更全面地评估算法的效率,本文比较了优化前后的算法运行时间。在不同策略数量下,优化后的算法运行时间都显著少于优化前的算法。特别是在策略数量为20 000时,优化后算法的运行时间仅为1 357 s,而优化前算法的运行时间则长达4 295 s,因此优化后算法在提升运行效率方面具有显著优势。为进一步探究优化策略对决策效率的影响,本文还比较了策略优化前后针对特定请求发送最终决策所需的时间。策略优化后所需的决策时间明显少于策略优化前所需的时间,并且随着策略数量的不断增加,二者的差异更加明显。该结果充分证明了优化策略在显著提高决策效率方面的优势,尤其是在处理大量策略时。

此外,为确保优化策略不会对最终访问请求产生负面影响,本文对优化前后的决策结果(允许与拒绝)进行了比较。在优化后的策略中,允许的决策结果相似度保持在较高水平(95%以上),而拒绝的决策结果相似度则保持不变(100%)。该结果充分说明优化策略在保持决策结果一致性的同时,有效地减少了策略数量并提高了处理效率。最后,本文对优化前后策略集存储所需的空间变化完成深入分析。实验结果表明,优化后的策略大大节省了存储空间并提高了存储效率。随着策略数量的增加,存储效率的提高程度也逐渐增大。该结果充分证明了优化算法在减少存储空间占用和提高存储效率方面具有显著优势。

4 结语

综上,本文设计的基于区块链的ABAC静态策略冲突优化算法,能够有效解决传统ABAC策略在复杂环境中管理困难、冲突频发等问题。该算法有效利用区块链不可篡改、去中心化的特性,同时结合智能合约自动化执行,大幅提升了策略冲突的处理效率与检测精度,增强了策略管理的透明性与可靠性。未来,将持续深化相关研究,以进一步完善策略冲突优化算法,以使该算法在更多应用场景中发挥积极作用。

参考文献

[1] 王凤领,王涵,冯伟功.一种基于区块链的ABAC静态策略冲突优化算法[J].网络安全技术与应用,2023(5):35-39.

[2] 李健,戚湧.可撤销属性加密的区块链数据访问控制方法[J].计算机工程与设计,2024,45(2):348-355.

[3] 王苗苗.基于区块链技术的私有数据访问控制模型设计[J].电脑知识与技术,2024,20(10):88-90.

[4] 何寿奎,李洁,王俊杰.政府动静态奖惩机制下基于区块链的工程信息共享策略演化博弈研究[J].科技与经济,2023,36(5):6-10.

[5] 胡睿,张功萱,寇小勇.一种基于Fabric区块链的云端数据动态访问控制方案[J].数据与计算发展前沿,2024,6(1):150-161.

猜你喜欢
区块链
区块链对互联网金融发展的重塑与挑战分析
基于区块链技术的海上散装液体化学品运输安全监管方法
水运管理(2016年11期)2017-01-07 13:25:48
保险企业的区块链技术应用方向选择研究
区块链技术在金融领域的应用与前景研究
中国市场(2016年32期)2016-12-06 11:21:13
区块链技术的应用价值分析
商情(2016年40期)2016-11-28 11:24:12
“区块链”发展现状评述及展望
商(2016年34期)2016-11-24 14:46:00
“区块链”的苟且、诗和远方
基于区块链技术的数字货币与传统货币辨析
企业导报(2016年19期)2016-11-05 18:12:43
互联网金融新模式与中小企业融资关系研究
智能合约与金融合约
商(2016年6期)2016-04-20 17:50:36