CN113269644A - 基于区块链的交易处理方法及装置 - Google Patents
基于区块链的交易处理方法及装置 Download PDFInfo
- Publication number
- CN113269644A CN113269644A CN202110589430.1A CN202110589430A CN113269644A CN 113269644 A CN113269644 A CN 113269644A CN 202110589430 A CN202110589430 A CN 202110589430A CN 113269644 A CN113269644 A CN 113269644A
- Authority
- CN
- China
- Prior art keywords
- transaction
- applications
- application
- groups
- processing
- 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
Links
Images
Classifications
-
- 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
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开一种基于区块链的交易处理方法及装置,涉及区块链技术领域。本申请的方法包括:获取多个交易申请,其中,多个所述交易申请为在预设时间间隔内接收到的交易申请,所述交易申请包括分组标识,所述分组标识为所述交易申请对应的交易发起节点创建所述交易申请时自行添加的;根据每个所述交易申请对应的分组标识对多个所述交易申请进行分组,得到N个分组;对N个所述分组中包含的多个所述交易申请进行并行验证处理;根据验证成功的多个所述交易申请生成目标区块。本申请适用于记账节点对接收到的多笔交易申请进行验证处理的过程中。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种基于区块链的交易处理方法及装置。
背景技术
区块链技术(Blockchain Technology,BT)是一种去中心化的分布式存储技术,因为具有去中心化、交易过程透明、信息不可篡改、可追溯等优点,而被广泛应用于金融领域。在区块链平台中,任意一个节点均具备创建交易申请的能力,当某个节点创建一笔新的交易申请时,该节点会将该笔交易申请广播至全平台,具有验证交易申请能力的记账节点在接收到该笔交易申请后,会对该笔交易申请进行验证处理,当验证成功时,便会将该笔交易申请放入自身创建的区块中,在区块内存储的交易申请的数量到达预设阈值时,记账节点便会将这个区块进行打包,并将该区块内存储的交易申请广播至平台中的其他节点中。
目前,记账节点通常是对接收到的多笔交易申请进行串行验证处理,即记账节点每次只能对一笔交易申请进行验证处理。然而,在实际应用中,当记账节点接收到的交易申请数量过多时,记账节点在根据接收到多笔交易申请的时间顺序依次对每笔交易申请进行验证处理时,会耗费大量时间,从而导致记账节点对接收到的多笔交易申请进行验证处理的处理效率较低。
发明内容
本申请实施例提供一种基于区块链的交易处理方法及装置,主要目的在于提高记账节点对接收到的多笔交易申请进行验证处理的处理效率。
为解决上述技术问题,本申请实施例提供如下技术方案:
第一方面,本申请提供了一种基于区块链的交易处理方法,该方法包括:
获取多个交易申请,其中,多个所述交易申请为在预设时间间隔内接收到的交易申请,所述交易申请包括分组标识,所述分组标识为所述交易申请对应的交易发起节点创建所述交易申请时自行添加的;
根据每个所述交易申请对应的分组标识对多个所述交易申请进行分组,得到N个分组;
对N个所述分组中包含的多个所述交易申请进行并行验证处理;
根据验证成功的多个所述交易申请生成目标区块。
可选的,所述交易申请还包括:数字签名和交易信息;所述对N个所述分组中包含的多个所述交易申请进行并行验证处理,包括:
根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理;
对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理;
根据每个所述分组中验证成功的多个所述交易申请生成每个所述分组对应的子区块。
可选的,所述交易申请还包括:公钥;所述根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理,包括:
使用所述交易申请对应的公钥对所述交易申请对应的数字签名进行解密处理,以获得所述交易申请对应的第一摘要信息;
对所述交易申请对应的交易信息进行哈希处理,以生成所述交易申请对应的第二摘要信息;
判断所述交易申请对应的第一摘要信息与第二摘要信息是否相同;
若相同,则确定所述交易申请对应的数字签名校验成功。
可选的,所述交易申请还包括:分配金额,所述交易信息包括:交易金额;所述对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理,包括:
根据所述交易申请对应的分配金额和交易金额判断所述交易申请对应的交易发起节点是否具有支付所述交易金额的能力;
若是,则确定所述交易申请对应的交易信息验证成功。
可选的,在所述对N个所述分组中包含的多个所述交易申请进行并行验证处理之后,所述方法还包括:
将每个所述分组对应的子区块输入至预置智能合约中,以便所述预置智能合约输出每个所述交易发起节点对应的最终余额;
所述根据验证成功的多个所述交易申请生成目标区块,包括:
对多个所述子区块和每个所述交易发起节点对应的最终余额进行打包处理,以获得所述目标区块。
可选的,所述交易申请为其对应的交易发起节点使用预置智能合约验证成功后,广播至区块链平台中的。
第二方面,本申请还提供一种基于区块链的交易处理装置,该装置包括:
获取单元,用于获取多个交易申请,其中,多个所述交易申请为在预设时间间隔内接收到的交易申请,所述交易申请包括分组标识,所述分组标识为所述交易申请对应的交易发起节点创建所述交易申请时自行添加的;
分组单元,用于根据每个所述交易申请对应的分组标识对多个所述交易申请进行分组,得到N个分组;
验证单元,用于对N个所述分组中包含的多个所述交易申请进行并行验证处理;
生成单元,用于根据验证成功的多个所述交易申请生成目标区块。
可选的,所述交易申请还包括:数字签名和交易信息;所述验证单元包括:
校验模块,用于根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理;
验证模块,用于对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理;
生成模块,用于根据每个所述分组中验证成功的多个所述交易申请生成每个所述分组对应的子区块。
可选的,所述交易申请还包括:公钥;所述校验模块包括:
解密子模块,用于使用所述交易申请对应的公钥对所述交易申请对应的数字签名进行解密处理,以获得所述交易申请对应的第一摘要信息;
生成子模块,用于对所述交易申请对应的交易信息进行哈希处理,以生成所述交易申请对应的第二摘要信息;
第一判断子模块,用于判断所述交易申请对应的第一摘要信息与第二摘要信息是否相同;
第一确定子模块,用于当所述第一判断子模块判定所述交易申请对应的第一摘要信息与第二摘要信息相同时,确定所述交易申请对应的数字签名校验成功。
可选的,所述交易申请还包括:分配金额,所述交易信息包括:交易金额;所述验证模块包括:
第二判断子模块,用于根据所述交易申请对应的分配金额和交易金额判断所述交易申请对应的交易发起节点是否具有支付所述交易金额的能力;
第二确定子模块,用于当所述第二判断子模块判定所述交易申请对应的交易发起节点具有支付所述交易金额的能力时,确定所述交易申请对应的交易信息验证成功。
可选的,所述装置还包括:
输入单元,用于在所述验证单元对N个所述分组中包含的多个所述交易申请进行并行验证处理之后,将每个所述分组对应的子区块输入至预置智能合约中,以便所述预置智能合约输出每个所述交易发起节点对应的最终余额;
所述生成单元,具体用于对多个所述子区块和每个所述交易发起节点对应的最终余额进行打包处理,以获得所述目标区块。
可选的,所述交易申请为其对应的交易发起节点使用预置智能合约验证成功后,广播至区块链平台中的。
第三方面,本申请的实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面所述的基于区块链的交易处理方法。
第四方面,本申请的实施例提供了一种基于区块链的交易处理装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行第一方面所述的基于区块链的交易处理方法。
借由上述技术方案,本申请提供的技术方案至少具有下列优点:
本申请提供一种基于区块链的交易处理方法及装置,本申请能够在记账节点获取得到预设时间间隔内接收到的多笔交易申请后,由记账节点根据每笔交易申请对应的分组标识对多笔交易申请进行分组处理,从而得到N个分组,再对N个分组中包含的多笔交易申请进行并行验证处理,最后根据验证成功的多笔交易申请生成目标区块,即将验证成功的多笔交易申请放入目标区块内进行存储。由于,记账节点在获取得到多笔交易申请后,先对多笔交易申请进行分组处理,得到多个分组,再对多个分组中包含的多笔交易申请进行并行验证处理,即同时对多笔交易申请进行验证处理,从而可以有效提高记账节点对接收到的多笔交易申请进行验证处理的处理效率。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过参考附图阅读下文的详细描述,本申请示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本申请的若干实施方式,相同或对应的标号表示相同或对应的部分,其中:
图1示出了本申请实施例提供的一种基于区块链的交易处理方法流程图;
图2示出了本申请实施例提供的另一种基于区块链的交易处理方法流程图;
图3示出了本申请实施例提供的一种基于区块链的交易处理装置的组成框图;
图4示出了本申请实施例提供的另一种基于区块链的交易处理装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施方式。虽然附图中显示了本申请的示例性实施方式,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。
本申请实施例提供一种基于区块链的交易处理方法,如图1所示,该方法包括:
101、获取多个交易申请。
在本申请实施例中,区块链平台中的任意一个节点既具备创建交易申请的能力,又具备验证交易申请的能力,即区块链平台中的任意一个节点既可以作为交易发起节点创建交易申请,又可以作为记账节点验证交易申请,其中,区块链平台中的任意一个节点中预先设置有智能合约,当某个节点作为交易发起节点创建一笔交易申请后,该节点会将该交易申请输入至预置智能合约中,以便预置智能合约验证该交易申请,当预置智能合约输出的验证结果为验证成功时,该节点便会将该交易申请广播至区块链平台中的其他节点中。
本申请实施例中,各个步骤中的执行主体为区块链平台中的任意一个记账节点。
其中,多笔交易申请为记账节点在预设时间间隔内接收到的交易申请,交易申请包括交易信息、分组标识等信息。其中,交易信息可以但不限于包括:交易发起节点地址、交易发起节点当前余额、交易接收节点地址、交易时间以及交易金额等。其中,交易申请中包含的分组标识为:交易申请对应的交易发起节点创建该交易申请时自行添加的,即交易发起节点在创建交易申请时,可以选择记账节点对该交易申请进行验证处理的分组,从而将期望选择分组对应的分组标识添加至交易申请中。
在本发明实施例中,记账节点会实时接收区块链平台中的其他节点广播的交易申请,当到达对交易申请进行验证处理的时间点时,获取预设时间间隔内接收到的多笔交易申请,以便后续对多笔交易申请进行验证处理。
例如,预设时间间隔为5分钟,若记账节点上次对交易申请进行验证处理的时间为2021年5月14日10:00:00,则本次对交易申请进行验证处理的时间点为2021年5月14日10:05:00,此时,记账节点获取2021年5月14日10:00:00-2021年5月14日10:04:59内接收到的多笔交易申请,以便后续对多笔交易申请进行验证处理。需要进行说明的是,预设时间间隔可以预先设定为1分钟、5分钟、10分钟等等,本发明实施例对此不进行限定。
102、根据每个交易申请对应的分组标识对多个交易申请进行分组,得到N个分组。
在本申请实施例中,记账节点在获取得到预设时间间隔内接收到的多笔交易申请后,便可根据每笔交易申请对应的分组标识对多笔交易申请进行分组处理,从而得到N个分组,其中,N为正整数。
103、对N个分组中包含的多个交易申请进行并行验证处理。
在本申请实施例中,记账节点在对获取得到的多笔交易申请进行分组处理,得到N个分组后,便可对N个分组中包含的多笔交易申请进行并行验证处理,即首先对第一个分组中包含的第一笔交易申请、第二个分组中包含的第一笔交易申请…第N个分组中包含的第一笔交易申请进行并行验证处理,再对第一个分组中包含的第二笔交易申请、第二个分组中包含的第二笔交易申请…第N个分组中包含的第二笔交易申请进行并行验证处理,以此类推。
具体的,记账节点在对某交易申请进行验证处理时,分为两个步骤,一、对该交易申请对应的数字签名进行校验,即判断该交易申请是否为其对应的交易发起节点签名并广播至记账节点,以及判断该交易申请对应的交易信息是否完整;二、对该交易申请对应的交易信息进行验证,即根据该交易申请对应的交易信息判断该交易申请是否能够成功执行。当判定某交易申请为其对应的交易发起节点签名并广播至记账节点,以及判定该交易申请对应的交易信息完整时,便可确定该交易申请对应的数字签名校验成功;当根据某交易申请对应的交易信息确定该交易申请能够成功执行时,便可以确定该交易申请对应的交易信息验证成功。
104、根据验证成功的多个交易申请生成目标区块。
在本申请实施例中,记账节点在对N个分组中包含的多笔交易申请进行并行验证处理后,便可根据验证成功的多笔交易申请生成目标区块,即将验证成功的多笔交易申请放入目标区块内进行存储。
本申请实施例提供一种基于区块链的交易处理方法,本申请实施例能够在记账节点获取得到预设时间间隔内接收到的多笔交易申请后,由记账节点根据每笔交易申请对应的分组标识对多笔交易申请进行分组处理,从而得到N个分组,再对N个分组中包含的多笔交易申请进行并行验证处理,最后根据验证成功的多笔交易申请生成目标区块,即将验证成功的多笔交易申请放入目标区块内进行存储。由于,记账节点在获取得到多笔交易申请后,先对多笔交易申请进行分组处理,得到多个分组,再对多个分组中包含的多笔交易申请进行并行验证处理,即同时对多笔交易申请进行验证处理,从而可以有效提高记账节点对接收到的多笔交易申请进行验证处理的处理效率。
以下为了更加详细地说明,本申请实施例提供了另一种基于区块链的交易处理,具体如图2所示,该方法包括:
201、获取多个交易申请。
其中,关于步骤201、获取多个交易申请,可以参考图1对应部分的描述,本申请实施例此处将不再赘述。
202、根据每个交易申请对应的分组标识对多个交易申请进行分组,得到N个分组。
其中,关于步骤202、根据每个交易申请对应的分组标识对多个交易申请进行分组,得到N个分组,可以参考图1对应部分的描述,本申请实施例此处将不再赘述。
203、对N个分组中包含的多个交易申请进行并行验证处理。
其中,每笔交易申请中还包括:该笔交易申请对应的数字签名、公钥、分配金额。其中,交易发起节点创建交易申请过程的具体过程为:首先,生成交易信息,并对生成的交易信息进行哈希处理,得到交易信息对应的摘要信息;然后,使用自身的私钥对得到的摘要信息进行加密处理,从而得到该交易申请对应的数字签名,并根据自身的私钥通过预设算法生成对应的公钥,以及根据交易信息、数字签名和公钥生成交易申请;其次,选择记账节点对该交易申请进行验证处理的分组,并设置该交易申请对应的分配金额,以及将期望选择分组对应的分组标识和分配金额添加至交易申请中,其中,设置的分配金额应大于或等于交易信息中包含的交易金额,且小于或等于交易信息中包含的交易发起节点当前余额;再次,将该交易申请输入至预置智能合约中,以便预置智能合约验证该交易申请,其中,预置智能合约对该交易申请进行验证的过程可以但不限于为:验证该交易申请中包含的分配金额是否大于或等于交易信息中包含的交易金额,且小于或等于交易信息中包含的交易发起节点当前余额;最后,当预置智能合约输出的验证结果为验证成功时,便可将该交易申请广播至区块链平台中的其他节点中。
在本申请实施例中,记账节点在对获取得到的多笔交易申请进行分组处理,得到N个分组后,便可对N个分组中包含的多笔交易申请进行并行验证处理。以下将对记账节点如何对N个分组中包含的多笔交易申请进行并行验证处理进行详细说明。
(1)根据N个分组中包含的每个交易申请对应的交易信息对N个分组中包含的多个交易申请对应的数字签名进行并行校验处理。
在本申请实施例中,记账节点在对获取得到的多笔交易申请进行分组处理,得到N个分组后,便需要根据N个分组中包含的每个交易申请对应的交易信息对N个分组中包含的多笔交易申请对应的数字签名进行并行校验处理,即首先根据第一个分组中包含的第一笔交易申请对应的交易信息、第二个分组中包含的第一笔交易申请对应的交易信息…第N个分组中包含的第一笔交易申请对应的交易信息,对第一个分组中包含的第一笔交易申请对应的数字签名、第二个分组中包含的第一笔交易申请对应的数字签名…第N个分组中包含的第一笔交易申请对应的数字签名进行并行校验处理,再根据第一个分组中包含的第二笔交易申请对应的交易信息、第二个分组中包含的第二笔交易申请对应的交易信息…第N个分组中包含的第二笔交易申请对应的交易信息,对第一个分组中包含的第二笔交易申请对应的数字签名、第二个分组中包含的第二笔交易申请对应的数字签名…第N个分组中包含的第二笔交易申请对应的数字签名进行并行校验处理,以此类推。
具体的,在本步骤中,记账节点可以采用以下方式根据任意一笔交易申请对应的交易信息,对该交易申请对应的数字签名进行校验处理:
首先,使用该交易申请对应的公钥对该交易申请对应的数字签名进行解密处理,以获得该交易申请对应的第一摘要信息;其次,对该交易申请对应的交易信息进行哈希处理,从而生成该交易申请对应的第二摘要信息;再次,判断该交易申请对应的第一摘要信息与第二摘要信息是否相同;最后,当判定该交易申请对应的第一摘要信息与第二摘要信息相同时,确定该交易申请对应的数字签名校验成功。
(2)对N个分组中校验成功的多个交易申请对应的交易信息进行并行验证处理。
在本申请实施例中,记账节点在经过步骤(1)对N个分组中包含的多笔交易申请对应的数字签名进行并行校验处理后,便可对N个分组中校验成功的多笔交易申请对应的交易信息进行并行验证处理,即首先对第一个分组中校验成功的第一笔交易申请对应的交易信息、第二个分组中校验成功的第一笔交易申请对应的交易信息…第N个分组中校验成功的第一笔交易申请对应的交易信息进行并行验证处理,再对第一个分组中校验成功的第二笔交易申请对应的交易信息、第二个分组中校验成功的第二笔交易申请对应的交易信息…第N个分组中校验成功的第二笔交易申请对应的交易信息进行并行验证处理,以此类推。
具体的,在本步骤中,记账节点可以采用以下方式对任意一笔校验成功的交易申请对应的交易信息进行验证处理:
首先,根据该交易申请对应的分配金额和交易金额判断该交易申请对应的交易发起节点是否具有支付该交易金额的能力,即判断该交易申请对应的分配金额是否大于或等于该交易申请对应的交易金额;其次,当判定该交易发起节点具有支付交易金额的能力(即判定该交易申请对应的分配金额大于或等于该交易申请对应的交易金额)时,确定该交易申请对应的交易信息验证成功。
(3)根据每个分组中验证成功的多个交易申请生成每个分组对应的子区块。
在本申请实施例中,记账节点在经过步骤(2)对N个分组中校验成功的多笔交易申请对应的交易信息进行并行验证处理后,便可根据每个分组中验证成功的多笔交易申请生成每个分组对应的子区块,即将每个分组中验证成功的多笔交易申请放入对应的子区块中进行存储,例如,将分组1中验证成功的多笔交易申请放入子区块A中进行存储,将分组2中验证成功的多笔交易申请放入子区块B中进行存储等等。
进一步的,在本申请实施例中,记账节点在对N个分组中包含的多笔交易申请进行并行验证处理后,可以对验证失败的交易申请进行删除处理,从而可以避免数字签名校验失败和交易信息验证失败的交易申请过度占用记账节点的存储空间资源的情况发生。
204、将每个分组对应的子区块输入至预置智能合约中,以便预置智能合约输出每个交易发起节点对应的最终余额。
在本申请实施例中,记账节点在对N个分组中包含的多笔交易申请进行并行验证处理,从而生成每个分组对应的子区块后,需要将每个分组对应的子区块输入至预置智能合约中,以便预置智能合约输出多笔交易申请涉及的每个交易发起节点对应的最终余额。
205、对多个子区块和每个交易发起节点对应的最终余额进行打包处理,以获得目标区块。
在本申请实施例中,记账节点在通过预置智能合约获得多笔交易申请涉及的每个交易发起节点对应的最终余额后,便可对N个分组对应的子区块和每个交易发起节点对应的最终余额进行打包处理,从而获得目标区块。
为了实现上述目的,本申请实施例还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的基于区块链的交易处理方法。
为了实现上述目的,本申请实施例还提供了一种基于区块链的交易处理装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行上述所述的基于区块链的交易处理方法。
进一步的,作为对上述图1及图2所示方法的实现,本申请另一实施例还提供了一种基于区块链的交易处理装置。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该装置应用于提高记账节点对接收到的多笔交易申请进行验证处理的处理效率,具体如图3所示,该装置包括:
获取单元31,用于获取多个交易申请,其中,多个所述交易申请为在预设时间间隔内接收到的交易申请,所述交易申请包括分组标识,所述分组标识为所述交易申请对应的交易发起节点创建所述交易申请时自行添加的;
分组单元32,用于根据每个所述交易申请对应的分组标识对多个所述交易申请进行分组,得到N个分组;
验证单元33,用于对N个所述分组中包含的多个所述交易申请进行并行验证处理;
生成单元34,用于根据验证成功的多个所述交易申请生成目标区块。
进一步的,如图4所示,所述交易申请还包括:数字签名和交易信息;验证单元33包括:
校验模块331,用于根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理;
验证模块332,用于对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理;
生成模块333,用于根据每个所述分组中验证成功的多个所述交易申请生成每个所述分组对应的子区块。
进一步的,如图4所示,所述交易申请还包括:公钥;校验模块331包括:
解密子模块3311,用于使用所述交易申请对应的公钥对所述交易申请对应的数字签名进行解密处理,以获得所述交易申请对应的第一摘要信息;
生成子模块3312,用于对所述交易申请对应的交易信息进行哈希处理,以生成所述交易申请对应的第二摘要信息;
第一判断子模块3313,用于判断所述交易申请对应的第一摘要信息与第二摘要信息是否相同;
第一确定子模块3314,用于当第一判断子模块3313判定所述交易申请对应的第一摘要信息与第二摘要信息相同时,确定所述交易申请对应的数字签名校验成功。
进一步的,如图4所示,所述交易申请还包括:分配金额,所述交易信息包括:交易金额;验证模块332包括:
第二判断子模块3321,用于根据所述交易申请对应的分配金额和交易金额判断所述交易申请对应的交易发起节点是否具有支付所述交易金额的能力;
第二确定子模块3322,用于当第二判断子模块3321判定所述交易申请对应的交易发起节点具有支付所述交易金额的能力时,确定所述交易申请对应的交易信息验证成功。
进一步的,如图4所示,该装置还包括:
输入单元35,用于在所述验证单元33对N个所述分组中包含的多个所述交易申请进行并行验证处理之后,将每个所述分组对应的子区块输入至预置智能合约中,以便所述预置智能合约输出每个所述交易发起节点对应的最终余额;
生成单元34,具体用于对多个所述子区块和每个所述交易发起节点对应的最终余额进行打包处理,以获得所述目标区块。
进一步的,如图4所示,所述交易申请为其对应的交易发起节点使用预置智能合约验证成功后,广播至区块链平台中的。
本申请实施例提供一种基于区块链的交易处理方法及装置,本申请实施例能够在记账节点获取得到预设时间间隔内接收到的多笔交易申请后,由记账节点根据每笔交易申请对应的分组标识对多笔交易申请进行分组处理,从而得到N个分组,再对N个分组中包含的多笔交易申请进行并行验证处理,最后根据验证成功的多笔交易申请生成目标区块,即将验证成功的多笔交易申请放入目标区块内进行存储。由于,记账节点在获取得到多笔交易申请后,先对多笔交易申请进行分组处理,得到多个分组,再对多个分组中包含的多笔交易申请进行并行验证处理,即同时对多笔交易申请进行验证处理,从而可以有效提高记账节点对接收到的多笔交易申请进行验证处理的处理效率。
所述基于区块链的交易处理装置包括处理器和存储器,上述获取单元、分组单元、验证单元和生成单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来提高记账节点对接收到的多笔交易申请进行验证处理的处理效率。
本申请实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的基于区块链的交易处理方法。
存储介质可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请实施例还提供了一种基于区块链的交易处理装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行上述所述的基于区块链的交易处理方法。
本申请实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
获取多个交易申请,其中,多个所述交易申请为在预设时间间隔内接收到的交易申请,所述交易申请包括分组标识,所述分组标识为所述交易申请对应的交易发起节点创建所述交易申请时自行添加的;
根据每个所述交易申请对应的分组标识对多个所述交易申请进行分组,得到N个分组;
对N个所述分组中包含的多个所述交易申请进行并行验证处理;
根据验证成功的多个所述交易申请生成目标区块。
进一步的,所述交易申请还包括:数字签名和交易信息;所述对N个所述分组中包含的多个所述交易申请进行并行验证处理,包括:
根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理;
对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理;
根据每个所述分组中验证成功的多个所述交易申请生成每个所述分组对应的子区块。
进一步的,所述交易申请还包括:公钥;所述根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理,包括:
使用所述交易申请对应的公钥对所述交易申请对应的数字签名进行解密处理,以获得所述交易申请对应的第一摘要信息;
对所述交易申请对应的交易信息进行哈希处理,以生成所述交易申请对应的第二摘要信息;
判断所述交易申请对应的第一摘要信息与第二摘要信息是否相同;
若相同,则确定所述交易申请对应的数字签名校验成功。
进一步的,所述交易申请还包括:分配金额,所述交易信息包括:交易金额;所述对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理,包括:
根据所述交易申请对应的分配金额和交易金额判断所述交易申请对应的交易发起节点是否具有支付所述交易金额的能力;
若是,则确定所述交易申请对应的交易信息验证成功。
进一步的,在所述对N个所述分组中包含的多个所述交易申请进行并行验证处理之后,所述方法还包括:
将每个所述分组对应的子区块输入至预置智能合约中,以便所述预置智能合约输出每个所述交易发起节点对应的最终余额;
所述根据验证成功的多个所述交易申请生成目标区块,包括:
对多个所述子区块和每个所述交易发起节点对应的最终余额进行打包处理,以获得所述目标区块。
进一步的,所述交易申请为其对应的交易发起节点使用预置智能合约验证成功后,广播至区块链平台中的。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:获取多个交易申请,其中,多个所述交易申请为在预设时间间隔内接收到的交易申请,所述交易申请包括分组标识,所述分组标识为所述交易申请对应的交易发起节点创建所述交易申请时自行添加的;根据每个所述交易申请对应的分组标识对多个所述交易申请进行分组,得到N个分组;对N个所述分组中包含的多个所述交易申请进行并行验证处理;根据验证成功的多个所述交易申请生成目标区块。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种基于区块链的交易处理方法,其特征在于,包括:
获取多个交易申请,其中,多个所述交易申请为在预设时间间隔内接收到的交易申请,所述交易申请包括分组标识,所述分组标识为所述交易申请对应的交易发起节点创建所述交易申请时自行添加的;
根据每个所述交易申请对应的分组标识对多个所述交易申请进行分组,得到N个分组;
对N个所述分组中包含的多个所述交易申请进行并行验证处理;
根据验证成功的多个所述交易申请生成目标区块。
2.根据权利要求1所述的方法,其特征在于,所述交易申请还包括:数字签名和交易信息;所述对N个所述分组中包含的多个所述交易申请进行并行验证处理,包括:
根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理;
对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理;
根据每个所述分组中验证成功的多个所述交易申请生成每个所述分组对应的子区块。
3.根据权利要求2所述的方法,其特征在于,所述交易申请还包括:公钥;所述根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理,包括:
使用所述交易申请对应的公钥对所述交易申请对应的数字签名进行解密处理,以获得所述交易申请对应的第一摘要信息;
对所述交易申请对应的交易信息进行哈希处理,以生成所述交易申请对应的第二摘要信息;
判断所述交易申请对应的第一摘要信息与第二摘要信息是否相同;
若相同,则确定所述交易申请对应的数字签名校验成功。
4.根据权利要求2所述的方法,其特征在于,所述交易申请还包括:分配金额,所述交易信息包括:交易金额;所述对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理,包括:
根据所述交易申请对应的分配金额和交易金额判断所述交易申请对应的交易发起节点是否具有支付所述交易金额的能力;
若是,则确定所述交易申请对应的交易信息验证成功。
5.根据权利要求2所述的方法,其特征在于,在所述对N个所述分组中包含的多个所述交易申请进行并行验证处理之后,所述方法还包括:
将每个所述分组对应的子区块输入至预置智能合约中,以便所述预置智能合约输出每个所述交易发起节点对应的最终余额;
所述根据验证成功的多个所述交易申请生成目标区块,包括:
对多个所述子区块和每个所述交易发起节点对应的最终余额进行打包处理,以获得所述目标区块。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述交易申请为其对应的交易发起节点使用预置智能合约验证成功后,广播至区块链平台中的。
7.一种基于区块链的交易处理装置,其特征在于,包括:
获取单元,用于获取多个交易申请,其中,多个所述交易申请为在预设时间间隔内接收到的交易申请,所述交易申请包括分组标识,所述分组标识为所述交易申请对应的交易发起节点创建所述交易申请时自行添加的;
分组单元,用于根据每个所述交易申请对应的分组标识对多个所述交易申请进行分组,得到N个分组;
验证单元,用于对N个所述分组中包含的多个所述交易申请进行并行验证处理;
生成单元,用于根据验证成功的多个所述交易申请生成目标区块。
8.根据权利要求7所述的装置,其特征在于,所述交易申请还包括:数字签名和交易信息;所述验证单元包括:
校验模块,用于根据N个所述分组中包含的每个所述交易申请对应的交易信息对N个所述分组中包含的多个所述交易申请对应的数字签名进行并行校验处理;
验证模块,用于对N个所述分组中校验成功的多个所述交易申请对应的交易信息进行并行验证处理;
生成模块,用于根据每个所述分组中验证成功的多个所述交易申请生成每个所述分组对应的子区块。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至6中任一项所述的基于区块链的交易处理方法。
10.一种基于区块链的交易处理装置,其特征在于,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行权利要求1至6中任一项所述的基于区块链的交易处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110589430.1A CN113269644B (zh) | 2021-05-28 | 2021-05-28 | 基于区块链的交易处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110589430.1A CN113269644B (zh) | 2021-05-28 | 2021-05-28 | 基于区块链的交易处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113269644A true CN113269644A (zh) | 2021-08-17 |
CN113269644B CN113269644B (zh) | 2023-06-02 |
Family
ID=77233526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110589430.1A Active CN113269644B (zh) | 2021-05-28 | 2021-05-28 | 基于区块链的交易处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113269644B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113744063A (zh) * | 2021-11-04 | 2021-12-03 | 支付宝(杭州)信息技术有限公司 | 区块链中执行交易的方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107678865A (zh) * | 2017-09-20 | 2018-02-09 | 中国银行股份有限公司 | 基于交易分组的区块链的验证方法以及系统 |
WO2018076762A1 (zh) * | 2016-10-27 | 2018-05-03 | 上海亿账通区块链科技有限公司 | 基于区块链的交易验证方法、系统、电子装置及介质 |
CN108053211A (zh) * | 2017-12-27 | 2018-05-18 | 北京欧链科技有限公司 | 基于区块链的交易处理方法及装置 |
CN110675149A (zh) * | 2019-09-23 | 2020-01-10 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及存储介质 |
WO2020086233A1 (en) * | 2018-10-25 | 2020-04-30 | Alibaba Group Holding Limited | Method, apparatus and electronic device for blockchain transactions |
CN111311258A (zh) * | 2020-01-20 | 2020-06-19 | 布比(北京)网络技术有限公司 | 基于区块链的可信交易方法、装置、系统、设备及介质 |
CN111782275A (zh) * | 2018-10-25 | 2020-10-16 | 阿里巴巴集团控股有限公司 | 基于区块链的交易处理方法及装置、电子设备 |
-
2021
- 2021-05-28 CN CN202110589430.1A patent/CN113269644B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018076762A1 (zh) * | 2016-10-27 | 2018-05-03 | 上海亿账通区块链科技有限公司 | 基于区块链的交易验证方法、系统、电子装置及介质 |
CN107678865A (zh) * | 2017-09-20 | 2018-02-09 | 中国银行股份有限公司 | 基于交易分组的区块链的验证方法以及系统 |
CN108053211A (zh) * | 2017-12-27 | 2018-05-18 | 北京欧链科技有限公司 | 基于区块链的交易处理方法及装置 |
WO2020086233A1 (en) * | 2018-10-25 | 2020-04-30 | Alibaba Group Holding Limited | Method, apparatus and electronic device for blockchain transactions |
CN111782275A (zh) * | 2018-10-25 | 2020-10-16 | 阿里巴巴集团控股有限公司 | 基于区块链的交易处理方法及装置、电子设备 |
CN110675149A (zh) * | 2019-09-23 | 2020-01-10 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及存储介质 |
CN111311258A (zh) * | 2020-01-20 | 2020-06-19 | 布比(北京)网络技术有限公司 | 基于区块链的可信交易方法、装置、系统、设备及介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113744063A (zh) * | 2021-11-04 | 2021-12-03 | 支付宝(杭州)信息技术有限公司 | 区块链中执行交易的方法及装置 |
CN113744063B (zh) * | 2021-11-04 | 2022-02-08 | 支付宝(杭州)信息技术有限公司 | 区块链中执行交易的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113269644B (zh) | 2023-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108053211B (zh) | 基于区块链的交易处理方法及装置 | |
CN108182581B (zh) | 一种区块链的记账方法及装置 | |
CN107451175B (zh) | 一种基于区块链的数据处理方法及设备 | |
EP3591510A1 (en) | Method and device for writing service data in block chain system | |
CN111724150A (zh) | 一种业务请求的处理方法及装置 | |
CN113079200A (zh) | 一种数据处理的方法、装置及系统 | |
CN108985742A (zh) | 交易处理方法、装置及区块链系统 | |
CN111415170A (zh) | 一种基于区块链的食品溯源的方法、设备及相关存储介质 | |
CN111931195A (zh) | 一种基于区块链的用户私钥管理方法、设备及介质 | |
CN106873958A (zh) | 一种应用编程接口的调用方法及装置 | |
CN111526166B (zh) | 一种信息验证方法、装置及设备 | |
CN112967119A (zh) | 一种基于区块链的投标方法及设备、介质 | |
CN113269644B (zh) | 基于区块链的交易处理方法及装置 | |
CN111611599A (zh) | 一种区块链的共识算法实现方法、设备及介质 | |
CN110753018A (zh) | 登录认证方法及系统 | |
CN111327565B (zh) | 区块链出块方法和系统 | |
CN115082185A (zh) | 渠道快速接入贷款业务系统的方法、装置、设备及介质 | |
CN111443894A (zh) | 一种基于区块链的随机数生成方法、设备及介质 | |
CN113312630B (zh) | 实现可信调度的方法及装置 | |
CN111464290A (zh) | 一种基于区块链的动态口令生成方法、设备及介质 | |
CN116886260A (zh) | 实验设备数据跨链传输方法及系统 | |
CN113706150B (zh) | 一种区块确认方法及装置 | |
CN111639346A (zh) | 基于区块链实现无痕征信查询的方法和设备 | |
CN115689751A (zh) | 跨链交易方法、装置、设备及存储介质 | |
CN115426106A (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 |