任务计算方法、装置、节点设备和计算机可读存储介质制造方法及图纸

技术编号:38902689 阅读:10 留言:0更新日期:2023-09-22 14:21
本发明专利技术实施例提出一种任务计算方法、装置、节点设备和计算机可读存储介质,涉及区块链技术领域。接收通信节点发送的任务数据包;若根据任务编号确定满足预设合并条件,则根据任务编号执行数据处理结果合并操作;对任务编号进行更新,根据更新后的任务编号确定是否满足预设合并条件,并在满足预设合并条件的情况下,根据更新后的任务编号执行数据处理结果合并操作,直到根据更新后的任务编号确定不满足预设合并条件;若根据任务编号确定不满足预设合并条件,则将任务编号和任务编号对应的计算结果,或者,更新后的任务编号和更新后的任务编号对应的第一合并结果上传至区块链网络。该方法可提高区块链网络中任务计算的安全性。方法可提高区块链网络中任务计算的安全性。方法可提高区块链网络中任务计算的安全性。

【技术实现步骤摘要】
任务计算方法、装置、节点设备和计算机可读存储介质


[0001]本专利技术涉及区块链
,具体而言,涉及一种任务计算方法、装置、节点设备和计算机可读存储介质。

技术介绍

[0002]目前在区块链中进行任务计算时,往往是由主计算节点分发计算任务给多个从属计算节点,多个从属计算节点计算后,主计算节点可获得多个从属计算节点计算得到的计算结果,并对其进行合并以获得最终计算结果。
[0003]但该方法中,由于主计算节点为关键节点,掌握着全部的计算任务数据、过程数据以及最终的计算结果,因此若主节点受到攻击产生数据泄露问题,则意味着所有的数据都将被窃取,从而存在任务计算的安全性较低的问题。

技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供一种任务计算方法、装置、节点设备和计算机可读存储介质,以解决现有技术中存在的任务计算安全性较低的问题。
[0005]为了实现上述目的,本专利技术实施例采用的技术方案如下:
[0006]第一方面,本专利技术提供一种任务计算方法,应用于区块链网络中的任一节点设备,所述方法包括:
[0007]接收通信节点发送的任务数据包;所述任务数据包中包括待计算数据、运算程序以及任务编号;
[0008]其中,所述通信节点为所述区块链网络中与用户进行通信的节点,接收所述任务数据包的节点为所述区块链网络中的计算节点;所述通信节点用于将待计算任务对应的多个任务数据包分别转发至不同的计算节点,每个所述计算节点接收的任务数据包不同;
[0009]根据所述任务编号确定是否满足预设合并条件;
[0010]若满足所述预设合并条件,则根据所述任务编号执行数据处理结果合并操作;所述数据处理结果合并操作包括根据所述任务编号计算待合并任务编号,将所述任务编号对应的数据处理结果和所述待合并任务编号对应的数据处理结果进行合并,得到第一合并结果;所述数据处理结果为根据所述运算程序对所述待计算数据进行运算得到的计算结果,或者基于所述计算结果进行至少一次合并得到的第二合并结果;
[0011]对所述任务编号进行更新,根据更新后的任务编号确定是否满足所述预设合并条件,并在满足所述预设合并条件的情况下,根据所述更新后的任务编号执行所述数据处理结果合并操作,直到根据所述更新后的任务编号确定不满足所述预设合并条件;
[0012]若不满足所述预设合并条件,则将所述任务编号和所述任务编号对应的计算结果,或者,所述更新后的任务编号和所述更新后的任务编号对应的第一合并结果上传至区块链网络,以便所述区块链网络中的其他计算节点获得所述任务编号对应的计算结果或者所述更新后的任务编号对应的第一合并结果。
[0013]在可选的实施方式中,所述任务编号包括第一任务编号和第二任务编号,所述第一任务编号表征当前数据处理次数,所述第二任务编号根据所述当前数据处理次数与接收所述任务数据包的计算节点的节点编号得到;
[0014]所述根据所述任务编号确定是否满足预设合并条件,包括:
[0015]若所述第二任务编号为偶数,则确定满足所述预设合并条件。
[0016]在可选的实施方式中,所述待合并任务编号的待合并第一任务编号与所述第一任务编号相同,所述待合并任务编号的待合并第二任务编号为所述第二任务编号减1的值;
[0017]所述对所述任务编号进行更新,包括:
[0018]对所述第一任务编号加1以获得新的第一任务编号,对所述第二任务编号除以2以获得新的第二任务编号,根据所述新的第一任务编号和所述新的第二任务编号获得新的任务编号。
[0019]在可选的实施方式中,所述方法还包括:
[0020]在接收到用户发送的任务信息的情况下,根据所述任务信息确定多个所述计算节点,分别对各个所述计算节点进行编号,并将各个所述计算节点对应的节点编号和节点信息发送给所述用户;
[0021]接收所述用户根据所述待计算任务发送的多个任务数据包,并根据各个所述任务数据包中的节点编号,将各个所述任务数据包转发至对应的计算节点。
[0022]在可选的实施方式中,所述任务信息包括分片数组信息以及任务数量,所述根据所述任务信息确定多个所述计算节点,包括:
[0023]根据所述任务数量确定计算节点数量;所述计算节点数量大于等于所述任务数量,且为2的指数;
[0024]根据所述计算节点数量以及所述分片数组信息,确定多个所述计算节点。
[0025]在可选的实施方式中,所述分片数组信息包括至少一个分片数组的信息;所述根据所述计算节点数量以及所述分片数组信息,确定多个所述计算节点,包括:
[0026]根据所述分片数组的数量以及所述计算节点数量,计算各个所述分片数组对应的子计算节点数量;其中,各个所述分片数组对应的子计算节点数量相等;
[0027]分别根据各个所述分片数组对应的子计算节点数量,在各个所述分片数组中随机选择所述子计算节点数量个节点作为所述计算节点。
[0028]在可选的实施方式中,所述根据各个所述任务数据包中的节点编号,将各个所述任务数据包转发至对应的计算节点,包括:
[0029]若所述计算节点数量等于所述任务数量,则根据各个所述任务数据包中的节点编号,将各个所述任务数据包转发至对应的计算节点;
[0030]若所述计算节点数量大于所述任务数量,则根据各个所述任务数据包中的节点编号,将各个所述任务数据包转发至对应的计算节点,并为剩余计算节点分配零值计算任务;所述零值计算任务表征所述剩余计算节点不参与任务计算;
[0031]所述方法还包括:
[0032]根据所述任务信息中的任务数量,计算目标任务编号;所述目标任务编号与所述待计算任务对应的任务计算结果对应;
[0033]每间隔预设时长从所述区块链网络中查询是否存在所述目标任务编号对应的任
务计算结果;
[0034]若存在,则将所述任务计算结果发送给所述用户。
[0035]第二方面,本专利技术提供一种任务计算装置,应用于区块链网络中的任一节点设备,所述装置包括:
[0036]接收模块,用于接收通信节点发送的任务数据包;所述任务数据包中包括待计算数据、运算程序以及任务编号;
[0037]其中,所述通信节点为所述区块链网络中与用户进行通信的节点,接收所述任务数据包的节点为所述区块链网络中的计算节点;所述通信节点用于将待计算任务对应的多个任务数据包分别转发至不同的计算节点,每个所述计算节点接收的任务数据包不同;
[0038]确定模块,用于根据所述任务编号确定是否满足预设合并条件;
[0039]所述确定模块,还用于若满足所述预设合并条件,则根据所述任务编号执行数据处理结果合并操作;所述数据处理结果合并操作包括根据所述任务编号计算待合并任务编号,将所述任务编号对应的数据处理结果和所述待合并任务编号对应的数据处理结果进行合并,得到第一合并结果;所述数据处理结果为根据所述运算程序对所述待计算数据进行运算得到的计算结果,或者基于所述计本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种任务计算方法,其特征在于,应用于区块链网络中的任一节点设备,所述方法包括:接收通信节点发送的任务数据包;所述任务数据包中包括待计算数据、运算程序以及任务编号;其中,所述通信节点为所述区块链网络中与用户进行通信的节点,接收所述任务数据包的节点为所述区块链网络中的计算节点;所述通信节点用于将待计算任务对应的多个任务数据包分别转发至不同的计算节点,每个所述计算节点接收的任务数据包不同;根据所述任务编号确定是否满足预设合并条件;若满足所述预设合并条件,则根据所述任务编号执行数据处理结果合并操作;所述数据处理结果合并操作包括根据所述任务编号计算待合并任务编号,将所述任务编号对应的数据处理结果和所述待合并任务编号对应的数据处理结果进行合并,得到第一合并结果;所述数据处理结果为根据所述运算程序对所述待计算数据进行运算得到的计算结果,或者基于所述计算结果进行至少一次合并得到的第二合并结果;对所述任务编号进行更新,根据更新后的任务编号确定是否满足所述预设合并条件,并在满足所述预设合并条件的情况下,根据所述更新后的任务编号执行所述数据处理结果合并操作,直到根据所述更新后的任务编号确定不满足所述预设合并条件;若不满足所述预设合并条件,则将所述任务编号和所述任务编号对应的计算结果,或者,所述更新后的任务编号和所述更新后的任务编号对应的第一合并结果上传至区块链网络,以便所述区块链网络中的其他计算节点获得所述任务编号对应的计算结果或者所述更新后的任务编号对应的第一合并结果。2.根据权利要求1所述的方法,其特征在于,所述任务编号包括第一任务编号和第二任务编号,所述第一任务编号表征当前数据处理次数,所述第二任务编号根据所述当前数据处理次数与接收所述任务数据包的计算节点的节点编号得到;所述根据所述任务编号确定是否满足预设合并条件,包括:若所述第二任务编号为偶数,则确定满足所述预设合并条件。3.根据权利要求2所述的方法,其特征在于,所述待合并任务编号的待合并第一任务编号与所述第一任务编号相同,所述待合并任务编号的待合并第二任务编号为所述第二任务编号减1的值;所述对所述任务编号进行更新,包括:对所述第一任务编号加1以获得新的第一任务编号,对所述第二任务编号除以2以获得新的第二任务编号,根据所述新的第一任务编号和所述新的第二任务编号获得新的任务编号。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:在接收到用户发送的任务信息的情况下,根据所述任务信息确定多个所述计算节点,分别对各个所述计算节点进行编号,并将各个所述计算节点对应的节点编号和节点信息发送给所述用户;接收所述用户根据所述待计算任务发送的多个任务数据包,并根据各个所述任务数据包中的节点编号,将各个所述任务数据包转发至对应的计算节点。5.根据权利要求4所述的方法,其特征在于,所述任务信息包括分片数组信息以及任务
数量,所述根据所述任务信息确定多个所述计算节点,包括:根据所述任务数量确定计算节点数量;所述计算节点数量大于等于所述任务数量,且为2的指数;根据所述计算节点数量以及所述分片数组信息,确定多个所述计算节点。6.根据权利要求5所述的方法,其特征在于,所述分片数组信息包括至少一个分片数组的信息;所述根据所述计算节点数量以及所述...

【专利技术属性】
技术研发人员:叶亚芳黎学浪邓伊雯张宝帅刘天福
申请(专利权)人:广州蚁比特区块链科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1