CN111464356A - 一种区块共识周期切换方法、装置及计算机设备 - Google Patents

一种区块共识周期切换方法、装置及计算机设备 Download PDF

Info

Publication number
CN111464356A
CN111464356A CN202010250317.6A CN202010250317A CN111464356A CN 111464356 A CN111464356 A CN 111464356A CN 202010250317 A CN202010250317 A CN 202010250317A CN 111464356 A CN111464356 A CN 111464356A
Authority
CN
China
Prior art keywords
consensus
block
period
data
switching
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.)
Granted
Application number
CN202010250317.6A
Other languages
English (en)
Other versions
CN111464356B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010250317.6A priority Critical patent/CN111464356B/zh
Publication of CN111464356A publication Critical patent/CN111464356A/zh
Application granted granted Critical
Publication of CN111464356B publication Critical patent/CN111464356B/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
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting
    • 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 Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种区块共识周期切换方法、装置及计算机设备,其中方法包括:在针对第一区块共识周期内生成的目标区块共识完成后,进入第一区块共识周期的空窗期,并在空窗期内针对目标区块进行上链操作;从区块链网络中获取共识周期切换数据;若共识周期切换数据满足区块共识周期切换条件,则结束空窗期,将区块共识周期由第一区块共识周期切换至第二区块共识周期。采用上述方式可以加快共识进程向前推进的进度,有效节省时间和计算机资源,提高业务处理效率。

Description

一种区块共识周期切换方法、装置及计算机设备
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块共识周期切换方法、一种区块共识周期切换装置以及计算机设备。
背景技术
区块链是一种广泛应用的去中心化基础架构。区块链技术具有去中心化,区块数据基本不可篡改、去信任化等特性,被认为是继互联网之后计算机模式的颠覆。
共识是区块链技术的核心内容,目前,当前区块共识完成之后,需要等待较长的时间才会进入下一区块共识周期,这会严重影响共识进程的向前推进。
发明内容
本发明实施例提供了一种区块共识周期切换方法、一种区块共识周期切换装置以及一种计算机设备,可以加快共识进程向前推进的进度,有效节省时间和计算机资源,提高业务处理效率。
一方面,本发明实施例提供了一种区块共识周期切换方法,所述方法由区块链网络中的共识节点执行,所述方法包括:
在针对第一区块共识周期内生成的目标区块共识完成后,进入所述第一区块共识周期的空窗期,并在所述空窗期内针对所述目标区块进行上链操作;
从所述区块链网络中获取共识周期切换数据;
若所述共识周期切换数据满足区块共识周期切换条件,则结束所述空窗期,将区块共识周期由所述第一区块共识周期切换至第二区块共识周期;
其中,所述共识周期切换数据包括:所述区块链网络中的共识节点发布的期望切换区块共识周期的消息、与所述目标区块相关的共识数据中的至少一种。
在一实施例中,当所述共识周期切换数据包括所述区块链网络中的共识节点发布的期望切换区块共识周期的消息时,所述方法还包括:
根据获取到的所述期望切换区块共识周期的消息确定所述区块链网络中发布所述消息的共识节点的第一数量;
获取所述第一数量与所述区块链网络中的共识节点的总数量之间的比值;
若所述第一数量与所述总数量之间的比值大于或者等于第一数值,则确定所述共识周期切换数据满足区块共识周期切换条件。
在一实施例中,当所述共识周期切换数据包括与所述目标区块相关的共识数据时,所述方法还包括:
根据所述共识数据确定是否获取到所述区块链网络中的所有共识节点针对所述目标区块进行共识产生的投票数据,其中,所述共识数据包括所述区块链网络中的共识节点针对所述目标区块进行共识产生的投票数据;
若确定获取到所述所有共识节点的投票数据,则确定所述共识周期切换数据满足区块共识周期切换条件;
其中,针对第一区块共识周期内生成的目标区块共识完成是指:获取到所述区块链网络中第二数量的共识节点的投票数据之后,根据所述第二数量的共识节点的投票数据确定出所述目标区块对应的共识结果;所述第二数量与所述区块链网络中的共识节点的总数量之间的比值大于或者等于第二数值。
在一实施例中,所述确定获取到所述所有共识节点的投票数据之后,所述确定所述共识周期切换数据满足区块共识周期切换条件之前,所述方法还包括:
获取进入所述第一区块共识周期的空窗期的时长;
若进入所述空窗期的时长超过目标时长,则确定所述共识周期切换数据满足区块共识周期切换条件,其中,所述目标时长小于所述空窗期的预设时长。
在一实施例中,所述方法还包括:
根据获取到的各项所述共识周期切换数据以及获取到各项所述共识周期切换数据的时间信息生成存证数据,并根据所述存证数据生成存证区块;
针对所述存证区块进行上链操作,其中,所述存证区块的区块头中包括所述目标区块的特征数据。
在一实施例中,所述方法还包括:
检测是否启动空窗期跳过机制;
若启动所述空窗期跳过机制,则执行所述从所述区块链网络中获取共识周期切换数据的步骤;
若未启动所述空窗期跳过机制,则获取与所述空窗期跳过机制相关的智能合约的执行函数,并运行所述执行函数启动所述空窗期跳过机制。
在一实施例中,所述将区块共识周期由所述第一区块共识周期切换至第二区块共识周期之后,所述方法还包括:
向所述区块链网络中的共识节点广播进入所述第二区块共识周期的消息。
一方面,本发明实施例提供了一种区块共识周期切换装置,所述装置包括:
处理单元,用于在针对第一区块共识周期内生成的目标区块共识完成后,进入所述第一区块共识周期的空窗期,并在所述空窗期内针对所述目标区块进行上链操作;
收发单元,用于从所述区块链网络中获取共识周期切换数据;
处理单元,还用于若所述共识周期切换数据满足区块共识周期切换条件,则结束所述空窗期,将区块共识周期由所述第一区块共识周期切换至第二区块共识周期;
其中,所述共识周期切换数据包括:所述区块链网络中的共识节点发布的期望切换区块共识周期的消息、与所述目标区块相关的共识数据中的至少一种。
在一实施例中,当所述共识周期切换数据包括所述区块链网络中的共识节点发布的期望切换区块共识周期的消息时,所述处理单元还用于:
根据获取到的所述期望切换区块共识周期的消息确定所述区块链网络中发布所述消息的共识节点的第一数量;获取所述第一数量与所述区块链网络中的共识节点的总数量之间的比值;若所述第一数量与所述总数量之间的比值大于或者等于第一数值,则确定所述共识周期切换数据满足区块共识周期切换条件。
在一实施例中,当所述共识周期切换数据包括与所述目标区块相关的共识数据时,所述处理单元还用于:
根据所述共识数据确定是否获取到所述区块链网络中的所有共识节点针对所述目标区块进行共识产生的投票数据,其中,所述共识数据包括所述区块链网络中的共识节点针对所述目标区块进行共识产生的投票数据;若确定获取到所述所有共识节点的投票数据,则确定所述共识周期切换数据满足区块共识周期切换条件;
其中,针对第一区块共识周期内生成的目标区块共识完成是指:获取到所述区块链网络中第二数量的共识节点的投票数据之后,根据所述第二数量的共识节点的投票数据确定出所述目标区块对应的共识结果;所述第二数量与所述区块链网络中的共识节点的总数量之间的比值大于或者等于第二数值。
在一实施例中,所述区块共识周期切换装置还包括检测单元,所述检测单元用于:
获取进入所述第一区块共识周期的空窗期的时长;若进入所述空窗期的时长超过目标时长,则确定所述共识周期切换数据满足区块共识周期切换条件,其中,所述目标时长小于所述空窗期的预设时长。
在一实施例中,所述处理单元还用于:
根据获取到的各项所述共识周期切换数据以及获取到各项所述共识周期切换数据的时间信息生成存证数据,并根据所述存证数据生成存证区块;针对所述存证区块进行上链操作,其中,所述存证区块的区块头中包括所述目标区块的特征数据。
在一实施例中,所述处理单元还用于:
检测是否启动空窗期跳过机制;若启动所述空窗期跳过机制,则从所述区块链网络中获取共识周期切换数据;若未启动所述空窗期跳过机制,则获取与所述空窗期跳过机制相关的智能合约的执行函数,并运行所述执行函数启动所述空窗期跳过机制。
在一实施例中,所述收发单元,还用于向所述区块链网络中的共识节点广播进入所述第二区块共识周期的消息
一方面,本发明实施例提供了一种计算机设备,包括:处理器、通信接口和存储器,所述处理器、所述通信接口和所述存储器相互连接,其中,所述存储器存储有可执行程序代码,所述处理器用于调用所述可执行程序代码,执行上述区块共识周期切换方法。
相应地,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述区块共识周期切换方法。
本发明实施例中,在第一区块共识周期的空窗期内针对目标区块进行上链操作,可以保证有足够的时间对目标区块进行上链,从而保证目标区块上链的成功率;当共识周期切换数据满足区块共识周期切换条件时,结束第一区块共识周期的空窗期,并进入第二区块共识周期,可以有效减少空窗期所占用的时长,快速进入下一区块共识周期,从而加快共识进程向前推进的进度,有效节省时间和计算机资源,提高业务处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种分布式系统的架构示意图;
图2是本发明实施例提供的一种区块的结构示意图;
图3是本发明实施例提供的一种区块链网络的架构示意图;
图4是本发明实施例提供的一种区块共识周期切换方法的流程示意图;
图5示出了区块共识周期的结构以及区块共识周期之间的关系;
图6示出了图4中步骤S401和步骤S402之间包括的步骤;
图7示出了图4中的区块共识周期切换方法还包括的步骤;
图8是本发明实施例提供的一种区块链网络架构以及区块链的示意图;
图9是本发明实施例提供的一种区块共识周期切换装置的结构示意图;
图10是本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
随着科技时代的到来和移动互联网的发展,网络变革的步伐也愈来愈快,实现同一领域或多个领域的信息融合,为客户提供全方位信息化方案的过程亦面临着体系结构的改进、支撑重心转移等新的挑战。因此,区块链技术作为分布式账本的一种特定实现,凭借其存储和管理数据的天然优势,逐渐成为各个领域存储数据和交易数据的首选方式。
区块链网络是一种分布式系统,分布式系统可以由多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成。参见图1,是本发明实施例提供的分布式系统应用于区块链网络的一个可选的架构示意图。区块链网络由多个节点形成,节点之间形成组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。在区块链网络中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
参见图1示出的区块链网络中各节点的功能,涉及的功能包括:
1)路由,节点具有的基本功能,用于支持节点之间的通信。
节点除具有路由功能外,还可以具有以下功能:
2)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(Block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链网络中节点提交的记录数据,例如交易数据等。
参见图2,是本发明实施例提供的区块结构(Block Structure)的一个可选的示意图,每个区块中包括本区块存储数据记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链(Blockchain)。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链,本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
3)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链网络中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
例如,应用实现的业务包括:
3.1)钱包,用于提供进行虚拟资源的交易的功能,包括发起交易即,将当前交易的交易记录发送给区块链网络中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中。
3.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链网络中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
3.3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的虚拟资源转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
4)共识,用于解决并保证每一笔交易或者数据在所有记账节点上的一致性和正确性问题。区块链的共识机制就是确定达成某种共识和维护共识的方式。区块链的共识机制使其在不依靠中心化组织的情况下,依然大规模高效协作完成运转。
参见图3,是本发明实施例提供的一种区块链网络的架构示意图。如图3所示,区块链网络中的节点可以包括银行、保险公司、政府大楼、商铺、学校以及医院等所对应的终端设备。银行、保险公司、政府大楼、商铺、学校以及医院所对应的终端设备均参与同一区块链网络的管理和处理,并且还可以参与监督交易的合法性,以达到区块链网络对交易数据的处理或存储的公平性。同时,上述提及到的银行、保险公司、政府大楼、商铺、学校以及医院都是分属于不同的领域,不同领域的信息融合和交互可以更好地提升社会工作的质量和效率。区块链网络中的任意节点可以对获取的交易数据进行校验和/或共识,得到的校验结果为校验成功,和/或得到的共识结果为共识通过时,可以基于该交易数据生成区块,并将该区块发布至区块链,以使区块链网络中的其他各个设备均可对该区块进行分布式存储。比如图3所示,区块链网络中的节点可以包括银行、保险公司、政府大楼、商铺、学校以及医院所对应的终端设备,并且银行、保险公司、政府大楼、商铺、学校以及医院可以对同一用户A的身份信息等进行分布式存储,因此该用户A到任意一家机构均可查询到自己的身份信息。
本发明实施例涉及的共识机制中,在当前区块共识周期内对针对目标区块共识完成后,进入下一个区块共识周期之前,先进入当前区块共识周期的空窗期,并在该空窗期内执行将目标区块上链等操作。其中,目标区块是在当前区块共识周期内生成的。将目标区块上链包括:将目标区块添加到本节点存储的区块链上,向区块链网络中的各个节点广播该目标区块,以使得各个节点将该目标区块添加到各自存储的区块链上。其中,区块共识周期是指:共识节点针对区块进行处理的时间段;在区块共识周期内,共识节点所执行的处理包括生成区块、针对区块进行共识、将区块上链等中的一种或者多种。区块共识周期的空窗期是指:区块共识周期中从完成区块共识之后开始到进入下一区块共识周期之前的时间段;在区块共识周期的空窗期内,共识节点进行将区块上链等操作。共识节点是区块链网络中用于进行共识的节点。针对不同的共识机制,区块链网络中共识节点的设置也不同,可以将区块链网络中的任意一个节点都作为共识节点,或者将区块链网络中的部分特定节点作为共识节点。
由于区块链网络中各个节点接收到目标区块的时间不同,各个节点的处理速度不同等因素,会导致各个节点针对目标区块进行上链的处理进度有快有慢;为保证在区块共识周期的空窗期内各个节点有足够的时间进行区块上链处理,所以通常将区块共识周期的空窗期的时长设置得较长,例如5~20ms。针对上述情况,目前只有等待当前区块共识周期的空窗期结束之后才会进入下一个区块共识周期。但如果区块链网络中的所有节点或者绝大多数节点在当前区块共识周期的空窗期结束之前,均已提交区块上链请求或者完成区块上链,此时本可以直接进入下一个区块共识周期;而由于当前区块共识周期的空窗期还未结束,故仍需等待一段空闲时间,直至当前区块共识周期的空窗期结束之后才会进入下一个区块共识周期。而等待的一段空闲时间会导致共识进程停滞不前,无法向前推进,造成时间资源的浪费;并且等待的一段空闲时间内没有业务的处理,这会造成计算机资源的浪费,降低业务处理的效率。
基于此,本发明实施例提供了一种区块共识周期切换方法以解决上述问题。该区块共识周期切换方法包括如下步骤:在针对第一区块共识周期内生成的目标区块共识完成后,进入第一区块共识周期的空窗期,并在空窗期内针对目标区块进行上链操作。在空窗期内实时从区块链网络中获取共识周期切换数据,其中,该共识周期切换数据包括:区块链网络中的共识节点发布的期望切换区块共识周期的消息、与目标区块相关的共识数据中的至少一种。若共识周期切换数据满足区块共识周期切换条件,则结束第一区块共识周期的空窗期,将区块共识周期由第一区块共识周期切换至第二区块共识周期。其中,第一区块共识周期为共识节点的当前区块共识周期,第二区块共识周期为第一区块共识周期的下一个区块共识周期。采用上述方式,可以有效减少空窗期所占用的时长,快速进入下一区块共识周期,从而加快共识进程向前推进的进度,有效节省时间和计算机资源,提高业务处理效率。以上介绍了该区块共识周期切换方法的主要步骤,下面对该区块共识周期切换方法的各个步骤进行详细描述。
本发明实施例提供的区块共识周期切换方法应用于图1所示的区块链网络中的共识节点,共识节点可以是区块链网络中具备出块功能以及共识功能的节点,共识节点可以是区块链网络中存储完整区块链的全节点。共识节点可以是智能手机(如Android手机、iOS手机等)、平板电脑、个人计算机、工作站、服务器、移动互联网设备(Mobile InternetDevices,简称MID)等计算机设备。
请参阅图4,为本发明实施例提供的一种区块共识周期切换方法的流程示意图。本发明实施例中所描述的区块共识周期切换方法由目标共识节点执行,目标共识节点为区块链网络中的任意一个共识节点,所述区块共识周期切换方法包括但不限于以下步骤:
S401、目标共识节点在针对第一区块共识周期内生成的目标区块共识完成后,进入所述第一区块共识周期的空窗期,并在所述空窗期内针对所述目标区块进行上链操作。
本发明实施例中,如图5所示,区块共识周期包括业务处理期和空窗期,业务处理期位于空窗期前。在区块共识周期的业务处理期内,目标共识节点进行的业务处理包括:获取交易数据、根据交易数据生成区块、对生成的区块进行共识等。在区块共识周期的空窗期内,目标共识节点进行将生成的区块上链等操作。其中,目标区块是目标共识节点在第一区块共识周期的业务处理期内生成的。在第一区块共识周期的空窗期内,目标共识节点将目标区块添加到其存储的区块链上,且目标区块处于区块链的最后;目标共识节点通过区块链网络将目标区块广播给区块链网络中的其他各个共识节点,以使得其他各个共识节点将目标区块添加到各自存储的区块链上,且目标区块处于区块链的最后。
在一实施例中,目标共识节点在第一区块共识周期的业务处理期内对目标区块进行共识的过程中,获取与目标区块相关的共识数据,该共识数据包括区块链网络中的共识节点针对目标区块进行共识产生的投票数据。投票数据可以包括共识节点针对目标区块中的交易数据的合法性、和/或该交易数据所对应的各笔交易的执行顺序等进行投票得到的投票结果。针对第一区块共识周期内生成的目标区块共识完成是指:目标共识节点获取到区块链网络中所有共识节点的投票数据之后,根据所有共识节点的投票数据确定出目标区块对应的共识结果;或者,目标共识节点获取到区块链网络中第二数量的共识节点的投票数据之后,根据该第二数量的共识节点的投票数据确定出目标区块对应的共识结果;其中,第二数量与区块链网络中的共识节点的总数量之间的比值大于或者等于第二数值,该第二数值小于1,例如为3/4。在一实施方式中,该第二数值大于1/2且小于1。
在一实施例中,目标共识节点针对目标区块进行上链操作的方式可以为:先根据确定出的目标区块对应的共识结果,对目标区块中的数据进行调整。其中,对目标区块中的数据进行调整包括:将该共识结果写入目标区块的区块体中;将目标区块的区块头包括的本区块的哈希值,调整为根据当前区块体中的交易数据以及共识结果确定出的新哈希值等。在一实施方式中,对目标区块中的数据进行调整还可以包括:将目标区块的区块头中的时间戳调整为根据当前时间确定的时间戳;将获取到的各个共识节点针对目标区块进行共识产生的投票数据写入目标区块的区块体中等。目标共识节点对目标区块中的数据进行上述调整后,得到数据调整后的目标区块。进一步地,目标共识节点针对数据调整后的目标区块进行上链操作。
S402、所述目标共识节点从所述区块链网络中获取共识周期切换数据。
本发明实施例中,在进入第一区块共识周期的空窗期之后,目标共识节点从区块链网络中实时获取共识周期切换数据。共识周期切换数据包括:区块链网络中的共识节点发布的期望切换区块共识周期的消息、与目标区块相关的共识数据中的至少一种。
其中,区块链网络中的任一共识节点接收到目标共识节点通过区块链网络广播的目标区块之后,针对目标区块进行上链操作,包括针对目标区块向共识节点的执行模块提交上链请求、通过该执行模块将目标区块添加到共识节点存储的区块链上等。共识节点针对目标区块提交了上链请求或者将目标区块上链完成之后,在区块链网络中广播期望切换区块共识周期的消息;该消息携带共识节点的标识,该标识可以是共识节点的区块链地址、硬件地址、网络地址等可以唯一标识共识节点的字符串。目标共识节点在第一区块共识周期的空窗期内,实时接收区块链网络中任一共识节点广播的期望切换区块共识周期的消息。
其中,与目标区块相关的共识数据包括:区块链网络中的共识节点针对目标区块进行共识产生的投票数据。投票数据可以包括共识节点针对目标区块中的交易数据的合法性、和/或该交易数据所对应的各笔交易的执行顺序等进行投票得到的投票结果。当针对第一区块共识周期内生成的目标区块共识完成是指:目标共识节点获取到区块链网络中第二数量的共识节点的投票数据之后,根据该第二数量的共识节点的投票数据确定出目标区块对应的共识结果时,也即是在第一区块共识周期的业务处理期内只接收到部分共识节点的投票数据时,目标共识节点在第一区块共识周期的空窗期内继续接收其余共识节点的投票数据。
进一步地,目标共识节点对获取到的共识周期切换数据进行分析,确定该共识周期切换数据是否满足区块共识周期切换条件。若该共识周期切换数据满足区块共识周期切换条件,则执行步骤S403。
在一实施例中,当共识周期切换数据包括区块链网络中的共识节点发布的期望切换区块共识周期的消息时,目标共识节点对共识周期切换数据进行分析的方式为:根据获取到的期望切换区块共识周期的消息确定区块链网络中发布该消息的共识节点的第一数量。在一实施方式中,目标共识节点接收到期望切换区块共识周期的消息之后,提取并记录该消息包括的共识节点的标识,将记录的标识的数量确定为该第一数量。进一步地,目标共识节点获取该第一数量与区块链网络中的共识节点的总数量之间的比值,并检查该比值是否大于或者等于第一数值,第一数值小于或者等于1,例如是2/3。在一实施方式中,该第一数值大于1/2且小于或者等于1。若该第一数量与该总数量之间的比值大于或者等于第一数值,则表明区块链网络中大部分的共识节点均已完成了目标区块的上链或者针对目标区块提交了上链请求,也即是表明大部分的共识节点可以成功完成目标区块的上链,此时可以切换至下一个区块共识周期。基于此,目标共识节点可以确定共识周期切换数据满足区块共识周期切换条件。
在另一实施例中,当共识周期切换数据包括与目标区块相关的共识数据时,目标共识节点对共识周期切换数据进行分析的方式为:根据在第一区块共识周期的业务处理期和空窗期获取到的共识数据,确定是否获取到区块链网络中的所有共识节点针对目标区块进行共识产生的投票数据。若确定获取到所有共识节点的投票数据,则表明在第一区块共识周期的空窗期内接收到了全部其余共识节点的投票数据;而在接收其余共识节点的投票数据的期间内,在第一区块共识周期的业务处理期内接收到的投票数据所对应的第二数量的共识节点,会针对目标区块进行上链操作;当在第一区块共识周期的空窗期内接收到了全部其余共识节点的投票数据时,通常该第二数量的共识节点中的大部分共识节点,已完成了目标区块的上链或者针对目标区块提交了上链请求,也即是表明大部分的共识节点可以成功完成目标区块的上链,此时可以切换至下一个区块共识周期;基于此,目标共识节点可以确定共识周期切换数据满足区块共识周期切换条件。
在一实施方式中,目标共识节点确定获取到所有共识节点的投票数据之后,获取进入第一区块共识周期的空窗期的时长,并检测进入该空窗期的时长是否超过目标时长,该目标时长小于该空窗期的预设时长;若检测到进入该空窗期的时长超过目标时长,则可以进一步表明大部分的共识节点已完成了目标区块的上链或者针对目标区块提交了上链请求,此时可以切换至下一个区块共识周期;基于此,目标共识节点可以确定共识周期切换数据满足区块共识周期切换条件。若检测到进入该空窗期的时长未超过目标时长,为保证该第二数量的共识节点中的大部分共识节点,成功完成目标区块的上链或者针对目标区块提交了上链请求,则等待一段空闲时间,直至进入该空窗期的时长超过目标时长,才确定满足区块共识周期切换条件。采用上述方式,可以进一步保证大部分的共识节点能够成功完成目标区块的上链,进而保证判断是否满足区块共识周期切换条件的准确性。
在又一实施例中,当共识周期切换数据包括:区块链网络中的共识节点发布的期望切换区块共识周期的消息,以及与目标区块相关的共识数据时,目标共识节点对共识周期切换数据进行分析的方式为:确定区块链网络中发布期望切换区块共识周期的消息的共识节点的第一数量,以及确定是否获取到区块链网络中的所有共识节点的投票数据;若第一数量与区块链网络中的共识节点的总数量之间的比值大于或者等于第一数值,且确定获取到区块链网络中所有共识节点的投票数据,则确定共识周期切换数据满足区块共识周期切换条件。采用上述方式,可以进一步保证大部分的共识节点能够成功完成目标区块的上链,进而保证判断是否满足区块共识周期切换条件的准确性。
S403、若所述共识周期切换数据满足区块共识周期切换条件,所述目标共识节点则结束所述空窗期,将区块共识周期由所述第一区块共识周期切换至第二区块共识周期。其中,第二区块共识周期为第一区块共识周期的下一个区块共识周期。
如图5所示,第一区块共识周期的空窗期本应在T1时刻结束,并在T1时刻进入第二区块共识周期。当在第一区块共识周期的空窗期内的T2时刻,检测到共识周期切换数据满足区块共识周期切换条件时,结束第一区块共识周期的空窗期的剩余部分(T2时刻至T1时刻),并在T2时刻进入第二区块共识周期。
在一实施例中,将区块共识周期由第一区块共识周期切换至第二区块共识周期之后,目标共识节点向区块链网络中的共识节点广播进入第二区块共识周期的消息,以使得各共识节点知悉已进入下一区块共识周期,并做好在下一区块高度上进行共识的准备,还可以促进区块链网络中未完成目标区块上链的的共识节点加快上链进度。
采用上述方式,在第一区块共识周期的空窗期内针对目标区块进行上链操作,可以保证有足够的时间对目标区块进行上链,从而保证目标区块上链的成功率;当共识周期切换数据满足区块共识周期切换条件时,结束第一区块共识周期的空窗期,并进入第二区块共识周期,可以有效减少空窗期所占用的时长,快速进入下一区块共识周期,从而加快共识进程向前推进的进度,有效节省时间和计算机资源,提高业务处理效率。
本发明实施例中,对于切换到第二区块共识周期后仍未完成目标区块上链的共识节点,可以在进入第二区块共识周期的空窗期之前的任意空闲时间,继续针对目标区块进行上链操作;也可以在第二区块共识周期的空窗期内,针对目标区块以及第二区块共识周期内生成的区块同时进行上链操作。在其他实施方式中,对于切换到第二区块共识周期后仍未完成目标区块上链的共识节点,可以先取消对目标区块上链的操作,并在任意空闲时间或者在进入第二区块共识周期的空窗期之前的任意空闲时间,根据区块链网络中任一已完成目标区块上链的共识节点存储的区块链,对自身存储的区块链进行更新,以完成目标区块的上链。
在一实施例中,目标共识节点从区块链网络中获取共识周期切换数据之前,也即是步骤S401之后,步骤S402之前,本发明实施例提供的区块共识周期切换方法还可以包括如图6所示的以下步骤:
S601、所述目标共识节点检测是否启动空窗期跳过机制,若启动所述空窗期跳过机制,则执行步骤S402,从所述区块链网络中获取共识周期切换数据;若未启动所述空窗期跳过机制,则执行步骤S602。
本发明实施例中,空窗期跳过机制是指:当在区块共识周期的空窗期内检测到满足区块共识周期切换条件时,即使当前空窗期还未结束,也直接跳过当前空窗期的剩余部分,以切换至下一个区块共识周期。若检测到已启动空窗期跳过机制,则自动从区块链网络中实时获取共识周期切换数据,并自动对共识周期切换数据进行分析,以确定共识周期切换数据是否满足区块共识周期切换条件。反之,若检测到未启动空窗期跳过机制,则执行步骤S602。
S602、所述目标共识节点获取与所述空窗期跳过机制相关的智能合约的执行函数,并运行所述执行函数启动所述空窗期跳过机制。
采用上述方式,可以利用智能合约来启动空窗期跳过机制,一方面可以增加空窗期跳过机制的启动方式的多样性,另一方面可以保证只有在智能合约支持自启动空窗期跳过机制时,才自启动空窗期跳过机制,有效提高安全性。
在一实施例中,若检测到未启动空窗期跳过机制,目标共识节点向区块链网络中的各个共识节点广播空窗期跳过机制启动请求,以使得各个共识节点响应该空窗期跳过机制启动请求,针对是否同意启动空窗期跳过机制进行投票。目标共识节点接收各个共识节点的投票结果,并对接收到的投票结果进行分析;若同意启动空窗期跳过机制的共识节点的数量,与区块链网络中的共识节点的总数量之间的比值大于或者等于第三数值,则获取与空窗期跳过机制相关的智能合约的执行函数,并运行该执行函数启动空窗期跳过机制。其中,第三数值小于或者等于1。在一实施方式中,第三数值大于1/2且小于或者等于1。采用上述方式,可以针对是否启动空窗期跳过机制进行共识,以保证启动空窗期跳过机制的认可性,有效提高安全性。
在一实施例中,本发明实施例提供的区块共识周期切换方法还可以包括如图7所示的以下步骤:
S701、所述目标共识节点根据获取到的各项所述共识周期切换数据以及获取到各项所述共识周期切换数据的时间信息生成存证数据,并根据所述存证数据生成存证区块。
本发明实施例中,存证数据包括:获取到的共识周期切换数据所对应的各个共识节点标识与相应共识周期切换数据的获取时间之间的映射关系。在一实施方式中,存证数据还包括获取到的各项共识周期切换数据。目标共识节点将存证数据写入区块的区块体中,生成存证区块。
S702、所述目标共识节点针对所述存证区块进行上链操作。
本发明实施例中,存证区块的区块头中包括目标区块的特征数据,该特征数据包括目标区块的哈希值等。如图8所示,目标共识节点将存证区块添加到其存储的区块链上,且存证区块处于目标区块的后面;目标共识节点通过区块链网络将存证区块广播给区块链网络中的各个共识节点,以使得各个共识节点将存证区块添加到各自存储的区块链上,且存证区块处于目标区块的后面。
上述方式中,存证区块中的数据可以用于证明是在满足区块共识周期切换条件时,才将区块共识周期由第一区块共识周期切换至第二区块共识周期的。因此,将存证区块添加到区块链中,可以实现对区块共识周期切换的合理性进行存证。需要说明的是,步骤S701可以是在第一区块共识周期的空窗期内执行的,也可以是在第二区块共识周期内执行的;步骤S702位于步骤S701之后,步骤S702可以是在第一区块共识周期的空窗期内执行的,也可以是在第二区块共识周期内执行的。
请参阅图9,图9为本发明实施例提供的一种区块共识周期切换装置的结构示意图。区块共识周期切换装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该区块共识周期切换装置为一个应用软件;该装置可以用于执行本申请实施例提供的区块共识周期切换方法中的相应步骤。本发明实施例中所描述的区块共识周期切换装置对应前文所述的区块链网络中的目标共识节点,所述装置包括:
处理单元901,用于在针对第一区块共识周期内生成的目标区块共识完成后,进入所述第一区块共识周期的空窗期,并在所述空窗期内针对所述目标区块进行上链操作;
收发单元902,用于从所述区块链网络中获取共识周期切换数据,其中,所述共识周期切换数据包括:所述区块链网络中的共识节点发布的期望切换区块共识周期的消息、与所述目标区块相关的共识数据中的至少一种;
处理单元901,还用于若所述共识周期切换数据满足区块共识周期切换条件,则结束所述空窗期,将区块共识周期由所述第一区块共识周期切换至第二区块共识周期。
在一实施例中,当所述共识周期切换数据包括所述区块链网络中的共识节点发布的期望切换区块共识周期的消息时,所述处理单元901还用于:
根据获取到的所述期望切换区块共识周期的消息确定所述区块链网络中发布所述消息的共识节点的第一数量;获取所述第一数量与所述区块链网络中的共识节点的总数量之间的比值;若所述第一数量与所述总数量之间的比值大于或者等于第一数值,则确定所述共识周期切换数据满足区块共识周期切换条件。
在一实施例中,当所述共识周期切换数据包括与所述目标区块相关的共识数据时,所述处理单元901还用于:
根据所述共识数据确定是否获取到所述区块链网络中的所有共识节点针对所述目标区块进行共识产生的投票数据,其中,所述共识数据包括所述区块链网络中的共识节点针对所述目标区块进行共识产生的投票数据;若确定获取到所述所有共识节点的投票数据,则确定所述共识周期切换数据满足区块共识周期切换条件;
其中,针对第一区块共识周期内生成的目标区块共识完成是指:获取到所述区块链网络中第二数量的共识节点的投票数据之后,根据所述第二数量的共识节点的投票数据确定出所述目标区块对应的共识结果;所述第二数量与所述区块链网络中的共识节点的总数量之间的比值大于或者等于第二数值。
在一实施例中,所述区块共识周期切换装置还包括检测单元903,用于获取进入所述第一区块共识周期的空窗期的时长;若进入所述空窗期的时长超过目标时长,则确定所述共识周期切换数据满足区块共识周期切换条件,其中,所述目标时长小于所述空窗期的预设时长。
在一实施例中,所述处理单元901还用于:根据获取到的各项所述共识周期切换数据以及获取到各项所述共识周期切换数据的时间信息生成存证数据,并根据所述存证数据生成存证区块;针对所述存证区块进行上链操作,其中,所述存证区块的区块头中包括所述目标区块的特征数据。
在一实施例中,所述处理单元901还用于:检测是否启动空窗期跳过机制;若启动所述空窗期跳过机制,则从所述区块链网络中获取共识周期切换数据;若未启动所述空窗期跳过机制,则获取与所述空窗期跳过机制相关的智能合约的执行函数,并运行所述执行函数启动所述空窗期跳过机制。
在一实施例中,所述收发单元902,还用于向所述区块链网络中的共识节点广播进入所述第二区块共识周期的消息。
可以理解的是,本发明实施例的区块共识周期切换装置的各功能单元的功能可根据上述方法实施例中目标共识节点所执行的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
请参阅图10,图10为本发明实施例提供的一种计算机设备的结构示意图。本发明实施例中所描述的计算机设备对应前文所述的区块链网络中的目标共识节点,包括:处理器1001、通信接口1002及存储器1003。其中,处理器1001、通信接口1002及存储器1003可通过总线或其他方式连接,本发明实施例以通过总线连接为例。
其中,处理器1001(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其可以解析计算机设备内的各类指令以及处理计算机设备的各类数据,例如:CPU可以用于解析用户向计算机设备所发送的开关机指令,并控制计算机设备进行开关机操作;再如:CPU可以在计算机设备内部结构之间传输各类交互数据,等等。通信接口1002可选的可以包括标准的有线接口、无线接口(如Wi-Fi、移动通信接口等),受处理器1001的控制用于收发数据。存储器1003(Memory)是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器1003既可以包括计算机设备的内置存储器,当然也可以包括计算机设备所支持的扩展存储器。存储器1003提供存储空间,该存储空间存储了计算机设备的操作系统,可包括但不限于:Android系统、iOS系统、Windows Phone系统等等,本发明对此并不作限定。
在本发明实施例中,处理器1001通过运行存储器1003中的可执行程序代码,执行如下操作:
在针对第一区块共识周期内生成的目标区块共识完成后,进入所述第一区块共识周期的空窗期,并在所述空窗期内针对所述目标区块进行上链操作;通过通信接口1002从所述区块链网络中获取共识周期切换数据;若所述共识周期切换数据满足区块共识周期切换条件,则结束所述空窗期,将区块共识周期由所述第一区块共识周期切换至第二区块共识周期;其中,所述共识周期切换数据包括:所述区块链网络中的共识节点发布的期望切换区块共识周期的消息、与所述目标区块相关的共识数据中的至少一种。
在一实施例中,当所述共识周期切换数据包括所述区块链网络中的共识节点发布的期望切换区块共识周期的消息时,所述处理器1001还用于:根据获取到的所述期望切换区块共识周期的消息确定所述区块链网络中发布所述消息的共识节点的第一数量;获取所述第一数量与所述区块链网络中的共识节点的总数量之间的比值;若所述第一数量与所述总数量之间的比值大于或者等于第一数值,则确定所述共识周期切换数据满足区块共识周期切换条件。
在一实施例中,当所述共识周期切换数据包括与所述目标区块相关的共识数据时,所述处理器1001还用于:根据所述共识数据确定是否获取到所述区块链网络中的所有共识节点针对所述目标区块进行共识产生的投票数据,其中,所述共识数据包括所述区块链网络中的共识节点针对所述目标区块进行共识产生的投票数据;若确定获取到所述所有共识节点的投票数据,则确定所述共识周期切换数据满足区块共识周期切换条件;其中,针对第一区块共识周期内生成的目标区块共识完成是指:获取到所述区块链网络中第二数量的共识节点的投票数据之后,根据所述第二数量的共识节点的投票数据确定出所述目标区块对应的共识结果;所述第二数量与所述区块链网络中的共识节点的总数量之间的比值大于或者等于第二数值。
在一实施例中,所述处理器1001确定获取到所述所有共识节点的投票数据之后,确定所述共识周期切换数据满足区块共识周期切换条件之前,还用于:获取进入所述第一区块共识周期的空窗期的时长;若进入所述空窗期的时长超过目标时长,则确定所述共识周期切换数据满足区块共识周期切换条件,其中,所述目标时长小于所述空窗期的预设时长。
在一实施例中,所述处理器1001还用于:根据获取到的各项所述共识周期切换数据以及获取到各项所述共识周期切换数据的时间信息生成存证数据,并根据所述存证数据生成存证区块;针对所述存证区块进行上链操作,其中,所述存证区块的区块头中包括所述目标区块的特征数据。
在一实施例中,所述处理器1001从所述区块链网络中获取共识周期切换数据之前,还用于:检测是否启动空窗期跳过机制;若启动所述空窗期跳过机制,则从所述区块链网络中获取共识周期切换数据;若未启动所述空窗期跳过机制,则获取与所述空窗期跳过机制相关的智能合约的执行函数,并运行所述执行函数启动所述空窗期跳过机制。
在一实施例中,处理器1001将区块共识周期由所述第一区块共识周期切换至第二区块共识周期之后,还用于:通过通信接口1002向所述区块链网络中的共识节点广播进入所述第二区块共识周期的消息。
具体实现中,本发明实施例中所描述的处理器1001、通信接口1002及存储器1003可执行本发明实施例提供的一种区块共识周期切换方法中所描述的实现方式,也可执行本发明实施例提供的如图9所示的区块共识周期切换装置中所描述的实现方式,在此不再赘述。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如本发明实施例所述的区块共识周期切换方法。
本发明实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如本发明实施例所述的区块共识周期切换方法。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random AccessMemory,RAM)、磁盘或光盘等。
以上所揭露的仅为本发明部分实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (10)

1.一种区块共识周期切换方法,其特征在于,所述方法由区块链网络中的共识节点执行,所述方法包括:
在针对第一区块共识周期内生成的目标区块共识完成后,进入所述第一区块共识周期的空窗期,并在所述空窗期内针对所述目标区块进行上链操作;
从所述区块链网络中获取共识周期切换数据;
若所述共识周期切换数据满足区块共识周期切换条件,则结束所述空窗期,将区块共识周期由所述第一区块共识周期切换至第二区块共识周期;
其中,所述共识周期切换数据包括:所述区块链网络中的共识节点发布的期望切换区块共识周期的消息、与所述目标区块相关的共识数据中的至少一种。
2.如权利要求1所述的方法,其特征在于,当所述共识周期切换数据包括所述区块链网络中的共识节点发布的期望切换区块共识周期的消息时,所述方法还包括:
根据获取到的所述期望切换区块共识周期的消息确定所述区块链网络中发布所述消息的共识节点的第一数量;
获取所述第一数量与所述区块链网络中的共识节点的总数量之间的比值;
若所述第一数量与所述总数量之间的比值大于或者等于第一数值,则确定所述共识周期切换数据满足区块共识周期切换条件。
3.如权利要求1所述的方法,其特征在于,当所述共识周期切换数据包括与所述目标区块相关的共识数据时,所述方法还包括:
根据所述共识数据确定是否获取到所述区块链网络中的所有共识节点针对所述目标区块进行共识产生的投票数据,其中,所述共识数据包括所述区块链网络中的共识节点针对所述目标区块进行共识产生的投票数据;
若确定获取到所述所有共识节点的投票数据,则确定所述共识周期切换数据满足区块共识周期切换条件;
其中,针对第一区块共识周期内生成的目标区块共识完成是指:获取到所述区块链网络中第二数量的共识节点的投票数据之后,根据所述第二数量的共识节点的投票数据确定出所述目标区块对应的共识结果;所述第二数量与所述区块链网络中的共识节点的总数量之间的比值大于或者等于第二数值。
4.如权利要求3所述的方法,其特征在于,所述确定获取到所述所有共识节点的投票数据之后,所述确定所述共识周期切换数据满足区块共识周期切换条件之前,所述方法还包括:
获取进入所述第一区块共识周期的空窗期的时长;
若进入所述空窗期的时长超过目标时长,则确定所述共识周期切换数据满足区块共识周期切换条件,其中,所述目标时长小于所述空窗期的预设时长。
5.如权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:
根据获取到的各项所述共识周期切换数据以及获取到各项所述共识周期切换数据的时间信息生成存证数据,并根据所述存证数据生成存证区块;
针对所述存证区块进行上链操作,其中,所述存证区块的区块头中包括所述目标区块的特征数据。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
检测是否启动空窗期跳过机制;
若启动所述空窗期跳过机制,则执行所述从所述区块链网络中获取共识周期切换数据的步骤;
若未启动所述空窗期跳过机制,则获取与所述空窗期跳过机制相关的智能合约的执行函数,并运行所述执行函数启动所述空窗期跳过机制。
7.如权利要求1所述的方法,其特征在于,所述将区块共识周期由所述第一区块共识周期切换至第二区块共识周期之后,所述方法还包括:
向所述区块链网络中的共识节点广播进入所述第二区块共识周期的消息。
8.一种区块共识周期切换装置,其特征在于,所述装置包括:
处理单元,用于在针对第一区块共识周期内生成的目标区块共识完成后,进入所述第一区块共识周期的空窗期,并在所述空窗期内针对所述目标区块进行上链操作;
收发单元,用于从所述区块链网络中获取共识周期切换数据;
处理单元,还用于若所述共识周期切换数据满足区块共识周期切换条件,则结束所述空窗期,将区块共识周期由所述第一区块共识周期切换至第二区块共识周期;
其中,所述共识周期切换数据包括:所述区块链网络中的共识节点发布的期望切换区块共识周期的消息、与所述目标区块相关的共识数据中的至少一种。
9.一种计算机设备,其特征在于,包括:处理器、通信接口和存储器,所述处理器、所述通信接口和所述存储器相互连接,其中,所述存储器存储有可执行程序代码,所述处理器用于调用所述可执行程序代码,执行如权利要求1-7任一项所述的区块共识周期切换方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如权利要求1-7任一项所述的区块共识周期切换方法。
CN202010250317.6A 2020-04-01 2020-04-01 一种区块共识周期切换方法、装置及计算机设备 Active CN111464356B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010250317.6A CN111464356B (zh) 2020-04-01 2020-04-01 一种区块共识周期切换方法、装置及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010250317.6A CN111464356B (zh) 2020-04-01 2020-04-01 一种区块共识周期切换方法、装置及计算机设备

Publications (2)

Publication Number Publication Date
CN111464356A true CN111464356A (zh) 2020-07-28
CN111464356B CN111464356B (zh) 2021-11-05

Family

ID=71681168

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010250317.6A Active CN111464356B (zh) 2020-04-01 2020-04-01 一种区块共识周期切换方法、装置及计算机设备

Country Status (1)

Country Link
CN (1) CN111464356B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726370A (zh) * 2020-08-21 2020-09-29 支付宝(杭州)信息技术有限公司 一种自动切换区块链共识协议的方法、系统和装置
CN112398956A (zh) * 2021-01-20 2021-02-23 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、设备及可读存储介质
CN113067707A (zh) * 2021-06-02 2021-07-02 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、设备及可读存储介质
WO2023179056A1 (zh) * 2022-03-24 2023-09-28 腾讯科技(深圳)有限公司 区块链网络的共识处理方法、装置、设备及存储介质、程序产品

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108074177A (zh) * 2017-12-05 2018-05-25 深圳前海微众银行股份有限公司 数据对账方法、系统和计算机可读存储介质
CN108768665A (zh) * 2018-07-02 2018-11-06 上海达家迎信息科技有限公司 区块链生成方法、装置、计算机设备以及存储介质
CA2995772A1 (en) * 2018-02-21 2019-08-21 Beijing Tiande Technologies Limited A method of block building based on byzantine consensus via four rounds of communication
US20190294514A1 (en) * 2017-03-10 2019-09-26 Alibaba Group Holding Limited Consensus method and apparatus
EP3547648A1 (en) * 2017-03-28 2019-10-02 Alibaba Group Holding Limited Service processing and consensus method and device
CN110430064A (zh) * 2017-03-30 2019-11-08 腾讯科技(深圳)有限公司 区块链系统、消息处理方法及存储介质
CN110912990A (zh) * 2019-11-21 2020-03-24 腾讯科技(深圳)有限公司 一种共识周期的更新方法及相关设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190294514A1 (en) * 2017-03-10 2019-09-26 Alibaba Group Holding Limited Consensus method and apparatus
EP3547648A1 (en) * 2017-03-28 2019-10-02 Alibaba Group Holding Limited Service processing and consensus method and device
CN110430064A (zh) * 2017-03-30 2019-11-08 腾讯科技(深圳)有限公司 区块链系统、消息处理方法及存储介质
CN110445619A (zh) * 2017-03-30 2019-11-12 腾讯科技(深圳)有限公司 区块链系统、消息处理方法及存储介质
CN108074177A (zh) * 2017-12-05 2018-05-25 深圳前海微众银行股份有限公司 数据对账方法、系统和计算机可读存储介质
CA2995772A1 (en) * 2018-02-21 2019-08-21 Beijing Tiande Technologies Limited A method of block building based on byzantine consensus via four rounds of communication
CN108768665A (zh) * 2018-07-02 2018-11-06 上海达家迎信息科技有限公司 区块链生成方法、装置、计算机设备以及存储介质
CN110912990A (zh) * 2019-11-21 2020-03-24 腾讯科技(深圳)有限公司 一种共识周期的更新方法及相关设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HUAQING LI;XIAOFENG LIAO;TINGWEN HUANG: ""Second-Order Locally Dynamical Consensus of Multiagent Systems With Arbitrarily Fast Switching Directed Topologies"", 《IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS: SYSTEMS》 *
佚名: ""[区块链] 共识算法之争(PBFT,Raft,PoW,PoS,DPoS,Ripple)"", 《HTTPS://BLOG.CSDN.NET/WEIXIN_30412167/ARTICLE/DETAILS/95919349》 *
郑敏; 王虹; 刘洪; 谭冲: ""区块链共识算法研究综述"", 《信息网络安全》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726370A (zh) * 2020-08-21 2020-09-29 支付宝(杭州)信息技术有限公司 一种自动切换区块链共识协议的方法、系统和装置
CN111726370B (zh) * 2020-08-21 2020-11-27 支付宝(杭州)信息技术有限公司 一种自动切换区块链共识协议的方法、系统和装置
CN112398956A (zh) * 2021-01-20 2021-02-23 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、设备及可读存储介质
CN113067707A (zh) * 2021-06-02 2021-07-02 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、设备及可读存储介质
WO2022252941A1 (zh) * 2021-06-02 2022-12-08 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、设备及可读存储介质
WO2023179056A1 (zh) * 2022-03-24 2023-09-28 腾讯科技(深圳)有限公司 区块链网络的共识处理方法、装置、设备及存储介质、程序产品

Also Published As

Publication number Publication date
CN111464356B (zh) 2021-11-05

Similar Documents

Publication Publication Date Title
CN111464356B (zh) 一种区块共识周期切换方法、装置及计算机设备
CN111507717B (zh) 数据处理方法、装置、区块节点及计算机可读存储介质
CN111698315B (zh) 针对区块的数据处理方法、数据处理装置及计算机设备
CN108924130B (zh) 一种区块数据的验证方法、装置、设备和存储介质
CN112073269B (zh) 区块链网络测试方法、装置、服务器及存储介质
CN108492108A (zh) 区块链跨链通信方法、系统和计算机可读存储介质
CN109802916B (zh) 资源转移方法、系统、服务器和计算机可读存储介质
CN111460504B (zh) 业务处理方法、装置、节点设备及存储介质
JP2021517324A (ja) 媒体リソース割当方法、装置、システム、コンピュータプログラム及びコンピュータ装置
CN113409045B (zh) 一种基于区块链的数据处理方法、装置及电子设备
CN110955724A (zh) 基于区块链的数据处理方法、装置、节点设备及存储介质
CN103621049A (zh) 用于在多点网络中自动分配地址给设备的系统和方法
CN109002349B (zh) 应用程序交互方法、实现方法、装置、设备和介质
CN110597922B (zh) 数据处理方法、装置、终端及存储介质
CN109101664B (zh) 一种轻量级节点的数据传输方法、装置、设备和介质
CN109819023B (zh) 分布式事务处理方法及相关产品
CN111324661A (zh) 基于区块链的用户合作方法、设备及介质
CN112685391B (zh) 一种服务数据迁移方法、装置、计算机设备和存储介质
CN115131022B (zh) 基于区块链的数字资产交易方法、装置、设备及介质
CN115509754A (zh) 一种业务数据处理方法、装置、电子设备及存储介质
CN112991023B (zh) 订单数据处理方法、装置、计算机设备和存储介质
CN112040015B (zh) 一种共识节点列表生成方法及相关装置
CN113765942A (zh) 一种云算力分配方法、用户终端、云算力平台和系统
CN110351362A (zh) 数据验证方法、设备及计算机可读存储介质
CN112565370B (zh) 基于无线通信与区块链场景的计算结果验证方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40026390

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant