CN110505313B - 一种超级节点选取方法、装置和设备 - Google Patents

一种超级节点选取方法、装置和设备 Download PDF

Info

Publication number
CN110505313B
CN110505313B CN201910912759.XA CN201910912759A CN110505313B CN 110505313 B CN110505313 B CN 110505313B CN 201910912759 A CN201910912759 A CN 201910912759A CN 110505313 B CN110505313 B CN 110505313B
Authority
CN
China
Prior art keywords
node
super
target node
distance
preset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910912759.XA
Other languages
English (en)
Other versions
CN110505313A (zh
Inventor
孙大伟
张锦喜
彭奕填
叶亚芳
马利平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Zhuoqi Investment Co ltd
Original Assignee
Guangdong Zhuoqi Investment Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Zhuoqi Investment Co ltd filed Critical Guangdong Zhuoqi Investment Co ltd
Priority to CN201910912759.XA priority Critical patent/CN110505313B/zh
Publication of CN110505313A publication Critical patent/CN110505313A/zh
Application granted granted Critical
Publication of CN110505313B publication Critical patent/CN110505313B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/30Decision processes by autonomous network management units using voting and bidding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/107Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1051Group master selection mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种超级节点选取方法、装置和设备,方法包括:获取预置区块链中的第一目标节点;计算第一目标节点和原始节点之间的距离,得到第一距离值;若第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点;若第一距离值小于第一预置阈值,则返回获取预置区块链中的第一目标节点的步骤。解决了现有的超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的技术问题。

Description

一种超级节点选取方法、装置和设备
技术领域
本发明涉及区块链技术领域,尤其涉及一种超级节点选取方法、装置和设备。
背景技术
区块链是分布式数据存储、共识机制、加密算法等计算机技术的新型应用模式。区块链中含有多个节点,可以在多个节点中选取超级节点。区块链上的节点产生交易后,超级节点可以对原始节点的交易记录进行验证,原始节点为该区块链中发起交易的节点,并将该记录的交易记录储存并同步在该区块链上。但是,现有的超级节点一般是采用随机选取方法,存在超级节点与原始节点距离过近,超级节点与原始节点可能会串通作弊的问题。
发明内容
本申请提供了一种超级节点选取方法、装置和设备,用于解决现有的超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的技术问题。
本申请第一方面提供了一种超级节点选取方法,包括:
获取预置区块链中的第一目标节点;
计算所述第一目标节点和原始节点之间的距离,得到第一距离值;
若所述第一距离值大于或等于第一预置阈值,则对所述第一目标节点进行验证,在所述第一目标节点验证通过时,将所述第一目标节点选取为第一超级节点;
若所述第一距离值小于所述第一预置阈值,则返回所述获取预置区块链中的第一目标节点的步骤。
可选的,所述获取预置区块链中的第一目标节点,包括:
基于可验证随机函数在预置区块链中的所有非原始节点中选取第一目标节点。
可选的,所述计算所述第一目标节点和原始节点之间的距离,得到第一距离值,包括:
基于谷歌S2距离算法计算所述第一目标节点和原始节点之间的距离,得到第一距离值。
可选的,还包括:
B1:获取所述预置区块链中的第二目标节点;
B2:基于谷歌S2距离算法计算所述第二目标节点和所述原始节点之间的距离,得到第二距离值;
B3:基于谷歌S2距离算法计算所述第二目标节点和所述第一超级节点之间的距离,得到第三距离值;
B4:若所述第二距离值和所述第三距离值均大于或等于第二预置阈值,则对所述第二目标节点进行验证,在所述第二目标节点验证通过时,将所述第二目标节点选取为第二超级节点;
B5:若所述第二距离值和/或所述第三距离值小于所述第二预置阈值,则返回步骤B1;
B6:重复步骤B1-步骤B5,直到超级节点的数量等于预置超级节点数;
B7:在所有超级节点中选取一个超级节点作为所述预置区块链中的最终超级节点。
可选的,步骤B6之前,还包括:
B0:基于所述预置区块链中的所有节点数量确定所述预置超级节点数,其中所述预置超级节点数为2个以上。
可选的,步骤B7具体包括:
基于随机算法在所有超级节点中随机选取一个超级节点作为所述预置区块链中的最终超级节点。
本申请第二方面提供了一种超级节点选取装置,包括:
第一获取模块,用于获取预置区块链中的第一目标节点;
第一计算模块,用于计算所述第一目标节点和原始节点之间的距离,得到第一距离值;
第一验证模块,用于若所述第一距离值大于或等于第一预置阈值,则对所述第一目标节点进行验证,在所述第一目标节点验证通过时,将所述第一目标节点选取为第一超级节点;
第一触发模块,用于若所述第一距离值小于所述第一预置阈值,则触发所述第一获取模块。
可选的,还包括:
第二获取模块,用于获取所述预置区块链中的第二目标节点;
第二计算模块,用于基于谷歌S2距离算法计算所述第二目标节点和所述原始节点之间的距离,得到第二距离值;
第三计算模块,用于基于谷歌S2距离算法计算所述第二目标节点和所述第一超级节点之间的距离,得到第三距离值;
第二验证模块,用于若所述第二距离值和所述第三距离值均大于或等于第二预置阈值,则对所述第二目标节点进行验证,在所述第二目标节点验证通过时,将所述第二目标节点选取为第二超级节点;
第二触发模块,用于若所述第二距离值和/或所述第三距离值小于所述第二预置阈值,则触发所述第二获取模块;
第三触发模块,用于触发所述第二获取模块、所述第二计算模块、所述第三计算模块、所述第二验证模块和所述第二触发模块,直到超级节点的数量等于预置超级节点数;
选取模块,用于在所有超级节点中选取一个超级节点作为所述预置区块链中的最终超级节点。
可选的,还包括:
预处理模块,用于基于所述预置区块链中的所有节点数量确定所述预置超级节点数,其中所述预置超级节点数为2个以上。
本申请第三方面提供了一种超级节点选取设备,所述设备包括处理器以及存储器;
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行第一方面任一项所述的超级节点选取方法。
从以上技术方案可以看出,本发明具有以下优点:
本申请提供了一种超级节点选取方法,包括:获取预置区块链中的第一目标节点;计算第一目标节点和原始节点之间的距离,得到第一距离值;若第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点;若第一距离值小于第一预置阈值,则返回获取预置区块链中的第一目标节点的步骤。本申请中提供的超级节点选取方法,通过获取预置区块链中的第一目标节点,计算第一目标节点和原始节点之间的距离,得到第一距离值,然后将第一距离值与第一预置阈值进行比较,当第一目标节点与原始节点足够远的时候,该第一目标节点才有机会成为第一超级节点,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点,通过比较第一距离值与第一预置阈值来选取第一超级节点,以此避免超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的问题,解决了现有的超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的技术问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明提供的一种超级节点选取方法的第一个实施例的流程示意图;
图2为本发明提供的一种超级节点选取方法的第二个实施例的流程示意图;
图3为本发明提供的一种超级节点选取方法的第三个实施例的流程示意图;
图4为本发明提供的一种超级节点选取装置的一个实施例的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于理解,请参阅图1,本申请提供了一种超级节点选取方法的第一个实施例,包括:
步骤101、获取预置区块链中的第一目标节点。
需要说明的是,预置区块链上除了发起交易的原始节点外的其他非原始节点均有机会成为目标节点,在所有非原始节点中获取第一目标节点。
步骤102、计算第一目标节点和原始节点之间的距离,得到第一距离值。
需要说明的是,现有的超级节点一般是采用随机选取方法,存在超级节点与原始节点距离过近,从而存在超级节点与原始节点串通作弊风险的问题,本申请实施例中通过计算第一目标节点和原始节点之间的距离,得到第一距离值,以便于后续进行距离筛选,达到选取超级节点的目的。
步骤103、若第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点,若第一距离值小于第一预置阈值,则返回步骤101。
需要说明的是,本申请实施例中预先设置一个距离阈值,若通过计算第一目标节点和原始节点之间的距离所得到的第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点,该第一超级节点为最终超级节点,可以用于对原始节点的交易记录进行出块。通过第一预置阈值,使得选取的第一超级节点与原始节点之间的距离足够远,从而避免超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的问题。
若第一距离值小于第一预置阈值,说明第一目标节点与原始节点存在距离过近的问题,该第一目标节点不能被选取为超级节点,则返回步骤101,在预置区块链中重新获取第一目标节点。
本申请提供了一种超级节点选取方法,包括:获取预置区块链中的第一目标节点;计算第一目标节点和原始节点之间的距离,得到第一距离值;若第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点;若第一距离值小于第一预置阈值,则返回获取预置区块链中的第一目标节点的步骤。本申请中提供的超级节点选取方法,通过获取预置区块链中的第一目标节点,计算第一目标节点和原始节点之间的距离,得到第一距离值,然后将第一距离值与第一预置阈值进行比较,当第一目标节点与原始节点足够远的时候,该第一目标节点才有机会成为第一超级节点,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点,通过比较第一距离值与第一预置阈值来选取第一超级节点,以此避免超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的问题,解决了现有的超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的技术问题。
为了便于理解,请参阅图2,本申请提供了一种超级节点选取方法的第二个实施例,包括:
步骤201、获取预置区块链中的第一目标节点。
需要说明的是,本申请实施例中可以采用可验证随机函数(Verifiable RandomFunction,VRF)在所有非原始节点中选取第一目标节点,具体为:非原始节点根据自身的私钥和一个预置区块链都知道的随机数轮流生成新的随机数,判断新的随机数是否满足预设条件,可以是判断该新的随机数是否大于预设的数值,若新的随机数满足预设条件,则该新的随机数对应的非原始节点被选取为第一目标节点,并且该第一目标节点在预置区块链上广播该生成的新的随机数,以便于其他节点进行验证。例如,假设本次为第2轮选取第一目标节点,一共有100个非原始节点,假设生成的新的随机数大于10为满足预设条件,前5个非原始节点依次生成的随机数均小于10,6号非原始节点根据自身的私钥和一个预置区块链都知道的随机数(可以为预置区块链都知道的本轮次的数值2)生成的随机数为11,那么6号非原始节点被选取为本轮的第一目标节点,6号非原始节点可以在预置区块链上广播生成的随机数11,以便于其他节点进行验证。
步骤202、计算第一目标节点和原始节点之间的距离,得到第一距离值。
需要说明的是,现有的超级节点一般是采用随机选取方法,存在超级节点与原始节点距离过近,从而存在超级节点与原始节点串通作弊风险的问题,本申请实施例中可以采用谷歌S2距离算法计算第一目标节点和原始节点之间的距离,得到第一距离值,以便于后续进行距离筛选,达到选取超级节点的目的。
采用谷歌S2距离算法计算原始节点与第一目标节点之间的距离,具体步骤为:
获取第一目标节点的经纬度和原始节点的经纬度,第一目标节点的经纬度由第一目标节点的网际协议IP地址生成,原始节点的经纬度由原始节点的网际协议IP地址生成;基于谷歌S2距离算法、第一目标节点的经纬度和原始节点的经纬度计算第一目标节点和原始节点之间的空间距离,得到第一距离值。
步骤203、若第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点,若第一距离值小于第一预置阈值,则返回步骤201。
需要说明的是,本申请实施例中预先设置一个距离阈值,若通过计算第一目标节点和原始节点之间的距离所得到的第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,该预置区块链上的其他节点可以根据第一目标节点的公钥对该第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点,该第一超级节点为最终超级节点,可以用于对原始节点的交易记录进行出块。
通过第一预置阈值,使得选取的第一超级节点与原始节点之间的距离足够远,从而避免超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的问题。
若第一距离值小于第一预置阈值,说明第一目标节点与原始节点存在距离过近的问题,该第一目标节点不能被选取为第一超级节点,则返回步骤201,在预置区块链中重新获取第一目标节点。
步骤204、获取预置区块链中的第二目标节点。
需要说明的是,本申请实施例中采用可验证随机函数(Verifiable RandomFunction,VRF)在剩余的非原始节点中选取第二目标节点,剩余的非原始节点为该轮没有参与选取第一目标节点的非原始节点,例如,步骤201中提到的例子,前6个非原始节点生成了新的随机数,参与了选取第一目标节点,那么第二目标节点在剩下的7-100个非原始节点中选取,直到某个非原始节点生成的随机数大于10,该非原始节点被选取为第二目标节点,并且该第二目标节点在预置区块链上广播该随机数,以便于其他节点进行验证。
步骤205、基于谷歌S2距离算法计算第二目标节点和原始节点之间的距离,得到第二距离值。
需要说明的是,本申请实施例中的计算第二目标节点和原始节点之间的距离的具体步骤与步骤202中计算第一目标节点和原始节点之间的距离的具体步骤一致,在此不再进行赘述。
步骤206、基于谷歌S2距离算法计算第二目标节点和第一超级节点之间的距离,得到第三距离值。
需要说明的是,本申请实施例中的计算第二目标节点和第一超级节点之间的距离的具体步骤与步骤202中计算第一目标节点和原始节点之间的距离的具体步骤一致,在此不再进行赘述。
步骤207、若第二距离值和第三距离值均大于或等于第二预置阈值,则对第二目标节点进行验证,在第二目标节点验证通过时,将第二目标节点选取为第二超级节点,若第二距离值和/或第三距离值小于第二预置阈值,则返回步骤204。
需要说明的是,第二预置阈值可以和第一预置阈值一样,也可以和第一预置阈值不一样,可以根据实际情况进行设置。
若计算得到的第二距离值和第三距离值均大于或等于第二预置阈值,则对第二目标节点进行验证,该预置区块链上的其他节点可以根据第二目标节点的公钥对该第二目标节点进行验证,在第二目标节点验证通过时,将第二目标节点选取为第二超级节点,第二目标节点验证不通过时,第二目标节点不能成为第二超级节点。
通过第二预置阈值,使得选取的第二超级节点与原始节点、第一超级节点之间的距离足够远,即能避免超级节点与原始节点距离过近,存在超级节点与原始节点串通作弊风险的问题,又能避免超级节点过于集中所导致的超级节点作弊的问题。
若第二距离值和/或第三距离值小于第二预置阈值,说明第二目标节点与原始节点和/或第一超级节点存在距离过近的问题,该第二目标节点不能被选取为第二超级节点,则返回步骤204,在预置区块链中的剩余非原始节点中重新选取第二目标节点,剩余的非原始节点为该轮没有参与选取第一目标节点和第二目标节点的非原始节点。
步骤208、重复步骤204-步骤207,直到超级节点的数量等于预置超级节点数。
需要说明的是,重复步骤204-步骤207,在剩余的非原始节点中选取第三目标节点、第四目标节点等等,剩余的非原始节点为该轮没有参加前述目标节点选取的非原始节点,计算当前目标节点与原始节点和已经选取的各个超级节点之间的距离,通过阈值比较和公钥验证,进而选取第三超级节点、第四超级节点等等,直到超级节点的数量等于预置超级节点数,停止选取超级节点。
步骤209、在所有超级节点中选取一个超级节点作为预置区块链中的最终超级节点。
需要说明的是,可以采用随机算法在选取的所有超级节点中随机选取一个超级节点作为该预置区块链上的最终超级节点,也可以将第一超级节点选取为最终超级节点,该超级节点可以用于对原始节点的交易记录进行出块。
在对原始节点的交易记录进行出块的最终超级节点选好之后,可以每隔一段预设时间检测该最终超级节点是否有出块,若没有出块,可以进一步通过心跳检测该最终超级节点是否发生故障,若该最终超级节点发生故障,则在所有超级节点的剩余超级节点中选择一个超级节点替代该发生故障的最终超级节点。在选择了替代超级节点之后,可以采用上述方法重新选取一个超级节点进行补充。
为了便于理解,请参阅图3,本申请提供了一种超级节点选取方法的第三个实施例,包括:
步骤301、基于预置区块链中的所有节点数量确定预置超级节点数。
需要说明的是,预置超级节点数为2个以上,获取预置区块链中的所有节点数量,从而可以根据获取的节点数量确定超级节点的数量。当节点数量多并超过一定的数量时,预置超级节点数也会相应的增加,当节点数量较少时,预置超级节点数也会相应的减少。
需要注意的是,步骤301不仅仅可以在步骤302之前,可以在步骤309的任一步骤之前,在此不做具体的限定。
步骤302、获取预置区块链中的第一目标节点。
步骤303、计算第一目标节点和原始节点之间的距离,得到第一距离值。
步骤304、若第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点,若第一距离值小于预置阈值,则返回步骤302。
步骤305、获取预置区块链中的第二目标节点。
步骤306、基于谷歌S2距离算法计算第二目标节点和原始节点之间的距离,得到第二距离值。
步骤307、基于谷歌S2距离算法计算第二目标节点和第一超级节点之间的距离,得到第三距离值。
步骤308、若第二距离值和第三距离值均大于或等于第二预置阈值,则对第二目标节点进行验证,在第二目标节点验证通过时,将第二目标节点选取为第二超级节点,若第二距离值和/或第三距离值小于第二预置阈值,则返回步骤305。
步骤309、重复步骤305-步骤308,直到超级节点的数量等于预置超级节点数。
步骤310、在所有超级节点中选取一个超级节点作为预置区块链中的最终超级节点。
需要说明的是,本申请实施例中的步骤302至步骤310与上一实施例中的步骤201至步骤209一致,在此不再进行赘述。
为了便于理解,请参阅图4,本申请提供了一种超级节点选取装置的一个实施例,包括:
第一获取模块401,用于获取预置区块链中的第一目标节点。
第一计算模块402,用于计算第一目标节点和原始节点之间的距离,得到第一距离值。
第一验证模块403,用于若第一距离值大于或等于第一预置阈值,则对第一目标节点进行验证,在第一目标节点验证通过时,将第一目标节点选取为第一超级节点。
第一触发模块404,用于若第一距离值小于第一预置阈值,则触发第一获取模块401。
进一步的,还包括:
第二获取模块405,用于获取预置区块链中的第二目标节点。
第二计算模块406,用于基于谷歌S2距离算法计算第二目标节点和原始节点之间的距离,得到第二距离值。
第三计算模块407,用于基于谷歌S2距离算法计算第二目标节点和第一超级节点之间的距离,得到第三距离值。
第二验证模块408,用于若第二距离值和第三距离值均大于或等于第二预置阈值,则对第二目标节点进行验证,在第二目标节点验证通过时,将第二目标节点选取为第二超级节点。
第二触发模块409,用于若第二距离值和/或第三距离值小于第二预置阈值,则触发第二获取模块405。
第三触发模块410,用于触发第二获取模块405、第二计算模块406、第三计算模块407、第二验证模块408和第二触发模块409,直到超级节点的数量等于预置超级节点数。
选取模块411,用于在所有超级节点中选取一个超级节点作为预置区块链中的最终超级节点。
进一步的,还包括:
预处理模块412,用于基于预置区块链中的所有节点数量确定预置超级节点数,其中预置超级节点数为2个以上。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种超级节点选取方法,其特征在于,包括以下步骤:
获取预置区块链中的第一目标节点;
计算所述第一目标节点和原始节点之间的距离,得到第一距离值;
若所述第一距离值大于或等于第一预置阈值,则对所述第一目标节点进行验证,在所述第一目标节点验证通过时,将所述第一目标节点选取为第一超级节点;
若所述第一距离值小于所述第一预置阈值,则返回所述获取预置区块链中的第一目标节点的步骤;
还包括:
B1:获取所述预置区块链中的第二目标节点;
B2:基于谷歌S2距离算法计算所述第二目标节点和所述原始节点之间的距离,得到第二距离值;
B3:基于谷歌S2距离算法计算所述第二目标节点和所述第一超级节点之间的距离,得到第三距离值;
B4:若所述第二距离值和所述第三距离值均大于或等于第二预置阈值,则对所述第二目标节点进行验证,在所述第二目标节点验证通过时,将所述第二目标节点选取为第二超级节点;
B5:若所述第二距离值和/或所述第三距离值小于所述第二预置阈值,则返回步骤B1;
B6:重复步骤B1-步骤B5,直到超级节点的数量等于预置超级节点数;
B7:在所有超级节点中选取一个超级节点作为所述预置区块链中的最终超级节点。
2.根据权利要求1所述的超级节点选取方法,其特征在于,所述获取预置区块链中的第一目标节点,包括:
基于可验证随机函数在预置区块链中的所有非原始节点中选取第一目标节点。
3.根据权利要求1所述的超级节点选取方法,其特征在于,所述计算所述第一目标节点和原始节点之间的距离,得到第一距离值,包括:
基于谷歌S2距离算法计算所述第一目标节点和原始节点之间的距离,得到第一距离值。
4.根据权利要求1所述的超级节点选取方法,其特征在于,步骤B6之前,还包括:
B0:基于所述预置区块链中的所有节点数量确定所述预置超级节点数,其中所述预置超级节点数为2个以上。
5.根据权利要求1所述的超级节点选取方法,其特征在于,步骤B7具体包括:
基于随机算法在所有超级节点中随机选取一个超级节点作为所述预置区块链中的最终超级节点。
6.一种超级节点选取装置,其特征在于,包括:
第一获取模块,用于获取预置区块链中的第一目标节点;
第一计算模块,用于计算所述第一目标节点和原始节点之间的距离,得到第一距离值;
第一验证模块,用于若所述第一距离值大于或等于第一预置阈值,则对所述第一目标节点进行验证,在所述第一目标节点验证通过时,将所述第一目标节点选取为第一超级节点;
第一触发模块,用于若所述第一距离值小于所述第一预置阈值,则触发所述第一获取模块;
还包括:
第二获取模块,用于获取所述预置区块链中的第二目标节点;
第二计算模块,用于基于谷歌S2距离算法计算所述第二目标节点和所述原始节点之间的距离,得到第二距离值;
第三计算模块,用于基于谷歌S2距离算法计算所述第二目标节点和所述第一超级节点之间的距离,得到第三距离值;
第二验证模块,用于若所述第二距离值和所述第三距离值均大于或等于第二预置阈值,则对所述第二目标节点进行验证,在所述第二目标节点验证通过时,将所述第二目标节点选取为第二超级节点;
第二触发模块,用于若所述第二距离值和/或所述第三距离值小于所述第二预置阈值,则触发所述第二获取模块;
第三触发模块,用于触发所述第二获取模块、所述第二计算模块、所述第三计算模块、所述第二验证模块和所述第二触发模块,直到超级节点的数量等于预置超级节点数;
选取模块,用于在所有超级节点中选取一个超级节点作为所述预置区块链中的最终超级节点。
7.根据权利要求6所述的超级节点选取装置,其特征在于,还包括:
预处理模块,用于基于所述预置区块链中的所有节点数量确定所述预置超级节点数,其中所述预置超级节点数为2个以上。
8.一种超级节点选取设备,其特征在于,所述设备包括处理器以及存储器;
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-5任一项所述的超级节点选取方法。
CN201910912759.XA 2019-09-25 2019-09-25 一种超级节点选取方法、装置和设备 Active CN110505313B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910912759.XA CN110505313B (zh) 2019-09-25 2019-09-25 一种超级节点选取方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910912759.XA CN110505313B (zh) 2019-09-25 2019-09-25 一种超级节点选取方法、装置和设备

Publications (2)

Publication Number Publication Date
CN110505313A CN110505313A (zh) 2019-11-26
CN110505313B true CN110505313B (zh) 2022-04-15

Family

ID=68592717

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910912759.XA Active CN110505313B (zh) 2019-09-25 2019-09-25 一种超级节点选取方法、装置和设备

Country Status (1)

Country Link
CN (1) CN110505313B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112101939A (zh) * 2020-09-14 2020-12-18 邢文超 基于区块链的节点管理方法及系统
CN115189881B (zh) * 2022-09-07 2022-11-29 广东名阳信息科技有限公司 一种基于边缘计算的物联网数据接入及处理系统及方法
CN116562885B (zh) * 2023-07-07 2023-09-29 北京信大融金教育科技有限公司 基于区块链的供应链系统管理方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108550038A (zh) * 2018-04-18 2018-09-18 杭州秘猿科技有限公司 一种应用于区块链的数据传播系统及方法
CN110460471A (zh) * 2019-08-15 2019-11-15 广州蚁比特区块链科技有限公司 一种超级节点竞选方法、装置及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9355105B2 (en) * 2012-12-19 2016-05-31 International Business Machines Corporation Indexing of large scale patient set

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108550038A (zh) * 2018-04-18 2018-09-18 杭州秘猿科技有限公司 一种应用于区块链的数据传播系统及方法
CN110460471A (zh) * 2019-08-15 2019-11-15 广州蚁比特区块链科技有限公司 一种超级节点竞选方法、装置及存储介质

Also Published As

Publication number Publication date
CN110505313A (zh) 2019-11-26

Similar Documents

Publication Publication Date Title
CN110505313B (zh) 一种超级节点选取方法、装置和设备
CN110381072A (zh) 基于区块链的数据验证方法、系统和计算机可读存储介质
GB2579635A (en) A node testing method and apparatus for a blockchain system
CN110022315B (zh) 一种块链式账本中的权重管理方法、装置及设备
CN110928880B (zh) 基于区块链的数据处理方法、装置、终端及介质
CN107465698A (zh) 一种数据校验方法及服务器
CN107682328A (zh) 一种数据校验方法及客户端
CN110851535B (zh) 基于区块链的数据处理方法、装置、存储介质及终端
CN110460471B (zh) 一种超级节点竞选方法、装置及存储介质
CN112069169A (zh) 区块数据存储方法、装置、电子设备及可读存储介质
CN110620671B (zh) 加密算法测评方法、介质、设备及装置
CN111431908A (zh) 一种访问处理方法、装置及可读存储介质
CN107948177B (zh) 验证问卷的生成方法和装置
Lima Tax evasion and nonequilibrium model on Apollonian networks
JP6411321B2 (ja) 認証手段選択装置、認証手段選択方法、およびプログラム
US11502829B2 (en) Robust input verification for secure multi-party computation (MPC) with clients
CN112926053B (zh) 无许可区块链系统中恶意区块的探测方法、系统及p2p网络
CN112634034A (zh) 预约方法、装置、电子设备及计算机可读存储介质
CN108521449B (zh) 网络设备操作记录异地备份方法和系统
CN111815845B (zh) 基于异构区块链的摇号方法、装置、系统、设备和介质
US20240173629A1 (en) Selecting one of multiple user devices in a network gaming system
US11997196B2 (en) Robust input verification for secure multi-party computation (MPC) with clients
CN110362422A (zh) 一种数据备份方法、装置及系统
CN117454153B (zh) 一种基于图数据的隐私特征验证方法、系统及电子设备
CN113051616B (zh) 一种提升区块链安全性的方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant