CN112968884B - 一种防止黑客攻击的区块链异构共识方法及终端 - Google Patents

一种防止黑客攻击的区块链异构共识方法及终端 Download PDF

Info

Publication number
CN112968884B
CN112968884B CN202110141138.3A CN202110141138A CN112968884B CN 112968884 B CN112968884 B CN 112968884B CN 202110141138 A CN202110141138 A CN 202110141138A CN 112968884 B CN112968884 B CN 112968884B
Authority
CN
China
Prior art keywords
node
block
decision
fragment
consensus
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
CN202110141138.3A
Other languages
English (en)
Other versions
CN112968884A (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.)
Fujian Fulian Technology Co ltd
Original Assignee
Fujian Fulian Technology 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 Fujian Fulian Technology Co ltd filed Critical Fujian Fulian Technology Co ltd
Priority to CN202110141138.3A priority Critical patent/CN112968884B/zh
Publication of CN112968884A publication Critical patent/CN112968884A/zh
Application granted granted Critical
Publication of CN112968884B publication Critical patent/CN112968884B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种防止黑客攻击的区块链异构共识方法及终端,其方法包括:在每一轮共识过程中,筛选出唯一节点作为区块的决策节点;通过所述决策节点接收每一分片发送的子消息块,并分别对每一分片发送的子消息块进行验证;对验证通过的子消息块进行合并,得到合并后的消息块;通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点;若接收超过预设数目阈值的分片决策节点回发的第一签名信息,则判断所述消息块验证通过;所述第一签名信息为分片的决策节点对消息块验证通过后,回发的验证通过对应的签名信息。本发明在一定程度上能够防止黑客攻击而引起的区块链安全性问题,提高了区块链的安全性。

Description

一种防止黑客攻击的区块链异构共识方法及终端
本案是以申请号为201811128351.5,申请日为2018年9月27日,名称为《一种区块链的异构共识方法及终端》的专利申请为母案的分案申请。
技术领域
本发明涉及区块链技术领域,尤其涉及一种防止黑客攻击的区块链异构共识方法及终端。
背景技术
共识机制是区块链的核心技术之一。共识机制是区块链中互不信任的用户达成信任的机制,是区块链中记录传递、验证、复制的基础。目前的共识机制主要包括工作量证明(Proofof Work,PoW),权益证明(Proofof Stake,PoS),委任权益证明(Delegated Proofof Stake,DPoS)和实用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT)以及这4种共识机制的变形。当然,现在新型的分布式账本技术,例如以有向无环图(DirectedAcyclic Graph,DAG)为代表的新型分布式账本技术自带共识机制。现有的共识机制或多或少都存在问题。例如PoW共识机制存在资源浪费、共识时间长以及共识垄断以及天然的51%攻击的缺陷;PoS共识机制存在长链攻击、共识垄断以及共识难以证明的缺陷;DPoS共识机制存在中心化、长链攻击以及共识难以证明的缺陷;PBFT共识机制存在共识时间随共识节点数量指数增长的缺陷;而以DAG为基础的自带共识的新型分布式账本技术存在安全性弱以及共识中心化的问题。
安全性是共识机制最重要的属性。共识机制是区块链的核心,共识机制的安全性直接决定了整个区块链系统的安全性。因此加强共识机制的安全性是提升整个区块链系统安全系的关键。目前的共识机制大多为了可用性而忽略了一部分的安全性,或者仅仅考虑了一部分安全性,也可以说目前共识机制仅仅考虑防系统内部人做坏的安全性,而很少考虑防黑客攻击的安全性。
目前的区块链大多采用单共识,或者多种共识顺序叠加的共识机制,例如有区块链系统采用PoW+PBFT的共识机制,这种叠加的共识机制,大多是用PoW做初步共识,然后再采用其它共识机制。这种模式的共识机制并不能从根本上解决上面提到的共识机制所面临的缺陷。
发明内容
本发明所要解决的技术问题是:本发明提供了一种防止黑客攻击的区块链异构共识方法及终端,在一定程度上能够防止黑客攻击而引起的区块链安全性问题,提高了区块链的安全性。
为了解决上述技术问题,本发明提供了一种防止黑客攻击的区块链异构共识方法,包括以下步骤:
S1:在每一轮共识过程中,筛选出唯一节点作为区块的决策节点;
S2:通过所述决策节点接收每一分片发送的子消息块,并分别对每一分片发送的子消息块进行验证;
S3:对验证通过的子消息块进行合并,得到合并后的消息块;
S4:通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点;
S5:若接收超过预设数目阈值的分片决策节点回发的第一签名信息,则判断所述消息块验证通过;所述第一签名信息为分片的决策节点对消息块验证通过后,回发的验证通过对应的签名信息。
本发明还提供了一种防止黑客攻击的区块链异构共识终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1:在每一轮共识过程中,筛选出唯一节点作为区块的决策节点;
S2:通过所述决策节点接收每一分片发送的子消息块,并分别对每一分片发送的子消息块进行验证;
S3:对验证通过的子消息块进行合并,得到合并后的消息块;
S4:通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点;
S5:若接收超过预设数目阈值的分片决策节点回发的第一签名信息,则判断所述消息块验证通过;所述第一签名信息为分片的决策节点对消息块验证通过后,回发的验证通过对应的签名信息。
本发明的有益效果为:
本发明提供了一种防止黑客攻击的区块链异构共识方法及终端,在每一轮共识过程中,均选出唯一节点作为区块的决策节点,通过决策节点对每一分片的决策节点发送的子消息块进行验证,并对验证通过的子消息块进行合并,得到合并后的消息块,并将消息块分别发送至每一分片对应的决策节点进行验证,当验证通过的数目大于预设数目阈值时,表示该消息块验证通过,可广播该消息块;本发明通过上述方法,在每一轮共识过程中均选出区块新的决策节点,使得攻击者无法判断决策的“领导者”(分片的决策节点),也就无法控制整个共识过程,同时每个分片所采用的共识算法不同,攻击者无法通过一种攻击策略控制所有的分片,也就无法控制整个共识过程,攻击者想要控制共识过程必须控制系统的绝大多数节点,这无疑增大了攻击的难度,从而解决了黑客攻击区块链中某一分片的节点,而引起区块决策发生重大失误的问题,提高了区块链的安全性。
附图说明
图1为根据本发明实施例一中的一种防止黑客攻击的区块链异构共识方法的步骤示意图;
图2为根据本发明实施例的一种防止黑客攻击的区块链异构共识终端的结构示意图;
标号说明:
1、存储器;2、处理器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。
请参照图1,本发明提供了一种防止黑客攻击的区块链异构共识方法,包括以下步骤:
S1:在每一轮共识过程中,筛选出唯一节点作为区块的决策节点;
S2:通过所述决策节点接收每一分片发送的子消息块,并分别对每一分片发送的子消息块进行验证;
S3:对验证通过的子消息块进行合并,得到合并后的消息块;
S4:通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点;
S5:若接收超过预设数目阈值的分片决策节点回发的第一签名信息,则判断所述消息块验证通过;所述第一签名信息为分片的决策节点对消息块验证通过后,回发的验证通过对应的签名信息。
从上述描述可知,本发明提供了一种防止黑客攻击的区块链异构共识方法,在每一轮共识过程中,均选出唯一节点作为区块的决策节点,通过决策节点对每一分片的决策节点发送的子消息块进行验证,并对验证通过的子消息块进行合并,得到合并后的消息块,并将消息块分别发送至每一分片对应的决策节点进行验证,当验证通过的数目大于预设数目阈值时,表示该消息块验证通过,可广播该消息块;本发明通过上述方法,在每一轮共识过程中均选出区块新的决策节点,使得攻击者无法判断决策的“领导者”,也就无法控制整个共识过程,同时每个分片所采用的共识算法不同,攻击者无法通过一种攻击策略控制所有的分片,也就无法控制整个共识过程,攻击者想要控制共识过程必须控制系统的绝大多数节点,这无疑增大了攻击的难度,从而解决了黑客攻击区块链中某一分片的节点,而引起区块决策发生重大失误的问题,提高了区块链的安全性。
进一步的,所述S1具体为:
在每一轮共识过程中,通过预设的第一公式计算每一个待选节点对应的竞争值,得到多个竞争值;所述每一个待选节点为每一个分片对应的决策节点;
从所述多个竞争值中筛选出满足预设条件的竞争值,得到多个第一竞争值;
公布每一个第一竞争值对应的节点及该节点用于数据解密的公钥;
在预设时间内,获取所有公布的第一竞争值中的最小值,得到第一最小竞争值;
筛选所述第一最小竞争值对应的节点作为区块的决策节点。
从上述描述可知,通过上述方法,在每一轮共识过程中,均筛选出最小竞争值对应的节点作为该区块的决策节点,使得攻击者无法事先确定该轮共识过程中的决策节点,提高了区块链共识过程中的安全性;上述公布每一个竞争值对应的节点及该节点用于数据解密的公钥,便于分片的决策节点通过公钥对子消息块的签名信息进行验证。
进一步的,所述第一公式具体为:
Figure BDA0002928634470000051
其中,所述Ci为第i个待选节点的竞争值,所述ski表示该待选节点上用于加密数据的私钥,r表示当前共识过程的轮数,Qr表示第r轮共识过程对应的随机数(即在每一轮共识过程中均生成一随机数),
Figure BDA0002928634470000052
表示利用私钥ski对r和Qr进行数据签名,H1为哈希函数。
从上述描述可知,通过上述方法,在每一轮共识过程中针对每一个待选节点,计算得到对应的竞争值均不相同,保证每一轮共识过程中得到的分片的决策节点均随机生成,可大大减小分片的决策节点被攻击的概率。
进一步的,所述S2具体为:
通过所述区块的决策节点接收每一分片发送的子消息块;
所述区块由多个分片的子消息块所组成。
通过每一分片的决策节点的公钥,验证对应分片决策节点发送的子消息块签名信息的正确性;所述签名信息为该分片的决策节点通过该决策节点上存储的私钥进行签名所得到的信息。
从上述描述可知,通过上述方法,可有效对每一分片的决策节点发送的子消息块进行验证,提高了共识过程的安全性;同时,每一分片的决策节点的公钥,可通过上述公布的节点及该节点上用于数据解密的公钥获取得到;
进一步的,所述S4具体为:
控制所述区块的决策节点通过实用拜占庭容错算法将所述消息块分别发送至每一分片的决策节点。
从上述描述可知,能够保证将消息块发送至第一分片的决策节点上,提高了系统的容错性。
进一步的,所述的一种防止黑客攻击的区块链异构共识方法,还包括:
通过预设的第二公式,将新增的节点分配至相应的分片中;
所述第二公式为x=sToi(addi)%n,其中所述i为节点的序号,x为节点i待分配的分片的序号,addi表示节点i的地址,sToi表示地址序列转变成整数的函数;具体的,将地址序列转变成整数的函数利用C标准库中的strtol函数。
进一步的,所述的一种防止黑客攻击的区块链异构共识方法,还包括:
预设共识算法集合Co={Co1,Co2,…,Com}(即预设m个共识算法),其中Cok,k=1,2,...,m,表示排序号为k的共识算法;
若区块链中产生新的分片,则新的分片采用的共识算法的排序号为
Figure BDA0002928634470000061
其中,所述g表示新的分片的序号,所述/>
Figure BDA0002928634470000062
表示新的分片决策节点对应的哈希值,哈希值通过第一公式进行计算,%表示求余运算。
请参照图2,本发明提供的一种防止黑客攻击的区块链异构共识终端,包括存储器1、处理器2及存储在存储器1上并可在处理器2上运行的计算机程序,所述处理器2执行所述程序时实现以下步骤:
S1:在每一轮共识过程中,筛选出唯一节点作为区块的决策节点;
S2:通过所述决策节点接收每一分片发送的子消息块,并分别对每一分片发送的子消息块进行验证;
S3:对验证通过的子消息块进行合并,得到合并后的消息块;
S4:通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点;
S5:若接收超过预设数目阈值的分片决策节点回发的第一签名信息,则判断所述消息块验证通过;所述第一签名信息为分片的决策节点对消息块验证通过后,回发的验证通过对应的签名信息。
进一步的,所述的一种防止黑客攻击的区块链异构共识终端,所述S1具体为:
在每一轮共识过程中,通过预设的第一公式计算每一个待选节点对应的竞争值,得到多个竞争值;所述每一个待选节点为每一个分片对应的决策节点;
从所述多个竞争值中筛选出满足预设条件的竞争值,得到多个第一竞争值;
公布每一个第一竞争值对应的节点及该节点用于数据解密的公钥;
在预设时间内,获取所有公布的第一竞争值中的最小值,得到第一最小竞争值;
筛选所述第一最小竞争值对应的节点作为区块的决策节点。
进一步的,所述的一种防止黑客攻击的区块链异构共识终端,所述第一公式具体为:
Figure BDA0002928634470000072
其中,所述Ci为第i个待选节点的竞争值,所述ski表示该待选节点上用于加密数据的私钥,r表示当前共识过程的轮数,Qr表示第r轮共识过程对应的随机数,
Figure BDA0002928634470000071
表示利用私钥ski对r和Qr进行数据签名,H1为哈希函数。
进一步的,所述的一种防止黑客攻击的区块链异构共识终端,所述S2具体为:
通过所述区块的决策节点接收每一分片发送的子消息块;
通过每一分片的决策节点的公钥,验证对应分片决策节点发送的子消息块签名信息的正确性;所述签名信息为该分片的决策节点通过该决策节点上存储的私钥进行签名所得到的信息。
进一步的,所述的一种防止黑客攻击的区块链异构共识终端,所述S4具体为:
控制所述区块的决策节点通过实用拜占庭容错算法将所述消息块分别发送至每一分片的决策节点。
进一步的,所述的一种防止黑客攻击的区块链异构共识方法,还包括:
通过预设的第二公式,将新增的节点分配至相应的分片中;
所述第二公式为x=sToi(addi)%n,其中所述i为节点的序号,x为节点i待分配的分片的序号,addi表示节点i的地址,sToi表示地址序列转变成整数的函数;具体的,将地址序列转变成整数的函数利用C标准库中的strtol函数。
进一步的,所述的一种防止黑客攻击的区块链异构共识方法,还包括:
预设共识算法集合Co={Co1,Co2,…,Com}(即预设m个共识算法),其中Cok,k=1,2,...,m,表示排序号为k的共识算法;
若区块链中产生新的分片,则新的分片采用的共识算法的排序号为
Figure BDA0002928634470000081
其中,所述g表示新的分片的序号,所述/>
Figure BDA0002928634470000082
表示新的分片决策节点对应的哈希值,%表示求余运算。
请参照图1,本发明的实施例一为:
本发明提供了一种防止黑客攻击的区块链异构共识方法,包括以下步骤:
通过预设的公式,将新增的节点分配至相应的分片中;
所述公式为x=sToi(addi)%n,其中所述i为节点的序号,x为节点i待分配的分片的序号,addi表示节点i的地址,sToi表示地址序列转变成整数的函数;具体的,将地址序列转变成整数的函数利用C标准库中的strtol函数。
预设共识算法集合Co={Co1,Co2,…,Com}(即预设m个共识算法),其中Cok,k=1,2,...,m,表示排序号为k的共识算法;
若区块链中产生新的分片,则新的分片采用的共识算法的排序号为
Figure BDA0002928634470000083
其中,所述g表示新的分片的序号,所述/>
Figure BDA0002928634470000084
表示新的分片决策节点对应的哈希值,%表示求余运算。
在每一轮共识过程中,筛选出唯一节点作为区块的决策节点;
其中,在每一轮共识过程中,筛选出唯一节点作为区块的决策节点,具体为:
在每一轮共识过程中,通过预设的第一公式计算每一个待选节点对应的竞争值,得到多个竞争值;所述每一个待选节点为每一个分片对应的决策节点;从所述多个竞争值中筛选出满足预设条件的竞争值(即筛选出小于预设竞争值阈值的竞争值,这个阈值的选取和参与竞争的待选节点数量和需要选取出来的待选节点的数量有关,可以根据实际需求自己设定),得到多个第一竞争值;
公布每一个第一竞争值对应的节点及该节点用于数据解密的公钥;
在预设时间内,获取所有公布的第一竞争值中的最小值,得到第一最小竞争值;
筛选所述第一最小竞争值对应的节点作为区块的决策节点。
其中,所述第一公式具体为:
Figure BDA0002928634470000091
其中,所述Ci为第i个待选节点的竞争值,所述ski表示该待选节点上用于加密数据的私钥,r表示当前共识过程的轮数,Qr表示第r轮共识过程对应的随机数,
Figure BDA0002928634470000092
表示利用私钥ski对r和Qr进行数据签名,H1为哈希函数,即对签名后的数据进行哈希运算;
通过预设的第一公式计算每一个待选节点对应的竞争值,得到多个竞争值,具体为:
通过第一公式计算得到每一个待选节点对应的哈希值,将哈希值转换为二制数,得到多个二进制数,所述多个二进制数即为所述多个竞争值,每一个竞争值与一待选节点对应。
通过所述决策节点接收每一分片发送的子消息块,并分别对每一分片发送的子消息块进行验证;
其中,通过所述决策节点接收每一分片发送的子消息块,并分别对每一分片发送的子消息块进行验证,具体为:
通过所述区块的决策节点接收每一分片发送的子消息块;子消息块是在每一个分片中产生的区块,和普通区块链上的区块的概念一样,区块中包含多个消息;
控制区块的决策节点通过每一分片的决策节点的公钥,验证对应分片决策节点发送的子消息块签名信息的正确性;所述签名信息为该分片的决策节点通过该决策节点上存储的私钥进行签名所得到的信息。
对验证通过的子消息块进行合并,得到合并后的消息块;
通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点;
其中,通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点,具体为:
控制所述区块的决策节点通过实用拜占庭容错算法将所述消息块分别发送至每一分片的决策节点。
若分片的决策节点接收超过预设数目阈值的分片决策节点回发的第一签名信息,则判断所述消息块验证通过;验证通过后,则将该消息块广播至网络;所述第一签名信息为分片的决策节点对消息块验证通过后(验证就是对消息块中包含的签名数据进行验证,以及对消息块中消息格式进行验证),回发的验证通过对应的签名信息;其中所述数目阈值为所有分片决策节点的数目与2/3的乘积。
请参照图2,本发明的实施例二为:
本发明提供了一种防止黑客攻击的区块链异构共识终端,包括存储器1、处理器2及存储在存储器1上并可在处理器2上运行的计算机程序,所述处理器2执行所述程序时实现实施例一的所有步骤。
综上所述,本发明提供了一种防止黑客攻击的区块链异构共识方法及终端,在每一轮共识过程中,均选出唯一节点作为区块的决策节点,通过决策节点对每一分片的决策节点发送的子消息块进行验证,并对验证通过的子消息块进行合并,得到合并后的消息块,并将消息块分别发送至每一分片对应的决策节点进行验证,当验证通过的数目大于预设数目阈值时,表示该消息块验证通过,可广播该消息块;本发明通过上述方法,在每一轮共识过程中均选出区块新的决策节点,使得攻击者无法判断决策的“领导者”,也就无法控制整个共识过程,同时每个分片所采用的共识算法不同,攻击者无法通过一种攻击策略控制所有的分片,也就无法控制整个共识过程,攻击者想要控制共识过程必须控制系统的绝大多数节点,这无疑增大了攻击的难度,从而解决了黑客攻击区块链中某一分片的节点,而引起区块决策发生重大失误的问题,提高了区块链的安全性。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种防止黑客攻击的区块链异构共识方法,其特征在于,包括以下步骤:
S1:在每一轮共识过程中,根据预设的第一公式筛选出第一最小竞争值对应的唯一节点作为区块的决策节点,所述区块由多个分片的子消息块组成;
S2:通过所述区块的决策节点接收每一分片的决策节点发送的子消息块,并分别对每一分片的决策节点发送的子消息块进行验证;
S3:对验证通过的子消息块进行合并,得到合并后的消息块;
S4:通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点;
S5:若接收超过预设数目阈值的分片决策节点回发的第一签名信息,则判断所述消息块验证通过;所述第一签名信息为分片的决策节点对消息块验证通过后,回发的验证通过对应的签名信息。
2.根据权利要求1所述的一种防止黑客攻击的区块链异构共识方法,其特征在于,所述S1具体为:
在每一轮共识过程中,通过预设的第一公式计算每一个待选节点对应的竞争值,得到多个竞争值;所述每一个待选节点为每一个分片对应的决策节点;
从所述多个竞争值中筛选出满足预设条件的竞争值,得到多个第一竞争值;
公布每一个第一竞争值对应的节点及该节点用于数据解密的公钥;
在预设时间内,获取所有公布的第一竞争值中的最小值,得到第一最小竞争值;
筛选所述第一最小竞争值对应的节点作为区块的决策节点。
3.根据权利要求2所述的一种防止黑客攻击的区块链异构共识方法,其特征在于,所述第一公式具体为:
Figure FDA0004034633850000011
其中,所述Ci为第i个待选节点的竞争值,所述ski表示该待选节点上用于加密数据的私钥,r表示当前共识过程的轮数,Qr表示第r轮共识过程对应的随机数,
Figure FDA0004034633850000012
表示利用私钥ski对r和Qr进行数据签名,H1为哈希函数。
4.根据权利要求2所述的一种防止黑客攻击的区块链异构共识方法,其特征在于,所述S2中所述对每一分片的决策节点发送的子消息块进行验证具体为:
通过每一分片的决策节点的公钥,验证对应分片决策节点发送的子消息块签名信息的正确性;所述签名信息为该分片的决策节点通过该决策节点上存储的私钥进行签名所得到的信息。
5.根据权利要求1所述的一种防止黑客攻击的区块链异构共识方法,其特征在于,所述S4具体为:
控制所述区块的决策节点通过实用拜占庭容错算法将所述消息块分别发送至每一分片的决策节点。
6.根据权利要求1所述的一种防止黑客攻击的区块链异构共识方法,其特征在于,还包括:
通过预设的第二公式,将新增的节点分配至相应的分片中;
所述第二公式为x=sToi(addi)%n,其中所述i为节点的序号,x为节点i待分配的分片的序号,addi表示节点i的地址,sToi表示地址序列转变成整数的函数。
7.根据权利要求1所述的一种防止黑客攻击的区块链异构共识方法,其特征在于,还包括:
预设共识算法集合Co={Co1,Co2,…,Com},其中Cok,k=1,2,...,m,表示排序号为k的共识算法;
若区块链中产生新的分片,则新的分片采用的共识算法的排序号为
Figure FDA0004034633850000021
其中,所述g表示新的分片的序号,所述
Figure FDA0004034633850000022
表示新的分片决策节点对应的哈希值,%表示求余运算。
8.一种防止黑客攻击的区块链异构共识终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
S1:在每一轮共识过程中,根据预设的第一公式筛选出第一最小竞争值对应的唯一节点作为区块的决策节点,所述区块由多个分片的子消息块组成;
S2:通过所述区块的决策节点接收每一分片的决策节点发送的子消息块,并分别对每一分片的决策节点发送的子消息块进行验证;
S3:对验证通过的子消息块进行合并,得到合并后的消息块;
S4:通过所述区块的决策节点将所述消息块分别发送至每一分片的决策节点;
S5:若接收超过预设数目阈值的分片决策节点回发的第一签名信息,则判断所述消息块验证通过;所述第一签名信息为分片的决策节点对消息块验证通过后,回发的验证通过对应的签名信息。
9.根据权利要求8所述的一种防止黑客攻击的区块链异构共识终端,其特征在于,所述S1具体为:
在每一轮共识过程中,通过预设的第一公式计算每一个待选节点对应的竞争值,得到多个竞争值;所述每一个待选节点为每一个分片对应的决策节点;
从所述多个竞争值中筛选出满足预设条件的竞争值,得到多个第一竞争值;
公布每一个第一竞争值对应的节点及该节点用于数据解密的公钥;
在预设时间内,获取所有公布的第一竞争值中的最小值,得到第一最小竞争值;
筛选所述第一最小竞争值对应的节点作为区块的决策节点。
10.根据权利要求9所述的一种防止黑客攻击的区块链异构共识终端,其特征在于,所述第一公式具体为:
Figure FDA0004034633850000031
其中,所述Ci为第i个待选节点的竞争值,所述ski表示该待选节点上用于加密数据的私钥,r表示当前共识过程的轮数,Qr表示第r轮共识过程对应的随机数,
Figure FDA0004034633850000032
表示利用私钥ski对r和Qr进行数据签名,H1为哈希函数。
CN202110141138.3A 2018-09-27 2018-09-27 一种防止黑客攻击的区块链异构共识方法及终端 Active CN112968884B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110141138.3A CN112968884B (zh) 2018-09-27 2018-09-27 一种防止黑客攻击的区块链异构共识方法及终端

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811128351.5A CN109379343B (zh) 2018-09-27 2018-09-27 一种区块链的异构共识方法及终端
CN202110141138.3A CN112968884B (zh) 2018-09-27 2018-09-27 一种防止黑客攻击的区块链异构共识方法及终端

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201811128351.5A Division CN109379343B (zh) 2018-09-27 2018-09-27 一种区块链的异构共识方法及终端

Publications (2)

Publication Number Publication Date
CN112968884A CN112968884A (zh) 2021-06-15
CN112968884B true CN112968884B (zh) 2023-03-24

Family

ID=65402778

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201811128351.5A Active CN109379343B (zh) 2018-09-27 2018-09-27 一种区块链的异构共识方法及终端
CN202110141137.9A Active CN112968883B (zh) 2018-09-27 2018-09-27 一种安全性高的区块链异构共识方法及终端
CN202110141138.3A Active CN112968884B (zh) 2018-09-27 2018-09-27 一种防止黑客攻击的区块链异构共识方法及终端

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN201811128351.5A Active CN109379343B (zh) 2018-09-27 2018-09-27 一种区块链的异构共识方法及终端
CN202110141137.9A Active CN112968883B (zh) 2018-09-27 2018-09-27 一种安全性高的区块链异构共识方法及终端

Country Status (1)

Country Link
CN (3) CN109379343B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110619020B (zh) * 2019-09-02 2022-04-01 杭州趣链科技有限公司 一种基于机器学习的区块链分片方法
CN111478878B (zh) * 2020-02-28 2022-10-21 新华三技术有限公司 一种防攻击方法及装置
CN112202775B (zh) * 2020-09-29 2021-06-22 北京理工大学 一种有向无环图结构区块链的共识机制架构及其方法
CN112990568B (zh) * 2021-03-11 2022-09-20 华北电力大学 一种综合能源智能交易场景下的区块链共识机制构建方法
CN113297310B (zh) * 2021-06-15 2023-03-21 广东工业大学 一种物联网中区块链分片验证者选取的方法
CN113411407B (zh) * 2021-06-25 2022-03-18 北京邮电大学 基于区块链技术的分片式车联网系统
CN113779642B (zh) * 2021-09-02 2024-05-28 国网北京市电力公司 数据处理方法及其装置、系统、电子设备

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3423999A1 (en) * 2016-03-03 2019-01-09 NEC Laboratories Europe GmbH Method for managing data in a network of nodes
CN107438003B (zh) * 2016-05-27 2022-08-09 索尼公司 电子设备、用于电子设备的方法和信息处理系统
CN106656974B (zh) * 2016-10-17 2019-07-16 江苏通付盾科技有限公司 区块链的分组共识方法及系统
CN106789908B (zh) * 2016-11-23 2019-09-06 江苏通付盾科技有限公司 区块链中区块共识建立方法及系统
CN106780032A (zh) * 2016-12-16 2017-05-31 杭州云象网络技术有限公司 一种多链场景下的区块链链间资产转移方法
US20180220278A1 (en) * 2017-02-01 2018-08-02 BriefTrace Ltd. System and method for securing and verifying information from transportation monitors
CN107040585B (zh) * 2017-02-22 2020-06-19 创新先进技术有限公司 一种业务校验的方法及装置
CN107341702B (zh) * 2017-03-08 2020-06-23 创新先进技术有限公司 一种业务处理的方法及装置
CN108241968B (zh) * 2017-03-26 2020-08-14 杭州复杂美科技有限公司 前置机参与区块链共识的方法
CN107276765B (zh) * 2017-07-04 2020-05-05 中国联合网络通信集团有限公司 区块链中共识的处理方法及装置
CN107678865A (zh) * 2017-09-20 2018-02-09 中国银行股份有限公司 基于交易分组的区块链的验证方法以及系统
CN107909369A (zh) * 2017-10-13 2018-04-13 布比(北京)网络技术有限公司 基于跨链交易的共识方法、装置和存储介质
CN110971414B (zh) * 2017-11-10 2021-05-04 财付通支付科技有限公司 生成签名的方法、装置、终端及服务器
CN108182635A (zh) * 2017-12-18 2018-06-19 深圳前海微众银行股份有限公司 区块链共识方法、系统和计算机可读存储介质
CN108320155B (zh) * 2017-12-21 2020-09-11 中国科学院信息工程研究所 一种实现区块链共识机制的方法
CN108521328B (zh) * 2018-03-26 2020-08-28 杭州秘猿科技有限公司 一种区块链共识方法、装置及电子设备

Also Published As

Publication number Publication date
CN112968883B (zh) 2023-04-07
CN112968883A (zh) 2021-06-15
CN109379343B (zh) 2020-12-18
CN109379343A (zh) 2019-02-22
CN112968884A (zh) 2021-06-15

Similar Documents

Publication Publication Date Title
CN112968884B (zh) 一种防止黑客攻击的区块链异构共识方法及终端
JP6726367B2 (ja) 分散システムにおける1次ノードの変更を行うこと
JP6732321B2 (ja) 分散システムにおけるネットワークノードに対する回復処理の実行
US10944624B2 (en) Changing a master node in a blockchain system
EP4002181A1 (en) A consensus method and framework for a blockchain system
JP2020511807A (ja) 分散システムにおけるネットワークノード間のコンセンサスを実現すること
Au et al. PERM: Practical reputation-based blacklisting without TTPs
CN109743182B (zh) 基于区块链的智能合约核准方法及系统
JP2023501152A (ja) 許可型ブロックチェーンのためのランダムなノード選択
CN111815321A (zh) 交易提案的处理方法、装置、系统、存储介质和电子装置
CN109981690B (zh) 一种基于区块链智能合约的防篡改定时数据保密传输方法
US20230308287A1 (en) Threshold signatures
CN110505067A (zh) 区块链的处理方法、装置、设备及可读存储介质
CN110719167B (zh) 一种基于区块链的带时效性的签密方法
CN109274674B (zh) 一种具有高安全性的区块链异构共识方法及终端
CN113988831A (zh) 一种基于联盟链的转账方法
JP6911231B1 (ja) デジタル資産データパケットの信頼性検証システム
CN112039837B (zh) 一种基于区块链和秘密共享的电子证据保全方法
CN112073173A (zh) 一种面向区块链pki的非法签名者确定系统
CN111353780A (zh) 授权验证方法、装置及存储介质
CN114362930A (zh) 区块链共识方法及计算机可读存储介质
NS et al. Security Attacks and Key Challenges in Blockchain Technology: A survey
CN113542317B (zh) 使用中本聪共识实现文件复制证明方法、设备及存储介质
Zhang et al. Improvements of blockchain’s block broadcasting: An incentive approach
CN115842639A (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