CN111598567B - 防止区块链大算力攻击的方法、装置及存储介质 - Google Patents

防止区块链大算力攻击的方法、装置及存储介质 Download PDF

Info

Publication number
CN111598567B
CN111598567B CN202010379382.9A CN202010379382A CN111598567B CN 111598567 B CN111598567 B CN 111598567B CN 202010379382 A CN202010379382 A CN 202010379382A CN 111598567 B CN111598567 B CN 111598567B
Authority
CN
China
Prior art keywords
block
blockchain
new
backbone
chain
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
CN202010379382.9A
Other languages
English (en)
Other versions
CN111598567A (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.)
Shenzhen Dousnail Technology Co ltd
Original Assignee
Shenzhen Chuangke Blockchain 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 Shenzhen Chuangke Blockchain Technology Co ltd filed Critical Shenzhen Chuangke Blockchain Technology Co ltd
Priority to CN202010379382.9A priority Critical patent/CN111598567B/zh
Publication of CN111598567A publication Critical patent/CN111598567A/zh
Application granted granted Critical
Publication of CN111598567B publication Critical patent/CN111598567B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Databases & Information Systems (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种防止区块链大算力攻击的方法,所述方法包括:设定多条区块链的绑定结网关系;在所述多条区块链中选择一条区块链作为基准区块链;当所述基准区块链的新区块出块并向全网络发出新区块出块广播时,所述基准区块链同时搜寻其他区块链的新区块出块广播;相应得到新出块区块的区块哈希;将所述区块哈希作为骨干区块链的业务并生成新区块并出块;任一所述多条区块链根据收到的所述骨干区块链的新区块出块广播,在该区块链的新出块区块的区块头中加入所述骨干区块链的区块哈希或空值,以构建成区块链网。同时,本发明还提供一种防止区块链大算力攻击的装置及存储介质。本发明提供的技术方案,有效避免区块链网络遭受大算力攻击。

Description

防止区块链大算力攻击的方法、装置及存储介质
技术领域
本发明涉及防止区块链大算力攻击安全技术领域,尤其涉及一种防止区块链大算力攻击的方法、装置及存储介质。
背景技术
请结合参见图1、图2和图3,区块链的51%大算力攻击问题引起了人们的高度关注,图1至图3显示的以数字货币网络为例的51%大算力攻击过程,如图1所示的正常交易过程,假设用户A付给用户B10个数字货币,以换得B的等值商品的一笔交易打包到第100号区块,通常情况下,当后面再增加5个区块后,在第6个区块确认该交易;如果用户A掌握了51%大算力,用户A付给用户B10个数字货币,随后就发起了一次给自己10个数字货币的交易,并且用户A对这笔交易选择不广播,而是对区块链主链进行“分叉”,即生成另外一个第100号区块,并在其中打包第二笔交易;这样就产生了两条链,把第一笔交易所在链称为C1,第二笔交易所在链称为C2。其他用户继续在C1上打包数据,而A自己在C2上生成新的区块,由于A具有超51%的大算力资源,有更强的计算能力,通过生成新区块,很快生成的C2的区块数就会超过C1,如图3所示,C2在区块N+1时超过了区块链C1,其中N为自然数,这时,按照区块链最长链优先原则,其他用户会自动转到C2上生成新区块,使C2变成主链;C1会被抛弃,打包在C1上的所有交易(包括第一笔A支付给B10数字货币的交易),都变为无效。结果A不花一分钱拥有了属于B的商品。这就是常见的“51%大算力攻击”。
近年来,区块链网络受到大算力攻击的新闻时有报道,往往使被攻击者遭受严重的损失;特别是,相比于一些长期安全稳定运行的区块链网络,如以太坊数字货币网络,新构建的区块链网络更显得脆弱,容易遭到攻击,导致新构建的区块链网络因失去信任而被废除;而且,随着量子计算技术的理论和实践的不断完善,量子计算在未来可能实现超大计算力,对区块链的安全已构成潜在的隐患;所以,如何防止区块链大算力攻击这个问题受到越来越多的重视。
发明内容
本发明提供一种防止区块链大算力攻击的方法、装置及存储介质,旨在解决防止区块链大算力攻击的问题,实现区块链的安全稳定运行。
本发明提供一种防止区块链大算力攻击的方法,所述方法包括:
步骤S10:设定多条区块链的绑定结网关系;
步骤S20:在所述多条区块链中选择一条区块链作为基准区块链;
步骤S30:当所述基准区块链的新区块出块并向全网络发出新区块出块广播时,所述基准区块链同时搜寻其他所述多条区块链的新区块出块广播;
步骤S40:当搜寻所述新区块出块广播时,相应得到新出块区块的区块哈希;
步骤S50:将所述基准区块链的新区块哈希和得到的所述新出块区块的区块哈希作为骨干区块链的业务并生成所述骨干区块链的新区块;
步骤S60:所述骨干区块链的新区块出块并向全网络发出新区块出块广播;
步骤S70:任一所述多条区块链根据收到的所述骨干区块链的新区块出块广播,在该区块链的新出块区块的区块头中加入所述骨干区块链的区块哈希或空值;
步骤S80:随着所述多条区块链的区块和所述骨干区块链的区块不断出块,得到用以防止区块链大算力攻击的区块链网。
进一步地,其特征在于,基于适当出块时间从所述多条区块链中选择所述基准区块链。
进一步地,所述适当出块时间为所述多条区块链中最小出块时间与最大出块时间之间的出块时间;
进一步地,所述适当出块时间越短,所述区块链网越致密。
进一步地,所述骨干区块链的新区块结构包括区块头和区块体,所述区块头至少包括本区块哈希、上一区块哈希、随机数、根哈希和时间戳,所述区块体的业务至少包括收到的所述多条区块链的新出块区块的区块哈希。
进一步地,所述步骤S70包括:
步骤S710:任一所述多条区块链收到的所述骨干区块链的新区块出块广播;其中,所述任一所述k条区块链为区块链Ci;
步骤S720:根据收到所述骨干区块链的新区块出块广播的间隔时间进行所述区块链Ci新出块数量判断;当在所述间隔时间所述区块链Ci的新出块区块数量为大于1个时,执行步骤S730;当在所述间隔时间所述区块链Ci的新出块区块数量为等于1个时,执行步骤S740;当在所述间隔时间所述区块链Ci的新出块区块数量为小于1个时,执行步骤S750;
步骤S730:在所述间隔时间内,所述区块链Ci的最先出块区块的区块头中加入所述骨干区块链的区块哈希,后面区块的区块头中加入空值;
步骤S740:在所述间隔时间内,所述区块链Ci的新出块区块的区块头中加入所述骨干区块链的区块哈希;
步骤S750:在所述间隔时间内,所述区块链Ci的新出块区块的区块头中加入在所述间隔时间内的未被加入过的最先的所述骨干区块链的区块哈希。
进一步地,所述区块链的新区块以最长连接链优先原则确认进入各区块链的主链内;所述最长连接链优先原则是指在一定时间内连接所述区块链网中最多区块链的区块链优先。
为实现上述目的,本发明还提供了一种防止区块链大算力攻击的装置,所述防止区块链大算力攻击的装置包括存储器模组和处理器模组,所述存储器模组上存储有可在所述处理器模组上运行的防止区块链大算力攻击的程序,所述防止区块链大算力攻击的程序被所述处理器模组执行时实现上述防止区块链大算力攻击的方法的步骤。
此外,为实现上述目的,本发明还提供了一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质上存储有防止区块链大算力攻击的程序,所述防止区块链大算力攻击的程序可被一个或者多个处理器模组执行,以实现上述防止区块链大算力攻击的方法的步骤。
本发明提供一种防止区块链大算力攻击的方法、装置及存储介质,通过新构建骨干区块链实现多条区块链相互绑定的区块链网,增加了大算力攻击的难度,从而有效避免区块链网络遭受大算力攻击,实现区块链的安全稳定运行。
附图说明
图1为通常情况下区块链产生正常交易的过程示意图;
图2为大算力攻击时产生“分叉”的过程示意图;
图3为大算力攻击时产生的链C2取代链C1的过程示意图;
图4为本发明一实施例提供的防止区块链大算力攻击的方法流程示意图;
图5为本发明一实施例提供的基准区块链的新区块出块时向全网络发出新区块出块广播的示意图;
图6为本发明一实施例提供的骨干区块链的区块结构示意图;
图7为本发明一实施例提供的骨干区块链的生成示意图;
图8为图4中的步骤S70的流程示意图;
图9为本发明一实施例提供的任一所述k条区块链的区块结构示意图;
图10为本发明一实施例提供的区块链网的结构示意图。
图11为本发明一实施例提供的防止区块链大算力攻击的装置内部结构示意图;
图12为本发明一实施例提供的防止区块链大算力攻击的装置中的防止区块链大算力攻击的程序模块示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图4,图4为本发明一实施例提供的防止区块链大算力攻击的方法流程示意图,该方法包括:
步骤S10:设定多条区块链的绑定结网关系;
步骤S20:在所述多条区块链中选择一条区块链作为基准区块链;
步骤S30:当所述基准区块链的新区块出块并向全网络发出新区块出块广播时,所述基准区块链同时搜寻其他所述多条区块链的新区块出块广播;
步骤S40:当搜寻所述新区块出块广播时,相应得到新出块区块的区块哈希;
步骤S50:将所述基准区块链的新区块哈希和得到的所述新出块区块的区块哈希作为骨干区块链的业务并生成所述骨干区块链的新区块;
步骤S60:所述骨干区块链的新区块出块并向全网络发出新区块出块广播;
步骤S70:任一所述多条区块链根据收到的所述骨干区块链的新区块出块广播,在该区块链的新出块区块的区块头中加入所述骨干区块链的区块哈希或空值;
步骤S80:随着所述多条区块链的区块和所述骨干区块链的区块不断出块,得到用以防止区块链大算力攻击的区块链网。
具体地,设定k条区块链的绑定结网关系,在所述k条区块链中选择一条具有适当出块时间的区块链作为基准区块链;所述适当出块时间为所述多条区块链中最小出块时间与最大出块时间之间的出块时间;设所述基准区块链为C1,具体在一实施例中,所述适当出块时间大致在1分钟左右,选择的适当出块时间太长,例如数字货币网络中大约10分钟出一个新块,会导致构建的区块链网过于疏松;选择的适当出块时间太短,则构建的区块链网过于致密,现实条件下大算力远达不到攻击过于致密区块链网的能力,因此没有必要选择过短的适当出块时间,同时,构建的区块链网越致密,导致的计算资源占用越多而造成浪费。
请参见图5,基准区块链C1生成新区块并在新区块出块时向全网络发出新区块出块广播,在每个区块出块时均广播一次,如图5所示,基准区块链C1依次生成区块B1、B2、B3、B4、B5、B6、……。当所述基准区块链C1的新区块出块并向全网络发出新区块出块广播时,所述基准区块链C1同时搜寻所述k条区块链中的其他区块链的新区块出块广播。具体地,所述k条区块链中的出块时间并不相同,由于基准区块链C1的出块时间为选择的适当出块时间,即所述基准区块链C1的出块时间为所述k条区块链中最小出块时间与最大出块时间之间的出块时间;因此有的区块链由于区块生成时间较短,可能在此时已经有几个新的区块出块广播出来;而有的区块链由于区块生成时间较长,还没有新的区块出块广播。假设此时搜寻到有k-t条区块链的新出块广播;其中,k、t为自然数,且t<k;则所述基准区块链C1相应得到k-t个新出块区块的区块哈希,设定所述基准区块链C1的区块B1的区块哈希为Hb1,所述k-t个新出块区块的区块哈希分别为:Hb2、Hb3、……、Hb(k-t+1),则将区块哈希:Hb1、Hb2、Hb3、……、Hb(k-t+1)作为新构建的骨干区块链Cnew中的区块的业务(trasaction),按照区块生成方法,经过区块链探矿计算,将所述骨干区块链Cnew的新区块Bnew1出块,所述区块Bnew1的区块哈希为Hnew1。
请参见图6,所述区块Bnew1的区块结构如图6所示,所述骨干区块链的新区块结构包括区块头和区块体,所述区块头至少包括本区块哈希、上一区块哈希、随机数、根哈希和时间戳,所述区块体的业务至少包括收到的所述多条区块链的新出块区块的区块哈希。所述骨干区块链的新区块Bnew1出块并向全网络发出新区块Bnew1的出块广播。
请参阅图7,具体在一实施例中,假设有三条主链区块链C1、C2和C3,其中,C1为基准区块链,区块链C2的出块时间最短,区块链C3的出块时间最长,如图7所示。当C1的区块Bc11出块后,C2的Bc23区块刚出块,而C3由于区块出块时间较长,还没有新的区块出块,这时,C1的Bc11区块哈希和C2的Bc23区块哈希调入到骨干区块链Cnew中,参与生成骨干区块链Cnew的区块Bnew1;当C1的Bc12出块后,C2的Bc26区块刚出块,而C3的Bc31区块刚出块,这时,C1的Bc12区块哈希、C2的Bc26区块哈希和C3的Bc31区块哈希,调入骨干链Cnew中,参与生成骨干链Cnew的区块Bnew2;随着时间的推进,生成骨干区块链Cnew的连续的区块Bnew1、Bnew2、Bnew3、Bnew4、Bnew5、Bnew6、……;所述骨干区块链Cnew的新区块依次出块并向全网络发出新区块出块广播。
请参见图8,任一所述k条区块链根据收到的所述骨干区块链的新区块出块广播,在该区块链的新出块区块的区块头中加入所述骨干区块链的区块哈希或空值,具体地,所述步骤S70包括:
步骤S710:任一所述k条区块链收到的所述骨干区块链的新区块出块广播;其中,所述任一所述k条区块链为区块链Ci;
步骤S720:根据收到所述骨干区块链的新区块出块广播的间隔时间进行所述区块链Ci新出块数量判断;当在所述间隔时间所述区块链Ci的新出块区块数量为大于1个时,执行步骤S730;当在所述间隔时间所述区块链Ci的新出块区块数量为等于1个时,执行步骤S740;当在所述间隔时间所述区块链Ci的新出块区块数量为小于1个时,执行步骤S750;
步骤S730:在所述间隔时间内,所述区块链Ci的最先出块区块的区块头中加入所述骨干区块链的区块哈希,后面区块的区块头中加入空值;
步骤S740:在所述间隔时间内,所述区块链Ci的新出块区块的区块头中加入所述骨干区块链的区块哈希;
步骤S750:在所述间隔时间内,所述区块链Ci的新出块区块的区块头中加入在所述间隔时间内的未被加入过的最先的所述骨干区块链的区块哈希。
请结合参阅图9和图10,在所述区块链Ci的新出块区块的区块头中加入所述骨干区块链的区块哈希Hcnew或者空值,图9为本发明一实施例提供的任一所述k条区块链的区块结构示意图;具体在本实施例中,基准区块链C1、区块链C2和区块链C3收到骨干区块链Cnew的出块广播,其中,基准区块链C1的出块时间与骨干区块链Cnew的出块时间相同,因此,基准区块链C1的新出块区块的区块头中加入所述骨干区块链Cnew的最新出块的区块哈希。区块链C2的出块时间小于骨干区块链Cnew的出块时间,即在所述骨干区块链Cnew的新区块出块广播的间隔时间,所述区块链C2的新出块区块数量为大于1个,所述区块链C2的最先出块区块的区块头中加入所述骨干区块链Cnew的最新出块的区块哈希,其后区块的区块头中加入空值。区块链C3的出块时间大于骨干区块链Cnew的出块时间,即在所述骨干区块链Cnew的新区块出块广播的间隔时间,所述区块链C3的新出块区块数量为小于1个,所述区块链C3的新出块区块的区块头中加入在所述间隔时间内的未被加入过骨干区块链Cnew的最先出块区块的区块哈希。
随着时间的推进,所述k条区块链有序生成一个个区块,而新构建的骨干区块链也生成一个个按时间顺序相连的区块链,所述骨干区块链与所述k条区块链共同构建相互绑定的区块链网。选择的所述适当出块时间越短,所述区块链网越致密,对于大算力攻击要攻破所述区块链网也会越困难。如图10所示,骨干区块链Cnew在基准区块链C1的区块Bc11出块后生成区块Bcnew1,所述区块Bcnew1中加入区块Bc11和区块Bc23的区块哈希;所述区块Bc12的区块头中加入区块Bcnew1的哈希,所述区块Bc24的区块头中加入区块Bcnew1的哈希,而区块Bc25和Bc26的区块头中加入空值;骨干区块链Cnew在基准区块链C1的区块Bc12出块后生成区块Bcnew2,所述区块Bc12的区块头中加入区块Bcnew2的哈希,所述区块Bcnew2中加入区块Bc12、区块Bc26和Bc31的区块哈希;所述区块Bc27的区块头中加入区块Bcnew2的哈希,而区块Bc28和Bc29的区块头中加入空值,区块Bc31的区块头中加入Bcnew1的区块哈希;依次类推,随着时间的推进,骨干区块链Cnew生成一个个按时间顺序相连的区块,并与基准区块链C1、区块链C2和区块链C3相互绑定,构建成区块链网,对于大算力攻击来说,攻击一个多条区块链相互绑定的区块链网相比于攻击一个单一的区块链,对计算能力要求大大提高,增加了大算力攻击的难度,在实际的计算上来说,大算力几乎不可能成功实现对区块链网的攻击,从而有效避免区块链网络遭受大算力攻击,实现区块链的安全稳定运行。
在传统的单区块链技术中,对于单条区块链均有“最长链优先”原则,即在一定时间内连接最多的区块被优先确认进入主链内;而在多条区块链构建成区块链网后,所述区块链的新区块以最长连接链优先原则确认进入各区块链的主链内;所述最长连接链优先原则是指在一定时间内连接所述区块链网中最多区块链的区块链优先。这样,大算力要攻破多条区块链结成的区块链网,难度大幅度提高,几乎是不可能的,从而有效避免区块链网络遭受大算力攻击,实现区块链的安全稳定运行。
此外,本发明还提供一种防止区块链大算力攻击的装置。
请参阅图11,是本发明实施例提供的一种防止区块链大算力攻击的装置的内部结构示意图,所述防止区块链大算力攻击的装置至少包括存储器模组11、处理器模组12、通信总线13,以及网络接口14。优选地,所述防止区块链大算力攻击的装置包括在计算机网络上存在的执行防止区块链大算力攻击的方法的程序的一组或多台分布式计算设备或云计算设备。
其中,存储器模组11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器模组(例如,SD或DX存储器模组等)、磁性存储器模组、磁盘、光盘等。存储器模组11在一些实施例中可以是防止区块链大算力攻击的装置的内部存储单元,例如该防止区块链大算力攻击的装置的硬盘。存储器模组11在另一些实施例中也可以是防止区块链大算力攻击的装置的外部存储设备,例如防止区块链大算力攻击的装置上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器模组11还可以既包括防止区块链大算力攻击的装置的内部存储单元也包括外部存储设备,优选地,存储器模组11还可以是在计算机网络中存在的网络存储装置或云存储装置。存储器模组11不仅可以用于存储安装于防止区块链大算力攻击的装置的应用软件及各类数据,例如防止区块链大算力攻击的程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器模组12在一些实施例中可以是中央处理器模组(Central ProcessingUnit,CPU)、控制器、微控制器、微处理器模组或其他数据处理芯片,或者其他用于运行存储器模组11中存储的程序代码或处理数据的任何计算装置,优选地,处理器模组11还可以是在计算机网络中存在的一个计算机处理群组或者云计算装置,所述运行的程序代码可以是执行防止区块链大算力攻击的程序等。
通信总线13是用于实现这些组件之间的连接通信的任何通信装置。
网络接口14可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该防止区块链大算力攻击的装置与其他电子设备之间建立通信连接。
可选地,该防止区块链大算力攻击的装置还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在防止区块链大算力攻击的装置中处理的信息以及用于显示可视化的用户界面。
图11仅示出了具有组件11-14以及防止区块链大算力攻击的程序的防止区块链大算力攻击的装置,本领域技术人员可以理解的是,图11示出的结构并不构成对防止区块链大算力攻击的装置的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置,或者是计算机网络中的一组或多台分布式计算设备或云计算设备。
在图11所示的防止区块链大算力攻击的装置实施例中,存储器模组11中存储有防止区块链大算力攻击的程序;处理器模组12执行存储器模组11中存储的防止区块链大算力攻击的程序时实现如下步骤:
步骤S10:设定多条区块链的绑定结网关系;
步骤S20:在所述多条区块链中选择一条区块链作为基准区块链;
步骤S30:当所述基准区块链的新区块出块并向全网络发出新区块出块广播时,所述基准区块链同时搜寻其他所述多条区块链的新区块出块广播;
步骤S40:当搜寻所述新区块出块广播时,相应得到新出块区块的区块哈希;
步骤S50:将所述基准区块链的新区块哈希和得到的所述新出块区块的区块哈希作为骨干区块链的业务并生成所述骨干区块链的新区块;
步骤S60:所述骨干区块链的新区块出块并向全网络发出新区块出块广播;
步骤S70:任一所述多条区块链根据收到的所述骨干区块链的新区块出块广播,在该区块链的新出块区块的区块头中加入所述骨干区块链的区块哈希或空值;
步骤S80:随着所述多条区块链的区块和所述骨干区块链的区块不断出块,得到用以防止区块链大算力攻击的区块链网。
参照图12所示,为本发明防止区块链大算力攻击的装置一实施例中的防止区块链大算力攻击的程序的程序模块示意图,该实施例中,防止区块链大算力攻击的程序可以被分割为设置模块10、广播模块20、搜集模块30和生成模块40,示例性地:
设置模块10,用于执行设定多条区块链的绑定结网关系的任务;
广播模块20,用于执行新出块区块向网络广播其区块信息的任务;
搜集模块30,用于执行搜寻其他区块链广播出的新出块区块的区块信息的任务;
生成模块40,用于执行对新区块的生成任务。
上述设置模块10、广播模块20、搜集模块30和生成模块40等程序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再赘述。
此外,本发明实施例还提出一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质上存储有防止区块链大算力攻击的程序,所述防止区块链大算力攻击的程序可被一个或多个处理器模组执行,以实现如下操作:
步骤S10:设定多条区块链的绑定结网关系;
步骤S20:在所述多条区块链中选择一条区块链作为基准区块链;
步骤S30:当所述基准区块链的新区块出块并向全网络发出新区块出块广播时,所述基准区块链同时搜寻其他所述多条区块链的新区块出块广播;
步骤S40:当搜寻所述新区块出块广播时,相应得到新出块区块的区块哈希;
步骤S50:将所述基准区块链的新区块哈希和得到的所述新出块区块的区块哈希作为骨干区块链的业务并生成所述骨干区块链的新区块;
步骤S60:所述骨干区块链的新区块出块并向全网络发出新区块出块广播;
步骤S70:任一所述多条区块链根据收到的所述骨干区块链的新区块出块广播,在该区块链的新出块区块的区块头中加入所述骨干区块链的区块哈希或空值;
步骤S80:随着所述多条区块链的区块和所述骨干区块链的区块不断出块,得到用以防止区块链大算力攻击的区块链网。
本发明的存储介质具体实施方式与上述防止区块链大算力攻击的方法和装置各实施例基本相同,在此不作累述。
与现有技术相比,本发明提供一种防止区块链大算力攻击的方法、装置及存储介质,通过新构建骨干区块链实现多条区块链相互绑定的区块链网,增加了大算力攻击的难度,从而有效避免区块链网络遭受大算力攻击,实现区块链的安全稳定运行。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用计算机网络硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得计算机网络的终端设备(可以是无人机、手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (8)

1.一种防止区块链大算力攻击的方法,其特征在于,所述方法包括:
步骤S10:设定多条区块链的绑定结网关系;
步骤S20:在所述多条区块链中选择一条区块链作为基准区块链;
步骤S30:当所述基准区块链的新区块出块并向全网络发出新区块出块广播时,所述基准区块链同时搜寻其他所述多条区块链的新区块出块广播;
步骤S40:当搜寻所述新区块出块广播时,相应得到新出块区块的区块哈希;
步骤S50:将所述基准区块链的新区块哈希和得到的所述新出块区块的区块哈希作为骨干区块链的业务并生成所述骨干区块链的新区块;
步骤S60:所述骨干区块链的新区块出块并向全网络发出新区块出块广播;
步骤S70:所述多条区块链中的任一区块链Ci收到所述骨干区块链的新区块出块广播;根据收到的所述骨干区块链的新区块出块广播的间隔时间对区块链Ci新出块数量进行判决,当新出块区块数量大于1个时,在所述间隔时间内,所述区块链Ci的最先出块区块的区块头中加入所述骨干区块链的区块哈希,后面区块的区块头中加入空值;当在所述间隔时间所述区块链Ci的新出块区块数量为等于1个时,在所述间隔时间内,所述区块链Ci的新出块区块的区块头中加入所述骨干区块链的区块哈希;当在所述间隔时间所述区块链Ci的新出块区块数量为小于1个时,在所述间隔时间内,所述区块链Ci的新出块区块的区块头中加入在所述间隔时间内的未被加入过的最先的所述骨干区块链的区块哈希;
步骤S80:随着所述多条区块链的区块和所述骨干区块链的区块不断出块,得到用以防止区块链大算力攻击的区块链网。
2.根据权利要求1所述的防止区块链大算力攻击的方法,其特征在于,基于适当出块时间从所述多条区块链中选择所述基准区块链。
3.根据权利要求2所述的防止区块链大算力攻击的方法,其特征在于,所述适当出块时间为所述多条区块链中最小出块时间与最大出块时间之间的出块时间。
4.根据权利要求2或3所述的防止区块链大算力攻击的方法,其特征在于,所述适当出块时间越短,所述区块链网越致密。
5.根据权利要求1所述的防止区块链大算力攻击的方法,其特征在于,所述骨干区块链的新区块结构包括区块头和区块体,所述区块头至少包括本区块哈希、上一区块哈希、随机数、根哈希和时间戳,所述区块体的业务至少包括收到的所述多条区块链的新出块区块的区块哈希。
6.根据权利要求1所述的防止区块链大算力攻击的方法,其特征在于,所述区块链的新区块以最长连接链优先原则确认进入各区块链的主链内;所述最长连接链优先原则是指在一定时间内连接所述区块链网中最多区块链的区块链优先。
7.一种防止区块链大算力攻击的装置,其特征在于,所述防止区块链大算力攻击的装置包括存储器模组和处理器模组,所述存储器模组上存储有可在所述处理器模组上运行的防止区块链大算力攻击的程序,所述防止区块链大算力攻击的程序被所述处理器模组执行时实现如权利要求1至6中任一项所述的防止区块链大算力攻击的方法的步骤。
8.一种存储介质,其特征在于,所述存储介质为计算机可读存储介质,所述存储介质上存储有防止区块链大算力攻击的程序,所述防止区块链大算力攻击的程序可被一个或者多个处理器模组执行,以实现如权利要求1至6中任一项所述的防止区块链大算力攻击的方法的步骤。
CN202010379382.9A 2020-05-07 2020-05-07 防止区块链大算力攻击的方法、装置及存储介质 Active CN111598567B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010379382.9A CN111598567B (zh) 2020-05-07 2020-05-07 防止区块链大算力攻击的方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010379382.9A CN111598567B (zh) 2020-05-07 2020-05-07 防止区块链大算力攻击的方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN111598567A CN111598567A (zh) 2020-08-28
CN111598567B true CN111598567B (zh) 2023-11-10

Family

ID=72182601

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010379382.9A Active CN111598567B (zh) 2020-05-07 2020-05-07 防止区块链大算力攻击的方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN111598567B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108985790A (zh) * 2018-06-25 2018-12-11 平安科技(深圳)有限公司 基于区块链的防伪方法、系统、计算机设备和存储介质
CN109389502A (zh) * 2018-10-08 2019-02-26 莆田市烛火信息技术有限公司 一种依附相关链算力的区块链的共识方法
CN109410055A (zh) * 2018-10-08 2019-03-01 莆田市烛火信息技术有限公司 一种基于算力寄生的区块链共识方法
KR20190077765A (ko) * 2017-12-26 2019-07-04 경희대학교 산학협력단 데이터를 블록체인을 이용하여 저장하는 방법 및 클라우드 시스템
WO2019140555A1 (zh) * 2018-01-16 2019-07-25 华为技术有限公司 一种区块链构建方法及区块链节点
CN110247753A (zh) * 2019-06-17 2019-09-17 北京艾摩瑞策科技有限公司 基于区块链节点网络的出块方法及装置
CN110263579A (zh) * 2018-11-16 2019-09-20 腾讯科技(深圳)有限公司 一种数据处理方法、系统及相关设备
CN110334154A (zh) * 2019-06-28 2019-10-15 阿里巴巴集团控股有限公司 基于区块链的分级存储方法及装置、电子设备
CN110474846A (zh) * 2019-09-18 2019-11-19 中国银联股份有限公司 一种区块链中区块传播的方法及装置
CN110580653A (zh) * 2019-08-14 2019-12-17 长沙理工大学 一种基于交易的区块链共识机制
KR20200013871A (ko) * 2018-07-31 2020-02-10 중앙대학교 산학협력단 PoP 기반 블록체인 보상 방법 및 장치

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200028691A1 (en) * 2018-07-20 2020-01-23 Honeywell International Inc. System and method for a blockchain based automated certifiable workflow process

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190077765A (ko) * 2017-12-26 2019-07-04 경희대학교 산학협력단 데이터를 블록체인을 이용하여 저장하는 방법 및 클라우드 시스템
WO2019140555A1 (zh) * 2018-01-16 2019-07-25 华为技术有限公司 一种区块链构建方法及区块链节点
CN108985790A (zh) * 2018-06-25 2018-12-11 平安科技(深圳)有限公司 基于区块链的防伪方法、系统、计算机设备和存储介质
KR20200013871A (ko) * 2018-07-31 2020-02-10 중앙대학교 산학협력단 PoP 기반 블록체인 보상 방법 및 장치
CN109389502A (zh) * 2018-10-08 2019-02-26 莆田市烛火信息技术有限公司 一种依附相关链算力的区块链的共识方法
CN109410055A (zh) * 2018-10-08 2019-03-01 莆田市烛火信息技术有限公司 一种基于算力寄生的区块链共识方法
CN110263579A (zh) * 2018-11-16 2019-09-20 腾讯科技(深圳)有限公司 一种数据处理方法、系统及相关设备
CN110247753A (zh) * 2019-06-17 2019-09-17 北京艾摩瑞策科技有限公司 基于区块链节点网络的出块方法及装置
CN110334154A (zh) * 2019-06-28 2019-10-15 阿里巴巴集团控股有限公司 基于区块链的分级存储方法及装置、电子设备
CN110580653A (zh) * 2019-08-14 2019-12-17 长沙理工大学 一种基于交易的区块链共识机制
CN110474846A (zh) * 2019-09-18 2019-11-19 中国银联股份有限公司 一种区块链中区块传播的方法及装置

Also Published As

Publication number Publication date
CN111598567A (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
CN111901350B (zh) 区块链系统、数据处理方法、计算机设备及存储介质
CN110245956B (zh) 一种基于异步多链的区块链交易确认方法及系统
CN103034805B (zh) 多引擎病毒查杀方法和装置
EP4053711A1 (en) Consensus method for blockchain, and consensus node, electronic device and storage medium
US11157487B2 (en) Trusted storage method and system based on directed acyclic graph structure
CN112039926B (zh) 一种区块链的双层链式架构实现方法
CN106412140A (zh) 短链接地址生成方法及系统
CN108270821A (zh) 用于区块链网络中的区块生成方法和网络节点
CN108400979A (zh) 应用于客户端和服务器的通信方法及电子设备
WO2023005163A1 (zh) 应用页面的加载方法、存储介质、及其相关设备
CN115208701B (zh) 数据包选择加密方法及装置
US11755540B2 (en) Chunking method and apparatus
CN111598567B (zh) 防止区块链大算力攻击的方法、装置及存储介质
CN111522876B (zh) 区块链共识方法、装置和计算机设备、及区块链节点
CN115617760B (zh) 一种大批量文件快速上传的方法
CN111538791B (zh) 区块链多重跨链相互保护方法、装置及存储介质
CN108830724B (zh) 一种资源数据包处理方法及终端设备
CN113794566B (zh) 一种可再投票的二元共识方法、装置、及存储介质
CN109379284B (zh) 路由执行方法、存储介质和终端设备
TWI784938B (zh) 電文清理方法及裝置
US20210026840A1 (en) Apparatus and Method for Determining A Finality of A Block Within A Blockchain
CN111639129A (zh) 交易处理方法、装置、电子设备及计算机可读存储介质
CN112261154A (zh) 一种电网数据文件存储方法、装置、电子设备
CN111274203A (zh) 一种话单存储系统及方法
CN110648140A (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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Jiang Ruicheng

Inventor before: Jiang Zhongqiang

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231222

Address after: 804, Xihaiwan Garden Single Apartment, No. 84 Nanshang Road, Nanshan District, Shenzhen, Guangdong Province, 518000

Patentee after: Jiang Ruicheng

Address before: 518000 unit F, 3rd floor, building r3-b, Virtual University Park, Keyuan Avenue, Yuehai street, Nanshan District, Shenzhen, Guangdong

Patentee before: Shenzhen Chuangke blockchain Technology Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20240717

Address after: 5th Floor, Building R2-A, High tech Industrial Park, Yuehai Street, Nanshan District, Shenzhen City, Guangdong Province 518000

Patentee after: Shenzhen Dousnail Technology Co.,Ltd.

Country or region after: China

Address before: 804, Xihaiwan Garden Single Apartment, No. 84 Nanshang Road, Nanshan District, Shenzhen, Guangdong Province, 518000

Patentee before: Jiang Ruicheng

Country or region before: China