1.一种基于区块链的数据自修复方法,其特征在于,所述区块链包括记账节点的子网络以及与所述记账节点的子网络连接的扫描修复节点,所述方法由扫描修复节点执行,所述方法包括:当发现目标节点的存储数据与账本记录不一致,向其它节点发送数据更新的投票请求;
接收其它节点根据所述投票请求返回的投票结果,其中,当所述其它节点相应的账本记录与所述目标节点的账本记录一致时,确定所述投票结果为反对票;
当返回的投票结果中反对票的比例超过预定阈值,向所述其它节点发送数据恢复请求,所述数据恢复请求中携带有所述目标节点的存储数据的数据特征;
接收反对票的节点返回的根据所述数据特征计算的第一数据区别特征,及除所述反对票的节点之外的节点返回根据所述数据特征计算的第二数据区别特征;
基于所述反对票的节点的预设可靠度、所述第一数据区别特征及所述第二数据区别特征确定存储有可更新数据的节点;
向所述存储有可更新数据的节点发送数据同步请求,以同步所述存储有可更新数据的节点的存储数据至所述目标节点,修复所述目标节点的数据。
2.根据权利要求1所述的方法,其特征在于,所述基于所述反对票的节点的预设可靠度、所述第一数据区别特征及所述第二数据区别特征确定存储有可更新数据的节点,包括:确定所述反对票的节点中预设可靠度高于第二预定阈值的第一节点;
计算每个所述第二数据区别特征与任一所述第一节点对应的第一数据区别特征的相似度;
将低于预定相似度阈值的所述相似度对应的除所述反对票的节点之外的节点确定为存储有可更新数据的节点。
3.根据权利要求1所述的方法,其特征在于,所述基于所述反对票的节点的预设可靠度、所述第一数据区别特征及所述第二数据区别特征确定存储有可更新数据的节点,包括:确定所述反对票的节点中预设可靠度高于第二预定阈值的第一节点;
计算每个所述第二数据区别特征与所有所述第一节点对应的第一数据区别特征的相似度,得到对应于每个所述第二数据区别特征的多个相似度;
计算对应于每个所述第二数据区别特征的多个相似度的平均值;
将低于预定均值阈值的所述平均值对应的除所述反对票的节点之外的节点确定为存储有可更新数据的节点。
4.根据权利要求1所述的方法,其特征在于,所述目标节点的存储数据的数据特征,包括:根据所述目标节点的账本记录中的数据摘要信息,从所述目标节点的存储数据中提取的关键数据特征。
5.根据权利要求4所述的方法,其特征在于,所述根据所述目标节点的账本记录中的数据摘要信息,从所述目标节点的存储数据中提取的关键数据特征,包括:从所述数据摘要信息中获取预定时间段的摘要信息;
基于所述预定时间段的摘要信息,从所述目标节点的存储数据中提取的关键数据特征。
6.根据权利要求1所述的方法,其特征在于,所述第一数据区别特征,包括:获取所述目标节点的数据特征中每个属性的子特征与所述反对票的节点上的数据特征中相应属性的子特征的差值,得到第一差值集合作为所述第一数据区别特征。
7.根据权利要求1所述的方法,其特征在于,所述第二数据区别特征,包括:获取所述目标节点的数据特征中每个属性的子特征与除所述反对票的节点之外的节点上的数据特征中相应属性的子特征的差值,得到第二差值集合作为所述第二数据区别特征。
8.一种基于区块链的数据自修复装置,其特征在于,所述区块链包括记账节点的子网络以及与所述记账节点的子网络连接的扫描修复节点,所述装置运行在扫描修复节点,所述装置包括:扫描模块,用于当发现目标节点的存储数据与账本记录不一致,向其它节点发送数据更新的投票请求;
第一接收模块,用于接收其它节点根据所述投票请求返回的投票结果,其中,当所述其它节点相应的账本记录与所述目标节点的账本记录一致时,确定所述投票结果为反对票;
请求模块,用于当返回的投票结果中反对票的比例超过预定阈值,向所述其它节点发送数据恢复请求,所述数据恢复请求中携带有所述目标节点的存储数据的数据特征;
第二接收模块,用于接收反对票的节点返回的根据所述数据特征计算的第一数据区别特征,及除所述反对票的节点之外的节点返回根据所述数据特征计算的第二数据区别特征;
确定模块,用于基于所述反对票的节点的预设可靠度、所述第一数据区别特征及所述第二数据区别特征确定存储有可更新数据的节点;
恢复模块,用于向所述存储有可更新数据的节点发送数据同步请求,以同步所述存储有可更新数据的节点的存储数据至所述目标节点,修复所述目标节点的数据。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1‑7任一项所述的方法。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的计算机程序;其中,所述处理器配置为经由执行所述计算机程序来执行权利要求1‑7任一项所述的方法。