CN110445626B - 区块打包、广播方法和系统、设备及存储介质 - Google Patents

区块打包、广播方法和系统、设备及存储介质 Download PDF

Info

Publication number
CN110445626B
CN110445626B CN201910633129.9A CN201910633129A CN110445626B CN 110445626 B CN110445626 B CN 110445626B CN 201910633129 A CN201910633129 A CN 201910633129A CN 110445626 B CN110445626 B CN 110445626B
Authority
CN
China
Prior art keywords
block
transaction
node
broadcasting
module
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
CN201910633129.9A
Other languages
English (en)
Other versions
CN110445626A (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.)
Hangzhou Fuzamei Technology Co Ltd
Original Assignee
Hangzhou Fuzamei 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 Hangzhou Fuzamei Technology Co Ltd filed Critical Hangzhou Fuzamei Technology Co Ltd
Priority to CN201910633129.9A priority Critical patent/CN110445626B/zh
Publication of CN110445626A publication Critical patent/CN110445626A/zh
Application granted granted Critical
Publication of CN110445626B publication Critical patent/CN110445626B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • 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/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1804Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for stock exchange and similar applications
    • 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
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • 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)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种区块广播方法和系统、设备及存储介质,属于区块链技术领域。当第一区块大小SI≤第一区块大小阈值TH时,第一区块链节点将区块头、交易、第一区块大小形成的第一区块广播给与第一区块链节点连接的第二区块链节点;当第一区块大小SI>第一区块大小阈值TH时,第一区块链节点将区块头、交易标识列表、第一区块大小形成的第二区块广播给与第一区块链节点连接的第二区块链节点;其中,交易标识列表为所述交易中的交易哈希值的部分字节。针对现有技术中区块链网络带宽拥堵的技术问题,本申请的技术方案在广播区块时减少广播交易内容的大小,用以减少区块广播时占用的区块链网络带宽,从而减轻区块链网络的负担。

Description

区块打包、广播方法和系统、设备及存储介质
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块打包、广播方法和系统、设备及存储介质。
背景技术
目前区块链中区块的广播是将区块中的所有交易内容都一起广播给全网节点,广播区块的交易比较多时,其他节点不能及时收到,会导致出块节点不能及时基于最新的区块出块,浪费不必要的出块资源,特别是采用Pow算法出块的情况,因出块节点没有及时收到最新的区块会导致分叉概率的增高。
发明内容
1.发明要解决的技术问题
为了克服上述技术问题,本发明提供了一种区块打包、广播方法和系统、设备及存储介质。在广播区块时本申请的技术方案减少广播交易内容的大小,用以减少区块广播时占用的区块链网络带宽,从而减轻区块链网络的负担。
2.技术方案
为解决上述问题,本发明提供的技术方案为:
第一方面,本申请提出一种区块打包方法,适用于出块节点,包括:
判断第一区块大小SI≤第一区块大小阈值TH是否为真,若是,则将区块头、交易、第一区块大小打包形成第一区块;若否,则将区块头、交易标识列表、第一区块大小打包形成第二区块;其中,交易标识列表除包括出块交易外,还包括足以唯一识别交易的标识。
进一步地,所述足以唯一识别交易的标识为交易哈希值,或交易哈希值的部分字节,或交易ID号,或交易名称。
第二方面,本申请提出一种区块广播方法,适用于区块链节点,根据以上所述的方法,包括:
判断第一区块大小SI≤第一区块大小阈值TH是否为真,若是,则将第一区块广播给与第一区块链节点连接的第二区块链节点;若否,则将第二区块广播给与第一区块链节点连接的第二区块链节点。
第三方面,本申请提出一种区块广播方法,适用于非出块节点,根据以上所述的区块打包方法,以及根据以上所述的一种区块广播方法,包括:接收到第一区块的第二区块链节点,验证第一区块是否通过?若是,则广播第一区块到与第二区块链节点连接的第三区块链节点;或,接收到第二区块的第二区块链节点,验证第二区块是否通过?若是,则广播第二区块到与第二区块链节点连接的第三区块链节点;
进一步地,所述第二区块链节点收到第二区块后,获取交易标识列表与第二区块链节点缓存的交易信息进行比对,判断第二区块链节点是否缺少交易标识列表中的交易信息;若是,则向第一区块链节点请求获取包含有缺少的交易标识列表中的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块,若验证通过,则广播第二区块给第三区块链节点;若否,则验证第二区块,若验证通过,则广播第二区块给第三区块链节点。
进一步地,所述向第一区块链节点请求获取包含有缺少的交易标识列表中的交易信息之前包含:判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH;若是,则向第一区块链节点请求获取整个第二区块的交易信息,缓存到第二区块链节点,验证第二区块,若验证通过,则广播第二区块给第三区块链节点;若否,则向第一区块链节点请求获取缺失部分的第二区块的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块。
进一步地,所述向第一区块链节点请求获取缺失部分的第二区块的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块,进一步改进为;若验证不通过,则向第一区块链节点请求获取整个第二区块的交易信息,缓存到第二区块链节点,验证第二区块;若验证通过,则广播第二区块给第三区块链节点;若验证不通过,则不作处理。
进一步地,所述接收到第一区块的第二区块链节点,进一步地改进是,还包括记录足以唯一识别第一区块的标识,以及向第二区块链节点发送第一区块的节点;检测第一区块链节点是否存在第一区块;若是,则S11、广播第一区块到除向第二区块链节点发送第一区块的节点外,与第二区块链节点连接的第三区块链节点;若否,则验证第一区块是否通过?若是,则执行S11;
或,
所述接收到第二区块的第二区块链节点,进一步地改进是,还包括记录足以唯一识别第二区块的标识,以及向第二区块链节点发送第二区块的节点;检测第二区块链节点是否存在第二区块;若是,则S12、广播第二区块到除向第二区块链节点发送第二区块的节点外,与第二区块链节点连接的第三区块链节点;若否,则验证第一区块是否通过?若是,则执行S12。
进一步地,所述足以唯一识别第一区块的标识为第一区块的区块高度、或区块哈希值、或区块哈希值的部分字节、或第一区块的出块交易哈希值、或出块交易哈希值的部分字节、或出块交易ID、或出块交易名称;所述足以唯一识别第二区块的标识为第二区块的区块高度、或区块哈希值、或区块哈希值的部分字节、或第二区块的出块交易哈希值、或出块交易哈希值的部分字节、或出块交易ID、或出块交易名称。
第四方面,本申请提出了一种区块打包系统,根据以上所述的区块打包方法,适用于出块节点,包括:区块判断模块和区块打包模块;其中,区块判断模块,用于判断第一区块大小SI≤第一区块大小阈值TH是否为真;若是,区块打包模块,用于将区块头、交易和第一区块大小打包成第一区块;若否,区块打包模块,用于将区块头、交易标识列表和第一区块大小打包成第二区块。
第五方面,本申请提出了一种区块广播系统,根据以上所述的广播方法,适用于出块节点,包括:区块判断模块和区块广播模块;其中,区块判断模块,用于判断第一区块大小SI≤第一区块大小阈值TH是否为真;若是,区块广播模块,用于广播以上所述区块打包系统打包形成的第一区块;若否,区块广播模块,用于广播以上所述区块打包系统打包形成的第二区块。
第五方面,本申请提出了一种区块广播系统,根据以上所述的广播方法,适用于非出块节点,包括:接收模块,用于接收以上所述的第一区块,或第二区块;区块广播模块,用于广播以上所述的第一区块,或第二区块;验证模块用于验证以上所述的第一区块,或第二区块。
进一步地,还包括区块判断模块、缓存模块和请求模块,其中,区块判断模块用于判断第二区块链节点是否缺少交易标识列表中的交易信息;进一步地,还用于判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH;请求模块,用于请求获取包含有缺少的交易标识列表中的交易信息;缓存模块,用于缓存交易信息和第一区块或第二区块;区块广播模块,还用于广播交易。
进一步地,还包括区块接收记录模块,用于记录足以唯一识别第一区块的标识,以及向第二区块链节点发送第一区块的节点;或,用于记录足以唯一识别第二区块的标识,以及向第二区块链节点发送第二区块的节点;所述区块广播模块,用于广播第一区块到除向第二区块链节点发送第一区块的节点外,与第二区块链节点连接的第三区块链节点;或,用于广播第二区块到除向第二区块链节点发送第二区块的节点外,与第二区块链节点连接的第三区块链节点;所述区块判断模块,用于检测第一区块链节点是否存在第一区块;或,用于检测第一区块链节点是否存在第二区块。
第六方面,本申请提出一种设备,所述设备包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如以上所述的方法。
第七方面,本申请提出一种存储有计算机程序的存储介质,该程序被处理器执行时实现如以上任一项所述的方法。
3.有益效果
采用本发明提供的技术方案,与现有技术相比,具有如下有益效果:
在正常情况下交易会先被广播到全网节点,然后出块节点将交易打包出块,此时打包到区块的交易在各个节点的缓存中绝大部分都是存在的,本申请创造性地利用该特点,所以在广播区块时本申请的技术方案中减少广播交易内容的大小,用以减少区块广播时占用的区块链网络带宽,从而减轻区块链网络的负担。
附图说明
图1为实施例2提供的一种适用于出块节点的区块广播方法的流程图。
图2为本发明的区块链节点之间区块广播的示意图。
图3为图1第一优选实施例的流程图。
图4为图1第二优选实施例的流程图。
图5为实施例3提供的一种区块打包系统的结构示意图。
图6为实施例4提供的一种适用于出块节点区块广播系统的结构示意图。
图7为实施例4提供的一种适用于非出块节点区块广播系统的结构示意图。
图8为本发明设备的结构示意图。
图9为本发明的第二区块链节点收到第二区块后处理的完整流程示意图。
图10为实施例1提供的一种区块打包方法流程图。
图11为实施例2提供的一种适用于非出块节点的区块广播方法流程图。
图12为实施例2提供的另一种适用于非出块节点的区块广播方法流程图。
图13为图1第三优选实施例的流程图。
图14为图1第四优选实施例的流程图。
图15为图7第一优选实施例提供的一种适用于非出块节点区块广播系统的结构示意图。
图16为图7第二优选实施例提供的一种适用于非出块节点区块广播系统的结构示意图。
图17为图7第三优选实施例提供的一种适用于非出块节点区块广播系统的结构示意图。
具体实施方式
为进一步了解本发明的内容,结合附图及实施例对本发明作详细描述。
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
本发明中所述的第一、第二即第三等词语,是为了描述本发明的技术方案方便而设置,并没有特定的限定作用,均为泛指,对本发明的技术方案不构成限定作用。比如在当前区块高度打包区块时,A、B和C区块链节点依次对应第一区块链节点、第二区块链节点和第三区块链节点,等下一轮区块高度,或者其他任一个区块高度时,这种对应关系将会完全改变。在当前区块高度时,第一区块包含有交易,第二区块包含有交易标识列表,等下一轮区块高度,或者其他任一个区块高度时,可能会是第一区块包含有交易标识列表,第二区块包含有交易,所以在本申请中,第一、第二等词语仅为了便于描述而设置,没有特定的限定作用。出块节点为区块打包节点。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
实施例1
本实施例提出一种区块打包方法,适用于出块节点,如图10所示,包括:
S1001、判断第一区块大小SI≤第一区块大小阈值TH是否为真,若是,则
S1002、将区块头、交易、第一区块大小打包形成第一区块;若否,则
S1003、将区块头、交易标识列表、第一区块大小打包形成第二区块;
其中,交易标识列表除包括出块交易外,还包括足以唯一识别交易的标识;进一步地,所述足以唯一识别交易的标识为交易哈希值,或交易哈希值的部分字节,或交易ID号,或交易名称。
在一个确定的区块链项目中,因每个交易的收发地址,及交易内容等各不相同,所以交易哈希值具有唯一识别交易的特性。交易ID号类比于中国公民使用的身份证号码,在一个确定的区块链项目中,交易名称也可以唯一识别一笔交易,但并不代表所有区块链项目都是,在本方法实际应用过程中,应根据具体应用场景而定。
交易哈希值的部分字节:假设F(x)是对交易哈希值取部分字节的函数,那么函数F(x),以F(Hash-Tm)为例,实现的效果是,对交易Tm的哈希值Hash-Tm,取其前第1-5个字节,后第1-5个字节,或者中间位置第1-5个字节,也可以是中间9个字节,或者,末尾9个字节,或者,前9个字节,但无论怎么取值,均可以保证足以唯一识别出所述交易Tm的哈希值Hash-Tm,从而进一步减小交易广播的大小。
在某现有的区块链中,区块头包含区块高度(版本号)、默克尔状态树根节点哈希值、前一区块哈希值、时间戳、难度目标、用于工作量证明算法的计数器;交易包含区块中所有交易的哈希值;其他现有区块链上,区块头的内容根据各个区块链各自的区块头内容而定,第一区块大小为当前区块高度整个第一区块的大小。第一区块大小阈值TH可以设置成1M,需要根据网络情况来配置。
所述交易标识列表包括所述出块节点产生的出块交易。因为在区块被打包形成之前,区块链非出块节点中没有出块交易,出块交易是在区块链出块节点打包区块时产生的,所以在区块链出块节点打包所述第二区块时,在交易标识列表中放入完整的出块交易内容,而除出块交易之外的交易,仅在交易标识列表中存储足以唯一识别交易的标识即可,比如交易哈希值的若干字节或部分字节;不同于第二区块的是,第一区块中的交易中包含出块交易在内的所有交易的完整内容。
实施例2
本实施例提出了一种区块广播方法,适用于出块节点,如图1所示,包括:
S1101、判断第一区块大小SI≤第一区块大小阈值TH是否为真,若是,则将第一区块广播给与第一区块链节点连接的第二区块链节点;若否,则将第二区块广播给与第一区块链节点连接的第二区块链节点。在出块节点打包区块时根据区块大小决定某固定高度的区块广播的内容。
对于非出块节点,本实施例对应提出了区块广播方法,如图11、12所示,包括:
S1101、接收到第一区块的第二区块链节点;
S1102、验证第一区块是否通过?若是,则
S1103、广播第一区块到与第二区块链节点连接的第三区块链节点;进一步地,若否,则S1104、不作处理,或向发送第一区块给第二区块链节点的节点,发送第一区块没有验证通过的消息。如果验证通过,第一区块将以上述广播方法被广播至全网。
或,S1201、接收到第二区块的第二区块链节点,S1202、验证第二区块是否通过?若是,则S1203、广播第二区块到与第二区块链节点连接的第三区块链节点;进一步地,若否,则S1204、不作处理,或向发送第二区块给第二区块链节点的节点,发送第二区块没有验证通过的消息。如果验证通过,第二区块将以上述广播方法被广播至全网。如图2所示,为区块链节点之间区块广播的示意图。
对于同一个区块高度的区块而言,仅能选择第一区块或第二区块中的一种打包方式,一旦确定打包方式后,将被打包,并广播至全网。
如图3所示,进一步地,
S301、第二区块链节点收到第二区块后,获取交易标识列表与第二区块链节点缓存的交易信息进行比对,
S302、判断第二区块链节点是否缺少交易标识列表中的交易信息;若是,则
S303、向第一区块链节点请求获取包含有缺少的交易标识列表中的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块,若验证通过,则广播第二区块给第三区块链节点;
若第二区块链节点不缺少交易标识列表中的交易信息,则S304、验证第二区块,若验证通过,则广播第二区块给第三区块链节点。
如图4所示,所述向第一区块链节点请求获取包含有缺少的交易标识列表中的交易信息之前包含:
S401、判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH(TR-TH可以设置成2/3,需要根据网络情况来配置);
若是,则S402、向第一区块链节点请求获取整个第二区块的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块,若验证通过,则广播第二区块给第三区块链节点;
若否,则S403、向第一区块链节点请求获取缺失部分的第二区块的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块,若验证通过,则广播第二区块给第三区块链节点。
进一步地,向第一区块链节点请求获取缺失部分的第二区块的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块;
若验证不通过,则向第一区块链节点请求获取整个第二区块的交易信息,缓存到第二区块链节点,验证第二区块;
若验证通过,则广播第二区块给第三区块链节点;
若验证不通过,则不作处理,同时向第一区块链节点发送第二区块验证不通过的消息。
为了进一步减少对区块链网络带宽的占用,作如下改动:
对于非出块节点,如图13所示,包括:
S1301、接收到第一区块的第二区块链节点,记录足以唯一识别第一区块的标识,以及向第二区块链节点发送第一区块的节点;
S1302、检测第一区块链节点是否存在第一区块;若是,则
S1303、广播第一区块到除向第二区块链节点发送第一区块的节点外,与第二区块链节点连接的第三区块链节点;若否,则
S1304、验证第一区块是否通过?若是,则执行S1303;若否,则不作处理。第一区块通过上述方法被广播至全网,不会重复广播给那些已经收到第一区块的节点,从而减少对带宽的占用。
或,如图14所示,包括:
S1401、接收到第二区块的第二区块链节点,记录足以唯一识别第二区块的标识,以及向第二区块链节点发送第二区块的节点;
S1402、检测第二区块链节点是否存在第二区块;若是,则
S1403、广播第二区块到除向第二区块链节点发送第二区块的节点外,与第二区块链节点连接的第三区块链节点;若否,则
S1404、验证第二区块是否通过?若是,则执行S1403;若否,则不作处理。
第二区块通过上述方法被广播至全网,通过将第一区块改造成第二区块,改变了广播区块的大小,将第二区块不再重复广播给那些已经收到第二区块的节点,从而减少对区块链网络带宽的占用。
对于收到第二区块的非出块节点,如图9所示,第二区块链节点收到第二区块后处理的完整流程示意图。
S901、第二区块链节点收到第二区块后,记录足以唯一识别第二区块的标识,以及向第二区块链节点发送第二区块的节点;
S902、检测第二区块链节点是否存在第二区块;若是,则
S903、广播第二区块到除向第二区块链节点发送第二区块的节点外,与第二区块链节点连接的第三区块链节点;若否,则
S904、判断第二区块链节点是否缺少第二区块交易标识列表中的交易信息;若否,则S905、验证第二区块是否通过?若是,则执行S903;若否,则S906、不处理;
若第二区块链节点缺少第二区块交易标识列表中的交易信息;则
S907、判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH;若是,则
S908、向第一区块链节点(发送第二区块给第二区块链节点的节点)请求获取整个第二区块的交易信息,缓存到第二区块链节点,执行S905、S903和S906;若否,则
S909、向第一区块链节点请求获取缺失部分的第二区块的交易信息,缓存到第二区块链节点,与已有的交易信息一起;S910、验证第二区块是否通过?若是,则执行S903;若否,则执行S908、S905、S903和S906。
验证第二区块:按顺序组装整个第二区块,计算默克尔树根节点哈希值;判断默克尔树根节点哈希值是否与第二区块的区块头中的一致;若一致,则验证通过。
所述足以唯一识别第一区块的标识为第一区块的区块高度、或区块哈希值、或区块哈希值的部分字节、或第一区块的出块交易哈希值、或出块交易哈希值的部分字节、或出块交易ID、或出块交易名称;所述足以唯一识别第二区块的标识为第二区块的区块高度、或区块哈希值、或区块哈希值的部分字节、或第二区块的出块交易哈希值、或出块交易哈希值的部分字节、或出块交易ID、或出块交易名称。
对于POW共识算法,第二区块的区块高度作为足以唯一识别第二区块的标识时,并不可靠,因POW的特性,所有出块节点均参与出块,打包区块,同一区块高度可能会有多个区块存在,而最终保留下来作为该区块高度的区块的是计算难度最大的。但那些没有被保留的区块也会在区块链网络中广播,那么此时区块高度并不能将它们区分开来。但对于POS、DPOS等共识算法则不存在此问题,可以使用第二区块的区块高度作为足以唯一识别第二区块的标识。
区块哈希值是唯一的,区块哈希值的部分字节则是比如对区块BLOCK256的哈希值Hash-BLOCK256,取其前第1-5个字节,后第1-5个字节,或者中间位置第1-5个字节,也可以是中间9个字节,或者,末尾9个字节,或者,前9个字节,以函数F(x)来表示,则F(Hash-BLOCK256)为区块哈希值的部分字节,但无论怎么取值,均可以保证足以唯一识别出所述区块BLOCK256的哈希值Hash-BLOCK256。
第二区块的出块交易哈希值、或出块交易哈希值的部分字节、或出块交易ID、或出块交易名称。出块交易在一个区块中必然存在且仅有一笔,以出块交易哈希值作为足以唯一识别第二区块的标识,毋庸置疑,出块交易哈希值的部分字节类比于区块哈希值的部分字节,也是可行的,当出块交易ID,出块交易名称在一个确定的区块链网络中是唯一的时,即一笔交易对应一个交易名称,一个ID,一一对应关系时,出块交易ID,出块交易名称也均可作为足以唯一识别出所述区块BLOCK256的标识。
判断第二区块链节点是否存在第二区块包括:查询第二区块是否存在的方式有很多种,本实施例通过足以唯一识别第二区块的标识,包括进行查询比对判断,如区块哈希值,或根据函数F(x)倒推,经区块哈希值的部分字节判别,或区块对应的出块交易哈希值,或出块交易哈希值的部分字节,或出块交易ID,出块交易名称。实际应用中还可以采用其他方式判断。
实施例3
本实施例提出一种区块打包系统,根据实施例1所述的方法,适用于出块节点,如图5所示,包括:区块判断模块和区块打包模块;其中,
区块判断模块,用于判断第一区块大小SI≤第一区块大小阈值TH是否为真;
若是,区块打包模块,用于将区块头、交易和第一区块大小打包成第一区块;若否,区块打包模块,用于将区块头、交易标识列表和第一区块大小打包成第二区块。
实施例4
本实施例提出一种区块广播系统,根据实施例2所述的方法,适用于出块节点,如图6所示,包括:区块判断模块和区块广播模块;其中,
区块判断模块,用于判断第一区块大小SI≤第一区块大小阈值TH是否为真;
若是,区块广播模块,用于广播权利要求10所述系统打包形成的第一区块;
若否,区块广播模块,用于广播权利要求10所述系统打包形成的第二区块。
如图7所示,还包括缓存模块,用于缓存交易信息和第一区块或第二区块。
对于非出块节点,本实施例对应提出一种区块广播系统,根据实施例2所述的方法,如图15,包括:
接收模块,用于接收实施例2所述的第一区块,或第二区块;
区块广播模块,用于广播实施例2所述的第一区块,或第二区块;
验证模块用于验证实施例2所述的第一区块,或第二区块。
对于出块节点,也同时具备上述模块。
如图16,还包括区块判断模块、缓存模块和请求模块,其中,
区块判断模块用于判断第二区块链节点是否缺少交易标识列表中的交易信息;进一步地,还用于判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH;
请求模块,用于请求获取包含有缺少的交易标识列表中的交易信息;
缓存模块,用于缓存交易信息和第一区块或第二区块;
区块广播模块,还用于广播交易。
如图17,还包括区块接收记录模块,用于记录足以唯一识别第一区块的标识,以及向第二区块链节点发送第一区块的节点;或,
用于记录足以唯一识别第二区块的标识,以及向第二区块链节点发送第二区块的节点;
所述区块广播模块,用于广播第一区块到除向第二区块链节点发送第一区块的节点外,与第二区块链节点连接的第三区块链节点;或,
用于广播第二区块到除向第二区块链节点发送第二区块的节点外,与第二区块链节点连接的第三区块链节点;
所述区块判断模块,用于检测第一区块链节点是否存在第一区块;或,
用于检测第一区块链节点是否存在第二区块。
实施例5
以Chain33链为例,假设Chain33-001、Chain33-002、Chain33-003为Chain33链上任意三个节点,其中,Chain33-003为出块节点;第一区块大小阈值TH设置成1M;交易缺失占比阈值TR-TH设置成2/3。
在区块高度为H23456时,节点Chain33-003打包了233个交易名称分别对应为TR001、TR002、TR003、、、、、、TR233。
对于区块高度为H23456的区块Block456包括以下内容:
第一区块大小BlockSize:需要广播的区块的大小,包含所有交易内容;在本区块高度中,区块判断模块判断第一区块大小小于1M,所以广播区块时,广播整个区块的内容。
区块头Blockheader:包含区块高度(版本号)、默克尔状态树根节点哈希值、前一区块哈希值、时间戳、难度目标、用于工作量证明算法的计数器。其中,区块交易由233个交易的哈希值所组成,即Hash-TR001、Hash-TR002、Hash-TR003、、、、、、Hash-TR233。
对于出块节点Chain33-003,还包括出块交易,在区块的交易中,除了保存所有交易的内容外,还保存了出块交易的完整内容。出块节点Chain33-003的打包系统将上述内容进行打包成区块,区块广播系统的区块广播模块将区块内容广播出去。
节点Chain33-001的接收模块收到出块节点Chain33-003发来的区块Block456,区块接收记录模块记录区块哈希值Hsah-Block456,以及出块节点Chain33-003名称;区块判断模块判断本地不存在区块Block456,验证模块验证区块Block456通过,区块广播模块将区块Block456广播给除出块节点Chain33-003以外的节点。
Chain33链上的节点Chain33-110的接收模块收到节点Chain33-001发来的区块Block456,区块接收记录模块记录区块哈希值Hsah-Block456,以及节点Chain33-001名称;区块判断模块判断本地不存在区块Block456,验证模块验证区块Block456通过,区块广播模块将区块Block456广播给除节点Chain33-001以外的节点。若验证不通过,同时,节点Chain33-110向节点Chain33-001发送区块验证不通过的消息。
在区块高度为H678910时,出块节点Chain33-003打包了99336个交易名称分别对应记为TR00001、TR00002、TR00003、、、、、、TR-99336。
对于区块高度为H678910的第二区块Block910包括以下内容:
第一区块大小BlockSize:需要广播的区块的大小,包含所有交易内容;在本区块高度中,区块判断模块判断第一区块大小大于1M,所以广播区块时,广播区块的部分内容,即广播的是区块交易标识列表。
区块头Blockheader:包含区块高度(版本号)、默克尔状态树根节点哈希值、前一区块哈希值、时间戳、难度目标、用于工作量证明算法的计数器。区块交易标识列表:由出块交易、99336个交易哈希值的前5个字节所组成,假设函数F(x)用于取交易哈希值的前5个字节,即区块交易标识列表List-TR由F(Hash-TR00001)、F(Hash-TR00002)、F(Hash-TR00003)、、、、、、F(Hash-TR99336)组成。在交易标识列表中,保存了出块交易的完整内容。出块节点Chain33-003的区块判断模块判断出区块大小后,区块打包模块打包区块Block910。
当出块节点Chain33-003的区块广播模块将区块Block910广播出去后,Chain33链上的节点Chain33-332的接收模块收到了,区块接收记录模块记录区块哈希值Hash-Block910,以及出块节点Chain33-003名称;区块判断模块根据区块哈希判断节点Chain33-332上是否存在区块Block910,存在,则将区块Block910广播给除出块节点Chain33-003以外,与节点Chain33-332连接的节点。
如果节点Chain33-332上不存在区块Block910;获取交易标识列表List-TR与节点Chain33-332缓存的交易信息(假设节点Chain33-332缓存的交易信息为)进行比对,
第一种情况,假设节点Chain33-332缓存了区块高度为H678910的区块上的所有交易信息。
判断节点Chain33-332是否缺少交易标识列表List-TR中的交易信息;
否,则验证第二区块,验证方法同上,若验证通过,则广播第二区块给第三区块链节点。
第二种情况,假设节点Chain33-332缓存了区块高度为H678910的区块上的部分交易信息(TR90000、TR90001、TR90002、、、、、、TR99336),超过第二区块交易的2/3。
判断节点Chain33-332是否缺少交易标识列表List-TR中的交易信息;
是,则进一步判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH:2/3;
是,则向节点Chain33-002请求获取整个第二区块的交易信息,缓存到节点Chain33-332,与已有的交易信息一起,验证第二区块;
若验证通过,则广播第二区块给Chain33链上的其他区块链节点;
若验证不通过,则不作处理,同时向节点Chain33-002发送第二区块验证不通过的消息。
第三种情况,假设节点Chain33-332缓存了区块高度为H678910的区块上的部分交易信息(TR00001、TR00002、TR00003、、、、、、TR99000),不超过第二区块交易的2/3。
判断节点Chain33-332是否缺少交易标识列表List-TR中的交易信息;
是,则进一步判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH;
否,则向节点Chain33-002请求获取包含有缺少的交易标识列表中的交易信息,缓存到节点Chain33-332,与已有的交易信息一起,验证第二区块;
若验证通过,则将区块Block910广播给除出块节点Chain33-003以外,与节点Chain33-332连接的节点;
若验证不通过,则向节点Chain33-002请求获取整个第二区块的交易信息,缓存到节点Chain33-332,再次验证第二区块;
若验证通过,则将区块Block910广播给除出块节点Chain33-003以外,与节点Chain33-332连接的节点;
若验证不通过,则不作处理,同时向第一区块链节点发送第二区块验证不通过的消息。
因为在正常情况下交易会先被广播到全网节点,然后出块节点将交易打包出块,此时打包到区块的交易在各个节点的缓存中绝大部分都是存在的,本申请创造性地利用该特点,所以在广播区块时本申请的技术方案中减少广播交易内容的大小,用以减少区块广播时占用的区块链网络带宽,从而减轻区块链网络的负担。
实施例6
一种设备,所述设备包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如以上所述的方法。
一种存储有计算机程序的存储介质,该程序被处理器执行时实现如以上实施例1-3任一技术方案所述的方法。
图8为本发明一实施例提供的一种设备的结构示意图。
如图8所示,作为另一方面,本申请还提供了一种设备500,包括一个或多个中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM503中,还存储有设备500操作所需的各种程序和数据。CPU501、ROM502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本申请公开的实施例,上述任一实施例描述的方法可以被实现为计算机软件程序。例如,本申请公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行上述任一实施例描述的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请的方法。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (16)

1.一种区块打包方法,其特征在于,适用于出块节点,包括:
判断第一区块大小SI≤第一区块大小阈值TH是否为真,若是,则将区块头、交易、第一区块大小打包形成第一区块;若否,则将区块头、交易标识列表、第一区块大小打包形成第二区块;
其中,所述交易标识列表包括完整的出块交易、除出块交易外的其它交易的足以唯一识别交易的标识,所述交易包括出块交易在内的所有交易的完整内容。
2.根据权利要求1所述的方法,其特征在于,所述足以唯一识别交易的标识为交易哈希值,或交易哈希值的部分字节,或交易ID号,或交易名称。
3.一种区块广播方法,其特征在于,适用于出块节点,根据权利要求1所述的方法,包括:
判断第一区块大小SI≤第一区块大小阈值TH是否为真,若是,则将第一区块广播给与第一区块链节点连接的第二区块链节点;若否,则将第二区块广播给与第一区块链节点连接的第二区块链节点。
4.一种区块广播方法,其特征在于,适用于非出块节点,根据权利要求1所述的方法,以及根据权利要求3所述的一种区块广播方法,包括:
接收到第一区块的第二区块链节点,验证第一区块是否通过?若是,则广播第一区块到与第二区块链节点连接的第三区块链节点;
或,接收到第二区块的第二区块链节点,验证第二区块是否通过?若是,则广播第二区块到与第二区块链节点连接的第三区块链节点。
5.根据权利要求4所述的方法,其特征在于,所述第二区块链节点收到第二区块后,获取交易标识列表与第二区块链节点缓存的交易信息进行比对,
判断第二区块链节点是否缺少交易标识列表中的交易信息;
若是,则向第一区块链节点请求获取包含有缺少的交易标识列表中的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块,若验证通过,则广播第二区块给第三区块链节点;
若否,则验证第二区块,若验证通过,则广播第二区块给第三区块链节点。
6.根据权利要求5所述的方法,其特征在于,所述向第一区块链节点请求获取包含有缺少的交易标识列表中的交易信息之前包含:
判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH;
若是,则向第一区块链节点请求获取整个第二区块的交易信息,缓存到第二区块链节点,验证第二区块,若验证通过,则广播第二区块给第三区块链节点;
若否,则向第一区块链节点请求获取缺失部分的第二区块的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块。
7.根据权利要求6所述的方法,其特征在于,所述向第一区块链节点请求获取缺失部分的第二区块的交易信息,缓存到第二区块链节点,与已有的交易信息一起,验证第二区块,进一步改进为;
若验证不通过,则向第一区块链节点请求获取整个第二区块的交易信息,缓存到第二区块链节点,验证第二区块;若验证通过,则
广播第二区块给第三区块链节点;若验证不通过,则不作处理。
8.根据权利要求4-7任一项所述的方法,其特征在于,所述接收到第一区块的第二区块链节点,进一步地改进是,还包括记录足以唯一识别第一区块的标识,以及向第二区块链节点发送第一区块的节点;检测第一区块链节点是否存在第一区块;若是,则
S11、广播第一区块到除向第二区块链节点发送第一区块的节点外,与第二区块链节点连接的第三区块链节点;若否,则
验证第一区块是否通过?若是,则执行S11;
或,
所述接收到第二区块的第二区块链节点,进一步地改进是,还包括记录足以唯一识别第二区块的标识,以及向第二区块链节点发送第二区块的节点;检测第二区块链节点是否存在第二区块;若是,则
S12、广播第二区块到除向第二区块链节点发送第二区块的节点外,与第二区块链节点连接的第三区块链节点;若否,则
验证第二区块是否通过?若是,则执行S12。
9.根据权利要求8所述的方法,其特征在于,所述足以唯一识别第一区块的标识为第一区块的区块高度、或区块哈希值、或区块哈希值的部分字节、或第一区块的出块交易哈希值、或出块交易哈希值的部分字节、或出块交易ID、或出块交易名称;
所述足以唯一识别第二区块的标识为第二区块的区块高度、或区块哈希值、或区块哈希值的部分字节、或第二区块的出块交易哈希值、或出块交易哈希值的部分字节、或出块交易ID、或出块交易名称。
10.一种区块打包系统,其特征在于,根据权利要求1所述的方法,适用于出块节点,包括:区块判断模块和区块打包模块;其中,
区块判断模块,用于判断第一区块大小SI≤第一区块大小阈值TH是否为真;
若是,区块打包模块,用于将区块头、交易和第一区块大小打包成第一区块;
若否,区块打包模块,用于将区块头、交易标识列表和第一区块大小打包成第二区块;
其中,所述交易标识列表包括完整的出块交易、除出块交易外的其它交易的足以唯一识别交易的标识,所述交易包括出块交易在内的所有交易的完整内容。
11.一种区块广播系统,其特征在于,根据权利要求3所述的方法,适用于出块节点,包括:区块判断模块和区块广播模块;其中,
区块判断模块,用于判断第一区块大小SI≤第一区块大小阈值TH是否为真;
若是,区块广播模块,用于广播权利要求10所述系统打包形成的第一区块;
若否,区块广播模块,用于广播权利要求10所述系统打包形成的第二区块。
12.一种区块广播系统,其特征在于,根据权利要求4所述的方法,适用于非出块节点,包括:
接收模块,用于接收权利要求4所述的第一区块,或第二区块;
区块广播模块,用于广播权利要求4所述的第一区块,或第二区块;
验证模块用于验证权利要求4所述的第一区块,或第二区块。
13.根据权利要求12所述的系统,其特征在于,还包括区块判断模块、缓存模块和请求模块,其中,
区块判断模块用于判断第二区块链节点是否缺少交易标识列表中的交易信息;进一步地,还用于判断交易信息缺失数量是否超过交易缺失占比阈值TR-TH;
请求模块,用于请求获取包含有缺少的交易标识列表中的交易信息;
缓存模块,用于缓存交易信息和第一区块或第二区块;
区块广播模块,还用于广播交易。
14.根据权利要求12所述的系统,其特征在于,还包括区块接收记录模块,用于记录足以唯一识别第一区块的标识,以及向第二区块链节点发送第一区块的节点;或,
用于记录足以唯一识别第二区块的标识,以及向第二区块链节点发送第二区块的节点;
所述区块广播模块,用于广播第一区块到除向第二区块链节点发送第一区块的节点外,与第二区块链节点连接的第三区块链节点;或,
用于广播第二区块到除向第二区块链节点发送第二区块的节点外,与第二区块链节点连接的第三区块链节点;
区块判断模块,用于检测第一区块链节点是否存在第一区块;或,
用于检测第一区块链节点是否存在第二区块。
15.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-9中任一项所述的方法。
16.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-9中任一项所述的方法。
CN201910633129.9A 2019-07-15 2019-07-15 区块打包、广播方法和系统、设备及存储介质 Active CN110445626B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910633129.9A CN110445626B (zh) 2019-07-15 2019-07-15 区块打包、广播方法和系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910633129.9A CN110445626B (zh) 2019-07-15 2019-07-15 区块打包、广播方法和系统、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110445626A CN110445626A (zh) 2019-11-12
CN110445626B true CN110445626B (zh) 2021-11-02

Family

ID=68430432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910633129.9A Active CN110445626B (zh) 2019-07-15 2019-07-15 区块打包、广播方法和系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110445626B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110838924B (zh) * 2019-11-19 2022-04-12 北京沃东天骏信息技术有限公司 区块传输方法及装置
CN111355630B (zh) * 2020-02-18 2021-07-06 杭州复杂美科技有限公司 一种区块链性能定量分析方法和系统、设备及存储介质
CN112600905B (zh) * 2020-12-09 2023-04-14 杭州复杂美科技有限公司 交易广播和区块生成方法、设备和存储介质
CN114826801A (zh) * 2022-03-03 2022-07-29 杭州复杂美科技有限公司 一种区块广播方法、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108830711A (zh) * 2018-05-07 2018-11-16 国网浙江省电力有限公司嘉兴供电公司 一种基于区块链的能源互联网交易账本管理方法及系统
CN108874512A (zh) * 2018-07-10 2018-11-23 佛山伊苏巨森科技有限公司 一种提升区块链网络访问速度的方法
CN109428906A (zh) * 2017-08-22 2019-03-05 北京果仁宝软件技术有限责任公司 请求处理方法、装置、系统及终端
CN109460405A (zh) * 2018-09-27 2019-03-12 上海点融信息科技有限责任公司 用于区块链网络的区块生成方法、同步方法、存储介质、计算设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630609B (zh) * 2016-02-24 2021-05-11 杭州复杂美科技有限公司 区块链的打包存储方法
US10445302B2 (en) * 2017-01-03 2019-10-15 International Business Machines Corporation Limiting blockchain size to optimize performance
CN107040585B (zh) * 2017-02-22 2020-06-19 创新先进技术有限公司 一种业务校验的方法及装置
CN108234470B (zh) * 2017-12-28 2020-08-04 江苏通付盾科技有限公司 区块链网络中区块打包方法及系统、电子设备、存储介质
CN109146484A (zh) * 2018-08-31 2019-01-04 深圳付贝科技有限公司 基于区块链的共识验证方法、挖矿机及区块链系统
CN109474682B (zh) * 2018-11-12 2022-03-11 杭州秘猿科技有限公司 一种区块链网络传输方法、装置及电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109428906A (zh) * 2017-08-22 2019-03-05 北京果仁宝软件技术有限责任公司 请求处理方法、装置、系统及终端
CN108830711A (zh) * 2018-05-07 2018-11-16 国网浙江省电力有限公司嘉兴供电公司 一种基于区块链的能源互联网交易账本管理方法及系统
CN108874512A (zh) * 2018-07-10 2018-11-23 佛山伊苏巨森科技有限公司 一种提升区块链网络访问速度的方法
CN109460405A (zh) * 2018-09-27 2019-03-12 上海点融信息科技有限责任公司 用于区块链网络的区块生成方法、同步方法、存储介质、计算设备

Also Published As

Publication number Publication date
CN110445626A (zh) 2019-11-12

Similar Documents

Publication Publication Date Title
CN110445626B (zh) 区块打包、广播方法和系统、设备及存储介质
CN111680050B (zh) 一种联盟链数据的分片处理方法、设备和存储介质
CN108984662B (zh) 一种区块链数据同步方法
CN111510395B (zh) 业务消息上报方法、装置、设备及介质
CN110430066B (zh) 用于减少区块链交易重复广播的方法、设备及存储介质
CN110336677B (zh) 区块打包、广播方法和系统、设备及存储介质
CN110190949B (zh) 用于大数据量资源上链的方法和系统、设备及存储介质
CN111600965B (zh) 区块链中的共识方法和系统
CN113220715B (zh) 一种数据处理方法、系统、计算机及可读存储介质
CN112714192B (zh) 数据同步方法、装置、计算机可读介质及电子设备
CN105677754B (zh) 获取文件系统中子项元数据的方法、装置和系统
CN103281394A (zh) 文件获取方法、节点服务器和系统
CN111858641A (zh) 事务处理方法、装置、电子设备和可读存储介质
CN110784501B (zh) 含交易组区块的打包和广播方法及系统、设备和存储介质
CN104980489A (zh) 使用匹配的网络名称的安全集合同步
CN110490734B (zh) 交易组构建、广播方法和系统、设备及存储介质
US20220131873A1 (en) Transaction Replacement Method, Device, and Storage Medium
CN109872139B (zh) 交易替换方法、设备和存储介质
CN103428260A (zh) 用于将终端分配到服务器并高效地提示终端的系统及方法
JP2019128837A (ja) サーバ装置、情報収集システム、およびプログラム
US10250515B2 (en) Method and device for forwarding data messages
CN113824689B (zh) 边缘计算网络、数据传输方法、装置、设备和存储介质
CN115378855A (zh) 一种数据包的测试方法、装置和通信装置及存储介质
US20230370388A1 (en) Management apparatus
CN114363379A (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
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20191112

Assignee: Hangzhou left chain Technology Co.,Ltd.

Assignor: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.

Contract record no.: X2022330000092

Denomination of invention: Block packaging, broadcasting method and system, equipment and storage medium

Granted publication date: 20211102

License type: Common License

Record date: 20220516

Application publication date: 20191112

Assignee: Hangzhou Kulian Technology Co.,Ltd.

Assignor: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.

Contract record no.: X2022330000091

Denomination of invention: Block packaging, broadcasting method and system, equipment and storage medium

Granted publication date: 20211102

License type: Common License

Record date: 20220516

Application publication date: 20191112

Assignee: Hangzhou DUOLIAN Technology Co.,Ltd.

Assignor: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.

Contract record no.: X2022330000090

Denomination of invention: Block packaging, broadcasting method and system, equipment and storage medium

Granted publication date: 20211102

License type: Common License

Record date: 20220516