边缘计算与区块多链下的安全可信认证模型

【www.zhangdahai.com--其他范文】

黄敏敏,袁凌云,2+,潘雪,张杰

1.云南师范大学 信息学院,昆明650500

2.云南师范大学 民族教育信息化教育部重点实验室,昆明650500

物联网(Internet of things,IoT)即“万物相连的互联网”,是指将各种传感设备与网络结合起来形成的一个大型网络。现该网络数据的增长速度已远超集中式处理模式网络带宽的负载限制,已不能满足IoT多维、实时的服务请求。边缘计算作为新型计算范式被提出[1],为IoT 异构设备间的实时通信、协作和存储提供了理想场景。欧洲电信标准化协会(European Telecommunication Standard Institute,ETSI)将边缘计算定义为在移动网络、近无线接入网络(radio access network,RAN)和移动用户的边缘侧提供互联网服务环境和云计算功能[2]。即提供服务的边缘节点是大面积分散、多样化及不确定的,故边缘节点是置于不可信环境中的。当恶意节点接入后,可协助相应的恶意应用服务跳过相关的安全认证机制,并提供攻击其他边缘设备以窃取用户隐私的机会,数据的安全性受到了严峻的挑战。为了促进边缘计算在IoT应用中的发展,其数据的安全访问问题亟需解决。

区块链作为一项新型信息处理技术,已成为满足IoT 网络安全需求最有前途的技术之一,在安全、访问控制方面存在天然的优势[3],为学术界解决边缘计算模式下的数据安全和隐私保护等问题提供了新思路。2020 年,中国移动5G 联合创新中心发布的《区块链+边缘计算技术白皮书》明确了边缘计算与区块链技术的结合是相互促进、协同发展的。但是区块链1.0 即比特币(bitcoin,BTC)和区块链2.0 即以太坊(ethereum,ETH)为追求去中心化而牺牲了扩展性[4]。且随着交易量的日益增加,系统整体性能受单个节点性能上限的限制越发明显,导致了中央服务器的成本和性能瓶颈[5]。此外,区块链网络的安全性是基于每个节点在链上存储所有事务以进行验证得以保证的,故需要高扩展性以支持其高安全性。这些问题阻碍其在边缘计算安全问题上发挥最大的作用,不符合边缘计算大带宽、低延时的服务宗旨。

针对区块链性能瓶颈问题,有研究提出了链上、链下扩容方案,而扩容方案应用过程中的安全性与性能之间又是互相制约的关系[6],特别体现在跨链交互问题上。故基于扩容方案部署边缘计算网络架构,需考虑区块链所构成的边缘信任域之间的安全交互问题。且域间设备安全交互过程中还存在身份认证难、访问控制难及隐私保护难等[7]问题。现有构建域间信任的方式,一般是在域内设置中心管理机构来管理和验证身份。因是中心化的认证方式,其节点设备间无法进行身份的相互验证,缺乏跨域身份信任,导致不同信任域的IoT 设备无法便捷地互相访问,同时数据也无法安全共享[8]。

针对上述边缘计算与区块链网络架构中的数据安全、跨域身份认证难题,本文设计了主从多链结构,并集成边缘计算提出了一种支持跨域访问控制的高扩展性分布式可信认证模型。本文的主要贡献包括四方面:

(1)针对区块链扩展性瓶颈,采用链下扩容方法设计了可无限伸缩的主从多链结构。将大量的跨域工作转移到主链上,减轻了从链的交易负担。而从链无需向主链提交所有的交易数据便可提供数据可用性证明。

(2)基于链上扩容方案的实现思路,将主从多链集合到边缘计算上,部署了三层体系架构。并基于椭圆曲线加密算法(elliptic curve cryptography,ECC)设计了边缘节点的安全接入流程。通过主从链赋予边缘可信,提高了网络架构的安全性与计算有效性。

(3)基于RBAC(role-based access control)提出了域间访问控制模型(inter domain-role-based access control,ID-RBAC)。并结合智能合约与角色权限设计了细粒度的访问控制策略。

(4)基于ID-RBAC模型设计了域内、域间访问控制机制,包括具体的身份认证流程、跨域数据管理方法。

边缘网络架构在异构边缘节点的相互作用和跨边缘节点的服务迁移下,数据的安全性风险增加。依托区块链技术的分布式存储、共识机制、加密不可篡改等特点,许多研究基于区块链赋予边缘网络安全可靠的访问与控制。Ma 等人[9]提出了一种基于区块链的可信数据管理方案,是满足可配置的边缘区块链安全系统。Pan 等人[10]定义了边缘链,提出了一种基于区块链和智能合约的边缘物联网系统。程冠杰等人[11]提出一种基于区块链与边缘计算的物联网数据管理架构。这些方法中,区块链技术的加持维护了数据的安全性,但因目前区块链扩展能力的有限性,一定程度上限制了其支持边缘计算中频繁事务的访问处理能力。虽然边缘计算将区块链从受限的设备中卸载了出来,但并未真正解决区块链扩展性问题,整体性能上缺少优势。可见,目前区块链的存储和计算能力还不足以应对两者集成后分散管理的性能挑战。

吞吐量低、数据存储困难和可扩展性差等引起的性能问题极大地限制了区块链的发展[12]。鉴于此,众多研究学者对区块链扩容技术展开了研究。区块链扩容技术包括链上、链下两种方法。其中链上扩容[13-14]方案通过改变基本协议来提升区块链整体性能,但存在节点故障导致数据丢失等问题。不改变基本协议而对应用层进行改变以提升扩展性的链下扩容[15-17]方案,将各服务压力转移到链下处理,以减轻主链的负担,但不可避免地加剧了系统的中心化程度。同时,系统中因多条链的存在,势必涉及链之间的安全交互问题,且其交互过程中会产生大量的密码数据,节点因此受到繁重的计算、验证负担。许多研究在扩容技术的基础上集成了边缘计算,致力于促进区块链扩容技术的发展,以强化其与边缘计算集成的协同作用。Li 等人[18]通过边缘计算来构建区块链系统,利用边缘计算富余的算力解决复杂的密码学计算问题。Chuang 等人[19]提出了分层区块链,并通过边缘计算来减轻区块链系统运行带来的存储和计算负担。这些方案在扩容的基础上集成边缘计算,形成安全的分布式处理模式,两者协同发展提高了系统的整体服务能力。但该模式下的信息系统与数据是分域管理的,信息系统呈现域内互联、域间孤立的特征,若不能关注到该特征,域间的设备和数据容易出现明显的“孤岛”现象。

为了解决各应用域间的安全性、共享性问题,许多学者对跨域共享展开了研究。传统的跨域共享机制采用集中式的身份认证方法,如基于证书的公钥基础设施(public key infrastructure,PKI)[20]和基于身份的密码体制(identity-based cryptography,IBC)[21]。这种集中式处理方法的认证资源极易耗尽,认证效率不稳定,特别不适用于多设备的服务场景,这与要求实时、高效地处理多并发事务边缘计算发展模式不匹配。而在大规模跨域场景应用中,陈彦冰等人[22]通过引入区块链和无证书认证技术,提出一种基于医疗联盟链安全高效的跨域认证方案。赵平等人[23]设计了主从区块链身份认证结构和匹配使用的分层拜占庭容错算法,实现了双向异构跨域身份认证,其身份认证较繁琐复杂,产生大量的计算开销。基于区块链扩容技术,Jiang 等人[13]基于图结构的IOTA(Internet of things application)即Tangle 平台设计了跨链框架,区块链的扩展性得到了提高,但该方法涉及到的用户隐私数据问题并未解决。Zhang 等人[24]提出了一种完全跨域的方法。Guo 等人[25]设计了一种支持分布式跨域身份验证的主从区块链体系结构,解决了一定的用户隐私问题,但其对隐私数据的访问权限划分不明确,不能做到数据的细粒度访问控制,存在隐私数据过度访问等问题。

上述各模型的安全方案对区块链技术的依赖,致使这些方案在实现数据安全保护的同时,还要考虑区块链性能受限的问题。而要兼顾高性能与高安全性要求,区块链需要更具可扩展性和分布式的设计。故本文重点关注边缘计算和区块链扩容技术的协同作用,以高性能、低功耗以及高扩展性的方式在边缘侧部署访问控制模型。兼顾区块链的安全与性能,设计更加完善且有效的安全方案,以进一步解决边缘计算场景下应用服务的跨域身份认证与数据安全共享等问题。

2.1 主从多链设计

为突破传统单链性能瓶颈,设计了主从多链结构,如图1所示(图中,Node0为通信节点,其余为普通节点)。该主从多链结构包括一条主链(main chain,MC)和多条从链(slave chain,SC)。SC 作为域内的可信平台,对域内访问操作进行管理,并定义了普通节点和通信节点,普通节点负责数据存储,通信节点是网络交互的枢纽,连接到MC。MC 是从链间交互的桥梁,用于解析跨链请求,实现可信身份认证。MC 定义了通信节点和缓存节点,通信节点与SC 网络进行交互,实现链之间的互联、互通,缓存节点通过CouchDB 状态数据库缓存跨域数据。通信节点构成MC 与SC 的索引,将多个SC 衔接起来构成一个无限扩展的主从多链,具有很好的灵活性和扩展性。成员关系服务提供者(membership service provider,MSP)是证书管理服务器,参与本地区块链账本的维护,为加入区块链的节点进行身份审核和证书发放。

图1 主从多链结构Fig.1 Master-slave multi-chain structure

主从链结构的优点在于其可伸缩性强,可通过动态扩展从链,使得整个系统的性能不会受限于某个链,打破其可扩展性瓶颈。而主链作为可信认证平台,保存其交易的哈希时间锁,维护了从链间交易的原子性。

2.2 基于主从多链的分布式安全架构

在主从多链下集成边缘计算设计了三层分布式安全架构,如图2 所示,包括设备层、从链网络及主链网络,三层自下向上服务。设备层为上层提供可信计算服务,该层中的边缘设备通过身份注册流程后,接入从链网络,组成从链网络的“矿工”——边缘节点(edge node,En)。En将数据预处理后存储于SC节点中,SC 为当前所在域的设备提供安全的数据存储环境及域内访问控制;
SC 与MC 中的通信节点共同维护可靠的通信,为跨域访问控制提供服务。主链网络支持跨不同SC 域之间进行访问。该三层架构覆盖了区块链和边缘计算的核心功能,从存储、网络和计算不同层面提供了分布式安全服务。架构中的从链、边缘节点可根据需求进行开发,是一个无限扩展的联盟。

图2 分布式安全架构Fig.2 Distributed security architecture

(1)下层为设备层,该层设两个功能模块:感知模块、设备管理模块。其中设备管理模块设计了基于密码学的安全接入流程,设备需经过该流程的验证才可成为合法的En。

(2)中间层为从链网络,该层包含了数据处理和域内访问控制两个功能模块。在数据处理模块中,En对设备层采集到的数据进行预处理,并统一格式后打包成块,存储于SC 帐本;
域内访问控制模块是中间层的核心功能模块,实现物联网域内访问管理。

(3)上层为主链网络,该层作为域间的可信共享平台,是数据跨域管理的控制器。该层设置了缓存模块、域间访问控制模块,域间访问控制模块联合SC共同管理跨域访问行为,缓存模块对跨域数据及相关信息进行缓存。

2.3 基于RBAC 的域间访问控制模型

2.3.1 ID-RBAC 模型

在物联网访问控制方案中,常见的访问控制模型有属性集、权限集等,这些方法的集合保护措施不够安全,且设计成本较高[26]。在边缘计算和区块多链架构下,多设备、多节点的接入,加剧了访问与权限的复杂关系,使得授权管理变得繁琐。同时频繁申请、授权与访问操作更是加大了权限管理成本。基于角色的访问控制模型可以解耦用户与权限的关系,并支持层次化的权限分级和权限继承,极大简化了权限的管理。但因其是根据角色划分用户权限,导致实现细粒度的访问控制变得困难,通常需要创建更具体的角色版本或设计其他机制[27]。

智能合约具有高准确性和智能性,不需人为参与便可自动执行。通过智能合约为访问用户分配与他们身份信息相符的角色,使接受角色与用户的关系转变要比角色对应权限的转变更频繁[28],即可降低授权的复杂性,并减少组织的管理成本。因此本文以RBAC模型为基础,利用智能合约来进行用户、角色与权限的逻辑划分,提出域间访问控制模型ID-RBAC。

在ID-RBAC 模型下,设计了动态授权机制,该机制可以动态调整用户在不同状态下的权限。授权规则如角色A 持有权限Ⅰ,在域内访问流程中满足授权策略,权限Ⅰ被授权。而在域间访问流程中,该权限不能满足所跨域的授权策略时,权限Ⅰ被限制授权。即同一个角色对于同一个访问内容,应具有相同的权限,而在ID-RBAC 中,在域内和域间访问过程中权限却可能不同,这是因为采用了细粒度划分的合约机制。针对不同域中复杂的授权状态,ID-RBAC模型是灵活可用的。当系统中需增加角色时,可将其写入到合约机制中,进行权限动态授权。ID-RBAC较传统RBAC 的扩展性、灵活性更优。

2.3.2 ID-RBAC 的合约设计

角色的分配及访问控制过程通过智能合约实现,基于ID-RBAC 设计了五个合约,分别实现数据存储的管理、隐私数据的访问控制、用户角色的管理、数据跨域访问控制及跨域数据的缓存转发。

(1)数据管理合约(data management contract,DMC){地址,资源,属性},DMC 用于管理上链的数据,通过DMC 合约对数据进行分域与分类管理。地址指明某数据资源所处的IoT 域,属性说明数据资源的数据类型。

(2)隐私数据合约(private data contract,PDC){DMC 属性,策略Policy,时间},通过DMC 合约的数据属性构建隐私数据集合(privacy dataset,PDS),并将PDS 存储于私有数据库(Private-DB),PDS 是系统特定成员(Member)所私有,其算法如下:

算法1PDC

(3)角色管理合约(role management contract,RMC){用户属性,用户地址,PDC-Policy结果,用户,}{角色1,角色2,…,角色N},{权限1,权限2,…,权限N}。当新用户加入网络时,RMC 根据其属性、所在域进行身份匹配,一个用户可同时拥有多个角色。

根据用户处于不同物联网域,可分同域和异域用户,一个从链维护一个域,故每个域都有相对应的账本,因此域间权限的划分主要针对该域所维护的账本。域所对应的权限如表1。

表1 域权限的划分Table 1 Division of domain authority

为了实现细粒度的访问控制,本文对每个账本内的数据进行了分类,并设计了不同的访问“门槛”。根据RMC 合约对域内用户划分了Ⅰ级、Ⅱ级、Ⅲ级及Ⅳ级,各等级对应的权限如表2。

表2 角色等级与权限的关系Table 2 Relationship between role level and authority

(4)跨域合约(cross domain contract,CrossD){访问属性,RMC 结果},根据请求操作解析访问属性,并结合RMC 获取相应权限后跨域调用。

(5)缓存合约(cache contract,cacheC){CrossD 结果,属性},通过CrossD 的结果执行CacheC,并根据数据属性进行分类缓存。

跨域访问及缓存算法如下:

算法2跨域缓存

3.1 边缘初始化

为了确保提供计算服务的边缘节点安全性,设计了如图3 的安全接入流程,包括初值设定、注册及身份认证流程。其中初值设定的初始化由En执行,通过ECC 生成公私钥对,作为系统所需的公共参数。结合设备MAC(media access control)地址值获取其身份信息Enc,并将其打包存储到区块链上,以向区块链网络注册自身。当设备A向设备B发起访问请求时,设备B通过区块链网络验证A的身份信息。

图3 认证流程Fig.3 Certification process

其边缘节点认证具体流程如下:

(1)初值设定

加入区块链网络的En采用ECC 计算公钥和私钥。当Q在有限域Fp上满足大于3 的素数时,整数对p取模,有方程E:

其中,a,b∈Fp,Ep(a,b),取任意数K得到私钥SK。取椭圆曲线上基点Q,生成公钥PK=Q*SK,并将公钥进行全网广播。

(2)注册

将En的MAC地址和SK值输入式(2),计算得到Hash。通过SK 对其进行加密得到Enc(SK,Hash),并将Enc存储在本地及区块链上,完成注册。

(3)身份认证

En成为矿工前需得到一致性认可,即全网节点对其身份进行验证。当节点A向节点B发起访问等行为时,节点B查询区块链上是否存在A的身份信息。①存在,则通过A发布的PK对Enc(SK,Hash)进行解密,得到Dec(SK,Hash),并与Enc(SK,Hash)进行对比,对比结果一致则证明该节点是合法的,认证通过。否则该节点已被污染,或是恶意节点伪造。②不存在,该节点不合法,断开连接。身份认证避免了节点的伪造冒充,阻止将数据交付到恶意节点中。至此En与数据账本建立了初始信任关系。

3.2 域初始化

颁发、校验证书的MSP 为加入主从链网络的各物联网域及各实体生成公钥、私钥,并将域及用户发布到主从链网络中。

张仲平松了一口气,再次紧张地看了一眼手机上的时间。他不知道楼上的情况到底怎么样了。他朝自己的车子走去,偶一回头,却发现曾真拿着相机回身又向胜利大厦里面走去。

(1)发布域(HashX(pkMSPx),SignX,HashX),其中HashX(pkMSPx)是pkMSPx的哈希值,SignX与HashX分别表示域X进行的数字签名及哈希运算。

(2)发布用户(HashX(pkUAi),HashX(pkMSPx),State),其中pkUAi表示域X中Uxi用户的公钥,State表示用户身份信息是否可用。

(3)验证(pkUAi,SignX(skUAi,N),N,HashX(pkMSPx)),N是进行哈希计算的随机数。

(4)将验证结果存储到主从链账本中。

(5)区块链网络验证通过,开始响应发布域(HashX(pkMSPx),SignX,HashX,StaBC)与发布用户(HashX(pkUAi),HashX(pkMSPx),State)请求。StaBC表示维护该新发布域的区块链网络信息。

3.3 访问授权

3.3.1 隐私数据访问管理

PDC 和RMC 对隐私数据进行了分层保护。PDC为每个域的隐私数据定义了隐私数据集合(privacy data set,PDS),RMC通过PDS里定义的访问策略PolicyN访问管理。

定义1隐私数据访问策略:PolicyN(隐私数据属性Type,所在域Domain,访问权限P)。

隐私数据访问管理流程如图4 所示。设Org1 有三个属性的数据{Public-DB1(属性1,属性2),Private-DB1(属性3)}。属性3 划分在隐私数据集合中,存储于私有数据库中。同一个链上的组织成员可共享Public-DB1 中的数据,而Private-DB1 中的数据为Org1 私有,隐私数据策略Policy1表示为:

图4 隐私数据访问管理流程Fig.4 Privacy data access management process

3.3.2 域内访问

域内访问指访问行为发生在同一个边缘物联网域下的不同IoT 系统。如图5 所示,设SC1 所管理的域中有用户A、用户B,用户A在SC1 中向用户B发布访问行为。

图5 域内访问流程Fig.5 Intra-domain access process

(1)IoT1-A 向MSP 发送一个状态为身份注册的请求,MSP验证通过后向其返回身份证书CertA,Time表示CertA的有效时间。

(2)A将其CertA、自身信息及访问内容Ac三者打包成访问请求Ar。Ar打包成功后会被写入到帐本中,区块高度增加1。PackagedAAr为当前Ar打包的状态,状态有两种标识:Success OR failure。

将Ar发送到SC1 以进行解析验证。其中Dt表示A所访问的数据集合。SC1 是维护A所在域的从链网络,且作为该域内访问可信认证平台,访问流程中的各记录会存储在SC1 上,供历史溯源。此外,域内细粒度的访问控制策略依靠SC1 上的智能合约实现。

(3)SC1 将收到的Ar进行解析,确认当前行为是域内访问,随后通过MSP 进行身份认证。

①CertA有效认证合法,则记录其认证结果,并修改A在SC1 账本中的状态信息。

②CertA无效验证失败,则向A返回拒绝信息,表明A是不合法用户,或是不属于本域用户,访问终止。

(4)通过身份验证后,SC1 调用RMC 合约并根据Dt为A自动匹配角色,随后根据角色权限生成访问令牌Token,发送给A所访问的IoT1-B,Deadline是访问令牌的有效期。若访问无法在令牌Deadline期内完成,出于安全性考虑,用户需重新进行身份验证以生成新的Token′。

(5)IoT1-B将Token解析后保存,并打开访问通道。

3.3.3 域间访问

域间访问是指发生在不同边缘物联网域下的访问行为,如图6 所示,IoT1-C 与IoT2-D 之间的访问操作,其中SC2 做出访问应答,MC 起调度作用。

图6 域间访问控制流程Fig.6 Inter-domain access control process

(1)IoT1-C 向MSP 发送一个状态为身份注册的请求,MSP验证通过后向其返回身份证书CertC,Time表示CertC的有效时间。

(2)IoT-C 拿到CertC后向MC 发出跨域身份验证请求,并提交访问请求内容。

(3)主链MC 将收到的Ar进行解析,并将此访问状态标记为跨域。随后对访问用户进行身份认证。

①CertC合法验证通过,将验证结果CrossT发送给SC2。

②CertC不合法,验证未通过,该用户无权访问,返回拒绝信息,跨域访问进程结束。

(4)SC2将CrossT进行解析,并调用RMC 合约查询C的角色,判断C当前角色是否满足Policy。

①满足Policy,则向MC 发送确认信息。

②不满足Policy,返回错误信息。

(5)MC 解析SC2 返回的授权信息。

①解析结果为确认授权,调用CrossD、CacheC 合约获取并缓存数据。打开C对D的访问通道,并向IoT-C 发送访问令牌。

②解析结果拒绝授权,则MC向C发送错误信息,表明该数据集合不对该用户开放。

如该数据属于PDS 集合的数据,对已通过身份认证但未满足所访问域中PDS 集合访问策略中的用户,其权限未授权被“激活”,该类用户均无权对其访问,故C无法访问当前所申请访问的内容。若继续向该域继续访问,可重新选择所要访问的集合,返回(2)修改Ac中的访问内容信息,选择其他的访问集合,重新打包Ar以发起新一轮的访问流程。

(6)C拿到令牌后开始向D进行访问。

3.4 安全性分析

3.4.1 不可伪造性证明

攻击者需获取合法节点的SK才能伪造合法节点,而基于密码学的ECC是以求解椭圆曲线离散对数问题(elliptic curve discrete logarithm problem,ECDLP)的困难性为安全基础的公钥密码系统。在已知PK和Q,逆向寻找SK过程的困难就是ECDLP。本文通过穷举搜索法试图求解ECDLP,验证逆向寻找SK几乎不可能成功。

定理1已知Q=q和P=PK,P的阶为N。E∈(Fp),当L满足Q=LP时求得SK,其中L满足(0 ≤L≤N-1)。如果ECDLP 成立,则该方法不可行。

证明计算E∈(Fp)的点序列P,2P,3P,…,nP,直到nP=Q,则n=L。考虑最坏情况下,需要计算N步才能找到满足nP=Q的答案,平均需要N/2 步才能解决ECDLP。因此,该计算的时间复杂度是指数级的O(N)。而当N足够大时,该求解方法在计算时间上变得不可行,该方法的有效性无法保证,ECDLP难度成立。此时式(3)中的SK(PK,P)无穷小,那么攻击者A成功伪造合法节点的成功概率SuccA几乎为0。

可证得在本文方案下,边缘节点是不可能被成功伪造和篡改的,满足不可伪造性。

3.4.2 正确性测试

在ID-RBAC 模型下并发事务107 936 次,成功执行107 934次,未成功执行2次,成功率达到了99.99%,而0.01%的失败率是可忽略的。

在ID-RBAC 模型中,身份认证信息的上传、访问、失效都以带有时间戳的链结构进行记录,其访问记录可被追溯但不可篡改。即使攻击者截获相应的身份认证信息,也无法重放此消息躲避身份验证机制。因此,在访问响应测试中,基于ID-RBAC 模型模拟恶意节点发生访问行为,验证该模型身份认证与数据访问策略的正确性。表3 预设了四种场景,包括物联网应用下主要可能出现的访问攻击类型。测试结果表明ID-RBAC 模型具有正确性,可正确实现对用户的身份认证并进行有效的访问控制。

表3 响应测试说明Table 3 Response test description

本章围绕吞吐量、时延和资源消耗三个性能指标展开实验验证与分析,且通过改变边缘节点数进行分组测试。为了评估模型扩展性及优越性,围绕上述三个性能指标与文献[13]、文献[24]进行对比。

4.1 实验设置

基于Hyper Ledger Fabric 开源框架和Docker 容器技术搭建了区块链开发平台,并以此作为测试与评估平台。在实验中,本文设定网络中的所有合法节点都为背书(endorser)节点和提交(committing)节点,锚(anchor)节点在域初始化时指定,主(leafer)节点在域初始化时选举,且通过高鲁棒拜占庭容错算法(robust Byzantine tolerance,RBFT)达成一致。智能合约使用Go 语言编写。在Ubuntu 20.04 OS 上运行边缘计算平台,该平台由3 个边缘设备Edge1、Edge2 和Edge3 组成。同时这些边缘设备作为区块链网络的“矿工”,为其提供存储能力与计算能力。表4为实验详细设置。

表4 实验设置Table 4 Experimental setup

4.2 吞吐量

吞吐量(throughput)是衡量并发处理能力的重要指标。根据不同边缘节点数进行了3 组实验,测量周期内域内与域间发生的所有事务流量:事务提交量(successfully committed transactions,Succ)和吞吐量,结果如图7 所示。从实验可观察到吞吐量、事务量总体上随边缘节点En的数量增加呈现稳定增长趋势。当En的数量不超过2 时,吞吐量增长到350 TPS左右后便处于滞停状态,是因为随并发事务的增加系统处理能力出现不足,导致此时的吞吐量不再增加甚至出现下降情况。而En数为3 时,En富余的算力提升了系统的计算能力,起到了负载均衡的作用。由3个En的线性拟合预测线知,吞吐量随事务量的增加是呈线性增长的。在负载条件、交易时间一致的情况下,1个En提交的最大事务数是63 588,吞吐量是354.5 TPS,而3个En时的最大事务数为104 648,此时吞吐量达到583.4 TPS,事务数及吞吐量约是1个En的1.7倍。可见集成边缘计算的区块链网络可极大提升其性能。特别地,在多并发访问的场景中,可通过增加En数来保证跨域认证效率与吞吐量。

图7 吞吐量与Succ随时间的变化关系Fig.7 Throughput versus Succ over time

4.3 时延

通过已发布事务的完成时间,加上各节点对事务达成共识的时间来计算时延。在180 s 内持续发起事务,得到不同Edge 数下域内和域间执行事务的最大时延(max latency)。以域内、域间的最大时延总和计算出其平均值,结果如图8 所示。结果显示,不同En数下的时延差距较大,En数为3 时的时延最低且保持稳定。1个En时,处理事务过程中的最大时延为2.19 s,平均时延为0.69 s。而En数为3时的最大时延和平均时延分别是0.10 s、0.05 s,相比En数为1时,最大时延降低了95.43%,平均时延降低了92.75%。可见集成边缘计算的区块链网络继承了边缘计算实时性的优点,可根据网络规模扩展边缘节点数以满足实际应用的实时性需求。

图8 不同Edge数的最大时延情况Fig.8 Maximum latency for different number of edge

4.4 资源开销

在交易时间txDuration 为180 s时,修改测试并发交易数txNumber 分别为1 000、2 000、5 000,测试工作节点Node1 在主从链、单链环境下的CPU 占用情况与内存使用情况,如表5 所示。可观察到主从链工作过程中Node1 的CPU 占有率较低,内存使用较小,整体上其资源开销较单链环境降低了50%左右。可见主从链环境下的资源复用情况良好,CPU 利用率较高。原因是主链节点Node0 分担了工作节点Node1 的部分资源压力,提高了事务处理的效率,释放了一定的系统资源。因此,同一时间下,Node1 的CPU 占比较低。

表5 单链与主从链存储开销对比Table 5 Single chain versus master-slave chain storage overhead

工作节点在不同边缘节点数下的CPU 占用、内存使用情况如图9 所示。3个En下CPU 利用率稳定在27%左右,需要的平均内存为55 MB,相比1个En时有大幅度的降低。即使同一时间内3个En处理的事务是1个En的两倍,但其CPU 占用、内存使用情况是1个En的50%。其原因是3 个边缘节点较1 个边缘节点可提供更多的系统资源,且分担了更多的存储压力,有效地均衡工作节点的负载。此外,同一时间下,多节点环境会释放更多的系统资源,提升了系统资源复用率。因此,基于多边缘节点部署的主从链环境可实现较高的资源利用率,总体可扩展性更强。

图9 不同Edge数下的CPU 及内存占用情况Fig.9 CPU and memory usage under different number of edge

4.5 对比分析

Jiang 等人[13]基于公证机制提出了交互式的跨域框架以管理数据。针对隐私保护问题提出了一种数据访问控制模型,并设计了一种特定的事务类型,以提供对不同链和节点的数据的细粒度访问控制。该方案的隐私访问控制方案只能保证物联网数据的隐私保护,未考虑到交易中涉及的用户信息的隐私保护,且适用于资源较少的物联网应用场景。本文方案将模型部署在大规模的物联网场景下,且考虑交易过程中的隐私保护,将其进行比较,在应用扩展及隐私保护上有重要意义。Zhang 等人[24]为了解决底层密码学基础导致的“不完全跨域”问题,提出了一种“彻底”的跨域认证方案,以供来自不同域、不同设置的参与域使用。其有效解决了跨域通信中的实体认证问题,且给出了域内、域间认证流程。与其对比时延、TPS 等性能指标,在相同仿真环境下,本文方案虽增加了隐私数据集合、ECC 等复杂的认证流程,但其性能指标未有明显下降。它们代表了区块链在数据隐私保护、可信跨域研究的两个重要方向,本文与之进行比较,有较强的可参考性。

4.5.1 与其他方案的吞吐量对比

文献[13]测试了不同内存条件时的跨链吞吐量。在4 GB 内存、4 GHz 内核及交易数txNumber 为6 000 时,对跨域访问行为进行仿真,与本文TPS 对比结果如图10 所示。当其发送速率(sending rate)到达500 TPS 左右后,吞吐量开始跟不上发送速率。而发送速率为1 332 TPS 时,吞吐量只有645 TPS,发送速率与吞吐量的比值约为2∶1。而本文方案中吞吐量随发送速率的增加呈线性增长,且在测试范围内发送速率与吞吐量的比值始终为1∶1。较文献[13]而言,可获得更高的吞吐量。

图10 本文方案与文献[13]的吞吐量对比Fig.10 Throughput comparison of our scheme and ref.[13]

在6 个peer 下进行跨域查询Invoke 和域内查询Query 操作,与文献[24]进行比较,结果如图11 所示。在域间Invoke 操作时,文献[24]发送速率不超过30 TPS,吞吐量呈线性增加,发送速率继续增加超过30 TPS 后,吞吐量开始表现出瓶颈,到达最大值34 TPS 左右后趋于稳定。此时,系统性能已不足以处理更多的事务。当发送速率为100 TPS 时,与吞吐量的比值为3∶1。其域内Query操作吞吐量与发送速率的比值是1∶1,呈线性关系。对比本文方案,Invoke、Query 操作的吞吐量始终随发送速率增加呈线性增长,发送速率与吞吐量均接近1∶1。对比文献[24],本文方案在跨域工作上处理事务的效率更高,整体性能更占优势。

图11 本文方案与文献[24]的吞吐量对比Fig.11 Throughput comparison of our scheme and ref.[24]

本文在Jiang 等人[13]、Zhang 等人[24]方案的基础上实现了高效交互式的跨域访问控制。且较两者有更稳定的发送速率与吞吐量,结果符合预期目标。

4.5.2 与其他方案的时延对比

一定发送速率下各方案的时延情况如表6 所示。可观察到不管域内或是域间,本文方案下的时延均是三者中最小。即使是在通信复杂的跨域场景,本文获得毫秒级别的时延,相对文献[13]、文献[24]的方案,有较明显的优势,更适用于对时延敏感的物联网应用。

表6 一定发送率下的各方案时延对比Table 6 Comparison of delay of each scheme at certain transmission rate

4.5.3 与其他方案的资源开销对比

在4 GB内存和4 GHz内核配置下,评估各方案的资源开销情况。在交易测试时间txDuration 为180 s、并发交易数txNumber 为6 000 时,对各方案进行仿真得到工作节点CPU 平均占用值与内存平均使用值,如表7 所示。从资源复用情况来看,Jiang 等人[13]、Zhang 等人[24]方案不宜在资源有限的物联网设备中部署,而本文基于主从链结构部署的方案,在并发交易量较大时,其CPU 占比及内存使用情况良好,可在大型物联网应用场景中部署。

表7 资源开销情况对比Table 7 Comparison of resource overhead

区块链作为安全技术代表有望打开制约边缘计算发展的束缚,但因计算效率低、共识能耗高等扩展性瓶颈,使得其不能在解决边缘计算安全问题时发挥最大作用。因此本文设计了主从多链结构,并集成边缘计算构建了分布式安全的可信认证模型,即域间访问控制模型(ID-RBAC),有效解决了数据孤岛的问题。同时细粒度的访问控制方法避免了越权访问数据、过度授权等情况。最后通过实验对模型的安全性、稳定性做出了评估,并证明了边缘计算与区块链的结合有互补性。即边缘计算为区块链提供存储、计算能力,区块链为边缘计算提供安全的审计功能。相比现有方法,本文方案具有更好的扩展性,性能更优,符合现下环境的服务需求。

对于未来工作,考虑扩大实验规模并优化区块链的共识算法,为区块链网络创造一个较现有方案更高性能、更低延时及更高带宽的电信级服务环境。同时为进一步提高访问控制效率,可以尝试与隐私计算等技术结合起来,优化跨域访问控制模型。

猜你喜欢跨域主从访问控制跨域异构体系对抗联合仿真试验平台系统仿真技术(2022年4期)2023-01-17基于多标签协同学习的跨域行人重识别北京航空航天大学学报(2022年8期)2022-08-31为群众办实事,崂山区打出“跨域通办”组合拳读报参考(2022年1期)2022-04-25G-SRv6 Policy在跨域端到端组网中的应用科学家(2021年24期)2021-04-25FANUC系统PROFIBUS主从功能应用制造技术与机床(2017年6期)2018-01-19ONVIF的全新主张:一致性及最访问控制的Profile A中国公共安全(2017年11期)2017-02-06动态自适应访问控制模型通信学报(2016年11期)2016-08-16浅析云计算环境下等级保护访问控制测评技术现代工业经济和信息化(2016年19期)2016-05-17基于主从控制的微电网平滑切换控制策略研究电测与仪表(2016年24期)2016-04-12大数据平台访问控制方法的设计与实现信息安全研究(2016年10期)2016-02-28

推荐访问:区块 可信 模型

本文来源:http://www.zhangdahai.com/shiyongfanwen/qitafanwen/2023/0921/657676.html

  • 相关内容
  • 热门专题
  • 网站地图- 手机版
  • Copyright @ www.zhangdahai.com 大海范文网 All Rights Reserved 黔ICP备2021006551号
  • 免责声明:大海范文网部分信息来自互联网,并不带表本站观点!若侵害了您的利益,请联系我们,我们将在48小时内删除!