基于区块链的物联网云边协同架构

物联网

776人已加入

描述

王振明,于剑峰,毛 嘉,鲁方林

(中国科学院上海高等研究院,上海 201210)

摘 要 :为解决物联网终端设备集中接入性能低、安全隐患多、数据易丢失和易篡改、价值数据分享困难、数据孤岛普遍存在等问题,提出了一种基于区块链的物联网云边协同架构。将区块链和数字签名技术应用到网关组成的边缘层,在边缘层实现终端设备的分布式接入认证,通过将数字签名密文等信息存储到私有链来提高认证的可信性和安全性。将区块链和基于公证人的跨链机制应用到云端层,提高价值数据在机构内和机构间进行共享的可靠性和安全性。模拟实验结果表明,所提出的基于区块链的物联网云边协同架构对原有系统影响较小,易安装部署,可以承受 DDoS 等常见攻击方式,在云端进行的跨链价值数据共享的方式具有较强的实用性、适应性和可行性。

中图分类号 :TP391 文献标识码 :A 

文章编号 :2095-1302(2022)09-0060-06

0 引 言

物联网终端数据主要来源于工矿、电力、军事等系统中各个环节,随着分布式技术的推广[1-2],更多的设备接入到物联网中 ;同时边缘计算技术在物联网系统中应用也越来越广泛,大量的设备都具有了一定的边缘计算能力[3],原本很复杂的工矿和电力系统变得更加难以运维管控。从目前情况来看,物联网数据在传输、使用、共享的过程中,依然存在数据丢失、篡改、泄露、共享困难[4-8]以及数据孤岛现象普遍存在的情况。因此,如何保证物联网系统的数据安全性和可靠性,特别是在战地侦察传感系统、可靠工业系统中促进数据共享互通变得越来越重要。为解决上述问题,在设备上线入网阶段就有必要对设备采取一定的安全措施,比如进行认证,只有通过系统认证的设备才能获得授权,进而与系统进行通信交互和数据的传输。此外,在传输设备数据阶段、存储设备数据阶段、利用设备数据阶段也须进行安全方面的考虑,避免数据泄露、丢失、篡改现象的发生。在系统整体设计上,需要考虑各系统的数据如何安全可靠地共享,打破机构间、组织间、部门间的数据孤岛。

区块链技术借助非对称加密、点对点网络、节点共识算法和时间戳等机制,具有去中心化、不可篡改、可追溯等技术特点,在能源领域获得了极大关注,不同领域的相关研究成果不断涌现[9-10]。在设备入网认证方面,文献[11]从节点认证、用户身份认证、用户权限管理方面系统阐述了区块链系统认证机制的研究和发展,分析了存在的问题,并进行了总结。文献[12]提出了一种基于区块链的分布式动态网关架构及接入认证机制,将多个网关组成私有链,并使用区块链的共识机制进行主网关的选择,确保主网关的可靠性。终端设备向网关发起认证的过程中使用了门限共享算法来提供认证过程的安全性。对于跨域认证,文献[13]利用云服务器组成联盟链,引入边缘网关作为区块链的客户端并屏蔽物联网底层异构性,利用CA共识实现多信任域之间的认证。文献[12-13]的主要思想是在设备入网时使用区块链技术完成认证,以此解决大量设备集中认证所带来的通信、效率及安全隐患问题。

在数据安全可信方面,文献 [14] 提出了一种多链架构的能源数据访问控制方法,通过多数据链实现数据的隔离,通过监管链进行跨链的数据访问、监管、审计和确权,并运用加密技术进行细粒度的访问控制。文献 [15] 归纳了区块链在数据完整性方面的研究成果,总结了相关成果的优缺点,并提出了研究方向和解决思路。文献 [16] 基于主链和侧链组成的二级链框架,实现跨域数据存储校验及快速溯源。文献 [17]则设计了基于数字签名和区块链技术的数据传输系统来提高智慧电厂控制系统的安全防护能力。文献 [18] 针对武器装备系统的数据特点,设计了一种基于分类权限的多节点容错共识机制,并对多样冗杂数据进行了验证。

在实现数据共享方面,文献[19]提出了一种基于区块链的军事装备数据共享架构,基于属性加密和智能合约技术解决不同主体间信任问题,实现数据的安全共享。文献[20]针对目前电力数据共享方面的问题和痛点,构建了基于区块链的电力数据共享模型,并列举了若干电力数据共享应用场景。文献[21]借助私有链、联盟链和公有链搭建能源数据的统一监控和共享交易架构模型,实现可靠的数据共享和交易。文献[22]利用联盟链设计了一个电力数据资产的交易平台,促进电力数据有偿共享。

1 关键技术

1.1 区块链

从数据结构和数据处理的角度来看,区块链表现为基于哈希密码学和Merkel树模型的链式数据结构,借助非对称加密、点对点网络、节点共识算法和时间戳等机制,为参与节点提供可信、不可篡改、透明的分布式账本。在区块链中,区块只有添加操作,没有删除操作;区块与区块之间以链表形式首尾相接,新的区块添加到链表的末尾。每个区块包括区块头和区块体两部分,其中区块头中包括时间戳、Merkel树根值、前一个区块的哈希值 ;区块体存储数据信息。Merkel树可以方便查询区块链信息。在区块生成时为区块加盖时间戳,随区块链的增长可形成一条时间维度的链条,使得能按照时间维度对数据进行追溯。非对称加密主要用来确保账本内容和交易的安全性、授权及可验证。

1.1.1 共识机制

共识机制是区块链的核心内容,主要用来解决拜占庭将军问题,保障分布式账本数据的一致性和真实性,直接影响到区块链系统的效率、性能及安全。为使得区块链所有节点存储数据时具有相同的状态,当对一个区块链的节点数据进行新增时,所有区块链节点要对新增操作达成共识。典型的拜占庭容错类共识机制包括:PoW(Proof of Work)、权益证明 PoS(Proof of Stake)和授权股份证明DPoS(DelegatedProof of Stake)、PBFT(Practical Byzantine Fault Tolerance)机制。从效率、资源消耗、适用场景维度对典型共识机制进行了对比,结果见表1所列。由表1可以发现,应用联盟链和私有链时,PBFT 共识机制具有更明显的优势。

物联网

1.1.2 智能合约

从狭义上来看,智能合约是由事件驱动的、有状态地运行在区块链账本上的一段程序。智能合约有如下特点 :智能合约每次运行,相同的输入都会产生相同的输出;在有限时间内,合约会运行结束;可自我执行和验证;一旦部署运行,不能也不允许修改;合约的执行环境通常为虚拟机或者容器,合约用到的资源会被隔离和限制。以太坊和超级账本是目前相对成熟且比较流行的智能合约平台。

1.1.3 跨链技术

区块链的跨链技术[27-30]是实现区块链间互联互通的一种非常重要的技术手段。目前除了广泛存在的公有链,组织内部和组织间还有大量的私有链和联盟链存在,为了在日益增长的区块链间有效进行数字资产转移、跨链数据访问和提升区块链交易处理能力,跨链技术应运而生。目前比较主流的跨链技术包括:公证人机制(notary schemes)、侧链 / 中继(sidechains/relays)、哈希锁定(Hash-locking)。其中,公证人机制是通过选举一个或多个可信节点作为公证人,对一条链的事件进行监听,并通过事件触发在另外一条链上执行某些动作,对事件做出响应 ;侧链 / 中继则是在一条区块链上执行智能合约,通过另外一条区块链的加密哈希树和区块头来验证事件是否发生、状态是否改变等。哈希锁定是通过运行智能合约进行资产锁定及时间设置和条件解锁来实现跨链交易的一种方案。在具体应用跨链技术的时候,需要从需求场景、效率、性能、资源消耗、安全性等多个维度进行评估考虑。

1.2 数字签名

数字签名(digital signature)是基于非对称加密的一种安全认证技术,具有完整性(integrity)、不可否认性(nonrepudiation)、可认证性(authentication)。数字签名的原理可概括为 :通过特定哈希函数作用于原始的报文信息,从而得到摘要信息,用发送者的私钥对摘要信息进行加密得到密文,将密文和原始报文信息一起发送给接收者。接收者用发送者的公钥解密收到的密文,从而获得解密后的摘要信息 ;将哈希函数作用于收到的原始报文信息以获得摘要信息,并与解密得到的摘要信息进行比对。如果比对的结果一致,那么说明收到的信息在传输过程中没有被篡改过,信息是完整的,因此使用数字签名技术可验证数据信息的完整性。非对称加密主要包括RSA算法、DSA算法及ECC算法,其中RSA算法应用最为广泛。

2 总体框架

2.1 系统模型

在各相关领域已有研究成果的基础上,本文提出了一种基于区块链的物联网云边协同架构。在边缘层实现终端设备的分布式接入认证,解决集中认证的安全性、可靠性、带宽负载性能等问题,并通过将数字签名密文等信息存储到私有链来提高认证的可信性和安全性;在云端层运用区块链及跨链技术提高价值数据在机构内和机构间进行共享的可靠性和安全性。如图1所示,从左至右分成机构A和机构B各自独立的云边端系统,云边端系统架构分为3个层次,自下而上依次为终端层、边缘层及云端层。这里只提供了最简易的系统模型,对于两个以上的机构组成的云边端系统,本模型也同样适用,并易于扩展。

物联网

终端层由各种异构的物联网终端设备组成,终端设备上送的数据按照重要性可以分为两类 :关键数据和非关键数据,其中关键数据可以是故障、异常、报警数据等,非关键数据是实时性较高、周期性采集的,如传感器数据。进行数据分类主要是考虑到区块链上只有新增和查询,没有删除和修改操作,将所有数据上链并不现实也没有必要,只选择将关键数据保存至区块链即可,非关键数据保存到本地的数据库,并对其进行定期备份和删除等维护操作。

边缘层由网关组成,各网关之间建立P2P网络连接,并在网关间基于私有链架构组建两条区块链,其中一条区块链用于对终端层的物联网终端设备进行接入认证,另外一条区块链用来保存终端层的物联网终端设备的关键数据。网关的数据按照重要性也可以分为关键数据和非关键数据两类。对于网关而言,由于其具有边缘计算能力,可开展一定的机器学习和数据挖掘工作,并与云端层两者间存在业务、模型等方面的协同,网关上有价值的关键数据相比终端设备来说更为丰富,可以根据实际需要自定义关键数据的种类;非关键数据通常是一些静态数据或者运行时的常态数据。

云端层由云平台组成,机构内的云平台节点间部署基于私有链架构的区块链,用于存储价值数据。为了打破数据壁垒,实现数据共享,在机构间的云平台节点上部署基于联盟链架构的区块链。云端层没有采用区块链技术对接入的网关进行认证,是考虑到云平台通常使用的是公有云方案,而不是企业或机构自行搭建的私有云。公有云在设备接入认证安全方面已经有比较成熟的措施和技术方案,不需要使用方再单独考虑。如果使用的是私有云,那么可以采用与边缘层类似的认证方案,但是私有云通常需要在基础设施上投入较大资金,并需要专业团队自行设计软硬件架构网络等,运维难度大,维护成本高。

2.2 边缘层

本架构模型中,边缘层由网关组成,网关又是私有链的节点。图2展示了网关上的主要架构。物联网终端设备上送的非关键数据直接存储到网关的本地数据库中,而将物联网终端设备上送的关键数据存储到数据私有链上。为满足高频交易的效率和吞吐量要求,网关的私有链采用PBFT共识机制。网关上对设备的认证主要基于区块链和数字签名实现。

物联网

网关认证处理流程如下 :

(1)终端设备发起认证,请求中包括原始信息和密文,其中原始信息由设备唯一标识、设备类型、生产厂家编号、设备出厂时间等信息组成;密文则是对原始信息用哈希函数处理得到的摘要信息,再用私钥对摘要信息加密得到。

(2)网关上的注册认证授权模块收到请求后,哈希函数作用于报文中的原始信息获得摘要信息,用公钥对请求中的密文进行解密后获得摘要信息,并将两个摘要信息进行对比。

(3)如果比对结果不一致,返回认证失败,不允许设备接入;如果比对结果一致,则按照设备唯一标识到认证私有链上去搜索。

(4)如果搜索成功且请求上送的摘要信息与私有链上存储的摘要信息相同,则认证成功,允许终端设备接入网关;否则,认为终端首次发起认证,作为注册继续处理,基PBFT共识机制,认证区块链上新增一个区块,新增区块的区块体中存储设备唯一标识、摘要信息的密文。

对于数据报文,网关上的处理流程如下 :

(1)数据报文也包括原始信息和密文,密文则是对原始信息用哈希函数处理得到的摘要信息,接着用私钥对摘要信息加密得到。将哈希函数作用于报文中的原始信息获得摘要信息,用公钥对请求中的密文进行解密后获得摘要信息,并将两个摘要信息进行对比。

(2)若对比结果一致,则根据报文判断。若为非关键数据,那么直接存储到本地数据库中 ;如果为关键数据,基于PBFT 共识机制,数据区块链上新增一个区块,新增区块的

区块体中存储关键数据。

(3)若对比结果不一致,则丢弃,并返回终端失败应答。

通过在边缘层应用区块链技术进行终端接入认证,避免了海量终端设备将认证集中发送到云平台所带来的网络带宽消耗、计算资源浪费,降低了云平台的系统压力,避免了大量接入可能导致的服务中断和网络延时,降低了中心化运维的成本。基于区块链技术在边缘层对设备进行认证管理,可以有效解决边缘层网关单点故障问题。终端设备的隐私数据不用上传至云平台,可以降低隐私数据泄露的风险,隐私数据的安全性得到了保证,并且终端设备上送的关键数据可以去中心分布式地存储在多个网关上,且使用区块链可有效防止数据篡改,同时能进行数据的追本溯源,数据安全性和可靠性都提到了极大的提高。

2.3 云端层

由于缺乏顶层设计,工矿、电力、军事相关企业组织在不同发展阶段有着不同的信息化建设目标,不同业务领域涉及到大量不同的业务系统,因此各后台系统多自成体系,通常是彼此独立,以信息孤岛方式存在,数据共享互通的实现难度非常大。为了解决上述问题,在云端层应用区块链技术,不但能解决数据安全问题,防止数据篡改伪造,还可以实现机构内部和机构间的数据共享,使得数据资源得到最大化利用。

图3展示了跨链云平台节点的模型。与非跨链节点相比,跨链节点多了联盟链及对应的跨链访问机制。在组织结构内部的云平台间建立私有链,私有链存储价值数据的原始数据。在不同机构组织的云平台间建立联盟链,联盟链存储价值数据的摘要信息。为了实现联盟链和私有链之间的数据访问,云平台上的跨链节点需要引入跨链技术[27-30],目前比较常见的跨链技术包括公证人机制、哈希锁定、侧链 / 中继、分布式秘钥控制,通过衡量各种跨链技术的优缺点,本文选择公证人机制实现跨链操作。

物联网

私有链数据来源于云平台上的数据智能处理模块,该模块通过调用数据库接口、消息收发、访问缓存等技术手段获取网关上送的数据,包括已经部署在云平台上的其他已有各类业务系统对外开放的数据,以及来自于云平台之外的其他系统的数据 ;再通过大数据、人工智能、深度学习、数据挖掘等技术处理源数据,从而获得具有较高价值的数据。为了防止价值数据泄露,须将价值数据加密后再存储到私有链。价值数据上链后,即使少数云平台出现故障也不太可能造成价值数据的丢失,因为区块链具有去中心分布式存储的特点,在其他云平台也存储了价值数据,而且价值数据上链后也有利于在机构内部进行共享,避免在机构内部形成数据孤岛。

为了实现数据安全和访问控制,联盟链区块中不直接存放要共享的价值数据对应的原始数据,而是存放价值数据的摘要信息,摘要信息由价值数据的类别、类型、编号、用途、生成时间、所有者、版本号、与私有链关联数据等信息构成。此外,还需提供联盟链上摘要信息的查询接口,通常数据需求方先通过查询、检索到对应的摘要信息才可感知所需的数据是否在共享系统中存在,查询接口可以方便数据需求方和数据提供方之间进行对接。采用联盟链的优点是节点数量可控,容易达成共识;数据一定程度上只有属于联盟内部的成员所有,访问可控,还可以防止数据被非法篡改和破坏。

数据共享步骤如下 :

(1)联盟链成员作为数据需求方,通过查询接口,检索摘要信息中是否有所需数据。

(2)如检索到目标数据,那么发送请求给智能合约,请求中携带目标数据的编号、所有者等信息。

(3)智能合约收到请求后,通过签名对数据需求方进行身份合法性校验;检查通过后,通过公证人机制和跨链机制,从私有链上获取到原始数据密文,并从公证人处获得解密秘钥。

(4)将原始数据密文及解密秘钥返回给数据需求方。

(5)数据需求方用解密秘钥解密密文,获得原始数据。

3 结 语

工矿、电力、军事物联网系统是基于物联网、区块链、大数据、云计算、人工智能等新兴技术构成的复杂系统,在国民生产生活中发挥着至关重要的作用。系统核心价值数据在采集、传输、存储、访问过程中需要具有防篡改、防泄露、可追溯的功能;要抵御对系统的可能攻击,在对数据进行有效防护的同时,还需进行可靠可信的数据共享,发挥数据的应有价值,相关的理论研究和实践具有重要的意义。

本文从区块链核心技术的最新研究成果出发,围绕工矿、电力、军事物联网的终端设备接入认证、数据存储、数据安全、数据共享等关键问题,进行了系统的研究分析,提出了一种基于区块链的物联网云边协同架构。运用私有链、联盟链、数字签名、跨链访问等技术提高工矿、电力、军事物联网系统价值数据的安全性、可信性、可追溯、可共享性。通过模拟实验发现,方案具有一定的实用性和参考意义。不过,从方案的整体来看,在以下方面还需要继续深入研究和改进:

(1)在设备接入认证方面,考虑引入设备的地理位置信息,如使用北斗导航模块获取设备位置并上送,从而预防可能发生的移机攻击。

(2)在数据共享方面,进一步研究在云端使用NFT(Non-Fungible Token)技术,实现相关接口规范,促进数据资产有偿分享和转让。

注:本文通讯作者为于剑峰。

参考文献

[1] 田世明,栾文鹏,张东霞,等 . 能源互联网技术形态与关键技术[J]. 中国电机工程学报,2015,35(14):3482-3494.

[2] 张俊,高文忠,张应晨,等 . 运行于区块链上的智能分布式电力能源系统:需求、概念、方法以及展望 [J]. 自动化学报,2017,43(9):1544-1554.

[3] 孙浩洋,张冀川,王鹏,等 . 面向配电物联网的边缘计算技术 [J].电网技术,2019,43(12):4314-4321.

[4] 赵涵 . 基于区块链的智能矿山数据共享方案研究 [J]. 工矿自动化,2021,47(S2):45-48.

[5] 王琦,邰伟,汤奕,等 . 面向电力信息物理系统的虚假数据注入攻击研究综述 [J]. 自动化学报,2019,45(1):72-83.

[6] 王钦,蒋怀光,文福拴,等 . 智能电网中大数据的概念、技术与挑战 [J]. 电力建设,2016,37(12):1-10.

[7] 秦晓伟,王立兵,汪磊,等 . 区块链技术在矿山物联网中的应用研究 [J]. 工矿自动化,2020,46(3):21-26.

[8] 杨乐,李萌,叶欣宇,等 . 融合边缘计算与区块链的工业互联网资源优化配置研究 [J]. 高技术通讯,2020,30(12): 1253-1263.

[9] 曾诗钦,霍如,黄韬,等 . 区块链技术研究综述:原理、进展与应用 [J]. 通信学报,2020,41(1):134-151.

[10] GAI R,DU X,MA S,et al. A summary of the research on thefoundation and application of blockchain technology [J]. Journal ofphysics:conference series,2020,1693:012025.

[11] 李强,舒展翔,余祥,等 . 区块链系统的认证机制研究 [J]. 指挥与控制学报,2019,5(1):1-17.

[12] 赵丙镇,王栋,钱雪,等 . 基于区块链的电力物联网信任网关设计与实现 [J]. 中国电力,2021,54(7):192-197.

[13] 魏欣,王心妍,于卓,等 . 基于联盟链的物联网跨域认证 [J]. 软件学报,2021,32(8):2613-2628.

[14] 葛纪红,沈韬 . 基于区块链的能源数据访问控制方法 [J]. 计算机应用,2021,41(9):2615-2622.

[15] 高昊昱,李雷孝,林浩,等 . 区块链在数据完整性保护领域的研究与应用进展 [J]. 计算机应用,2021,41(3):745-755.

[16] 王赛,邱强,王飞,等 . 基于二级链结构的跨域数据融合溯源框架设计 [J]. 信息安全研究,2021,7(8):728-738.

[17] 张伟,丁朝晖,杨国玉,等 . 基于区块链和数字签名技术的智慧电厂数据安全传输系统研究与设计 [J]. 电力信息与通信技术,2021,19(7):33-39.

[18] 赵刚,刘涛,李世兴,等 . 基于区块链的有无人协同系统可信存储技术 [J]. 火力与指挥控制,2021,46(6):141-144.

[19] 王士成,史述云,文义红,等 . 基于区块链的装备数据安全共享方案研究 [J]. 国防科技,2021,42(5):52-57.

[20] 佘佐超,李喆,刘浩宇 . 基于区块链的电力数据共享研究初探[J]. 四川电力技术,2020,43(6):31-38.

[21] 龚钢军,魏沛芳,孙跃,等 . 区块链下电力数据的统一监管与共享交易模型 [J]. 信息技术与网络安全,2019,38(3):57-62.

[22] 郭仪,于雷,张瀚文,等 . 基于联盟链的电力数据资产交易平台[J]. 数据与计算发展前沿,2021,3(1):48-59.

[23] 金韬,庄丽婉,张晨,等 . 基于区块链的云边协同系统研究与设计 [J]. 信息安全研究,2021,7(4):310-318.

[24] 张俊,高文忠,张应晨,等 . 运行于区块链上的智能分布式电力能源系统:需求、概念、方法以及展望 [J]. 自动化学报,2017,43(9):1544-1554.

[25] 李子源,李贺冰,刘建,等 . 基于以太坊的装备全寿命数据管理平台设计 [J]. 国防科技,2021,42(5):34-39.

[26] 鄢晶,高天露,张俊,等 . 边云链协同技术在能源互联网数据管理中的应用及展望 [J]. 华电技术,2020,42(8):41-47.

[27] 路爱同,赵阔,杨晶莹,等 . 区块链跨链技术研究 [J]. 信息网络安全,2019,19(8):83-90.

[28] 李芳,李卓然,赵赫 . 区块链跨链技术进展研究 [J]. 软件学报,2019,30(6):1649-1660.

[29] 刘桂华 . 基于公证人组的区块链跨链机制 [D]. 重庆:重庆邮电大学,2020.

[30] JIANG Y,WANG C,WANG Y,et al. A cross-chain solutionto integrating multiple blockchains for IoT data management [J].Sensors,2019,19(9):2042.

作者简介:

王振明(1981—),男,吉林榆树人,博士研究生,工程师,主要研究方向为物联网、软件安全。

于剑峰(1978—),男,山东威海人,研究生,高级工程师,主要研究方向为工业智能、物联网等。

毛 嘉(1983—),男,江苏无锡人,本科,中级工程师,主要研究方向为物联网及工业互联网。

鲁方林(1987—),男,湖北洪湖人,本科,中级工程师,主要研究方向为智能电网与智慧运维服务。

编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分