CN112150146A - 区块链的区块处理方法、装置、设备及存储介质 - Google Patents

区块链的区块处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112150146A
CN112150146A CN202011004635.0A CN202011004635A CN112150146A CN 112150146 A CN112150146 A CN 112150146A CN 202011004635 A CN202011004635 A CN 202011004635A CN 112150146 A CN112150146 A CN 112150146A
Authority
CN
China
Prior art keywords
transaction
information
target block
block
current
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
CN202011004635.0A
Other languages
English (en)
Other versions
CN112150146B (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.)
JD Digital Technology Holdings Co Ltd
Original Assignee
JD Digital Technology Holdings 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 JD Digital Technology Holdings Co Ltd filed Critical JD Digital Technology Holdings Co Ltd
Priority to CN202011004635.0A priority Critical patent/CN112150146B/zh
Publication of CN112150146A publication Critical patent/CN112150146A/zh
Application granted granted Critical
Publication of CN112150146B publication Critical patent/CN112150146B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • 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

Abstract

本发明实施例提供一种区块链的区块处理方法、装置、设备及存储介质,通过区块链网络中的共识节点接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;检测是否存在与当前交易冲突的交易,若不存在则在第一交易信息中添加授权信息并返回给客户端;接收客户端向所有共识节点发送的包括多个共识节点的授权信息的第二交易信息,根据交易提交时间以及多个共识节点的授权信息中的签名信息进行验证;验证通过后将当前交易的相关信息写入到目标区块中。本发明实施例中可以避免交易冲突的发生,也可避免交易超时,保证区块可以实现正常、高效的打包,且一个区块中可以写入不同客户端的交易信息,提高了区块的使用范围。

Description

区块链的区块处理方法、装置、设备及存储介质
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种区块链的区块处理方法、装置、设备及存储介质。
背景技术
随着区块链技术的发展和广泛应用,越来越多的区块链系统应运而生。目前业内有各种各样的共识算法,利用分布式系统的Quorum机制的共识算法也是其中之一,在不少的区块链系统中也会使用。
其中,Quorum机制是一种分布式系统中常用的机制,用来保证数据冗余和最终一致性的投票算法,目前业内有几种使用该机制进行共识的协议,包括Q/U协议,HQ协议及Quorum协议等,他们的处理方案大同小异,都是由客户端发送请求至所有共识节点,共识节点收到消息后进行验证,回复附带自己签名信息;客户端根据共识节点的应答,发送交易提交请求至所有共识节点,所有节点执行交易提交请求,也即根据交易提交请求生成区块。
现有的共识机制无法处理有竞争的情况,因为客户端的数量可能很多,对于每一个客户端而言,其无法知道其他客户端的存在,若多个客户端同时对一个账户进行操作就会产生竞争,但这个竞争对于客户端而言是不可知的,可能导致写入区块失败,此外现有的共识机制也无法处理多客户端交易同时打包问题。
发明内容
本发明实施例提供一种区块链的区块处理方法、装置、设备及存储介质,用以避免交易冲突的发生,使得区块可以实现正常、高效的打包。
第一方面,本发明实施例提供一种区块链的区块处理方法,应用于区块链网络中的任一共识节点,所述方法包括:
接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;
根据所述第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在所述第一交易信息中添加授权信息,并将所述第一交易信息返回给所述客户端,所述授权信息包括交易提交时间以及所述共识节点的签名信息;
接收所述客户端向所有共识节点发送的第二交易信息,所述第二交易信息中包括多个共识节点的授权信息;
根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证;
在验证通过后将所述当前交易的相关信息写入到目标区块中。
第二方面,本发明实施例提供一种区块链的区块处理装置,应用于区块链网络中的任一共识节点,所述装置包括:
接收模块,用于接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;
验证模块,用于根据所述第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在所述第一交易信息中添加授权信息,并将所述第一交易信息返回给所述客户端,所述授权信息包括交易提交时间以及所述共识节点的签名信息;
所述接收模块还用于,接收所述客户端向所有共识节点发送的第二交易信息,所述第二交易信息中包括多个共识节点的授权信息;
所述验证模块还用于,根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证;
处理模块,用于在验证通过后将所述当前交易的相关信息写入到目标区块中。
第三方面,本发明实施例提供一种电子设备,包括:至少一个处理器;以及存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面所述的方法。
本发明实施例提供的区块链的区块处理方法、装置、设备及存储介质,通过区块链网络中的共识节点接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;根据第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在第一交易信息中添加授权信息,并将添加授权信息的第一交易信息返回给客户端,授权信息包括交易提交时间以及共识节点的签名信息;接收客户端向所有共识节点发送的第二交易信息,第二交易信息中包括多个共识节点的授权信息;根据交易提交时间以及多个共识节点的授权信息中的签名信息,对第二交易信息进行验证;在验证通过后将当前交易的相关信息写入到目标区块中。本发明实施例中通过根据客户端发送的当前交易的第一交易信息进行检测是否存在与当前交易冲突的交易,可以避免交易冲突的发生,且限定客户端在交易提交时间内发送第二交易信息,可避免交易超时,也能够使得区块可以实现正常、高效的打包,且一个区块中可以写入不同客户端的交易信息,提高了区块的使用范围。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本发明一实施例提供的区块链的区块处理方法的场景图;
图2为本发明一实施例提供的区块链的区块处理方法的流程图;
图3为本发明另一实施例提供的区块链的区块处理方法的流程图;
图4a为本发明中现有技术的区块链的区块处理方法的各阶段示意图;
图4b为本发明一实施例提供的区块链的区块处理方法的各阶段示意图;
图4c为本发明另一实施例提供的区块链的区块处理方法的各阶段示意图;
图5为本发明另一实施例提供的区块链的区块处理方法的流程图;
图6为本发明一实施例提供的区块链的区块处理装置的结构图;
图7为本发明一实施例提供的电子设备的结构图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
现有技术中不少的区块链系统中会利用分布式系统的Quorum机制的共识算法,其中Quorum机制是一种分布式系统中常用的机制,用来保证数据冗余和最终一致性的投票算法。其主要思想来源于抽屉原理,常用于分布式系统的读写访问控制。该类共识协议不需要节点间相互通讯,而是由节点直接执行并响应客户端发来的请求。当受到足够数量的响应后,客户端才会将结果最终提交。目前业内有几种使用该机制进行共识的协议,包括Q/U协议,HQ协议及Quorum协议等,他们的处理方案大同小异,都是采用如下的处理方式,客户端发送请求至所有共识节点,共识节点收到消息后进行验证,回复附带自己签名信息;客户端根据共识节点的应答,发送交易提交请求至所有共识节点,所有节点执行交易提交请求,也即根据交易提交请求生成区块。
现有的共识机制,无法处理有竞争的情况,因为客户端的数量可能很多,对于每一个客户端而言,其无法知道其他客户端的存在,若多个客户端同时对一个账户进行操作就会产生竞争,但这个竞争对于客户端而言是不可知的;此外也无法处理多客户端交易同时打包问题,因为没有排序,并且是由客户端发起,那么对于每一个区块而言,其每次可以打包的都是某个客户端发起的交易请求(可能是多笔交易),而不会将多个客户端发起的交易请求打包在一起。
针对上述技术问题,本发明实施例中在将交易信息写入区块前,增加一个许可过程,在该过程中共识节点根据客户端发送的第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在第一交易信息中添加授权信息,包括交易提交时间以及共识节点的签名信息,并将第一交易信息返回给客户端,然后再由客户端在交易提交时间内重新发送第二交易信息,并在第二交易信息中携带多个共识节点的授权信息,共识节点对第二交易信息进行验证,验证通过后将当前交易的相关信息写入到目标区块中,通过上述过程,先检测是否存在与当前交易冲突的交易,可以避免交易冲突的发生,且限定客户端在交易提交时间内发送第二交易信息,可避免交易超时,也能够使得区块可以实现正常、高效的打包,且一个区块中可以写入不同客户端的交易信息,提高了区块的使用范围。
本发明实施例具体的应用场景如图1所示,包括区块链网络100和客户端110,其中区块链网络100中包括多个共识节点101,共识节点101和客户端110可以为任意电子设备。客户端110在发起当前交易时向所有共识节点101发送的第一交易信息;各共识节点101可根据第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在第一交易信息中添加授权信息,并将第一交易信息返回给客户端110,授权信息包括交易提交时间以及共识节点101的签名信息;客户端110可在接收到各共识节点101返回的第一交易信息后,向所有共识节点101发送第二交易信息,第二交易信息中包括多个共识节点101的授权信息;各共识节点101可根据交易提交时间以及多个共识节点101的授权信息中的签名信息,对第二交易信息进行验证;在验证通过后将当前交易的相关信息写入到目标区块中。
下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
图2为本发明实施例提供的区块链的区块处理方法流程图。本实施例提供了一种区块链的区块处理方法,其执行主体为区块链网络中的任一共识节点,其中共识节点可以为任意电子设备,本实施例可应用于Quorum的共识机制中,当然也可应用于其他共识机制,该区块链的区块处理方法具体步骤如下:
S201、接收客户端在发起当前交易时向所有共识节点发送的第一交易信息。
在本实施例中,在客户端发起当前交易时,客户端可以将当前交易的第一交易信息发送给区块链网络中的所有共识节点,其中第一交易信息中的内容此处不做限定,第一交易信息中具体可包括交易内容,其中交易内容包括但不限于交易时间、交易双方信息等,第一交易信息中还可以包括客户端的签名信息等。可选的,本实施例中,客户端可以网络请求的方式向所有共识节点发送的第一交易信息。而区块链网络中的任意共识节点均可接收到客户端发送的第一交易信息。
S202、根据所述第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在所述第一交易信息中添加授权信息,并将所述第一交易信息返回给所述客户端,所述授权信息包括交易提交时间以及所述共识节点的签名信息。
在本实施例中,共识节点增加了一个许可(Permit)阶段,在Permit阶段中,可根据接收到的第一交易信息检测是否存在与当前交易冲突的交易,尤其是可以写入当前交易相关信息的目标区块中是否已存在与当前交易冲突的交易,或者共识节点已授权但尚未写入到目标区块中、且与当前交易冲突的交易,当确定不存在与当前交易冲突的交易,则在第一交易信息中添加授权信息,其中授权信息可包括但不限于交易提交时间以及共识节点的签名信息,所述交易提交时间为客户端在收到各共识节点反馈的包括授权信息的第一交易信息后,再次向共识节点发送第二交易信息的时间,当客户端实际发送第二交易信息的时间超过了交易提交时间则交易失败。
S203、接收所述客户端向所有共识节点发送的第二交易信息,所述第二交易信息中包括多个共识节点的授权信息。
在本实施例中,共识节点在将添加了授权信息的第一交易信息返回给客户端后,客户端可根据从各共识节点接收到的添加了授权信息的第一交易信息进行验证,判断是否满足预设条件,若满足,则向所有共识节点发送第二交易信息,其中第二交易信息中包括多个共识节点的授权信息。
其中,可选的,客户端根据从各共识节点接收到的添加了授权信息的第一交易信息进行验证,判断是否满足预设条件,具体可包括,客户端验证共识节点的签名信息判断添加了授权信息的第一交易信息的合法性,客户端还根据授权信息判断同意授权的共识节点数量是否超过预设数量,当确定同意授权的共识节点数量超过预设数量后向所有共识节点发送第二交易信息。其中,假设区块链网络中共识节点的数量为3f+1个(f为整个系统内允许作恶的节点数量),当同意授权的共识节点数量超过2f+1个时,则可向所有共识节点发送第二交易信息。
S204、根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证。
在本实施例中,共识节点在接收到客户端发送的第二交易信息后,可以根据交易提交时间以及第二交易信息中的多个共识节点的授权信息中的签名信息,对第二交易信息进行验证,具体的,可判断接收到第二交易信息的时间是否超过交易提交时间,还可验证第二交易信息中的多个共识节点的授权信息中的签名信息是否正确、合法,此外还可验证同意授权的共识节点数量是否超过预设数量等等,当然还可包括更多的其他验证过程,保证第二交易信息的准确性、安全性和合法性。
S205、在验证通过后将所述当前交易的相关信息写入到目标区块中。
在本实施例中,当共识节点对第二交易信息验证通过后,则可将当前交易的相关信息写入到目标区块中,其中当前交易的相关信息可以为第二交易信息的部分内容或全部内容,当然也可包括其他的内容,此处不做限定。
本实施例提供的区块链的区块处理方法,通过区块链网络中的共识节点接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;根据第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在第一交易信息中添加授权信息,并将第一交易信息返回给客户端,授权信息包括交易提交时间以及共识节点的签名信息;接收客户端向所有共识节点发送的第二交易信息,第二交易信息中包括多个共识节点的授权信息;根据交易提交时间以及多个共识节点的授权信息中的签名信息,对第二交易信息进行验证;在验证通过后将当前交易的相关信息写入到目标区块中。本实施例中通过根据客户端发送的当前交易的第一交易信息进行检测是否存在与当前交易冲突的交易,可以避免交易冲突的发生,且限定客户端在交易提交时间内发送第二交易信息,可避免交易超时,也能够使得区块可以实现正常、高效的打包,且一个区块中可以写入不同客户端的交易信息,提高了区块的使用范围。
在上述任一实施例的基础上,如图3所示,在S202在所述的根据所述第一交易信息检测是否存在与当前交易冲突的交易,具体可包括:
S301、根据所述第一交易信息以及所述共识节点的缓存记录,判断所述当前交易所涉及的对象与所述目标区块中已有交易所涉及的对象是否存在冲突,和/或,判断所述当前交易所涉及的对象与已授权但尚未写入所述目标区块中的交易所涉及的对象是否存在冲突;
S302、若不存在冲突,则确定不存在与当前交易冲突的交易,并将所述当前交易的相关信息作为所述当前交易的缓存信息写入所述共识节点的缓存记录中;
其中,所述共识节点的缓存记录中存储有已写入所述目标区块的交易的缓存信息和/或已授权但尚未写入所述目标区块的交易的缓存信息。
在本实施例中,共识节点在每次对交易进行授权后均可将该笔交易的一些信息写入到缓存记录中,也即交易的缓存信息,而该笔交易当前可能已经写入目标区块中,或者也可能是已授权但尚未写入目标区块中。本实施例中可根据第一交易信息以及共识节点的缓存信息,来判断当前交易与目标区块中已有交易或者已授权但尚未写入目标区块中的交易是否存在冲突,具体的,可判断当前交易所涉及的对象,与目标区块中已有交易所涉及的对象是否存在冲突,和/或,判断当前交易所涉及的对象与已授权但尚未写入目标区块中的交易所涉及的对象是否存在冲突,例如当前交易所涉及的账户和/或通用唯一识别码(Universally Unique Identifier,UUID)是否与目标区块中已有交易所涉及账户和/或通用唯一识别码相同,和/或当前交易所涉及的账户和/或通用唯一识别码是否与已授权但尚未写入目标区块中的交易所涉及账户和/或通用唯一识别码相同。在本实施例中,若确定存在冲突,则不对当前交易予以授权,也即不在第一交易信息中添加授权信息,或者在第一交易信息中添加不授权信息,或者不向客户端反馈任何信息;而若确定不存在冲突,则在第一交易信息中添加授权信息,并将添加了授权信息的第一交易信息返回给客户端,同时,还可将当前交易的相关信息作为当前交易的缓存信息写入共识节点的缓存记录中,以便作为后续发生的其他交易进行冲突检测的基础。
在上述任一实施例的基础上,在所述第一交易信息中添加授权信息,还包括:
获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号,并将所述目标区块的目标区块高度和交易序号作为一种授权信息,添加到所述第一交易信息中。
在本实施例中,当共识节点在第一交易信息中添加授权信息时,还可获取当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号,并将目标区块高度和交易序号也作为一种授权信息,添加到第一交易信息中,也即若第一交易信息中包括目标区块高度和交易序号时也可认为共识节点对当前交易予以授权;若第一交易信息中不包括目标区块高度和交易序号时可认为共识节点对当前交易不予以授权。可选的,添加了授权信息的第一交易信息的数据结构可如下所示:
Figure BDA0002695475670000091
需要说明的是,每笔交易的交易序号仅用以在写入目标区块时进行排序,但无须严格按照其顺序,允许其因为交易未提交导致的中间序号缺失,最终交易序号应由结块时决定。
在上述实施例中,所述获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号,包括:
获取已结块的最大区块,并根据所述最大区块的区块信息、当前时间以及预设区块结块规则,获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号。
在本实施例中,获取当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号具体过程可如下所示:
1)假设当前共识节点最近授权交易的提交时间为t0,其区块高度为h0,该高度下的序号为i0,已授权高度为h0但未结块交易数量为n,该高度下最早交易提交交易时间为th(若不存在该共识节点,则t0=当前时间(T),h0=已结块区块高度,n=0,th=t0,i0=-1),结块规则为每个区块最多m笔交易或t秒时间内结块,共识节点统一允许客户端在N秒(交易提交时间)内将消息传递回并结块;
2)假设授予该交易的高度为h1,提交时间为t1,当前时间为T,那么t1=T+N,i1=i0+1,目标区块高度通过下面的规则来计算:
a)若T-t0=0,即当前共识节点没有已授权但尚未结块交易,则h1=h0+1;
b)若T>t0,即共识节点已授权的交易未在指定时间内提交,则首先清理交易(可能是多笔)并执行对应的操作(后续流程会涉及),然后h1=h0+1;
c)若T<t0,即共识节点尚有已授权但未提交的交易(这些交易正常),则进行如下规则处理:
i.若T-th>=t,即超出上个区块结块时间,则h1=h0+1;
ii.若T-th<t,即再上个区块结块时间内,则判断n与m:
若n<m,则h1=h0;
若n>=m,则h1=h0+1;
最终,共识节点将区块高度h1、交易序号i1和交易提交时间t1作为所述授权信息。
在上述任一实施例的基础上,所述第一交易信息中还可包括所述客户端的签名信息;第一交易信息的数据结构可如下所示:
交易内容
客户端的签名信息
所述根据所述第一交易信息检测是否存在与当前交易冲突的交易前,还包括:
根据所述客户端的签名信息验证所述第一交易信息的来源;和/或,根据所述第一交易信息的格式和/或内容验证所述第一交易信息的正确性。
在本实施例中,可通过客户端的签名信息验证第一交易信息是否来源于客户端;此外,由于客户端与共识节点之间通常存在预设协议,因此还可根据第一交易信息的格式和/或内容验证是否满足预设协议,从而验证第一交易信息是否正确或是否合法。若验证通过,则可继续执行根据第一交易信息检测是否存在与当前交易冲突的交易;当然,若验证不通过,则可不执行根据第一交易信息检测是否存在与当前交易冲突的交易。
需要说明的是,现有技术中在向目标区块中写入交易相关信息时,通常需要经过两个阶段,如图4a所示,第一阶段为预写入阶段(Pre-Write阶段),在该阶段中每个共识节点对客户端发送的信息进行验证,并给予应答,不做任何与账本相关的操作;第二阶段为执行写入阶段(Exec-Write阶段),在该阶段中主要验证客户端发送的信息是否包括其他共识节点的正确签名从而进行合法性判断,若确定为合法,则写入区块中,若不合法,则不写入区块中。而本实施例中,增加了上述实施例中的Permit阶段,因此可以将上述的Pre-Write阶段与Permit阶段结合在一起,从而形成总共两个阶段的处理过程,如图4b,即Permit与Pre-Write结合的阶段、以及Exec-Write阶段,从而可以减少交互过程,大大提高处理效率;当然,也可不将Pre-Write阶段与Permit阶段结合在一起,形成三个阶段的处理过程,如图4c,即Permit阶段、Pre-Write阶段、以及Exec-Write阶段。
在上述任一实施例的基础上,在S204所述的根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证时,具体可包括:
判断接收所述第二交易信息的时间是否超过所述交易提交时间,和/或根据所述多个共识节点的各授权信息中的签名信息判断所述当前交易是否合法;
若接收所述第二交易信息的时间超过所述交易提交时间、或所述当前交易不合法,则验证失败,放弃将所述当前交易的相关信息写入到目标区块中;或者
若接收所述第二交易信息的时间未超过所述交易提交时间、且所述当前交易合法,则验证成功。
在本实施例中,可选的,第二交易信息的数据结构可以如下所示:
Figure BDA0002695475670000111
在接收到第二交易信息时可先判断接收第二交易信息的时间是否超过交易提交时间,若超过交易提交时间,则验证失败,直接放弃当前交易,也即放弃将当前交易的相关信息写入到目标区块中。此外,还可根据第二交易信息中的多个共识节点的授权信息中的签名信息判断当前交易是否合法,例如第二交易信息中的多个共识节点的授权信息中的签名信息是否正确、合法,同意授权的共识节点数量是否超过预设数量,若判断当前交易不合法,也验证失败,直接放弃当前交易,也即放弃将当前交易的相关信息写入到目标区块中。而若第二交易信息的时间未超过所述交易提交时间、且当前交易合法,则验证成功,则可将当前交易的相关信息写入到目标区块中。
在上述实施例的基础上,S205所述的在验证通过后将所述当前交易的相关信息写入到目标区块中,具体可包括:
根据所述目标区块高度,判断是否已创建所述目标区块;
若已创建所述目标区块,则判断所述目标区块是否结块,若所述目标区块未结块,则将所述当前交易的相关信息写入到所述目标区块中;或者
若所述目标区块已结块,则放弃将所述当前交易的相关信息写入到目标区块中。
在本实施例中,可先根据目标区块高度,判断目标区块高度对应的目标区块是否已经创建,若未创建所述目标区块,则根据目标区块高度创建目标区块;若所述目标区块已创建,则可判断目标区块是否结块,也即判断该目标区块是否已经打包,生成BlockHash,若目标区块未结块,则将当前交易的相关信息写入到目标区块中,具体的,可根据交易序号顺序写入目标区块中;若目标区块已结块,则说明目标区块已满或者已到达结块时间,无法继续向其中写入当前交易的相关信息,则放弃将当前交易的相关信息写入到目标区块中。
在上述实施例中,在根据所述目标区块高度创建所述目标区块时,启动计时;当计时达到目标结块时间、或者所述目标区块内已写入交易的数量达到目标数量,则对所述目标区块进行结块,并写入区块链账本中。
在上述任一实施例中,由于在Permit阶段将当前交易的相关信息作为当前交易的缓存信息写入共识节点的缓存记录中,因此在上述过程中当放弃当前交易、放弃将当前交易的相关信息写入到目标区块中时,从共识节点的缓存记录中删除当前交易的缓存信息,避免当前交易放弃后与后续其他交易发生冲突,影响其他交易正常写入区块中。
在上述任一实施例中,目标区块结块则说明目标区块中所有的交易均已完成,为了避免目标区块中所有已完成的交易与后续其他交易发生冲突,影响其他交易正常写入区块中,因此在对目标区块进行结块后,还可从共识节点的缓存记录中删除目标区块中所有交易的缓存信息。
需要说明的是,由于每个共识节点的系统时间可能不一致,因此授权信息中的交易提交时间可能不一致,因此可配置为秒级,甚至允许一定范围的容错性,避免共识节点在接收到第二交易信息、根据交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证时由于系统时间的误差导致验证不通过。
图5为本发明实施例提供的区块链的区块处理方法流程图。在上述任一实施例的基础上,本实施例提供了一种区块链的区块处理方法,该区块链的区块处理方法具体步骤如下:
S501、接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;
S502、根据客户端的签名信息验证第一交易信息的来源;和/或,根据第一交易信息的格式和/或内容验证第一交易信息的正确性;
验证通过执行S503,验证不通过,执行S514结束;
S503、根据第一交易信息检测是否存在与当前交易冲突的交易;
若不存在,则执行S504,若存在,执行S514结束;
S504、在第一交易信息中添加授权信息,并将第一交易信息返回给客户端;并将当前交易的相关信息作为当前交易的缓存信息写入共识节点的缓存记录中;
授权信息包括交易提交时间、共识节点的签名信息、目标区块的目标区块高度和交易序号;
S505、接收客户端向所有共识节点发送的第二交易信息,第二交易信息中包括多个共识节点的授权信息;
S506、判断接收第二交易信息的时间是否超过交易提交时间,和/或根据多个共识节点的各授权信息中的签名信息判断当前交易是否合法;
若接收第二交易信息的时间未超过交易提交时间、且当前交易合法,则验证成功,执行S507;否则,若接收第二交易信息的时间超过交易提交时间、或当前交易不合法,则验证失败,执行S513;
S507、根据目标区块高度,判断是否已创建目标区块;
若已创建目标区块,则执行S508;若未创建目标区块,则执行S510;
S508、判断目标区块是否结块;
若目标区块未结块,则执行S509;若目标区块已结块,则执行S513;
S509、将当前交易的相关信息写入到目标区块中;
在S509后,执行S511;
S510、根据目标区块高度创建目标区块,并启动计时;
S511、当计时达到目标结块时间、或者目标区块内已写入交易的数量达到目标数量,则对目标区块进行结块,并写入区块链账本中;
S512、从共识节点的缓存记录中删除目标区块中所有交易的缓存信息;
S513、放弃将当前交易的相关信息写入到目标区块中;并从共识节点的缓存记录中删除当前交易的缓存信息;
S514、结束。
本实施例提供的区块链的区块处理方法,通过区块链网络中的共识节点接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;根据第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在第一交易信息中添加授权信息,并将第一交易信息返回给客户端,授权信息包括交易提交时间以及共识节点的签名信息;接收客户端向所有共识节点发送的第二交易信息,第二交易信息中包括多个共识节点的授权信息;根据交易提交时间以及多个共识节点的授权信息中的签名信息,对第二交易信息进行验证;在验证通过后将当前交易的相关信息写入到目标区块中。本实施例中通过根据客户端发送的当前交易的第一交易信息进行检测是否存在与当前交易冲突的交易,可以避免交易冲突的发生,且限定客户端在交易提交时间内发送第二交易信息,可避免交易超时,也能够使得区块可以实现正常、高效的打包,且一个区块中可以写入不同客户端的交易信息,提高了区块的使用范围。
图6为本发明实施例提供的区块链的区块处理装置的结构图。本实施例提供的区块链的区块处理装置应用于区块链网络中的任一共识节点,可以执行方法实施例提供的处理流程,如图6所示,所述区块链的区块处理装置600包括接收模块601、验证模块602、处理模块603。
接收模块601,用于接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;
验证模块602,用于根据所述第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在所述第一交易信息中添加授权信息,并将所述第一交易信息返回给所述客户端,所述授权信息包括交易提交时间以及所述共识节点的签名信息;
所述接收模块601还用于,接收所述客户端向所有共识节点发送的第二交易信息,所述第二交易信息中包括多个共识节点的授权信息;
所述验证模块602还用于,根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证;
处理模块603,用于在验证通过后将所述当前交易的相关信息写入到目标区块中。
在上述任一实施例的基础上,所述验证模块602在根据所述第一交易信息检测是否存在与当前交易冲突的交易时,用于:
根据所述第一交易信息以及所述共识节点的缓存记录,判断所述当前交易所涉及的对象与所述目标区块中已有交易所涉及的对象是否存在冲突,和/或,判断所述当前交易所涉及的对象与已授权但尚未写入所述目标区块中的交易所涉及的对象是否存在冲突;
若不存在冲突,则确定不存在与当前交易冲突的交易,并将所述当前交易的相关信息作为所述当前交易的缓存信息写入所述共识节点的缓存记录中;
其中,所述共识节点的缓存记录中存储有已写入所述目标区块的交易的缓存信息和/或已授权但尚未写入所述目标区块的交易的缓存信息。
在上述任一实施例的基础上,所述第一交易信息包括所述客户端的签名信息;
所述验证模块602在根据所述第一交易信息检测是否存在与当前交易冲突的交易前,还用于:
根据所述客户端的签名信息验证所述第一交易信息的来源;和/或
根据所述第一交易信息的格式和/或内容验证所述第一交易信息的正确性。
在上述任一实施例的基础上,所述验证模块602在所述第一交易信息中添加授权信息时,还用于:
获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号,并将所述目标区块的目标区块高度和交易序号作为一种授权信息,添加到所述第一交易信息中。
在上述任一实施例的基础上,所述验证模块602在获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号时,用于:
获取已结块的最大区块,并根据所述最大区块的区块信息、当前时间以及预设区块结块规则,获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号。
在上述任一实施例的基础上,所述验证模块602在根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证时,用于:
判断接收所述第二交易信息的时间是否超过所述交易提交时间,和/或根据所述多个共识节点的各授权信息中的签名信息判断所述当前交易是否合法;
若接收所述第二交易信息的时间超过所述交易提交时间、或所述当前交易不合法,则验证失败,放弃将所述当前交易的相关信息写入到目标区块中;或者
若接收所述第二交易信息的时间未超过所述交易提交时间、且所述当前交易合法,则验证成功。
在上述任一实施例的基础上,所述处理模块603在验证通过后将所述当前交易的相关信息写入到目标区块中时,用于:
根据所述目标区块高度,判断是否已创建所述目标区块;
若已创建所述目标区块,则判断所述目标区块是否结块,若所述目标区块未结块,则将所述当前交易的相关信息写入到所述目标区块中;或者
若所述目标区块已结块,则放弃将所述当前交易的相关信息写入到目标区块中。
在上述任一实施例的基础上,所述处理模块603还用于:
若未创建所述目标区块,则根据所述目标区块高度创建所述目标区块。
在上述任一实施例的基础上,所述处理模块603还用于:
在根据所述目标区块高度创建所述目标区块时,启动计时;
当计时达到目标结块时间、或者所述目标区块内已写入交易的数量达到目标数量,则对所述目标区块进行结块,并写入区块链账本中。
在上述任一实施例的基础上,所述处理模块603在放弃将所述当前交易的相关信息写入到目标区块中时,用于:
从所述共识节点的缓存记录中删除所述当前交易的缓存信息。
在上述任一实施例的基础上,所述处理模块603在对所述目标区块进行结块后,还用于:
从所述共识节点的缓存记录中删除所述目标区块中所有交易的缓存信息。
在上述任一实施例的基础上,所述第二交易信息为所述客户端在收到各共识节点的授权信息后确定同意授权的共识节点数量超过预设数量后向所有共识节点发送的。
本发明实施例提供的区块链的区块处理装置可以具体用于执行上述图2-3、5所提供的方法实施例,具体功能此处不再赘述。
本发明实施例提供的区块链的区块处理装置,通过区块链网络中的共识节点接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;根据第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在第一交易信息中添加授权信息,并将第一交易信息返回给客户端,授权信息包括交易提交时间以及共识节点的签名信息;接收客户端向所有共识节点发送的第二交易信息,第二交易信息中包括多个共识节点的授权信息;根据交易提交时间以及多个共识节点的授权信息中的签名信息,对第二交易信息进行验证;在验证通过后将当前交易的相关信息写入到目标区块中。本实施例中通过根据客户端发送的当前交易的第一交易信息进行检测是否存在与当前交易冲突的交易,可以避免交易冲突的发生,且限定客户端在交易提交时间内发送第二交易信息,可避免交易超时,也能够使得区块可以实现正常、高效的打包,且一个区块中可以写入不同客户端的交易信息,提高了区块的使用范围。
图7为本发明实施例提供的电子设备的结构示意图。本发明实施例提供的电子设备可以执行区块链的区块处理方法实施例提供的处理流程,如图7所示,电子设备70包括存储器71、处理器72、计算机程序;其中,计算机程序存储在存储器71中,并被配置为由处理器72执行以上实施例所述的区块链的区块处理方法。此外,电子设备70还可具有通讯接口73,用于接收控制指令。
图7所示实施例的电子设备可用于执行上述区块链的区块处理方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
另外,本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的区块链的区块处理方法。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明实施例各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的范围。

Claims (15)

1.一种区块链的区块处理方法,其特征在于,应用于区块链网络中的任一共识节点,所述方法包括:
接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;
根据所述第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在所述第一交易信息中添加授权信息,并将所述第一交易信息返回给所述客户端,所述授权信息包括交易提交时间以及所述共识节点的签名信息;
接收所述客户端向所有共识节点发送的第二交易信息,所述第二交易信息中包括多个共识节点的授权信息;
根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证;
在验证通过后将所述当前交易的相关信息写入到目标区块中。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一交易信息检测是否存在与当前交易冲突的交易,包括:
根据所述第一交易信息以及所述共识节点的缓存记录,判断所述当前交易所涉及的对象与所述目标区块中已有交易所涉及的对象是否存在冲突,和/或,判断所述当前交易所涉及的对象与已授权但尚未写入所述目标区块中的交易所涉及的对象是否存在冲突;
若不存在冲突,则确定不存在与当前交易冲突的交易,并将所述当前交易的相关信息作为所述当前交易的缓存信息写入所述共识节点的缓存记录中;
其中,所述共识节点的缓存记录中存储有已写入所述目标区块的交易的缓存信息和/或已授权但尚未写入所述目标区块的交易的缓存信息。
3.根据权利要求1或2所述的方法,其特征在于,所述第一交易信息包括所述客户端的签名信息;
所述根据所述第一交易信息检测是否存在与当前交易冲突的交易前,还包括:
根据所述客户端的签名信息验证所述第一交易信息的来源;和/或
根据所述第一交易信息的格式和/或内容验证所述第一交易信息的正确性。
4.根据权利要求2所述的方法,其特征在于,在所述第一交易信息中添加授权信息,还包括:
获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号,并将所述目标区块的目标区块高度和交易序号作为一种授权信息,添加到所述第一交易信息中。
5.根据权利要求4所述的方法,其特征在于,所述获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号,包括:
获取已结块的最大区块,并根据所述最大区块的区块信息、当前时间以及预设区块结块规则,获取所述当前交易的相关信息将被写入的目标区块的目标区块高度和交易序号。
6.根据权利要求4所述的方法,其特征在于,在所述根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证时,包括:
判断接收所述第二交易信息的时间是否超过所述交易提交时间,和/或根据所述多个共识节点的各授权信息中的签名信息判断所述当前交易是否合法;
若接收所述第二交易信息的时间超过所述交易提交时间、或所述当前交易不合法,则验证失败,放弃将所述当前交易的相关信息写入到目标区块中;或者
若接收所述第二交易信息的时间未超过所述交易提交时间、且所述当前交易合法,则验证成功。
7.根据权利要求6所述的方法,其特征在于,所述在验证通过后将所述当前交易的相关信息写入到目标区块中,包括:
根据所述目标区块高度,判断是否已创建所述目标区块;
若已创建所述目标区块,则判断所述目标区块是否结块,若所述目标区块未结块,则将所述当前交易的相关信息写入到所述目标区块中;或者
若所述目标区块已结块,则放弃将所述当前交易的相关信息写入到目标区块中。
8.根据权利要求7所述的方法,其特征在于,还包括:
若未创建所述目标区块,则根据所述目标区块高度创建所述目标区块。
9.根据权利要求8所述的方法,其特征在于,还包括:
在根据所述目标区块高度创建所述目标区块时,启动计时;
当计时达到目标结块时间、或者所述目标区块内已写入交易的数量达到目标数量,则对所述目标区块进行结块,并写入区块链账本中。
10.根据权利要求6或7所述的方法,其特征在于,所述放弃将所述当前交易的相关信息写入到目标区块中,包括:
从所述共识节点的缓存记录中删除所述当前交易的缓存信息。
11.根据权利要求9所述的方法,其特征在于,所述对所述目标区块进行结块后,还包括:
从所述共识节点的缓存记录中删除所述目标区块中所有交易的缓存信息。
12.根据权利要求1所述的方法,其特征在于,所述第二交易信息为所述客户端在收到各共识节点的授权信息后确定同意授权的共识节点数量超过预设数量后向所有共识节点发送的。
13.一种区块链的区块处理装置,其特征在于,应用于区块链网络中的任一共识节点,所述装置包括:
接收模块,用于接收客户端在发起当前交易时向所有共识节点发送的第一交易信息;
验证模块,用于根据所述第一交易信息检测是否存在与当前交易冲突的交易,若不存在,则在所述第一交易信息中添加授权信息,并将所述第一交易信息返回给所述客户端,所述授权信息包括交易提交时间以及所述共识节点的签名信息;
所述接收模块还用于,接收所述客户端向所有共识节点发送的第二交易信息,所述第二交易信息中包括多个共识节点的授权信息;
所述验证模块还用于,根据所述交易提交时间以及所述多个共识节点的授权信息中的签名信息,对所述第二交易信息进行验证;
处理模块,用于在验证通过后将所述当前交易的相关信息写入到目标区块中。
14.一种电子设备,其特征在于,包括:至少一个处理器;以及存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1-12任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-12任一项所述的方法。
CN202011004635.0A 2020-09-22 2020-09-22 区块链的区块处理方法、装置、设备及存储介质 Active CN112150146B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011004635.0A CN112150146B (zh) 2020-09-22 2020-09-22 区块链的区块处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011004635.0A CN112150146B (zh) 2020-09-22 2020-09-22 区块链的区块处理方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN112150146A true CN112150146A (zh) 2020-12-29
CN112150146B CN112150146B (zh) 2023-11-03

Family

ID=73897723

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011004635.0A Active CN112150146B (zh) 2020-09-22 2020-09-22 区块链的区块处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112150146B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112862469A (zh) * 2021-02-02 2021-05-28 湖南大学 基于区块链的数字资产交易方法及系统、设备、存储介质
CN113052578A (zh) * 2021-04-21 2021-06-29 深圳壹账通智能科技有限公司 基于区块链的旅游费用结算方法、装置、设备及存储介质
CN113810378A (zh) * 2021-08-19 2021-12-17 广东中科智能区块链技术有限公司 一种基于共识排序的交易预处理方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850654A (zh) * 2017-02-23 2017-06-13 布比(北京)网络技术有限公司 一种分布式信息的授权访问方法及系统
CN108769173A (zh) * 2018-05-21 2018-11-06 阿里体育有限公司 运行智能合约的区块链实现方法及设备
CN110598375A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 一种数据处理方法、装置及存储介质
CN110633323A (zh) * 2019-09-16 2019-12-31 腾讯科技(深圳)有限公司 业务数据存储方法、装置、存储介质和计算机设备
CN110995673A (zh) * 2019-11-20 2020-04-10 腾讯科技(深圳)有限公司 基于区块链的案件证据管理方法、装置、终端及存储介质
CN111008366A (zh) * 2019-12-04 2020-04-14 腾讯科技(深圳)有限公司 基于区块链的版权授权方法以及装置
CN111371557A (zh) * 2020-02-26 2020-07-03 百度在线网络技术(北京)有限公司 区块链数据处理方法、装置、电子设备及介质
CN111444273A (zh) * 2020-03-24 2020-07-24 腾讯科技(深圳)有限公司 一种基于区块链的数据授权方法以及装置
CN111445333A (zh) * 2020-03-26 2020-07-24 腾讯科技(深圳)有限公司 区块生成方法、装置、计算机设备以及存储介质
CN111464298A (zh) * 2020-03-30 2020-07-28 北京金山云网络技术有限公司 区块链中的数据处理方法、装置和区块链网络
CN111523891A (zh) * 2020-04-23 2020-08-11 腾讯科技(深圳)有限公司 基于区块链的信息加密方法、装置、设备及存储介质
US20200286076A1 (en) * 2017-10-13 2020-09-10 China Unionpay Co., Ltd. Methods and systems for verification and registration of digital currency transaction

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850654A (zh) * 2017-02-23 2017-06-13 布比(北京)网络技术有限公司 一种分布式信息的授权访问方法及系统
US20200286076A1 (en) * 2017-10-13 2020-09-10 China Unionpay Co., Ltd. Methods and systems for verification and registration of digital currency transaction
CN108769173A (zh) * 2018-05-21 2018-11-06 阿里体育有限公司 运行智能合约的区块链实现方法及设备
CN110633323A (zh) * 2019-09-16 2019-12-31 腾讯科技(深圳)有限公司 业务数据存储方法、装置、存储介质和计算机设备
CN110598375A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 一种数据处理方法、装置及存储介质
CN110995673A (zh) * 2019-11-20 2020-04-10 腾讯科技(深圳)有限公司 基于区块链的案件证据管理方法、装置、终端及存储介质
CN111008366A (zh) * 2019-12-04 2020-04-14 腾讯科技(深圳)有限公司 基于区块链的版权授权方法以及装置
CN111371557A (zh) * 2020-02-26 2020-07-03 百度在线网络技术(北京)有限公司 区块链数据处理方法、装置、电子设备及介质
CN111444273A (zh) * 2020-03-24 2020-07-24 腾讯科技(深圳)有限公司 一种基于区块链的数据授权方法以及装置
CN111445333A (zh) * 2020-03-26 2020-07-24 腾讯科技(深圳)有限公司 区块生成方法、装置、计算机设备以及存储介质
CN111464298A (zh) * 2020-03-30 2020-07-28 北京金山云网络技术有限公司 区块链中的数据处理方法、装置和区块链网络
CN111523891A (zh) * 2020-04-23 2020-08-11 腾讯科技(深圳)有限公司 基于区块链的信息加密方法、装置、设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112862469A (zh) * 2021-02-02 2021-05-28 湖南大学 基于区块链的数字资产交易方法及系统、设备、存储介质
CN113052578A (zh) * 2021-04-21 2021-06-29 深圳壹账通智能科技有限公司 基于区块链的旅游费用结算方法、装置、设备及存储介质
CN113810378A (zh) * 2021-08-19 2021-12-17 广东中科智能区块链技术有限公司 一种基于共识排序的交易预处理方法

Also Published As

Publication number Publication date
CN112150146B (zh) 2023-11-03

Similar Documents

Publication Publication Date Title
US11347726B2 (en) Cross-chain transaction method and apparatus
CN112150146A (zh) 区块链的区块处理方法、装置、设备及存储介质
US8533478B2 (en) System for and method of writing and reading redundant data
US20210157800A1 (en) Blockchain-based transaction processing methods, apparatuses, and electronic devices
CN109587238B (zh) 区块链的数据处理和同步方法、装置、设备及存储介质
CN109361740B (zh) 一种区块链的区块生成方法、装置、设备和介质
KR20200083930A (ko) 재전송 공격을 검출하기 위한 시스템 및 방법
US9778998B2 (en) Data restoration method and system
WO2020092094A1 (en) Method, apparatus, and electronic device for blockchain-based recordkeeping
KR20200083931A (ko) 재전송 공격을 검출하기 위한 시스템 및 방법
KR20190054738A (ko) 비잔틴 장애를 극복 가능한 블록체인 생성 방법
CN110222085B (zh) 一种存证数据的处理方法、装置及存储介质
WO2020232859A1 (zh) 分布式存储系统、数据写入方法、装置和存储介质
CN110784331B (zh) 一种共识流程恢复方法及相关节点
US9454312B2 (en) Method and system for storing and reading data in or from a key value storage
CN111209343B (zh) 节点数据同步方法、装置、设备以及存储介质
CN109254956B (zh) 一种数据下载的方法、装置及电子设备
KR100922584B1 (ko) 객체 기반 분산 공유 시스템 및 그의 방법
CN111582845A (zh) 区块链的跨链交易方法、装置以及电子设备
CN114936253A (zh) 区块链的共识方法及装置、电子设备、存储介质
CN113806108A (zh) 一种重传方法、内存控制器、处理器系统及电子设备
US20210365433A1 (en) Method and apparatus for managing data based on blockchain
CN110928841A (zh) 一种文件操作控制方法、装置、设备及存储介质
CN115131097A (zh) 订单防重方法及装置
CN110490005B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Daxing District, Beijing, 100176

Applicant after: Jingdong Technology Holding Co.,Ltd.

Address before: Room 221, 2 / F, block C, 18 Kechuang 11th Street, Beijing Economic and Technological Development Zone, 100176

Applicant before: Jingdong Digital Technology Holding Co.,Ltd.

GR01 Patent grant
GR01 Patent grant