一种区块链节点的数据恢复方法、装置及电子设备制造方法及图纸

技术编号:28836923 阅读:14 留言:0更新日期:2021-06-11 23:34
本发明专利技术实施例提供了一种区块链节点的数据恢复方法、装置及电子设备,应用于计算机技术领域,包括:在所述主服务器为所述目标节点传输数据的过程中,检测所述主服务器是否发生故障;若是,确定所述主服务器未完成传输的目标数据;向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,并获取所述各个其他节点的服务器的公钥;针对每一其他节点,利用该其他节点的服务器的公钥,传输针对该其他节点的所述目标数据。可以实现在保证数据传输可靠性的同时,快速恢复数据传输的目的。

【技术实现步骤摘要】
一种区块链节点的数据恢复方法、装置及电子设备
本专利技术涉及计算机
,特别是涉及一种区块链节点的数据恢复方法、装置及电子设备。
技术介绍
随着区块链技术的不断发展,针对区块链的应用领域也越来越广泛。区块链内的多个节点,在链内进行数据传输时,可以通过各节点的服务器对该节点的数据进行传输。由于节点数据在链内传输时,存在诸多导致传输中断的故障,例如服务器宕机等,因此,容易造成节点数据产生不可逆的损伤,如:信息缺失、连接中断等。那么,当节点数据传输发生故障时,如何在保证数据传输可靠性的同时,快速恢复数据传输,是一个亟待解决的技术问题。
技术实现思路
本专利技术实施例的目的在于提供一种区块链节点的数据恢复方法、装置及电子设备,以实现在保证数据传输可靠性的同时,快速恢复数据传输的目的。具体技术方案如下:第一方面,本专利技术实施例提供了一种区块链节点的数据恢复方法,应用于区块链中的目标节点的从服务器,所述目标节点的服务器还包括主服务器,所述方法包括:在所述主服务器为所述目标节点传输数据的过程中,检测所述主服务器是否发生故障;若是,确定所述主服务器未完成传输的目标数据;向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,并获取所述各个其他节点的服务器的公钥;任一服务器的公钥为该服务器在为节点传输数据时,用于数据加密的密钥信息;针对每一其他节点,利用该其他节点的服务器的公钥或所述从服务器的私钥,传输针对该其他节点的所述目标数据;其中,该其他节点的服务器用于在所述从服务器利用自身的私钥传输针对该其他节点的所述目标数据时,利用该从服务器的公钥配合所述从服务器传输所述目标数据,以及用于在所述从服务器利用该其他节点的服务器的公钥传输针对该其他节点的所述目标数据时,利用该其他节点的服务器的私钥配合所述从服务器传输所述目标数据。可选地,所述向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,并获取所述各个其他节点的服务器的公钥,包括:向所述区块链中的各个其他节点的服务器广播所述从服务器的公钥,以使所述各个其他节点的服务器,更新本地存储的节点路径信息;其中,所述节点路径信息包括所述区块链中各节点的服务器的公钥;向所述目标节点发送节点路径请求,以使所述目标节点在接收到所述节点路径请求后,向所述从服务器发送本地存储的节点路径信息。可选地,当传输针对该其他节点的所述目标数据包括:向该其他节点的服务器发送所述目标数据时,所述利用该其他节点的服务器的公钥,传输针对该其他节点的所述目标数据,包括:利用该其他节点的服务器的公钥对所述目标数据进行加密,并向该其他节点的服务器发送加密后的目标数据;该其他节点的服务器具体用于利用该其他节点的服务器的私钥,对所述从服务器发送的所述目标数据进行解密,得到解密后的目标数据,并将所述解密后的目标数据发送至该其他节点,以使该其他节点在接收到所述解密后的目标数据时,本地存储所述解密后的目标数据。可选地,当传输针对该其他节点的所述目标数据包括:接收该其他节点的服务器发送的所述目标数据时,所述利用该其他节点的服务器的公钥,传输针对该其他节点的所述目标数据,包括:接收该其他节点的服务器发送的所述目标数据,并利用所述从服务器的私钥,对所接收的目标数据进行解密,得到解密后的目标数据,并将所述解密后的目标数据发送至所述目标节点,以使所述目标节点接收到所述解密后的目标数据时,在本地存储所述解密后的目标数据;该其他节点的服务器具体用于利用所述从服务器的公钥,对待发送的所述目标数据进行加密,将加密后的数据发送给所述从服务器。可选地,所述检测所述主服务器是否发生故障的方式包括:向所述主服务器发送检测指令,以使所述主服务器根据所述检测指令,查询自身的数据传输状态,并向所述从服务器反馈携带有所述数据传输状态的查询结果;当接收到的查询结果与所述检测指令对应的预设的目标结果不同时,则判定所述主服务器发生故障;其中,所述目标结果为表征所述主服务器数据传输正常时,针对所述检测指令查询结果。可选地,所述检测指令包括如下指令中的一种或多种:用于检测是否能够接收所述各个其他节点的服务器发送的数据的指令;用于检测是否能够向所述各个其他节点的服务器发送数据的指令;以及用于检测是否已完成数据传输的指令。可选地,在所述主服务器为所述目标节点传输数据之前,所述方法还包括:利用预设的密钥生成算法,生成所述从服务器的用于进行数据传输的密钥,并向所述目标节点发送所述从服务器的密钥,以使所述目标节点在接收到所述从服务器的密钥后,在本地存储所述从服务器的密钥;所述向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,包括:向所述目标节点发送公钥获取请求,以使所述目标节点从本地存储的密钥中获取所述从服务器的公钥,并反馈至所述从服务器;接收所述目标节点发送的所述从服务器的公钥,并向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥。第二方面,本专利技术实施例还提供了一种区块链节点的数据恢复装置,应用于区块链中的目标节点的从服务器,所述目标节点的服务器还包括主服务器,所述装置包括:故障检测模块,用于在所述主服务器为所述目标节点传输数据的过程中,检测所述主服务器是否发生故障;数据确定模块,用于若是,确定所述主服务器未完成传输的目标数据;密钥获取装置,用于向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,并获取所述各个其他节点的服务器的公钥;任一服务器的公钥为该服务器在为节点传输数据时,用于数据加密的密钥信息;数据传输模块,用于针对每一其他节点,利用该其他节点的服务器的公钥,传输针对该其他节点的所述目标数据,其中,该其他节点的服务器用于在传输针对该其他节点的所述目标数据的过程中,利用所述从服务器的公钥,配合所述从服务器传输所述目标数据。第三方面,本专利技术实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现任一所述的区块链节点的数据恢复方法步骤。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现现任一所述的区块链节点的数据恢复方法步骤。本专利技术实施例有益效果:本专利技术实施例提供的方案,应用于区块链中的目标节点的从服务器,所述目标节点的服务器还包括主服务器,包括:在所述主服务器为所述目标节点传输数据的过程中,检测所述主服务器是否发生故障;若是,确定所述主服务器未完成传输的目标数据;向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,并获取所述各个其他节点的服务器的公钥;任一服务器的公钥为该服务器在为节点传输数据时,用于数据加密的密钥信息;针对每一其他节点,利用该其他节点的服务器的公钥,传输针对该其他节点的所述目本文档来自技高网...

【技术保护点】
1.一种区块链节点的数据恢复方法,其特征在于,应用于区块链中的目标节点的从服务器,所述目标节点的服务器还包括主服务器,所述方法包括:/n在所述主服务器为所述目标节点传输数据的过程中,检测所述主服务器是否发生故障;/n若是,确定所述主服务器未完成传输的目标数据;/n向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,并获取所述各个其他节点的服务器的公钥;任一服务器的公钥为该服务器在为节点传输数据时,用于数据加密的密钥信息;/n针对每一其他节点,利用该其他节点的服务器的公钥或所述从服务器的私钥,传输针对该其他节点的所述目标数据;其中,该其他节点的服务器用于在所述从服务器利用自身的私钥传输针对该其他节点的所述目标数据时,利用该从服务器的公钥配合所述从服务器传输所述目标数据,以及用于在所述从服务器利用该其他节点的服务器的公钥传输针对该其他节点的所述目标数据时,利用该其他节点的服务器的私钥配合所述从服务器传输所述目标数据。/n

【技术特征摘要】
1.一种区块链节点的数据恢复方法,其特征在于,应用于区块链中的目标节点的从服务器,所述目标节点的服务器还包括主服务器,所述方法包括:
在所述主服务器为所述目标节点传输数据的过程中,检测所述主服务器是否发生故障;
若是,确定所述主服务器未完成传输的目标数据;
向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,并获取所述各个其他节点的服务器的公钥;任一服务器的公钥为该服务器在为节点传输数据时,用于数据加密的密钥信息;
针对每一其他节点,利用该其他节点的服务器的公钥或所述从服务器的私钥,传输针对该其他节点的所述目标数据;其中,该其他节点的服务器用于在所述从服务器利用自身的私钥传输针对该其他节点的所述目标数据时,利用该从服务器的公钥配合所述从服务器传输所述目标数据,以及用于在所述从服务器利用该其他节点的服务器的公钥传输针对该其他节点的所述目标数据时,利用该其他节点的服务器的私钥配合所述从服务器传输所述目标数据。


2.根据权利要求1所述的方法,其特征在于,所述向所述区块链中的各个其他节点的服务器发送所述从服务器的公钥,并获取所述各个其他节点的服务器的公钥,包括:
向所述区块链中的各个其他节点的服务器广播所述从服务器的公钥,以使所述各个其他节点的服务器,更新本地存储的节点路径信息;其中,所述节点路径信息包括所述区块链中各节点的服务器的公钥;
向所述目标节点发送节点路径请求,以使所述目标节点在接收到所述节点路径请求后,向所述从服务器发送本地存储的节点路径信息。


3.根据权利要求1或2所述的方法,其特征在于,当传输针对该其他节点的所述目标数据包括:向该其他节点的服务器发送所述目标数据时,所述利用该其他节点的服务器的公钥,传输针对该其他节点的所述目标数据,包括:利用该其他节点的服务器的公钥对所述目标数据进行加密,并向该其他节点的服务器发送加密后的目标数据;
该其他节点的服务器具体用于利用该其他节点的服务器的私钥,对所述从服务器发送的所述目标数据进行解密,得到解密后的目标数据,并将所述解密后的目标数据发送至该其他节点,以使该其他节点在接收到所述解密后的目标数据时,本地存储所述解密后的目标数据。


4.根据权利要求1或2所述的方法,其特征在于,当传输针对该其他节点的所述目标数据包括:接收该其他节点的服务器发送的所述目标数据时,所述利用该其他节点的服务器的公钥,传输针对该其他节点的所述目标数据,包括:
接收该其他节点的服务器发送的所述目标数据,并利用所述从服务器的私钥,对所接收的目标数据进行解密,得到解密后的目标数据,并将所述解密后的目标数据发送至所述目标节点,以使所述目标节点接收到所述解密后的目标数据时,在本地存储所述解密后的目标数据;
该其他节点的服务器具体用于利用所述从服务器的公钥,对待发送的所述目标数据进行加密,将加密后的数据发送给所述从服务器。
<...

【专利技术属性】
技术研发人员:景晓军郑顺天吕文哲崔原豪穆俊生魏思杰
申请(专利权)人:北京邮电大学北京佰辰科技有限公司
类型:发明
国别省市:北京;11

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

1