一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

区块链共识方法和装置、电子设备和存储介质

2023-01-14 17:29:43 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,尤其涉及一种区块链共识方法和装置、电子设备和存储介质。


背景技术:

2.人脸识别、虚拟/增强现实、视频监控等计算密集型应用对物联网设备计算能力的要求不断提高,但物联网设备计算资源有限,无法满足这类应用的需求。物联网设备可以利用移动边缘计算技术将计算任务卸载到边缘服务器执行,从而有满足计算密集型应用的需求。但由于无线网络边缘侧异构开放,边缘服务器之间互不信任,容易受到恶意节点的干扰攻击,难以保障物联网设备在任务卸载过程中的数据安全性。
3.相关技术通过区块链技术保障物联网设备在任务卸载过程中的数据安全性,区块链其本质上是一种基于分布式对等网络的分布式账本技术,通过共识机制可以保证用户数据安全可靠。然而,现有基于链式结构的区块链技术,虽然能够保证区块链网络的一致性,但资源消耗大,交易吞吐量较低,其安全性和可扩展性均遇到瓶颈,不适用于设备资源有限、高并发、高吞吐量和低时延等特点的物联网场景。现有基于有向无环图(directed acyclic graph,dag)的区块链技术将分布式账本从单链形态转变为有向无环图的形态,由于验证机制的优越性,dag区块链具有较高的共识效率,但交易认证时延长,容易受到恶意节点攻击,共识安全性不足,无法满足物联网设备对任务卸载过程数据安全性的需求。
4.因此,现有技术存在交易认证时延长和共识安全性不足的问题。


技术实现要素:

5.本技术提供了一种区块链共识方法和装置、电子设备和存储介质,以至少解决相关技术中存在交易认证时延长和共识安全性不足的问题。
6.根据本技术实施例的一个方面,提供了一种区块链共识方法,该方法包括:
7.建立基于区块链的联盟链系统,其中,所述联盟链系统包含多对联盟节点,每对所述联盟节点中包含目标物联网设备和目标边缘服务器,所述目标物联网设备作为区块链用户用于发送任务卸载信息,所述目标边缘服务器作为区块链共识节点用于计算所述任务卸载信息和进行区块链共识;
8.根据所述目标边缘服务器得到边缘计算结果,根据所述目标物联网设备确定对应的任务到达率;
9.根据所述边缘计算结果和所述任务到达率,确定每对所述联盟节点的信誉度;
10.根据所述信誉度进行区块链共识。
11.根据本技术实施例的另一个方面,还提供了一种区块链共识装置,该装置包括:
12.建立模块,用于建立基于区块链的联盟链系统,其中,所述联盟链系统包含多对联盟节点,每对所述联盟节点中包含目标物联网设备和目标边缘服务器,所述目标物联网设备作为区块链用户用于发送任务卸载信息,所述目标边缘服务器作为区块链共识节点用于
计算所述卸载信息和进行区块链共识;
13.得到模块,用于根据所述目标边缘服务器得到边缘计算结果,根据所述目标物联网设备确定对应的任务到达率;
14.确定模块,用于根据所述边缘计算结果和所述任务到达率,确定每对所述联盟节点的信誉度;
15.共识模块,用于根据所述信誉度进行区块链共识。
16.可选地,共识模块包括:
17.创建单元,用于利用所述目标边缘服务器创建一个初始单元,其中,所述初始单元用于存储所述边缘计算结果和所述联盟节点的信誉度;
18.选择单元,用于利用所述目标边缘服务器通过预设方法选择第一预设数量个目标边缘区块,将所述第一预设数量个目标边缘区块的哈希值存入所述初始单元,得到第一单元;
19.计算单元,用于利用所述目标边缘服务器将一个随机数存入所述第一单元,计算此时所述第一单元的哈希值并将所述哈希值存入所述第一单元,得到第二单元;
20.广播单元,用于利用所述目标边缘服务器将所述第二单元广播至其他边缘服务器;
21.验证单元,用于利用所述其他边缘服务器验证所述第二单元是否合法,如果合法,则所述第二单元成为新的边缘区块;
22.判断单元,用于利用所述其他边缘服务器所产生的边缘区块,验证所述新的边缘区块,并利用所述其他边缘服务器判断验证次数是否达到认证阈值,如果达到所述认证阈值,则所述第二单元的数据被所述联盟链系统成功共识。
23.可选地,选择单元包括:
24.生成子模块,用于利用所述目标边缘服务器生成第二预设数量个游走粒子,其中,所述游走粒子用于选择所述边缘区块;
25.游走子模块,用于利用所述目标边缘服务器将所述游走粒子以预设概率向边缘区块游走,选出所述第一预设数量个目标边缘区块;
26.判断子模块,用于利用所述目标边缘服务器判断所述第一预设数量个目标边缘区块是否冲突,如果不存在冲突,则将所述第一预设数量个目标边缘区块的哈希值存储到所述初始单元中。
27.可选地,游走子模块包括:
28.游走子单元,用于利用所述目标边缘服务器将所述游走粒子以所述预设概率向所述边缘区块游走,其中,所述游走粒子相互独立游走,所述游走粒子抵达所述边缘区块后停止游走;
29.确定子单元,用于利用所述目标边缘服务器确定最先抵达边缘区块的第一预设数量个游走粒子;
30.作为子单元,用于利用所述目标边缘服务器将所述第一预设数量个游走粒子停留的所述边缘区块作为所述目标边缘区块。
31.可选地,确定模块包括:
32.第一得到单元,用于利用所述目标边缘服务器根据第三预设数量个所述目标物联
网设备对所述目标边缘服务器的信誉度评价,得到所述目标边缘服务器的综合信誉度;
33.第二得到单元,用于利用所述目标边缘服务器根据所述目标物联网设备的任务到达率,得到所述目标物联网设备的信誉度;
34.确定单元,用于根据所述目标边缘服务器的综合信誉度和所述目标物联网设备的信誉度,确定每对所述联盟节点的信誉度。
35.可选地,确定模块包括:
36.第三得到单元,用于利用所述目标边缘服务器获取所述任务卸载信息,得到所述目标物联网设备的任务到达率;
37.第四得到单元,用于利用所述目标边缘服务器根据任务卸载策略计算所述任务卸载信息,得到所述边缘计算结果,其中,所述任务卸载策略用于确定当前边缘服务器是否能为当前物联网设备提供资源,所述资源用于计算所述任务卸载信息和进行所述区块链共识。
38.可选地,第三得到单元包括:
39.获取子模块,用于利用所述目标边缘服务器获取所述目标物联网设备的任务卸载请求;
40.得到子模块,用于利用所述目标边缘服务器基于所述任务卸载请求得到所述任务卸载策略;
41.第一发送子模块,用于利用所述目标边缘服务器将所述任务卸载策略发送给所述目标物联网设备;
42.第二发送子模块,用于利用所述目标物联网设备根据所述任务卸载策略发送所述任务卸载信息至所述目标边缘服务器。
43.根据本技术实施例的又一个方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;其中,存储器,用于存储计算机程序;处理器,用于通过运行所述存储器上所存储的所述计算机程序来执行上述任一实施例中的方法步骤。
44.根据本技术实施例的又一个方面,还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一实施例中的方法步骤。
45.在本技术实施例中,通过建立基于区块链的联盟链系统,其中,联盟链系统包含多对联盟节点,每对联盟节点中包含目标物联网设备和目标边缘服务器,目标物联网设备作为区块链用户用于发送任务卸载信息,目标边缘服务器作为区块链共识节点用于计算任务卸载信息和进行区块链共识;根据目标边缘服务器得到边缘计算结果,根据目标物联网设备确定对应的任务到达率;根据边缘计算结果和任务到达率,确定每对联盟节点的信誉度;根据信誉度进行区块链共识。由于本技术实施例通过建立联盟链系统,得到多个包含目标物联网设备和目标边缘服务器的联盟节点,通过计算得到联盟节点的信誉度,最后根据联盟节点信誉度进行区块链共识,这样进行区块链共识对于信誉度高的联盟节点,其发布的交易验证速度快、交易认证时延短,对于信誉度低的联盟节点,其发布的交易被验证的概率低,这样基于灵活的交易认证时长有效地避免了恶意节点攻击而带来的共识安全性缺失,解决了相关技术中存在交易认证时延长和共识安全性不足的问题。
附图说明
46.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
47.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
48.图1是根据本技术实施例的一种可选的区块链共识方法的流程示意图;
49.图2是根据本技术实施例的一种可选的区块链赋能的物联网边缘计算系统模型图;
50.图3是根据本技术实施例的一种可选的区块链共识装置的结构框图;
51.图4是根据本技术实施例的一种可选的电子设备的结构框图。
具体实施方式
52.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
53.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
54.区块链作为一种多方共建、共享和共管的技术,可以通过共识机制保证数据安全可信。然而,传统链状结构区块链的共识机制由于资源消耗大、交易吞吐量低等原因,不适用拥有设备资源受限、时延敏感、交易数据量大等特点的物联网场景。基于有向无环图(directed acyclic graph,dag)的区块链具有很高的交易吞吐量和共识效率,能够满足物联网需求,但现有dag区块链共识方法的安全性不足,交易认证时延长,容易受到恶意节点攻击。为了解决上述问题,根据本技术实施例的一个方面,提供了一种区块链共识方法,如图1所示,该方法的流程可以包括以下步骤:
55.步骤s101,建立基于区块链的联盟链系统,其中,联盟链系统包含多对联盟节点,每对联盟节点中包含目标物联网设备和目标边缘服务器,目标物联网设备作为区块链用户用于发送任务卸载信息,目标边缘服务器作为区块链共识节点用于计算任务卸载信息和进行区块链共识。
56.可选地,构建由物联网设备和边缘服务器这两类利益团体共同维护的联盟链,如图2所示,图2是根据本技术实施例的一种可选的区块链赋能的物联网边缘计算系统模型图,系统中存在多个物联网设备和多个边缘服务器,由多个物联网设备和多个边缘服务器
生成多个联盟节点,也可以选择一个物联网设备与其选择的一个边缘服务器作为一对联盟节点。由于物联网设备能源、计算和存储资源受限,无法满足计算密集型应用的资源需求。然而,部署在边缘云的服务器拥有巨大的计算和存储资源。因此,物联网设备将计算任务卸载到边缘服务器执行。物联网设备作为区块链用户,发送计算卸载任务信息。边缘服务器除了执行计算卸载任务外,作为区块链共识节点,将边缘计算结果等相关信息打包成块,并执行共识算法来维护区块链账本,保证物联网设备低能耗、低时延和高可靠性的服务质量需求。
57.步骤s102,根据目标边缘服务器得到边缘计算结果,根据目标物联网设备确定对应的任务到达率。
58.可选地,对于基于dag的区块链系统,交易到达率低或者不稳定时会降低区块链系统性能。任务到达率越高,边缘服务器需要执行的计算卸载任务越多,需要保护的用户数据信息越多,区块链的交易到达率越高。
59.步骤s103,根据边缘计算结果和任务到达率,确定每对联盟节点的信誉度。
60.可选地,物联网设备根据边缘服务器的边缘计算结果,对边缘服务器进行满意度评价,物联网设备满意度越高,表明边缘服务器计算任务完成的越好,边缘服务器可靠性越高,物联网设备对边缘服务器的信誉度评分越高。物联网设备在线时长越长,活跃度越高,边缘服务器对物联网设备的信誉度评分越高。
61.步骤s104,根据信誉度进行区块链共识。
62.可选地,对于信誉度高的联盟节点,其发布的交易被选中验证的概率越高,交易验证速度越快,交易认证时延越短。对于信誉度低的联盟节点,其发布的交易被验证的概率低,其累积权重增加缓慢或不再增加,最后成为“孤块”被丢弃。
63.在本技术实施例中,通过建立基于区块链的联盟链系统,其中,联盟链系统包含多对联盟节点,每对联盟节点中包含目标物联网设备和目标边缘服务器,目标物联网设备作为区块链用户用于发送任务卸载信息,目标边缘服务器作为区块链共识节点用于计算任务卸载信息和进行区块链共识;根据目标边缘服务器得到边缘计算结果,根据目标物联网设备确定对应的任务到达率;根据边缘计算结果和任务到达率,确定每对联盟节点的信誉度;根据信誉度进行区块链共识。由于本技术实施例先通过建立联盟链系统,得到多个包含目标物联网设备和目标边缘服务器的联盟节点,通过计算得到联盟节点的信誉度,最后根据联盟节点信誉度进行区块链共识,这样进行区块链共识对于信誉度高的联盟节点,其发布的交易验证速度快、交易认证时延短,对于信誉度低的联盟节点,其发布的交易被验证的概率低,解决了相关技术中存在交易认证时延长和共识安全性不足的问题。
64.作为一种可选实施例,根据信誉度进行区块链共识包括:
65.利用目标边缘服务器创建一个初始单元,其中,初始单元用于存储边缘计算结果和联盟节点的信誉度;
66.利用目标边缘服务器通过预设方法选择第一预设数量个目标边缘区块,将第一预设数量个目标边缘区块的哈希值存入初始单元,得到第一单元;
67.利用目标边缘服务器将一个随机数存入第一单元,计算此时第一单元的哈希值并将哈希值存入第一单元,得到第二单元;
68.利用目标边缘服务器将第二单元广播至其他边缘服务器;
69.利用其他边缘服务器验证第二单元是否合法,如果合法,则第二单元成为新的边缘区块;
70.利用其他边缘服务器所产生的边缘区块,验证新的边缘区块,并利用其他边缘服务器判断验证次数是否达到认证阈值,如果达到认证阈值,则第二单元的数据被联盟链系统成功共识。
71.可选地,边缘服务器m执行物联网设备i的计算卸载任务,并把此计算任务的结果作为区块链上的一个交易。此时,物联网设备i的交易到达率为λi,边缘服务器m记录的交易到达率为为计算任务卸载策略,n为正整数。边缘服务器m为每个交易创建一个单元(unit),用于存储交易信息和联盟节点的信誉度,并利用私钥对此交易进行数字签名。
72.缠结(tangle)是基于dag区块链中最具有代表性的共识方法,在缠结共识过程中,每个unit在加入dag区块链账本前,需要先验证两个已经存在的边缘区块(tips),第一预设数量可以是二,也可以是其他数值,本技术不对具体数值做限定。当存在多个边缘区块(大于两个)时,tangle采用基于信誉度的蒙特卡洛马尔可夫链(markov chain monte carlo,mcmc)边缘区块选择算法选择两个边缘区块。联盟节点的信誉度越高,其发布的边缘区块被选中验证的概率越高,交易验证速度越快,交易认证时延越短。当新到达的unit选择两个边缘区块后,需检查这两个边缘区块是否冲突。如果不存在冲突,则将这两个边缘区块的哈希值存储到unit中。
73.为了防止ddos攻击,避免算力的浪费,在发布上述交易前边缘服务器还需要做一个轻量化的工作量证明(proof of work,pow),即将交易的内容和已选两个边缘区块的哈希值打包,添加一个随机数nonce,计算哈希值。并将此哈希值存储到unit中,将该unit广播给网络中其它的边缘服务器。
74.当其它边缘服务器收到该unit后,依据数字签名和nonce值,验证其是否合法。如果合法,则将这个unit加入到其本地dag账本中,此时这个合法的unit成为边缘区块。
75.其他边缘服务器产生边缘区块的步骤与上述步骤相同,其他边缘服务器产生的边缘区块有概率会直接或者间接验证上述unit边缘区块。在dag区块链中,每个区块都有一个累计权重值(初始值为1),每当这个区块被直接或者间接验证一次,其累计权重值加1。当区块的累计权重值达到认证阈值时,该区块中的交易被全网确认为是一笔成功的交易。
76.在本技术实施例中,通过为每个边缘区块引入信誉度的属性,并基于信誉度进行dag区块链共识克服了传统dag算法交易认证时延长和共识安全性不足的问题,提升区块链共识的安全性,满足物联网设备低能耗、低时延和高可靠性的服务质量需求。
77.作为一种可选实施例,利用目标边缘服务器通过预设方法选择第一预设数量个目标边缘区块,将第一预设数量个目标边缘区块的哈希值存入初始单元包括:
78.利用目标边缘服务器生成第二预设数量个游走粒子,其中,游走粒子用于选择边缘区块;
79.利用目标边缘服务器将游走粒子以预设概率向边缘区块游走,选出第一预设数量个目标边缘区块;
80.利用目标边缘服务器判断第一预设数量个目标边缘区块是否冲突,如果不存在冲
突,则将第一预设数量个目标边缘区块的哈希值存储到初始单元中。
81.可选地,在缠结共识过程中,生成第二预设数量个粒子,第二预设数量表示多个,本技术不对具体数值做限定,将上述粒子放置在某一特定区间中的旧区块上,这些粒子以一定概率向边缘区块的方向独立游走,选中两个边缘区块,第一预设数量可以是二,也可以是其他数值,本技术不对具体数值做限定。边缘服务器检查这两个边缘区块是否冲突。如果不存在冲突,则将这两个边缘区块的哈希值存储到unit中。
82.在本技术实施例中,通过为每个边缘区块引入信誉度的属性,进行基于信誉度的蒙特卡洛马尔可夫链(markov chain monte carlo,mcmc)边缘区块选择算法,选择两个已经存在的边缘区块进行验证,联盟节点的信誉度越高,其发布的边缘区块被选中验证的概率越高,交易验证速度越快,交易认证时延越短,解决了相关技术中存在交易认证时延长的问题。
83.作为一种可选实施例,根据边缘计算结果和任务到达率,确定每对联盟节点的信誉度包括:
84.利用目标边缘服务器根据第三预设数量个目标物联网设备对目标边缘服务器的信誉度评价,得到目标边缘服务器的综合信誉度;
85.利用目标边缘服务器根据目标物联网设备的任务到达率,得到目标物联网设备的信誉度;
86.根据目标边缘服务器的综合信誉度和目标物联网设备的信誉度,确定每对联盟节点的信誉度。
87.可选地,由于边缘服务器m能够同时为多个物联网设备服务,因而,其信誉度应由多个物联网设备对自己的综合信誉度评分生成,综合信誉度为
88.其中,ρ
i,m
为计算任务卸载策略,ri→m为物联网设备i收到边缘服务器m的计算结果后,根据自身对边缘计算结果的满意度对边缘服务器m的信誉度的评分,n为正整数即为第三预设数量。得到综合信誉度si→m之后,该边缘服务器对综合信誉度进行存储。
89.由于物联网设备的任务到达率间接反映了区块链的交易到达率,因而,边缘服务器m根据物联网设备的任务到达率λi对物联网设备的信誉度进行评分sm→i=g(λi),并对sm→i进行存储。
90.将每个物联网设备和其选择的边缘服务器作为一对联盟节点,计算每一对联盟节点的信誉度s
i,m
=αsi→m βsm→iꢀꢀ
(2)
91.其中,α和β分别为信誉度权重因子,物联网设备可以根据服务质量需求,调整信誉度的权重。
92.在本技术实施例中,通过将每个物联网设备和其选择的边缘服务器作为一对联盟节点,考虑其各自的信誉度对区块链性能的影响,计算每对联盟节点的信誉度,提高区块共识安全性,满足物联网设备对数据安全的服务质量需求。
93.作为一种可选实施例,根据目标边缘服务器得到边缘计算结果,根据目标物联网设备确定对应的任务到达率包括:
94.利用目标边缘服务器获取任务卸载信息,得到目标物联网设备的任务到达率;
95.利用目标边缘服务器根据任务卸载策略计算任务卸载信息,得到边缘计算结果,
其中,任务卸载策略用于确定当前边缘服务器是否能为当前物联网设备提供资源,资源用于计算任务卸载信息和进行区块链共识。
96.可选地,边缘服务器根据计算任务卸载策略ρ
i,m
,执行其收到的多个物联网设备的计算卸载任务,得到边缘计算结果,并根据物联网设备的任务卸载信息,得到物联网设备的任务到达率。
97.在本技术实施例中,边缘服务器根据计算任务卸载策略执行计算卸载任务,得到计算结果和任务到达率方便后续计算联盟节点的信誉度,满足了物联网设备的的计算实时性和数据安全性要求。
98.作为一种可选实施例,在利用目标边缘服务器根据任务卸载策略计算任务卸载信息,得到边缘计算结果之前,方法还包括:
99.利用目标边缘服务器获取目标物联网设备的任务卸载请求;
100.利用目标边缘服务器基于任务卸载请求得到任务卸载策略;
101.利用目标边缘服务器将任务卸载策略发送给目标物联网设备;
102.利用目标物联网设备根据任务卸载策略发送任务卸载信息至目标边缘服务器。
103.可选地,具体地,物联网设备i在执行计算密集型应用时,由于自身计算和存储资源有限,因而向物联网系统管理者发送计算任务卸载请求。物联网系统管理者在收到物联网设备i的计算任务卸载请求信息之后,将该请求信息广播给边缘云网络中的所有边缘服务器。边缘服务器根据所述的物联网设备i的计算任务卸载请求,考虑自身闲置资源的数量等因素,以满足物联网设备i的计算实时性和数据安全性为目标,制定计算任务卸载策略ρ
i,m
。其中,ρ
i,m
是二进制决策变量,当边缘服务器m能为物联网设备i提供资源执行计算卸载任务和区块链共识业务时ρ
i,m
=1,反之,ρ
i,m
=0。通常边缘服务器计算资源和能耗充足,可以为多个物联网设备提供资源,每个物联网设备只需选择一个边缘服务器进行计算任务卸载。边缘服务器m通过物联网系统管理者,将计算任务卸载策略ρ
i,m
发送给物联网设备i。物联网设备i根据计算任务卸载策略ρ
i,m
将计算任务di通过无线传输给边缘服务器m。
104.在本技术实施例中,边缘服务器根据物联网设备的计算任务卸载请求生成任务卸载策略,物联网设备再根据该任务卸载策略将计算任务传输至该边缘服务器,满足了物联网设备的计算实时性和数据安全性要求。
105.作为一种可选实施例,利用目标边缘服务器将游走粒子以预设概率向边缘区块游走,选出第一预设数量个目标边缘区块包括:
106.利用目标边缘服务器将游走粒子以预设概率向边缘区块游走,其中,游走粒子相互独立游走,游走粒子抵达边缘区块后停止游走;
107.利用目标边缘服务器确定最先抵达边缘区块的第一预设数量个游走粒子;
108.利用目标边缘服务器将第一预设数量个游走粒子停留的边缘区块作为目标边缘区块。
109.可选地,将边缘服务器将游走粒子以概率
110.p
xy
=exp(-α(h
x-hy)-β(s
x-sy))(∑
z:z

x
exp(-α(h
x-hz)-β(s
x-sy)))-1
ꢀꢀ
(3)
111.向边缘区块的方向独立游走,其中,h
x
,hy和hz分别表示x,y和z的累计权重值。s
x
,sy和sz分别表示发布x,y和z的节点的信誉值。z

x表示z直接引用x,α和β是非负可调参数。最先抵达边缘区块的两个粒子所停留的边缘区块即为被选中的区块,第一预设数量可以是
二,也可以是其他数值,本技术不对具体数值做限定。
112.在本技术实施例中,通过为每个边缘区块引入信誉值的属性,提出一种基于信誉度的mcmc边缘区块选择算法,解决了传统的随机游走mcmc方法存在交易认证时延长,安全性不足的问题。
113.根据本技术实施例的另一个方面,还提供了一种用于实施上述区块链共识方法的区块链共识装置。图3是据本技术实施例的一种可选的区块链共识装置的结构框图,如图3所示,该装置可以包括:
114.建立模块301,用于建立基于区块链的联盟链系统,其中,联盟链系统包含多对联盟节点,每对联盟节点中包含目标物联网设备和目标边缘服务器,目标物联网设备作为区块链用户用于发送任务卸载信息,目标边缘服务器作为区块链共识节点用于计算卸载信息和进行区块链共识;
115.得到模块302,用于根据目标边缘服务器得到边缘计算结果,根据目标物联网设备确定对应的任务到达率;
116.确定模块303,用于根据边缘计算结果和任务到达率,确定每对联盟节点的信誉度;
117.共识模块304,用于根据信誉度进行区块链共识。
118.作为一种可选实施例,共识模块包括:
119.创建单元,用于利用目标边缘服务器创建一个初始单元,其中,初始单元用于存储边缘计算结果和联盟节点的信誉度;
120.选择单元,用于利用目标边缘服务器通过预设方法选择第一预设数量个目标边缘区块,将第一预设数量个目标边缘区块的哈希值存入初始单元,得到第一单元;
121.计算单元,用于利用目标边缘服务器将一个随机数存入第一单元,计算此时第一单元的哈希值并将哈希值存入第一单元,得到第二单元;
122.广播单元,用于利用目标边缘服务器将第二单元广播至其他边缘服务器;
123.验证单元,用于利用其他边缘服务器验证第二单元是否合法,如果合法,则第二单元成为新的边缘区块;
124.判断单元,用于利用其他边缘服务器所产生的边缘区块,验证新的边缘区块,并利用其他边缘服务器判断验证次数是否达到认证阈值,如果达到认证阈值,则第二单元的数据被联盟链系统成功共识。
125.作为一种可选实施例,选择单元包括:
126.生成子模块,用于利用目标边缘服务器生成第二预设数量个游走粒子,其中,游走粒子用于选择边缘区块;
127.游走子模块,用于利用目标边缘服务器将游走粒子以预设概率向边缘区块游走,选出第一预设数量个目标边缘区块;
128.判断子模块,用于利用目标边缘服务器判断第一预设数量个目标边缘区块是否冲突,如果不存在冲突,则将第一预设数量个目标边缘区块的哈希值存储到初始单元中。
129.作为一种可选实施例,游走子模块包括:
130.游走子单元,用于利用目标边缘服务器将游走粒子以预设概率向边缘区块游走,其中,游走粒子相互独立游走,游走粒子抵达边缘区块后停止游走;
131.确定子单元,用于利用目标边缘服务器确定最先抵达边缘区块的第一预设数量个游走粒子;
132.作为子单元,用于利用目标边缘服务器将第一预设数量个游走粒子停留的边缘区块作为目标边缘区块。
133.作为一种可选实施例,确定模块包括:
134.第一得到单元,用于利用目标边缘服务器根据第三预设数量个目标物联网设备对目标边缘服务器的信誉度评价,得到目标边缘服务器的综合信誉度;
135.第二得到单元,用于利用目标边缘服务器根据目标物联网设备的任务到达率,得到目标物联网设备的信誉度;
136.确定单元,用于根据目标边缘服务器的综合信誉度和目标物联网设备的信誉度,确定每对联盟节点的信誉度。
137.作为一种可选实施例,得到模块包括:
138.第三得到单元,用于利用目标边缘服务器获取任务卸载信息,得到目标物联网设备的任务到达率;
139.第四得到单元,用于利用目标边缘服务器根据任务卸载策略计算任务卸载信息,得到边缘计算结果,其中,任务卸载策略用于确定当前边缘服务器是否能为当前物联网设备提供资源,资源用于计算任务卸载信息和进行区块链共识。
140.作为一种可选实施例,第三得到单元包括:
141.获取子模块,用于利用目标边缘服务器获取目标物联网设备的任务卸载请求;
142.得到子模块,用于利用目标边缘服务器基于任务卸载请求得到任务卸载策略;
143.第一发送子模块,用于利用目标边缘服务器将任务卸载策略发送给目标物联网设备;
144.第二发送子模块,用于利用目标物联网设备根据任务卸载策略发送任务卸载信息至目标边缘服务器。
145.此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。
146.图4是根据本技术实施例的一种可选的电子设备的结构框图,如图4所示,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401、通信接口402和存储器403通过通信总线404完成相互间的通信,其中,
147.存储器403,用于存储计算机程序;
148.处理器401,用于执行存储器403上所存放的计算机程序时,实现如下步骤:
149.建立基于区块链的联盟链系统,其中,联盟链系统包含多对联盟节点,每对联盟节点中包含目标物联网设备和目标边缘服务器,目标物联网设备作为区块链用户用于发送任务卸载信息,目标边缘服务器作为区块链共识节点用于计算任务卸载信息和进行区块链共识;
150.根据目标边缘服务器得到边缘计算结果,根据目标物联网设备确定对应的任务到达率;
151.根据边缘计算结果和任务到达率,确定每对联盟节点的信誉度;
152.根据信誉度进行区块链共识。
153.可选地,在本实施例中,上述的通信总线可以是pci(peripheral component interconnect,外设部件互连标准)总线、或eisa(extended industry standard architecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
154.通信接口用于上述电子设备与其他设备之间的通信。
155.存储器可以包括ram,也可以包括非易失性存储器(non-volatile memory),例如,至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
156.作为一种示例,如图4所示,上述存储器403中可以但不限于包括上述区块链共识装置中的建立模块301、得到模块302、确定模块303、共识模块304。此外,还可以包括但不限于上述区块链共识装置中的其他模块单元,本示例中不再赘述。
157.上述处理器可以是通用处理器,可以包含但不限于:cpu(central processing unit,中央处理器)、np(network processor,网络处理器)等;还可以是dsp(digital signal processing,数字信号处理器)、asic(application specific integrated circuit,专用集成电路)、fpga(field-programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
158.可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
159.本领域普通技术人员可以理解,图4所示的结构仅为示意。图4其并不对电子设备的结构造成限定。例如,终端设备还可以包括但不限于比图4中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图4所示的不同的配置。
160.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括但不限于:闪存盘、rom、ram、磁盘或光盘等。
161.根据本技术实施例的又一个方面,还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于存储执行区块链共识方法的程序代码。
162.可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
163.可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
164.建立基于区块链的联盟链系统,其中,联盟链系统包含多对联盟节点,每对联盟节点中包含目标物联网设备和目标边缘服务器,目标物联网设备作为区块链用户用于发送任务卸载信息,目标边缘服务器作为区块链共识节点用于计算任务卸载信息和进行区块链共识;
165.根据目标边缘服务器得到边缘计算结果,根据目标物联网设备确定对应的任务到达率;
166.根据边缘计算结果和任务到达率,确定每对联盟节点的信誉度;
167.根据信誉度进行区块链共识。
168.可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例中对此不再赘述。
169.可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、rom、ram、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
170.在本说明书的描述中,参考术语“本实施例”、“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
171.显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献