CN110753080A - 区块传输方法、装置、设备及可读存储介质 - Google Patents
区块传输方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN110753080A CN110753080A CN201910816026.6A CN201910816026A CN110753080A CN 110753080 A CN110753080 A CN 110753080A CN 201910816026 A CN201910816026 A CN 201910816026A CN 110753080 A CN110753080 A CN 110753080A
- Authority
- CN
- China
- Prior art keywords
- block
- data
- node
- hash value
- target block
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000005540 biological transmission Effects 0.000 title claims abstract description 44
- 238000012163 sequencing technique Methods 0.000 claims abstract description 90
- 238000004364 calculation method Methods 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 15
- 238000012856 packing Methods 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 11
- 238000004806 packaging method and process Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic 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 Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种区块传输方法、装置、设备及可读存储介质,涉及信息技术领域,排序节点生成目标区块,并为目标区块生成梅克尔树,将梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需传输区块,减少了排序节点与背书节点之间传输的数据量,避免节点的压力过大,降低了区块链崩溃的风险。所述方法包括:接收背书节点传输的待处理数据,对待处理数据进行排序,生成初始交易数据;基于初始交易数据,生成目标区块,并将初始交易数据传输至背书节点;根据目标区块,生成梅克尔树,并提取目标区块的目标区块头部,将梅克尔树和目标区块头部传输至背书节点。
Description
技术领域
本发明涉及信息技术领域,特别是涉及一种区块传输方法、装置、设备及可读存储介质。
背景技术
随着信息技术的不断发展,区块链作为一项全新技术得到大力的发展。区块链技术脱胎于2008年出现的比特币技术,是比特币的底层技术。区块链是指一串使用密码学方法相关联产生的区块,区块链中每个区块中的区块数据均与上一个区块中的区块数据存在关联,因此,无法通过篡改区块数据来进行作弊,能够确保任何区块上的区块数据均是公开透明的,提高了输入信息的安全性。区块链一般被理解为一个分布式账本,它的本质也是一个分布式的数据库,在区块链中一个交易的完成需要通过交易背书、交易排序、区块生成以及区块传输四个过程。
相关技术中,一个交易在进入区块链后,由背书节点进行背书,并由排序节点进行排序和打包,生成包括交易的区块;随后,背书节点在排序节点完成区块的打包后,请求排序节点将区块传输给自身,从而完成该交易。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
由于背书节点仅能在排序节点完成区块的打包后才能请求传输该区块,在区块生成高并发的情况下,背书节点需要大量请求传输区块,背书节点与排序节点之间的网络传输的数据量较大,导致背书节点的CPU(Central Processing Unit,中央处理器)负载较大,给背书节点和排序节点都造成过大的压力,增加了区块链崩溃的风险。
发明内容
有鉴于此,本发明提供了一种区块传输方法、装置、设备及可读存储介质,主要目的在于解决目前背书节点与排序节点之间的网络传输的数据量较大,导致背书节点的CPU负载较大,给背书节点和排序节点都造成过大的压力,增加了区块链崩溃的风险的问题。
依据本发明第一方面,提供了一种区块传输方法,该方法包括:
接收背书节点传输的待处理数据,对所述待处理数据进行排序,生成初始交易数据,所述待处理数据由所述背书节点完成对所述待处理数据的背书后传输至所述排序节点;
基于所述初始交易数据,生成目标区块,并将所述初始交易数据传输至所述背书节点;
根据所述目标区块,生成梅克尔树,并提取所述目标区块的目标区块头部,将所述梅克尔树和所述目标区块头部传输至所述背书节点,所述梅克尔树指示所述目标区块中数据之间的逻辑关系。
在另一个实施例中,所述基于所述初始交易数据,生成目标区块,包括:
读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
获取所述末位区块的末位区块主体中的第二哈希值,将所述第二区块高度、所述初始交易数据、所述第一哈希值和所述第二哈希值进行打包,生成目标区块主体;
确定所述初始交易数据的版本号和时间戳,对所述版本号和所述时间戳进行哈希计算,得到第一区块头哈希值;
获取所述末位区块的末位区块头部中的第二区块头哈希值,将所述第一区块头哈希值、所述版本号、所述时间戳和所述第二区块头哈希值进行打包,生成所述目标区块头部;
将所述目标区块主体和所述目标区块头部进行组合,生成所述目标区块。
在另一个实施例中,所述根据所述目标区块,生成梅克尔树,包括:
确定所述初始交易数据、第一哈希值和第二哈希值在所述目标区块中的逻辑顺序;
按照所述逻辑顺序,将所述初始交易数据、所述第一哈希值和所述第二哈希值进行组合整理,生成初始架构,所述初始架构包括至少一个根节点和至少一个叶子节点;
按照所述初始架构的指示,对所述初始交易数据、所述第一哈希值和所述第二哈希值进行哈希计算,得到所述至少一个根节点和所述至少一个叶子节点的取值;
将所述至少一个根节点和所述至少一个叶子节点的取值填入所述初始架构,生成所述梅克尔树。
依据本发明第二方面,提供了一种区块传输方法,该方法包括:
获取待处理数据,对所述待处理数据进行背书,将所述待处理数据传输至所述排序节点;
接收所述排序节点返回的初始交易数据,将所述初始交易数据存储至交易池,所述初始交易数据由所述排序节点对所述待处理数据进行排序后传输至所述背书节点;
当接收到所述排序节点传输的梅克尔树和目标区块头部时,基于所述初始交易数据和所述梅克尔树还原得到目标区块主体,所述梅克尔树指示了目标区块中数据之间的逻辑关系;
将所述目标区块主体和所述目标区块头部进行组合,生成目标区块。
在另一个实施例中,所述获取待处理数据,对所述待处理数据进行背书,将所述待处理数据传输至所述排序节点之前,所述方法还包括:
在所述待处理数据中提取版本号,并获取标准版本号,将所述版本号与所述标准版本号进行比对;
如果所述版本号与所述标准版本号一致,则所述待处理数据通过验证;
如果所述版本号与所述标准版本号不一致,则结束当前流程。
在另一个实施例中,所述当接收到所述排序节点传输的梅克尔树和目标区块头部时,基于所述初始交易数据和所述梅克尔树还原得到目标区块主体,包括:
读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
获取所述末位区块的末位区块主体中的第二哈希值;
分别将所述第二区块高度、所述第一哈希值和所述第二哈希值带入所述梅克尔树,按照所述梅克尔树的指示对所述第二区块高度、所述第一哈希值和所述第二哈希值进行排序,得到排序结果;
将所述排序结果进行打包,生成所述目标区块主体。
依据本发明第三方面,提供了一种区块传输装置,该装置包括:
排序模块,用于接收背书节点传输的待处理数据,对所述待处理数据进行排序,生成初始交易数据,所述待处理数据由所述背书节点完成对所述待处理数据的背书后传输至所述排序节点;
生成模块,用于基于所述初始交易数据,生成目标区块,并将所述初始交易数据传输至所述背书节点;
传输模块,用于根据所述目标区块,生成梅克尔树,并提取所述目标区块的目标区块头部,将所述梅克尔树和所述目标区块头部传输至所述背书节点,所述梅克尔树指示所述目标区块中数据之间的逻辑关系。
在另一个实施例中,所述生成模块,包括:
读取单元,用于读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
第一计算单元,用于采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
第一打包单元,用于获取所述末位区块的末位区块主体中的第二哈希值,将所述第二区块高度、所述初始交易数据、所述第一哈希值和所述第二哈希值进行打包,生成目标区块主体;
第二计算单元,用于确定所述初始交易数据的版本号和时间戳,对所述版本号和所述时间戳进行哈希计算,得到第一区块头哈希值;
第二打包单元,用于获取所述末位区块的末位区块头部中的第二区块头哈希值,将所述第一区块头哈希值、所述版本号、所述时间戳和所述第二区块头哈希值进行打包,生成所述目标区块头部;
组合单元,用于将所述目标区块主体和所述目标区块头部进行组合,生成所述目标区块。
在另一个实施例中,所述传输模块,包括:
确定单元,用于确定所述初始交易数据、第一哈希值和第二哈希值在所述目标区块中的逻辑顺序;
整理单元,用于按照所述逻辑顺序,将所述初始交易数据、所述第一哈希值和所述第二哈希值进行组合整理,生成初始架构,所述初始架构包括至少一个根节点和至少一个叶子节点;
计算单元,用于按照所述初始架构的指示,对所述初始交易数据、所述第一哈希值和所述第二哈希值进行哈希计算,得到所述至少一个根节点和所述至少一个叶子节点的取值;
生成单元,用于将所述至少一个根节点和所述至少一个叶子节点的取值填入所述初始架构,生成所述梅克尔树。
依据本发明第四方面,提供了一种区块传输装置,该装置包括:
背书模块,用于获取待处理数据,对所述待处理数据进行背书,将所述待处理数据传输至所述排序节点;
存储模块,用于接收所述排序节点返回的初始交易数据,将所述初始交易数据存储至交易池,所述初始交易数据由所述排序节点对所述待处理数据进行排序后传输至所述背书节点;
还原模块,用于当接收到所述排序节点传输的梅克尔树和目标区块头部时,基于所述初始交易数据和所述梅克尔树还原得到目标区块主体,所述梅克尔树指示了目标区块中数据之间的逻辑关系;
组合模块,用于将所述目标区块主体和所述目标区块头部进行组合,生成目标区块。
在另一个实施例中,所述装置还包括:
比对模块,用于在所述待处理数据中提取版本号,并获取标准版本号,将所述版本号与所述标准版本号进行比对;
通过模块,用于如果所述版本号与所述标准版本号一致,则所述待处理数据通过验证;
结束模块,用于如果所述版本号与所述标准版本号不一致,则结束当前流程。
在另一个实施例中,所述还原模块,包括:
读取单元,用于读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
计算单元,用于采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
获取单元,用于获取所述末位区块的末位区块主体中的第二哈希值;
排序单元,用于分别将所述第二区块高度、所述第一哈希值和所述第二哈希值带入所述梅克尔树,按照所述梅克尔树的指示对所述第二区块高度、所述第一哈希值和所述第二哈希值进行排序,得到排序结果;
打包单元,用于将所述排序结果进行打包,生成所述目标区块主体。
依据本发明第五方面,提供了一种设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面至第二方面所述方法的步骤。
依据本发明第六方面,提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面至第二方面所述的方法的步骤。
借由上述技术方案,本发明提供的一种区块传输方法、装置、设备及可读存储介质,与目前背书节点仅能在排序节点完成区块的打包后才能请求传输该区块的方式相比,本发明排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1A示出了本发明实施例提供的一种区块传输方法流程示意图;
图1B示出了本发明实施例提供的一种区块传输方法流程示意图;
图2示出了本发明实施例提供的一种区块传输方法流程示意图;
图3A示出了本发明实施例提供的一种区块传输装置的结构示意图;
图3B示出了本发明实施例提供的一种区块传输装置的结构示意图;
图3C示出了本发明实施例提供的一种区块传输装置的结构示意图;
图4A示出了本发明实施例提供的一种区块传输装置的结构示意图;
图4B示出了本发明实施例提供的一种区块传输装置的结构示意图;
图4C示出了本发明实施例提供的一种区块传输装置的结构示意图;
图5示出了本发明实施例提供的一种区块传输的装置结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种区块传输方法,排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,达到了减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险的目的,如图1A所示,该方法包括:
101、接收背书节点传输的待处理数据,对待处理数据进行排序,生成初始交易数据,待处理数据由背书节点完成对待处理数据的背书后传输至排序节点。
102、基于初始交易数据,生成目标区块,并将初始交易数据传输至背书节点。
103、根据目标区块,生成梅克尔树,并提取目标区块的目标区块头部,将梅克尔树和目标区块头部传输至背书节点,梅克尔树指示目标区块中数据之间的逻辑关系。
本发明实施例提供的方法,排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险。
本发明实施例提供了一种区块传输方法,排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,达到了减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险的目的,如图1B所示,该方法包括:
104、获取待处理数据,对待处理数据进行背书,将待处理数据传输至排序节点。
105、接收排序节点返回的初始交易数据,将初始交易数据存储至交易池,初始交易数据由排序节点对待处理数据进行排序后传输至背书节点。
106、当接收到排序节点传输的梅克尔树和目标区块头部时,基于初始交易数据和梅克尔树还原得到目标区块主体,梅克尔树指示了目标区块中数据之间的逻辑关系。
107、将目标区块主体和目标区块头部进行组合,生成目标区块。
本发明实施例提供的方法,排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险。
本发明实施例提供了一种区块传输方法,排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,达到了减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险的目的,如图2所示,该方法涉及背书节点和排序节点之间的交互,包括:
201、背书节点获取待处理数据,对待处理数据进行背书,将待处理数据传输至排序节点。
在本发明实施例中,当有数据请求写入区块链时,区块链所在系统中的背书节点会最先接收到数据。由于一笔交易中涉及到的待处理数据是很多的,为了对数据的写入进行记录,背书节点会对接收到的待处理数据进行背书,保证背书节点中存在对待处理数据的记录,且背书节点在完成了对待处理数据的背书后,便会将待处理数据传输至排序节点,以便排序节点对待处理数据进行处理。其中,背书过程实际为背书节点对该待处理数据进行备份的过程,从而使得待处理数据被发送至排序节点后,背书节点还可以对该待处理数据执行其他的操作。
在实际应用的过程中,背书节点在获取待处理数据时,为了避免交易中的待处理数据过多而导致数据传输的时间过长,向背书节点传输数据的交易服务器可以将交易标识传输给背书节点,由背书节点基于该交易标识在交易服务器的数据库中查找相应的数据作为待处理数据,并继续对该待处理交易进行背书,完成背书后,将该待处理交易传输给排序节点。
需要说明的是,当背书节点接收到待处理数据时,为了减轻后续对数据进行校验的负担,背书节点可以直接基于该待处理数据进行验证,从而确定该待处理数据的真实性。其中,由于待处理数据中是包括版本号的,因此,背书节点可以获取该待处理数据中的版本号,并获取当前的标准版本号,将标准版本号与获取到的版本号进行比对,并在版本号一致的情况下通过验证。如果版本号与标准版本号一致,则待处理数据通过验证,可以继续执行待处理数据的传输以及区块的生成过程;如果版本号与标准版本号不一致,则表示待处理数据很可能为虚假数据或者由恶意节点传输的数据,因此,需要结束当前流程。为了使发送待处理数据的对象可以知晓该待处理数据没有通过验证,背书节点可以生成验证失败响应,将该验证失败响应返回给交易服务器,以验证失败响应来证明对待处理数据的验证失败。
另外,由于待处理数据中还可能会携带交易签名及交易公钥,因此,如果待处理数据中携带有交易签名和交易公钥,背书节点还可以采用交易公钥对整个待处理数据进行签名,得到待验证签名,将待验证签名与待处理数据中的交易签名进行比对,如果交易签名与待验证签名一致则通过验证,也即采用验签的方式验证待处理数据的真实性以及合法性。本发明对验证待处理数据的方式以及时机不进行具体限定。
202、排序节点接收背书节点传输的待处理数据,对待处理数据进行排序,生成初始交易数据。
在本发明实施例中,当排序节点接收到背书节点传输的待处理数据后,由于该待处理数据仅是背书节点总结得到的有关当前交易的全部数据,但是并没有按照时间线以及区块的生成要求进行数据的排序,因此,排序节点在接收到待处理数据后,将该待处理数据进行排序,从而生成初始交易数据。例如,假设待处理数据中包括交易签名、交易公钥、转账人地址、接收人地址、金额,则由于不涉及时间线,因此,可以按照生成区块时存储各个数据的顺序对待处理数据进行排序,得到排序后的转账人地址、接收人地址、金额、交易签名以及交易公钥作为初始交易数据。
203、排序节点基于初始交易数据,生成目标区块,并将初始交易数据传输至背书节点。
在本发明实施例中,当生成了初始交易数据后,为了使背书节点可以尽早获取到排序后的初始交易数据,而无需在排序节点生成区块后统一获得区块,导致后续的数据传输负载过高,排序节点直接将生成的初始交易数据返回给背书节点,无需等到区块生成。
当排序节点将生成的初始交易数据返回给背书节点后,便可以继续对该初始交易数据进行处理,从而生成目标区块。其中,在基于初始交易数据生成区块时,首先,读取区块链中末位区块的第一区块高度,在第一区块高度的取值上增加固定数值,得到第二区块高度。例如,如果末位区块的第一区块高度为hight(3),固定数值为1,则得到的第二区块高度即为hight(4)。随后,采用哈希算法对初始交易数据进行哈希计算,得到初始交易数据的第一哈希值,并获取末位区块的末位区块主体中的第二哈希值,将第二区块高度、初始交易数据、第一哈希值和第二哈希值进行打包,生成目标区块主体。最后,确定初始交易数据的版本号和时间戳,对版本号和时间戳进行哈希计算,得到第一区块头哈希值,获取末位区块的末位区块头部中的第二区块头哈希值,将第一区块头哈希值、版本号、时间戳和第二区块头哈希值进行打包,生成目标区块头部。由于区块都是由头部以及主题构成的,因此,将目标区块主体和目标区块头部进行组合,便可以生成目标区块。
在完成了区块的生成后,由于区块链去中心化的特性,使得每个节点中存储的区块链都是一致的,因此,排序节点将生成的目标区块存储在自身的本地账本中,从而保证自身的本地账本与其他节点的账本之间不会存在差异。
204、背书节点接收排序节点返回的初始交易数据,将初始交易数据存储至交易池。
在本发明实施例中,由于背书节点会接收到排序节点返回的排序后的初始交易数据,因此,为了在后续可以还原出目标区块,背书节点将排序节点返回的初始交易数据存储在交易池,实现初始交易数据的缓存。
205、排序节点根据目标区块,生成梅克尔树,并提取目标区块的目标区块头部,将梅克尔树和目标区块头部传输至背书节点。
在本发明实施例中,当排序节点完成了目标区块的生成后,考虑到目标区块的体积较大,多个区块同时传输会使排序节点的CPU负载过大,为了使背书节点可以正常将该目标区块同步到自身的账本中,排序节点生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,并提取该目标区块的目标区块头部,仅将生成的梅克尔树和目标区块头部传输给背书节点,由背书节点自行根据梅克尔树和目标区块头部还原得到目标区块,从而避免整个目标区块的传输。由于梅克尔树仅是采用文本的方式表现逻辑关系的树状图,大小可以忽略,因此,减轻了排序节点与背书节点之间的数据传输负担。
其中,排序节点在生成目标区块的梅克尔树时,由于梅克尔树包括叶子节点和根节点,根节点的取值为其下全部的叶子节点的取值进行组合,并对组合结果进行哈希计算得到的,因此,可以按照初始交易中每个数据的顺序,分别计算多个叶子节点的取值和根节点的取值,从而生成梅克尔树。具体地,首先,确定初始交易数据、第一哈希值和第二哈希值在目标区块中的逻辑顺序,并按照逻辑顺序,将初始交易数据、第一哈希值和第二哈希值进行组合整理,生成包括至少一个根节点和至少一个叶子节点的初始架构;随后,按照初始架构的指示,对初始交易数据、第一哈希值和第二哈希值进行哈希计算,得到至少一个根节点和至少一个叶子节点的取值;最后,将至少一个根节点和至少一个叶子节点的取值填入初始架构,生成梅克尔树。
例如,假设初始交易数据中包括的数据按顺序为A、B、C、D,则可以计算A和B的哈希值hashA和hashB作为第一级叶子节点的取值;随后,将hashB与hashA结合,计算(hashA,hashB)的哈希值hash(hashA,hashB)作为第二级叶子节点的取值;计算C的哈希值hashC,将hashC和hash(hashA,hashB)结合,计算【hashC,hash(hashA,hashB)】的哈希值hash【hashC,hash(hashA,hashB)】作为第三级叶子节点的取值;最后,计算D的哈希值hashD,将hashD和hash【hashC,hash(hashA,hashB)】结合,计算{hashD,hash【hashC,hash(hashA,hashB)】}的哈希值hash{hashD,hash【hashC,hash(hashA,hashB)】}作为根节点的取值,从而将这些计算得到的哈希值按照递进关系进行整理,生成梅克尔树。
在完成了梅克尔树的生成后,由于梅克尔树并没有涉及到目标区块头部中的任何数据,仅是目标区块主体中数据生成的,因此,排序节点将目标区块头部提取出来,将梅克尔树和目标区块头部一起发送给背书节点,以便背书节点可以通过梅克尔树和目标区块头部将目标区块完整的还原出来,避免在还原的过程中发生偏差。
206、当背书节点接收到排序节点传输的梅克尔树和目标区块头部时,基于初始交易数据和梅克尔树还原得到目标区块主体。
在本发明实施例中,由于排序节点在完成了目标区块的生成后,会将目标区块的梅克尔树和目标区块头部传输给背书节点,因此,当背书节点接收到传输节点传输的梅克尔树和目标区块头部后,便可以获取初始交易数据,并基于梅克尔树和初始交易数据还原目标区块中的排序结果,并在还原后的排序结果上添加目标区块头部,得到目标区块。
具体过程如下:首先,背书节点读取区块链中末位区块的第一区块高度,在第一区块高度的取值上增加固定数值,得到第二区块高度;随后,采用哈希算法对初始交易数据进行哈希计算,得到初始交易数据的第一哈希值,并获取末位区块的末位区块主体中的第二哈希值;最后,分别将第二区块高度、第一哈希值和第二哈希值带入梅克尔树,按照梅克尔树的指示对第二区块高度、第一哈希值和第二哈希值进行排序,得到排序结果,将排序结果进行打包,生成目标区块主体。其中,如果梅克尔树中的叶子节点和根节点是存在等级的,还可以将第二区块高度、第一哈希值和第二哈希值与梅克尔树中的第一级叶子节点的取值进行比对,从而确定第一级叶子节点对应的数值;随后,分别将其他的数值与第一级叶子节点的取值进行结合,并计算结合后的数据的哈希值,将哈希值与第二级叶子节点的取值一致的数据作为第二级叶子节点对应的数据,依次类推,从而确定每个数据之间的关系,形成区块的目标区块主体。
207、背书节点将目标区块主体和目标区块头部进行组合,生成目标区块。
在本发明实施例中,由于排序节点还将目标区块的目标区块头部传输给背书节点,因此,背书节点将目标区块主体与目标区块头部进行组合,从而生成目标区块。
本发明实施例提供的方法,排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险。
进一步地,作为图1A所述方法的具体实现,本发明实施例提供了一种区块传输装置,如图3A所示,所述装置包括:排序模块301,生成模块302和传输模块303。
该排序模块301,用于接收背书节点传输的待处理数据,对所述待处理数据进行排序,生成初始交易数据,所述待处理数据由所述背书节点完成对所述待处理数据的背书后传输至所述排序节点;
该生成模块302,用于基于所述初始交易数据,生成目标区块,并将所述初始交易数据传输至所述背书节点;
该传输模块303,用于根据所述目标区块,生成梅克尔树,并提取所述目标区块的目标区块头部,将所述梅克尔树和所述目标区块头部传输至所述背书节点,所述梅克尔树指示所述目标区块中数据之间的逻辑关系。
在具体的应用场景中,如图3B所示,生成模块302,具体包括:读取单元3021,第一计算单元3022,第一打包单元3023,第二计算单元3024,第二打包单元3025和组合单元3026。
该读取单元3021,用于读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
该第一计算单元3022,用于采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
该第一打包单元3023,用于获取所述末位区块的末位区块主体中的第二哈希值,将所述第二区块高度、所述初始交易数据、所述第一哈希值和所述第二哈希值进行打包,生成目标区块主体;
该第二计算单元3024,用于确定所述初始交易数据的版本号和时间戳,对所述版本号和所述时间戳进行哈希计算,得到第一区块头哈希值;
该第二打包单元3025,用于获取所述末位区块的末位区块头部中的第二区块头哈希值,将所述第一区块头哈希值、所述版本号、所述时间戳和所述第二区块头哈希值进行打包,生成所述目标区块头部;
该组合单元3026,用于将所述目标区块主体和所述目标区块头部进行组合,生成所述目标区块。
在具体的应用场景中,如图3C所示,该传输模块303,包括:确定单元3031,整理单元3032,计算单元3033,生成单元3034。
该确定单元3031,用于确定所述初始交易数据、第一哈希值和第二哈希值在所述目标区块中的逻辑顺序;
该整理单元3032,用于按照所述逻辑顺序,将所述初始交易数据、所述第一哈希值和所述第二哈希值进行组合整理,生成初始架构,所述初始架构包括至少一个根节点和至少一个叶子节点;
该计算单元3033,用于按照所述初始架构的指示,对所述初始交易数据、所述第一哈希值和所述第二哈希值进行哈希计算,得到所述至少一个根节点和所述至少一个叶子节点的取值;
该生成单元3034,用于将所述至少一个根节点和所述至少一个叶子节点的取值填入所述初始架构,生成所述梅克尔树。
本发明实施例提供的装置,排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险。
进一步地,作为图1B所述方法的具体实现,本发明实施例提供了一种区块传输装置,如图4A所示,所述装置包括:背书模块401,存储模块402,还原模块403和组合模块404。
该背书模块401,用于获取待处理数据,对所述待处理数据进行背书,将所述待处理数据传输至所述排序节点;
该存储模块402,用于接收所述排序节点返回的初始交易数据,将所述初始交易数据存储至交易池,所述初始交易数据由所述排序节点对所述待处理数据进行排序后传输至所述背书节点;
该还原模块403,用于当接收到所述排序节点传输的梅克尔树和目标区块头部时,基于所述初始交易数据和所述梅克尔树还原得到目标区块主体,所述梅克尔树指示了目标区块中数据之间的逻辑关系;
该组合模块404,用于将所述目标区块主体和所述目标区块头部进行组合,生成目标区块。
在具体的应用场景中,如图4B所示,该装置还包括:比对模块405,通过模块406和结束模块407。
该比对模块405,用于在所述待处理数据中提取版本号,并获取标准版本号,将所述版本号与所述标准版本号进行比对;
该通过模块406,用于如果所述版本号与所述标准版本号一致,则所述待处理数据通过验证;
该结束模块407,用于如果所述版本号与所述标准版本号不一致,则结束当前流程。
在具体的应用场景中,如图4C所示,该还原模块403,包括:读取单元4031,计算单元4032,获取单元4033,排序单元4034和打包单元4035。
该读取单元4031,用于读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
该计算单元4032,用于采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
该获取单元4033,用于获取所述末位区块的末位区块主体中的第二哈希值;
该排序单元4034,用于分别将所述第二区块高度、所述第一哈希值和所述第二哈希值带入所述梅克尔树,按照所述梅克尔树的指示对所述第二区块高度、所述第一哈希值和所述第二哈希值进行排序,得到排序结果;
该打包单元4035,用于将所述排序结果进行打包,生成所述目标区块主体。
本发明实施例提供的装置,排序节点在对背书节点传输的待处理数据进行排序得到初始交易数据后,将该初始交易数据传输给背书节点,根据该初始交易数据生成目标区块,并为目标区块生成用于指示目标区块中数据之间的逻辑关系的梅克尔树,将该目标区块的梅克尔树和目标区块头部均发送给背书节点,以便背书节点可以基于梅克尔树和目标区块头部还原出目标区块,从而无需将整个区块传输给背书节点,减少了排序节点与背书节点之间传输的数据量,避免背书节点和排序节点的压力过大,降低了区块链崩溃的风险。
需要说明的是,本发明实施例提供的一种区块传输装置所涉及各功能单元的其他相应描述,可以参考图1A至图1B和图2中的对应描述,在此不再赘述。
在示例性实施例中,参见图5,还提供了一种设备,该设备500包括通信总线、处理器、存储器和通信接口,还可以包括、输入输出接口和显示设备,其中,各个功能单元之间可以通过总线完成相互间的通信。该存储器存储有计算机程序,处理器,用于执行存储器上所存放的程序,执行上述实施例中的区块传输方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的区块传输方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (10)
1.一种区块传输方法,其特征在于,所述方法应用于排序节点,包括:
接收背书节点传输的待处理数据,对所述待处理数据进行排序,生成初始交易数据,所述待处理数据由所述背书节点完成对所述待处理数据的背书后传输至所述排序节点;
基于所述初始交易数据,生成目标区块,并将所述初始交易数据传输至所述背书节点;
根据所述目标区块,生成梅克尔树,并提取所述目标区块的目标区块头部,将所述梅克尔树和所述目标区块头部传输至所述背书节点,所述梅克尔树指示所述目标区块中数据之间的逻辑关系。
2.根据权利要求1所述的方法,其特征在于,所述基于所述初始交易数据,生成目标区块,包括:
读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
获取所述末位区块的末位区块主体中的第二哈希值,将所述第二区块高度、所述初始交易数据、所述第一哈希值和所述第二哈希值进行打包,生成目标区块主体;
确定所述初始交易数据的版本号和时间戳,对所述版本号和所述时间戳进行哈希计算,得到第一区块头哈希值;
获取所述末位区块的末位区块头部中的第二区块头哈希值,将所述第一区块头哈希值、所述版本号、所述时间戳和所述第二区块头哈希值进行打包,生成所述目标区块头部;
将所述目标区块主体和所述目标区块头部进行组合,生成所述目标区块。
3.根据权利要求1所述的方法,其特征在于,所述根据所述目标区块,生成梅克尔树,包括:
确定所述初始交易数据、第一哈希值和第二哈希值在所述目标区块中的逻辑顺序;
按照所述逻辑顺序,将所述初始交易数据、所述第一哈希值和所述第二哈希值进行组合整理,生成初始架构,所述初始架构包括至少一个根节点和至少一个叶子节点;
按照所述初始架构的指示,对所述初始交易数据、所述第一哈希值和所述第二哈希值进行哈希计算,得到所述至少一个根节点和所述至少一个叶子节点的取值;
将所述至少一个根节点和所述至少一个叶子节点的取值填入所述初始架构,生成所述梅克尔树。
4.一种区块传输方法,其特征在于,所述方法应用于背书节点,包括:
获取待处理数据,对所述待处理数据进行背书,将所述待处理数据传输至所述排序节点;
接收所述排序节点返回的初始交易数据,将所述初始交易数据存储至交易池,所述初始交易数据由所述排序节点对所述待处理数据进行排序后传输至所述背书节点;
当接收到所述排序节点传输的梅克尔树和目标区块头部时,基于所述初始交易数据和所述梅克尔树还原得到目标区块主体,所述梅克尔树指示了目标区块中数据之间的逻辑关系;
将所述目标区块主体和所述目标区块头部进行组合,生成目标区块。
5.根据权利要求4所述的方法,其特征在于,所述获取待处理数据,对所述待处理数据进行背书,将所述待处理数据传输至所述排序节点之前,所述方法还包括:
在所述待处理数据中提取版本号,并获取标准版本号,将所述版本号与所述标准版本号进行比对;
如果所述版本号与所述标准版本号一致,则所述待处理数据通过验证;
如果所述版本号与所述标准版本号不一致,则结束当前流程。
6.根据权利要求4所述的方法,其特征在于,所述当接收到所述排序节点传输的梅克尔树和目标区块头部时,基于所述初始交易数据和所述梅克尔树还原得到目标区块主体,包括:
读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
获取所述末位区块的末位区块主体中的第二哈希值;
分别将所述第二区块高度、所述第一哈希值和所述第二哈希值带入所述梅克尔树,按照所述梅克尔树的指示对所述第二区块高度、所述第一哈希值和所述第二哈希值进行排序,得到排序结果;
将所述排序结果进行打包,生成所述目标区块主体。
7.一种区块传输装置,其特征在于,所述装置应用于排序节点,包括:
排序模块,用于接收背书节点传输的待处理数据,对所述待处理数据进行排序,生成初始交易数据,所述待处理数据由所述背书节点完成对所述待处理数据的背书后传输至所述排序节点;
生成模块,用于基于所述初始交易数据,生成目标区块,并将所述初始交易数据传输至所述背书节点;
传输模块,用于根据所述目标区块,生成梅克尔树,并提取所述目标区块的目标区块头部,将所述梅克尔树和所述目标区块头部传输至所述背书节点,所述梅克尔树指示所述目标区块中数据之间的逻辑关系。
8.根据权利要求7所述的装置,其特征在于,所述生成模块,包括:
读取单元,用于读取区块链中末位区块的第一区块高度,在所述第一区块高度的取值上增加固定数值,得到第二区块高度;
第一计算单元,用于采用哈希算法对所述初始交易数据进行哈希计算,得到所述初始交易数据的第一哈希值;
第一打包单元,用于获取所述末位区块的末位区块主体中的第二哈希值,将所述第二区块高度、所述初始交易数据、所述第一哈希值和所述第二哈希值进行打包,生成目标区块主体;
第二计算单元,用于确定所述初始交易数据的版本号和时间戳,对所述版本号和所述时间戳进行哈希计算,得到第一区块头哈希值;
第二打包单元,用于获取所述末位区块的末位区块头部中的第二区块头哈希值,将所述第一区块头哈希值、所述版本号、所述时间戳和所述第二区块头哈希值进行打包,生成所述目标区块头部;
组合单元,用于将所述目标区块主体和所述目标区块头部进行组合,生成所述目标区块。
9.一种设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910816026.6A CN110753080A (zh) | 2019-08-30 | 2019-08-30 | 区块传输方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910816026.6A CN110753080A (zh) | 2019-08-30 | 2019-08-30 | 区块传输方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110753080A true CN110753080A (zh) | 2020-02-04 |
Family
ID=69275957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910816026.6A Pending CN110753080A (zh) | 2019-08-30 | 2019-08-30 | 区块传输方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110753080A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111523896A (zh) * | 2020-05-06 | 2020-08-11 | 杭州复杂美科技有限公司 | 防攻击方法、设备和存储介质 |
CN111639939A (zh) * | 2020-06-08 | 2020-09-08 | 杭州复杂美科技有限公司 | 区块还原方法、设备和存储介质 |
CN111756639A (zh) * | 2020-06-19 | 2020-10-09 | 杭州芯讯科技有限公司 | 一种基于默克尔树和广播自请求的镜像数据传输方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106506638A (zh) * | 2016-11-04 | 2017-03-15 | 江苏通付盾科技有限公司 | 区块链中的区块存储方法及装置 |
WO2018119930A1 (zh) * | 2016-12-29 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 交易验证处理方法、装置及节点设备 |
CN109493221A (zh) * | 2018-10-26 | 2019-03-19 | 全链通有限公司 | 区块链中交易记录保密方法、设备、网络及存储介质 |
CN109711869A (zh) * | 2018-12-12 | 2019-05-03 | 杭州基尔区块链科技有限公司 | 一种芯片研发交易数据存储方法及系统 |
CN110009334A (zh) * | 2018-11-07 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 一种构建梅克尔树、简单支付验证方法及装置 |
-
2019
- 2019-08-30 CN CN201910816026.6A patent/CN110753080A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106506638A (zh) * | 2016-11-04 | 2017-03-15 | 江苏通付盾科技有限公司 | 区块链中的区块存储方法及装置 |
WO2018119930A1 (zh) * | 2016-12-29 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 交易验证处理方法、装置及节点设备 |
CN109493221A (zh) * | 2018-10-26 | 2019-03-19 | 全链通有限公司 | 区块链中交易记录保密方法、设备、网络及存储介质 |
CN110009334A (zh) * | 2018-11-07 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 一种构建梅克尔树、简单支付验证方法及装置 |
CN109711869A (zh) * | 2018-12-12 | 2019-05-03 | 杭州基尔区块链科技有限公司 | 一种芯片研发交易数据存储方法及系统 |
Non-Patent Citations (1)
Title |
---|
刘懿中等: "区块链共识机制研究综述", 《密码学报》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111523896A (zh) * | 2020-05-06 | 2020-08-11 | 杭州复杂美科技有限公司 | 防攻击方法、设备和存储介质 |
CN111523896B (zh) * | 2020-05-06 | 2023-05-30 | 杭州复杂美科技有限公司 | 防攻击方法、设备和存储介质 |
CN111639939A (zh) * | 2020-06-08 | 2020-09-08 | 杭州复杂美科技有限公司 | 区块还原方法、设备和存储介质 |
CN111756639A (zh) * | 2020-06-19 | 2020-10-09 | 杭州芯讯科技有限公司 | 一种基于默克尔树和广播自请求的镜像数据传输方法 |
CN111756639B (zh) * | 2020-06-19 | 2022-05-10 | 杭州芯讯科技有限公司 | 一种基于默克尔树和广播自请求的镜像数据传输方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3678346A1 (en) | Blockchain smart contract verification method and apparatus, and storage medium | |
CN108428132B (zh) | 欺诈交易识别方法、装置、服务器及存储介质 | |
CN109033475B (zh) | 一种文件存储方法、装置、设备及存储介质 | |
CN109547477B (zh) | 一种数据处理方法及其装置、介质、终端 | |
US20190179801A1 (en) | File management/search system and file management/search method based on block chain | |
CN110753080A (zh) | 区块传输方法、装置、设备及可读存储介质 | |
CN108985772A (zh) | 一种区块链的验证方法、装置、设备及存储介质 | |
EP3321819A1 (en) | Device, method and program for securely reducing an amount of records in a database | |
WO2020244237A1 (zh) | 一种块链式账本中的验证方法、装置及设备 | |
US11361110B2 (en) | File verification method, file verification system and file verification server | |
FI3864798T3 (fi) | Järjestelmä ja menetelmä lohkoketjujen yhteentoimivuuteen | |
CN104965835B (zh) | 一种分布式文件系统的文件读写方法及装置 | |
CN111177795A (zh) | 一种利用区块链识别视频篡改的方法、装置和计算机存储介质 | |
CN111339551B (zh) | 数据的验证方法及相关装置、设备 | |
WO2021151298A1 (zh) | 一种数据冗余处理方法、装置、设备及存储介质 | |
CN113362068B (zh) | 一种轻节点验证区块链状态转移的方法 | |
CN111858467B (zh) | 基于人工智能的文件数据处理方法、装置、设备和介质 | |
CN114127707A (zh) | 用于处理写请求的系统、计算节点和方法 | |
CN109698750A (zh) | 区块链的区块生成方法、装置、设备及可读存储介质 | |
CN109582646A (zh) | 一种用于文件拆分的冗余和恢复方法及系统 | |
CN111368003B (zh) | 一种多链锚定数据的管理方法 | |
US11115189B2 (en) | Verifying a blockchain-type ledger | |
CN110636042B (zh) | 一种服务端已验证块高的更新方法、装置及设备 | |
CN114462998A (zh) | 一种日志防篡改方法、系统及存储介质 | |
CN110889017A (zh) | 一种经过base64加密过的信息的检索方法及终端 |
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 | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20231208 |