Blockchain‑based access control for dynamic device management in microgrid
Zhang K, Yu J, Lin C, et al. Blockchain-based access control for dynamic device management in microgrid[J]. Peer-to-Peer Networking and Applications, 2022, 15(3): 1653-1668.
这是一篇三区的文章。
本文提出了一个基于区块链的快速动态访问控制FDAC系统,用于雾辅助的微电网中的设备管理。FDAC部署了四种合约,并采用了基于属性的访问控制模型,以及使用Cuckoo过滤器来加速合约中的策略搜索,还提出了一种新的信用验证算法。
该系统优势在于:细粒度访问控制、自动运行、隐私保护、恒定的策略搜索成本。
引言
终端设备容易被恶意入侵,以至未授权用户进行非法控制造成数据泄露或设备停机。一旦这些设备因未经授权的访问而被黑客入侵,敏感信息的安全和隐私可能会泄露给外部人员。因此,微电网中设备管理的主要目标是为终端设备提供授权、安全和灵活的访问控制。目前基于区块链的访问控制的最新解决方案尚未正式考虑节点行为的信用评估和有效搜索访问控制策略。
FDAC系统的主要特点:
(1)为设备管理实现安全、可扩展和细粒度的基于属性的访问控制,其中只有经过认证和授权的用户节点才能访问设备的信息。
(2)部署动态高效的智能合约,实现用户授权和身份验证、属性管理和访问决策。
(3)配置信用评估以监控用户节点的恶意行为,其中决策动态地适应资源的敏感性。
本文与五篇文献在防纂改、隐私保护、使用智能合约、基于属性、信用评估和策略搜索成本几个方面进行了比较。

[15]Dorri A, Kanhere SS, Jurdak R, Gauravaram P (2017) Blockchain for iot security and privacy: The case study of a smart home. In: 2017 IEEE international conference on pervasive computing and communications workshops (PerCom workshops), IEEE, pp 618–623
[18]Zhang Y, Kasahara S, Shen Y, Jiang X, Wan J (2018) Smart contract-based access control for the internet of things. IEEE Internet Things J 6(2):1594–1605
[20]Saini A, Zhu Q, Singh N, Xiang Y, Gao L, Zhang Y (2020) A smart-contract-based access control framework for cloud smart healthcare system. IEEE Internet Things J 8(7):5914–5925
[21]Zhang Y, Yutaka M, Sasabe M, Kasahara S (2020) Attributebased access control for smart cities: A smart-contract-driven framework. IEEE Internet Things J 8(8):6372–6384 22.
[22]Qashlan A, Nanda P, He X (2020) Security and privacy implementation in smart home: Attributes based access control and smart contracts. 2020 IEEE 19th International Conference on Trust. Security and Privacy in Computing and Communications (TrustCom), IEEE, pp 951–958
相关工作
A. 基于区块链的访问控制模型
Ouaddah等人[23]提出了fairaccess,一种基于区块链的授权方案,其中智能合约用于执行访问控制策略以交换访问令牌,但假设的交易数量有限。
[24]采用智能合约仅对数据记录管理实现访问控制。不同于[24],Zhang等人[18]利用以太坊智能合约来存储ACLs,以此提出一个基于ACL访问控制的框架。但是由于每个合约仅针对每个subject-object对设计,因此系统在部署合约时通常会带来巨大的金钱成本。
Dorri等人[15]考虑了物联网中的访问控制问题,并对智能家居进行了案例研究。在该方案中,每个区块使用一个策略头来存储访问控制策略,以处理与家庭设备交互的所有访问请求,这是区块链技术中未正式考虑的关键工作证明过程。
与本地私有链相比,提出了一种新的控制链[25],以提供用户透明、用户友好、完全去中心化和容错。然而,有四种不同的区块链来执行访问控制,维护成本高昂。
为了考虑云服务中的分布式访问控制[26],引入了基于区块链的分布式运行时访问监控系统(DRAMS)用于联合云合作。因此,它提供了数据隐私和数据安全共享。Novo等人[27]提出了一种基于分布式区块链管理物联网设备的授权方案。然而,这两种解决方案不太实用,因为假定的物联网设备通常具有有限的计算能力。
为了有效保护大规模物联网设备,Xu等人[28]引入了一种去中心的、基于联合能力的委托模型(FCDM)。然而,巨大的存储成本导致访问请求的高延迟。
B. 基于属性的访问控制
Qashlan等人[22]和Zhang等人[21]考虑了实际物联网应用的基于属性的访问控制和智能合约。特别是,[22]提出了一种用于雾辅助智能家居中安全物联网设备管理的认证方案。然而,它不能有效地监控用户节点的非法行为,这限制了它在隐私增强环境中的实际部署。
Zhang等人[21]提出了一些用于智慧城市访问控制框架的智能合约,实现了管理主体和客体的属性、添加和删除访问策略以及决策等功能。然而,所设计的访问控制只适用于动态时间管理,而没有正式考虑对终端设备的动态管理。此外,[29]介绍了开放物联网环境下基于属性的区块链访问控制模型,其中关键属性信息被存储在区块链上。系统通过智能合约中基于属性的访问控制方法判断访问请求,并做出访问控制判断。但是,该方案缺乏对安全性和运营成本的分析。后来,Zhang等人[30]制定了一个有效的基于属性的协同访问控制方案,以实现物联网应用中的受控访问授权。虽然该方案保证了授权访问的安全性,但没有正式考虑访问控制的数据完整性和隐私威胁。最近,Rouhani等人[31]提出了一个区块链中基于属性的访问控制系统,以提供访问尝试的可信审计。此外,该系统提供了一定程度的透明度,使访问请求者和资源所有者都受益,但用户认证没有被整合到用户授权阶段。
参考文献
[15]Dorri A, Kanhere SS, Jurdak R, Gauravaram P (2017) Blockchain for iot security and privacy: The case study of a smart home. In: 2017 IEEE international conference on pervasive computing and communications workshops (PerCom workshops), IEEE, pp 618–623
[18]Zhang Y, Kasahara S, Shen Y, Jiang X, Wan J (2018) Smart contract-based access control for the internet of things. IEEE Internet Things J 6(2):1594–1605
[21]Zhang Y, Yutaka M, Sasabe M, Kasahara S (2020) Attributebased access control for smart cities: A smart-contract-driven framework. IEEE Internet Things J 8(8):6372–6384
[22]Qashlan A, Nanda P, He X (2020) Security and privacy implementation in smart home: Attributes based access control and smart contracts. 2020 IEEE 19th International Conference on Trust. Security and Privacy in Computing and Communications (TrustCom), IEEE, pp 951–958
[23]Ouaddah A, Abou Elkalam A, Ait Ouahman A (2016) Fairaccess: a new blockchain-based access control framework for the internet of things. Sec Com Netw 9(18):5943–5964
[24]Azaria A, Ekblaw A, Vieira T, Lippman A (2016) Medrec: Using blockchain for medical data access and permission management. In: 2016 2nd international conference on open and big data (OBD), IEEE, pp 25–30
[25]Pinno OJA, Gregio ARA, De Bona LC (2017) Controlchain: Blockchain as a central enabler for access control authorizations in the iot. In: GLOBECOM 2017-2017 IEEE Global Communications Conference, IEEE, pp 1–6
[26]Ferdous MS, Margheri A, Paci F, Yang M, Sassone V (2017) Decentralised runtime monitoring for access control systems in cloud federations. In: 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS), IEEE, pp 2632–2633
[27]Novo O (2018) Blockchain meets iot: An architecture for scalable access management in iot. IEEE Internet Things J 5(2):1184–1195
[28]Xu R, Chen Y, Blasch E, Chen G (2018) Blendcac: A smart contract enabled decentralized capability-based access control mechanism for the iot. Computers 7(3):39
[29]Song L, Li M, Zhu Z, Yuan P, He Y (2020) Attribute-based access control using smart contracts for the internet of things. Proc Comp Sci 174:231–242
[30]Zhang Y, Li B, Liu B, Wu J, Wang Y, Yang X (2020) An attributebased collaborative access control scheme using blockchain for iot devices. Electronics 9(2):285
[31]Rouhani S, Belchior R, Cruz RS, Deters R (2021) Distributed attribute-based access control system using permissioned blockchain. World Wide Web 24(5):1617–1644
系统概述
A. 系统模型

系统包含四种实体对象:
device nodes:终端设备,收集和存储设备。
user nodes:比如客户端、组织机构等,他们需要访问设备信息和资源。
edge nodes:记录设备运行操作的输入和输出交易,一般当成miners—矿工节点。性能优于终端设备。
cloud:提供高效、经济高效和安全的存储服务。
系统运行流程:
1. 第一步是验证用户节点的身份信息。首先,通过AMC合约中的基于属性的签名(ABS)算法对用户节点进行认证。如果经过身份验证,AMC将向用户节点返回唯一的标识号ID和区块链地址addr。

2. 之后,用户向合约ACC发送访问请求,以访问存储在cloud中的终端设备信息。如果ACC确定该请求合法,ACC将访问授权或访问块返回给用户。
3. 然后,ACC将用户的不当行为报告MR发送给智能合约CC,CC在其中评估MR中用户行为的信用,并将信用值cvi返回给ACC。基于不同的信用等级,ACC指定相应的惩罚。
4. 最后,边缘节点接收用户的访问信息记录,将其作为交易打包成块,以获得系统奖励。
B. 威胁模型
Collusion Attack:终端设备节点可能串通在一起以访问未经授权的信息并导致属性信息的泄露。也就是说,串通的攻击者可能试图恶意收集属性并满足指定的访问策略。
Replay Attack:此攻击表明攻击者可能拦截用户发送的访问请求,并重播该访问请求以获得对设备资源的访问。(也就是中间人攻击)
Modification Attack:此攻击表示攻击者可能试图修改或删除特定用户或设备的存储数据。攻击者破坏本地存储,并获取机密数据信息以发起此类攻击。
Masquerade Attack:伪装攻击由对手执行,以获得对系统的未授权访问。这种攻击通常包括窃取密码、窥探登录名和发现系统漏洞。
FDAC方案
四种智能合约:Attribute Management Contract (𝖠𝖬𝖢), Policy Management Contract (𝖯𝖬𝖢), Access Control Contract (𝖠𝖢𝖢) and Credit Contract (𝖢𝖢)
初始化
1. 注册
新用户基于AMC中的相关ABS算法完成注册和认证。之后,系统为用户节点授予相应的ID和唯一的区块链帐户地址addr。
AMC中包含ABI函数:idValidate(验证用户身份)、idLogout(注销用户)

2. 属性管理
主体和客体的属性管理

访问控制管理
访问控制管理(ACC)包括策略管理、策略动态搜索和访问控制执行。
1. 策略管理

2. 动态策略搜索
FDAC引入了一种基于Cuckoo过滤器的动态检索方法,它支持插入和删除策略功能。
Cuckoo过滤器了解:https://zhuanlan.zhihu.com/p/13128527
3. 访问控制
接收到访问请求后,ACC合约会判断请求是否合法,如果是非法访问行为,ACC会发送一个misbehavior report(MR)给信用合约CC。
MR主要包括不良行为类型、不良行为数量、发生时间和访问行为的历史记录。

信用评估
恶意的访问行为会产生过多的区块链交易,会导致区块链接收合法交易的概率降低,或延长确认时间。故提出基于MR来计算用户可靠性来解决这个问题。具体算法如下:

1. 信用计算方案

用户节点的行为标记为i,cvP 表示访问节点始终遵循指定访问策略的积极影响因素,而cvN 则相反,标识访问节点具有恶意行为的消极影响因素,比如在短时间内访问被禁止的信息或频繁发送访问请求。
λ1 和 λ2 为系统更新的动态权重,两者的关系定义为:

其中β(ti)=1/γti ,λ2 ,λN 和 γ 为预设值,ti 为访问节点的总时间,β(ti)为时间衰减因子。随着 ti 的增加,时间衰减因子β(ti)减小,其中权重λ2也减小。也就是说,恶意行为对节点的影响逐渐降低,节点可能因此受到惩罚。
这个公式里未出现λ1 ; ti 的具体意思没懂,是访问节点访问花的总时间还是其他,原文为ti represents the total time of the access node;关于这个公式的理解,恶意行为对节点的影响降低会导致不能更好地评估节点的可信度;
cvP 的计算公式如下,

cvP max为其上限,是系统设定的阈值,一般设为0.95;ω为合法行为的权重;Ti 是用户节点i合法行为的总数;Il 为最后一次处罚的最后一个合法行为索引。
Il is the last legal behavior index of the last punishment,不懂其具体意思。
cvN 的计算公式如下,

mi 是节点i的恶意行为总数;k 是每种类型的恶意行为总数;α(η)表示恶意行为的惩罚系数,其范围为1-10.
实验
在以太坊上进行测试。首先测试了智能合约的性能,包括gas的消耗、平均延迟和访问结果。其次是测试了策略搜索的性能。最后是信用评估分析。

浙公网安备 33010602011771号