基于双链的可扩展物联网模型研究
2022-06-01刘肖鹏赵晓刚
刘肖鹏,赵晓刚
(郑州工业应用技术学院 河南 郑州 451100)
0 引言
近几年,国内外学者纷纷选择利用区块链解决物联网(IoT)所存在问题,这是因为区块链具有无需信任、匿名性以及去中心化等特点,可有效弥补IoT 的不足。但仅对二者进行结合,仍难以保证获得理想的效果,鉴于此,有关人员决定以区块链为切入点,结合现有IoT 模型对可扩展模型进行建立,使IoT 所具有价值得到最大程度的实现。
1 研究背景
现有IoT 系统均采用中心化结构,该结构的不足主要体现在两个方面,一是极易被单点故障所影响,导致系统被迫终止运行,二是在IoT 设备达到一定数量后,该结构所具有隐私性、安全性将难以得到保证。作为强调去中心化的新型分布结构,区块量可有效规避上述问题,在强化系统所具有安全性的前提下,为数据所具有可追溯性及可靠性提供保障[1]。以往区块链需要验证者以结构单一的账本为载体,对区块进行顺次连接,而依托某账本对全部节点进行存储的问题有两个,一方面需要浪费大量资源,另一方面增加了日后维护的难度,使区块链对交易进行处理的能力大幅降低,确认交易需要花费的时间随之增加。鉴于此,有关人员选择以分区技术为落脚点,对全新IoT 模型进行建立。
2 双链可扩展模型探究
2.1 整体结构
该模型可被拆分成hash 链、交易链两部分,其中,hash 链的数量仅为一个,交易链有多个,各交易链均有分区对应,由分区负责对交易链进行存储与管理[2]。由于各分区均包含数个功能节点,使得其既能够独立完成交易处理的工作,又可以将交易相关信息存储在独立分类账内,而不公开交易信息的设计,在极大程度上增强了信息所具有的隐私性以及安全性,存储工作给系统所施加压力也随之降低。hash 链所存储内容主要分为两部分,分别是区块头、描述信息,对其进行存储所占用内存极少,通常可交由各节点进行保存,在保证交易信息安全的前提下,对相关信息进行实时共享。将双链验证、交易存储相结合,既能够使区块链顺序得到保证,又可以使区块链特有的不可篡改性、可证性得到强化,系统自然变得更加安全且可靠,该系统结构见图1[3]。
由图1 可知,该系统主要包括4 种参与者,首先是终端设备,其次是区块链节点,再次是外部资源与服务,最后是网络监管者[4]。其中,终端设备主要是指底层设备,负责感应外界环境并收集所需信息,同时对区块链所保存数据加以利用,考虑到终端设备在计算、储存方面所拥有的可用资源较少,通常无需引入存储、执行区块链等算法,这点要有所了解。而区块链节点的特征,在于其拥有丰富的存储资源及强大的算力,既能够参与共识,又可以对分类账进行存储。节点及设备均要先进行注册,才能顺利连入区块链系统。对本文所讨论模型而言,外部资源与服务所描述对象,通常是指数据库、云存储器,上述资源与服务均可作为附加功能加以使用。网络监管的关键是对区块链网络进行分布观察及全方位管理,除特殊情况外,监管者均不会参与到区块链运行的过程中,其职责主要是对网络状况进行实时跟进,确保网络异常可被及时发现并得到相应的处理[5]。
事实证明,该模型的创新之处主要体现在双链结构、分区技术还有PCMP 的运用上,对上述技术加以运用,不仅减弱了存储工作给系统所造成的压力,为数据提供了安全且可靠的存储环境,还证实了全新控制机制的有效性与可行性。作为现阶段对区块链容量进行增加的首选方法,分区给网络节点所造成影响,主要是各分区所包含节点数量难以得到保证,网络安全性自然无法达到预期水平。为解决上述问题,有关人员指出可引入不同分区算法,对节点进行随机分配,考虑到IoT 各节点均有功能对应,使得运行期间所形成各数据均具有一定的隐私性,二次分区给该系统所产生影响有目共睹,盲目分区不仅会造成设备功能及性能混乱,还会使系统安全性受到威胁。在对多方因素加以考虑后,有关人员决定省略再次分区的步骤,而是以新加入节点所表现出特征及功能为依据,确定其所对应的分区[6]。另外,为避免分区给系统可靠性造成影响,有关人员还创造性地引入了双链结构,简单来说,就是通过hash 链、交易链进行互相验证,以不泄露数据内容为前提,对数据安全性、区块链不可篡改性进行强化。另外,双链结构在验证新加入节点方面,同样具有极为突出的表现。
2.2 控制机制
该系统所引入双链结构,可在不泄露数据的情况下,有序开展交互验证的工作,使系统所具有安全性得到显著增强。与此同时,该系统还开发出了全新的控制机制,旨在为拥有数据的群体与使用数据的群体提供自由交易的平台,使数据得到更加高效的利用,节点访问流程见图2[7]。
分析图2 能够看出,节点访问流程可被归纳为以下几步:首先是使用者通过hash 链对自身所需数据进行查找,凭借分区号对代理节点加以确定,同时对交易请求进行创建。其次是收到请求后,由代理节点负责对数据用途、节点身份进行验证,若验证结果无误,则可通过使用者创建请求,同时对其所需数据进行发送。再次是由使用者以所受到数据对应hash 值为依据,对比hash 链所提出数值,判断各数值是否存在出入,若数值相同,则可结束交易,反之,则需要将该情况反馈给系统,由系统负责进行处理[8]。最后是待交易告一段落,基于共识过程对交易进行处理,使其成为区块链的一环。
3 模型所搭载协议说明
3.1 PMCP 概述
有关人员以双联IoT 模型为切入点,通过引入PMCP的方式,对IoT 处理交易的能力进行了强化。该协议可结合信誉机制对节点进行评估,在确定诚实节点的基础上,对共识组进行构建,通过对系统吞吐量进行提高的方式,为日后交易处理工作的高效开展奠基。
3.2 运行流程
由于该模型仅进行一次分区,分区所包含节点数量并不固定,通常会随着系统升级而增加,若仍沿用常规模式创建区块,极易出现大量交易无法被及时确认的情况。鉴于此,有关人员出于增加系统吞吐量的考虑,选择引入PMCP,希望能够凭借此举使IoT 所提出需求得到满足,将系统处理交易的时间进行压缩。
PMCP 强调以信誉评估机制为依托,对诚实节点加以确认,根据系统验证结果,构建相应的共识小组,由共识小组负责推进复杂共识过程,使共识时延、通信开销得到有力控制。此外,PMCP 还引入了随机函数,强调利用随机函数对分组算法进行优化,该函数具有计算速度快、可有力抵抗外界攻击、对算力所提出要求较低的特点,系统可依托该函数对节点进行随机分配,保证各共识小组均有节点对应,以免出现恶意节点聚集的情况[9]。
PMCP 所涉及角色有3 种,分别是负责人、领导者、验证者。一般来说,在特定时间内,各分区仅有一个负责人,同时包括多个共识小组,各共识小组均由一个领导者、多个验证者组成。负责人的职责是验证共识小组上传区块,对其进行排序及上链,而领导者还有验证者的任务,主要是共识出块。PMCP 强调将纪元作为运行周期,同时对各纪元进行划分,获得相应的轮次,配合随机函数对信誉值达标的节点进行划分,此后的各个轮次,共识小组均要执行相应的共识过程,具体运行步骤如下。
第1 步,分区所包含节点按照VRF 算法展开运行,对共识小组数量、计算所得随机数进行求余计算,确定节点所处分区,对信誉值良好的节点进行划分,获得相应的共识小组。第2 步,各共识小组均按照PBFT 协议所提出要求运行,首先为预准备,其次为准备,最后为提交,待上述环节告一段落,由领导者向负责人提交签名区块,其他成员只需向负责人提交签名即可,这样做能够有力控制通信消耗。同时要保证所提交信息涵盖共识组号及其他基本信息,避免由于提交过于混乱,导致信息出现混淆。第3步,由负责人对共识小组所提交区块进行接收,若该小组对应签名数量达到预设值,便可对区块是否有效进行检验,待区块顺利通过检验,可在对应区块内新增该区块的数字签名,同时新增相应的时间戳。在等待一段时间后,负责人可对所接收各区块的顺序进行排列及上链,通过广播的方式,告知分区内现有节点。超时送达的区块则应被划入无效区块阵营,无需进行后续处理。第4 步,待分区节点顺利接收到广播区块,可着手对其有效性、数字签名真实性进行验证,再根据时间戳对区块进行链接,保证各区块均能够成为区块链的一部分。第5 步,正式开始下一轮次前,负责人需要以本轮共识所涉及各节点表现为依据,对其信誉值进行计算,同时对现有信誉值表的内容进行更新。若发现存在信誉值与要求不符的节点,则需要对该节点进行替换,以免给后续操作造成不必要的影响。第6 步,重复以上步骤,待该纪元结束后,由负责人通过随机选择的方式,对后续纪元的负责人加以确定。在此期间需要注意一点,即各纪元正式开始前,均要对分区进行分组,由分区内信誉值满足要求的各节点对随机数信息进行发送。
4 模型安全性分析
4.1 女巫攻击
该攻击指的是对等网络内部恶意节点,通过非法冒充其他身份的方式,对网络节点进行控制,以此达到弱化冗余备份的目的。本文所讨论模型明确指出,无论是节点、还是设备,均要先在指定机构注册,方可正式投入使用。节点PK 过程完全公开,各节点均可以对其他节点身份进行验证,同时每个节点仅能申请一个PK,可有效避免女巫攻击出现。
4.2 领导者攻击
PBFT 可提前对领导者进行选择并确认,领导者被攻击的情况时有发生。该模型强调随机对验证者、领导者进行选择,同时将信誉值、随机选择算法相结合,无形中加大了高信誉值节点成为领导者的概率。此外,该模型还引入了评估信誉值的机制和相应的奖惩机制,旨在使节点始终保持高度诚实,并主动参与到网络共识中。事实证明,将高信誉值节点作为领导者,可将领导者作恶的概率降至最低,系统所具有安全性自然能够得到保证[10]。
4.3 单点故障
作为IoT 较为常见的一类隐患,单点故障有极大概率导致系统终止运行,进而给系统可靠性、可用性造成负面影响。该模型强调以区块链为依据,可确保分区内各节点所保存数据完全一致,此时,即使某个节点出现故障,系统仍然能够维持正常运行,其可靠性、稳定性有目共睹。
4.4 拒绝服务攻击
DOS 攻击的特点是攻击者通过向节点发送海量交易的方式,占据节点现有资源,导致节点无法利用所拥有资源对真实交易进行处理。该模型强调IoT 设备只有先进行注册,才能加入系统并正式投入使用,对设备身份进行验证的难度相对较小,与此同时,该系统还可自行辨别设备授权情况,对于没有获得授权的设备,系统可选择拒绝提供相应服务,出现DOS 攻击的概率大幅降低。若已进行注册设备在短时间内频繁发送没有实际意义的交易,网络监管往往会将其判定为恶意节点,并对其进行处理。即便节点受到了设备的攻击,同时网络监管未能第一时间发现异常,考虑到某个节点出现故障给系统所造成影响通常可以忽略不计,此时,系统仍然能够维持正常的运行状态并完成交易处理等工作。
5 结语
综上所述,本文对全新的可扩展IoT 模型进行了设计,通过引入双链结构的方式,为区块链不可篡改的特点提供了保证,一方面使系统安全性得到大幅提升,另一方面减小了存储工作给节点所造成的压力,此外,该系统还搭载了全新的访问机制,旨在使数据得到实时共享与自由交易。事实证明,随着PMCP 和双链技术的加入,系统吞吐量较以往有所增加,无论是存储能力,还是可扩展性,均更接近预期,未来可对该模型进行更进一步的优化与升级,使模型更具实用性,确保其所具有优势能够获得更加全面的发挥。