WO2020082576A1 - 区块链事务处理的装置、方法及存储介质 - Google Patents
区块链事务处理的装置、方法及存储介质 Download PDFInfo
- Publication number
- WO2020082576A1 WO2020082576A1 PCT/CN2018/123582 CN2018123582W WO2020082576A1 WO 2020082576 A1 WO2020082576 A1 WO 2020082576A1 CN 2018123582 W CN2018123582 W CN 2018123582W WO 2020082576 A1 WO2020082576 A1 WO 2020082576A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- verification
- transaction
- result
- processing
- verification result
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Definitions
- This application relates to the field of blockchain technology, and in particular to a blockchain transaction processing device, method, and storage medium.
- alliance blockchain and ordinary blockchain are continuously used in different application scenarios, and one of the fundamental differences between alliance blockchain and ordinary blockchain is the need to provide privacy Protection mechanism, under normal circumstances, this protection mechanism is implemented by signature encryption and signature verification decryption in cryptography.
- multiple transactions for example, transaction transactions
- the nodes unlock the blocks, obtain the transactions in them, and perform a specific type check on each transaction (for example, after signature verification and Multi-Version Concurrency Control (MVCC), the transaction is saved to the disk of the blockchain (that is, saved into the chain).
- MVCC Multi-Version Concurrency Control
- the purpose of this application is to provide a device, method and storage medium for blockchain transaction processing, aiming to increase the throughput of the blockchain system in processing transactions and increase the overall running speed.
- the present application provides a blockchain transaction processing device.
- the blockchain transaction processing device includes a memory and a processor connected to the memory, and the memory stores A processing system running on a processor, when the processing system is executed by the processor, the following steps are implemented:
- the persistence processing of the transaction is performed based on the result of the first multi-version check, and it is submitted to the chain and saved.
- the present application also provides a blockchain transaction processing method.
- the blockchain transaction processing method includes:
- S2 Perform parallel processing on the verification operation and multi-version inspection operation of each transaction, and obtain the corresponding first verification result and first multi-version inspection result;
- the present application also provides a computer-readable storage medium having a processing system stored on it, which when executed by a processor implements the steps of the above-mentioned blockchain transaction processing method.
- this application will execute the signature verification operation and the multi-version verification operation in parallel. Before the transaction is persisted, re-check the signature verification result in the parallel verification operation according to the signature information. If it is correct, Then the results of the multi-version check after parallel execution can be directly used, so that the verification signature step and the multi-version check step that had to be executed sequentially can be executed concurrently, which improves the throughput of the system and greatly increases the overall running speed.
- FIG. 1 is a schematic diagram of an optional application environment of each embodiment 1 of this application;
- FIG. 2 is a schematic diagram of a hardware architecture of an embodiment of the blockchain transaction processing apparatus in FIG. 1;
- FIG. 3 is a schematic flowchart of a first embodiment of a method for blockchain transaction processing in the application
- FIG. 4 is a schematic flowchart of a second embodiment of a blockchain transaction processing method of the present application.
- FIG. 1 it is a schematic diagram of an application environment of a preferred embodiment of the blockchain transaction processing method of the present application.
- the schematic diagram of the application environment includes a plurality of node devices in the blockchain network.
- the node device performs transaction transactions through the blockchain network.
- the node device is the blockchain transaction processing device 1 in FIG. 2.
- the blockchain transaction processing device 1 is a device that can automatically perform numerical calculation and / or information processing according to a preset or stored instruction.
- the device 1 for blockchain transaction processing may be a computer, a single network server, a server group composed of multiple network servers, or a cloud based on cloud computing composed of a large number of hosts or network servers, where cloud computing is distributed
- the blockchain transaction processing device 1 may include, but is not limited to, a memory 11, a processor 12, and a network interface 13 that can communicate with each other through a system bus.
- the memory 11 stores Operating processing system. It should be pointed out that FIG. 2 only shows an apparatus 1 for blockchain transaction processing with components 11-13, but it should be understood that it is not required to implement all the components shown, and more or more alternatives may be implemented. Fewer components.
- the memory 11 includes a memory and at least one type of readable storage medium.
- the memory provides a cache for the operation of the blockchain transaction processing device 1;
- the readable storage medium may be, for example, flash memory, hard disk, multimedia card, card-type memory (for example, SD or DX memory, etc.), random access memory (RAM), static Non-volatile storage media such as random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, magnetic disk, optical disk, etc. .
- the readable storage medium may be an internal storage unit of the blockchain transaction processing device 1, such as the hard disk of the blockchain transaction processing device 1; in other embodiments, the non-volatile The storage medium may also be an external storage device of the blockchain transaction processing device 1, for example, a plug-in hard disk, a smart memory card (Smart) Media, SMC, or a secure digital (Secure) equipped on the blockchain transaction processing device 1. Digital, SD) card, flash card (Flash Card), etc.
- the readable storage medium of the memory 11 is generally used to store the operating system and various application software installed in the blockchain transaction processing device 1, such as storing the program code of the processing system in an embodiment of the present application. .
- the memory 11 may also be used to temporarily store various types of data that have been output or will be output.
- the processor 12 may be a central processing unit (CPU), controller, microcontroller, microprocessor, or other data processing chip.
- the processor 12 is generally used to control the overall operation of the device 1 for blockchain transaction processing, such as performing control and processing related to data interaction or communication with other devices.
- the processor 12 is used to run the program code stored in the memory 11 or process data, for example, to run a processing system.
- the network interface 13 may include a wireless network interface or a wired network interface.
- the network interface 13 is generally used to establish a communication connection between the device 1 for blockchain transaction processing and other devices.
- the processing system is stored in the memory 11 and includes at least one computer-readable instruction stored in the memory 11, the at least one computer-readable instruction can be executed by the processor 12 to implement the methods of the embodiments of the present application; and
- the at least one computer-readable instruction can be divided into different logic modules according to the different functions implemented by its parts.
- the above processing system implements the following steps when executed by the processor 12:
- the persistence processing of the transaction is performed based on the result of the first multi-version check, and it is submitted to the chain and saved.
- This application enables the verification signature step and the multi-version check step that had to be executed sequentially to be executed concurrently, which improves the throughput of the system and greatly improves the overall running speed.
- the first verification result is that the verification is passed, and the step of performing parallel processing on the verification operation of each transaction and the multi-version check operation specifically includes:
- the first verification result is incorrect, the first verification result and the first multi-version check result are discarded, a multi-version check is performed based on the second verification result to obtain a second multi-version check result, and based on the second The multi-version check result is used to persist the transaction and submit it for chain storage.
- the step of obtaining the second verification result based on the signature information is a serial processing step or a parallel processing step. If it is a parallel processing step, the step of obtaining the second verification result based on the signature information is specific include:
- the CPU load status information includes a CPU working time ratio
- the preset processing value includes a preset maximum value of the CPU used for signature verification, a preset signature verification time, and the second based on the transaction request
- the transaction request second flow rate and the CPU working time ratio analyze in real time whether the time required for the current check is greater than the preset check time, and analyze in real time whether the CPU working time ratio reaches the upper limit, and analyze the current number of threads Whether it is less than the preset maximum value of the CPU used for verification;
- the step of analyzing whether the time required for the current verification is greater than the preset verification time in real time is continued.
- FIG. 3 is a schematic flowchart of an embodiment of a blockchain transaction processing method of the present application.
- the blockchain transaction processing method includes the following steps:
- Step S1 after receiving the block to be entered into the chain, obtain each transaction in the block to be entered into the chain and signature information corresponding to each transaction;
- each transaction with the processing order is pre-packaged into the form of a block.
- the block After receiving the block to be entered into the chain, the block is parsed to obtain each transaction in the block and the corresponding The signature information of the transaction will be checked one by one according to the processing order of the identification.
- the transaction is, for example, data-related operations in the database, including data modification operations, data deletion operations, etc., and of course, other operations.
- Step S2 Perform parallel processing on the verification operation and multi-version inspection operation of each transaction, and obtain the corresponding first verification result and first multi-version inspection result;
- the multi-version check operation must be performed after the verification operation of the transaction is completed.
- the verification operation of each transaction and the multi-version check operation can be directly processed in parallel.
- the first verification result is that the verification is passed.
- the step of performing parallel processing on the verification operation of each transaction and the multi-version check operation specifically includes: separately setting the verification results of each transaction verification operation as the verification At the same time when the signature is passed, a multi-version check operation is performed on each transaction set to pass the signature verification, so that the signature verification operation and the multi-version check operation of each transaction are processed in parallel.
- multi-version check is a concurrency control mechanism, for example, A transaction is "change a to 1", B transaction is "change a to 2”, then Through multi-version checking, you can finally confirm which data is used for persistence processing.
- Step S3 obtaining a second verification result based on the signature information, and checking whether the first verification result is correct based on the second verification result;
- the verification operation of the transaction is performed according to the signature information to obtain the second verification result, which is the real verification result . If the result of the second verification is that the verification of all transactions is passed, the result of the first verification is correct. If the verification of the transaction in the second verification result fails, the result of the first verification is incorrect. .
- the transaction verification operation based on the signature information may use serial processing, that is, transaction-by-transaction verification. In other embodiments, parallel processing may also be used.
- the step of obtaining the second verification result based on the signature information specifically includes: obtaining the current transaction request second flow rate, current CPU load status information and preset processing value, based on the transaction Create multiple threads by requesting second traffic, CPU load status information, and preset processing values, and allocate each transaction to the corresponding CPU based on the multiple threads to perform dynamic parallel verification based on the signature information to obtain the second verification Sign the result.
- the CPU load status information includes a ratio of CPU working time (of course, it may also be a ratio of CPU idle time)
- the preset processing value includes a preset maximum value of the CPU used for verification and a preset verification time.
- the transaction request second flow rate and the CPU working time ratio analyze in real time whether the time required for the current check is greater than the preset check time, and analyze in real time whether the CPU working time ratio reaches the upper limit, and analyze the current number of threads Whether it is less than the preset maximum value of the CPU used for signature verification; if the time required for the current signature verification is greater than the preset signature verification time, and the CPU working time ratio does not reach the upper limit, and the current number of threads If it is less than the preset maximum value of the CPU used for verification, increase the preset number of threads to verify each transaction; if the time required for the current verification is less than or equal to the preset verification time, it will not A thread needs to be added to continue to perform the step of analyzing whether the time required for the current signature verification in real time is greater than the preset signature verification time.
- the current transaction request second flow rate, CPU load status information and preset processing values are also considered to establish a thread: when the current transaction request second flow rate is large and the current CPU working time ratio is small, in order to make the verification When the signing time reaches the preset verification time, a relatively large number of threads can be established; when the current transaction request second flow rate is small and the current CPU working time ratio is small, a relatively small number of threads can be established, etc.
- the way of dynamic thread control realizes parallel verification of transactions and improves the speed of verification.
- the current transaction request second flow rate is 10000 / h (10000 data per hour)
- the current CPU working time ratio is 20%
- the preset check time is 10 seconds
- 5 threads can be established for verification after analysis Sign, based on the 5 threads to allocate transactions to 5 CPUs for parallel check.
- this embodiment may also dynamically adjust the number of threads. If the verification time is greater than the preset verification time due to the influence of other factors, if the current transaction request seconds flow is large, the current CPU working time ratio is small, and the current number of threads does not exceed the preset When checking the maximum value of the CPU, you can increase the number of threads. Ideally, a thread allocates a transaction to a CPU for verification, so the increase in the number of threads is also equivalent to adjusting the number of CPUs currently used for verification.
- step S4 if the result of the first verification is correct, the persistence processing of the transaction is performed based on the result of the first multi-version check, and the result is submitted for chain storage.
- the first multi-version check result can be used for the persistence processing of the transaction, that is, the transaction is stored to be submitted for chain storage.
- step S5 is also included: if the first verification result is incorrect, the first verification result and the first multi-version verification result are discarded, based on the second verification As a result, a multi-version check is performed to obtain a second multi-version check result, and based on the second multi-version check result, transaction persistence processing is performed to commit and store it in the chain.
- the first multi-version check result cannot be used, discard the first multi-version check result and the first multi-version check result, and follow the existing verification-multi-version check process , Perform multi-version inspection based on the second verification result to obtain a second multi-version inspection result, and perform transaction persistence processing based on the second multi-version inspection result.
- This application first sets up or assumes that all transactions have passed the verification, so that verification and multiple version checks can be performed in parallel. Before the transaction is persisted, check whether the transaction has passed the verification according to the signature information. If the verification passes, it indicates that the aforementioned settings or assumptions are correct. You can directly use the results of the multi-version check; if the verification fails, indicate the aforementioned If the settings or assumptions are incorrect, the multi-version inspection will be carried out again based on the results of the inspections obtained in this inspection. Since most of the transaction verification in the actual application scenario is passed, therefore, when setting or assuming that all transactions pass the verification, the verification signature step and the multi-version check step that had to be executed sequentially can be executed concurrently. This improves the throughput of the system and greatly improves the overall running speed; even if subsequent transactions are checked and the transaction fails to be checked, it will not affect the overall running speed of the system and the impact on the overall performance can be ignored.
- the present application also provides a computer-readable storage medium having a processing system stored on it, which when executed by a processor implements the steps of the above-mentioned blockchain transaction processing method.
- the methods in the above embodiments can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware, but in many cases the former is better Implementation.
- the technical solutions of the present application can essentially be embodied in the form of software products that contribute to the existing technology, and the computer software products are stored in a storage medium (such as ROM / RAM, magnetic disk,
- the CD-ROM includes several instructions to enable a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the embodiments of the present application.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种区块链技术,揭露了一种区块链事务处理的装置、方法及存储介质,该方法包括:在接收到待入链的区块后,获取该待入链的区块中的各个事务及各个事务对应的签名信息;对各个事务的验签操作及多版本检查操作进行并行处理,并获取对应的第一验签结果及第一多版本检查结果;基于该签名信息获取第二验签结果,基于该第二验签结果检查该第一验签结果是否正确;若该第一验签结果正确,则基于该第一多版本检查结果进行事务的持久化处理,以提交并入链保存。本申请能够提升区块链系统处理事务的吞吐率,提高整体运行速度。
Description
优先权申明
本申请基于巴黎公约申明享有2018年10月25日递交的申请号为CN201811250449.8、名称为“区块链事务处理的装置、方法及存储介质”中国专利申请的优先权,该中国专利申请的整体内容以参考的方式结合在本申请中。
本申请涉及区块链技术领域,尤其涉及一种区块链事务处理的装置、方法及存储介质。
目前,随着区块链技术的不断兴起,联盟区块链与普通区块链不断地被应用于不同的应用场景,而联盟区块链与普通区块链的根本区别之一是需要提供隐私保护机制,通常情况下,该保护机制是通过密码学中的签名加密和验签解密来实现的。通常情况下,多个事务(例如,交易事务)被以打包成块的形式发送给区块链上的节点,由节点解开块,获取其中的事务,并对每个事务经过特定类型检查(例如,签名验证、多版本检查(Multi-Version Concurrency Control,MVCC))后,将事务保存到区块链的磁盘(即入链保存)。
然而,现有的区块链技术中,该特定类型检查通常是串行处理的,即对本领域技术人员来说,惯性思维是针对特定类型的检查应采用串行处理方案,区块链系统的吞吐率低,使得整体运行速度也低。
发明内容
本申请的目的在于提供一种区块链事务处理的装置、方法及存储介质, 旨在提升区块链系统处理事务的吞吐率,提高整体运行速度。
为实现上述目的,本申请提供一种区块链事务处理的装置,所述区块链事务处理的装置包括存储器及与所述存储器连接的处理器,所述存储器中存储有可在所述处理器上运行的处理系统,所述处理系统被所述处理器执行时实现如下步骤:
在接收到待入链的区块后,获取该待入链的区块中的各个事务及各个事务对应的签名信息;
对各个事务的验签操作及多版本检查操作进行并行处理,并获取对应的第一验签结果及第一多版本检查结果;
基于该签名信息获取第二验签结果,基于该第二验签结果检查该第一验签结果是否正确;
若该第一验签结果正确,则基于该第一多版本检查结果进行事务的持久化处理,以提交并入链保存。
为实现上述目的,本申请还提供一种区块链事务处理的方法,所述区块链事务处理的方法包括:
S1,在接收到待入链的区块后,获取该待入链的区块中的各个事务及各个事务对应的签名信息;
S2,对各个事务的验签操作及多版本检查操作进行并行处理,并获取对应的第一验签结果及第一多版本检查结果;
S3,基于该签名信息获取第二验签结果,基于该第二验签结果检查该第一验签结果是否正确;
S4,若该第一验签结果正确,则基于该第一多版本检查结果进行事务的持久化处理,以提交并入链保存。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存 储有处理系统,所述处理系统被处理器执行时实现上述的区块链事务处理的方法的步骤。
本申请的有益效果是:本申请将验签操作和多版本检查操作并行执行,在事务持久化之前,重新根据签名信息检查并行执行后的验签操作中的验签结果是否正确,如果正确,则可以直接利用并行执行后的多版本检查的结果,使得原先必须要顺序执行的验证签名步骤和多版本检查步骤可以并发执行,提升了系统的吞吐率,使得整体运行速度大大提高。
图1为本申请各个实施例一可选的应用环境示意图;
图2是图1中区块链事务处理的装置一实施例的硬件架构的示意图;
图3为本申请区块链事务处理的方法第一实施例的流程示意图;
图4为本申请区块链事务处理的方法第二实施例的流程示意图。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛 盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
参阅图1所示,是本申请区块链事务处理的方法的较佳实施例的应用环境示意图。该应用环境示意图包括由区块链网络中的多个节点装置组成,节点装置通过区块链网络进行事务的交易,该节点装置即为图2中的区块链事务处理的装置1。
如图2所示,区块链事务处理的装置1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。所述区块链事务处理的装置1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
在本实施例中,区块链事务处理的装置1可包括,但不仅限于,可通过系统总线相互通信连接的存储器11、处理器12、网络接口13,存储器11存储有可在处理器12上运行的处理系统。需要指出的是,图2仅示出了具有组件11-13的区块链事务处理的装置1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,存储器11包括内存及至少一种类型的可读存储介质。内存为区块链事务处理的装置1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等的非易失性存储介质。在一些实施例中,可读存储介质可以是区块链事务处理的装置1的内部存储单元,例如该区块链事务处理的装置1的硬盘;在另一些实施例中,该非易失性存储介质也可以是区块链事务处理的装置1 的外部存储设备,例如区块链事务处理的装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。本实施例中,存储器11的可读存储介质通常用于存储安装于区块链事务处理的装置1的操作系统和各类应用软件,例如存储本申请一实施例中的处理系统的程序代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述区块链事务处理的装置1的总体操作,例如执行与其他装置进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行处理系统等。
所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述区块链事务处理的装置1与其他装置之间建立通信连接。
所述处理系统存储在存储器11中,包括至少一个存储在存储器11中的计算机可读指令,该至少一个计算机可读指令可被处理器器12执行,以实现本申请各实施例的方法;以及,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同的逻辑模块。
在一实施例中,上述处理系统被所述处理器12执行时实现如下步骤:
在接收到待入链的区块后,获取该待入链的区块中的各个事务及各个事务对应的签名信息;
对各个事务的验签操作及多版本检查操作进行并行处理,并获取对应的第一验签结果及第一多版本检查结果;
基于该签名信息获取第二验签结果,基于该第二验签结果检查该第一验签结果是否正确;
若该第一验签结果正确,则基于该第一多版本检查结果进行事务的持久化处理,以提交并入链保存。
本申请使得原先必须要顺序执行的验证签名步骤和多版本检查步骤可以并发执行,提升了系统的吞吐率,使得整体运行速度大大提高。
进一步地,所述第一验签结果为验签通过,所述对各个事务的验签操作及多版本检查操作进行并行处理的步骤,具体包括:
分别将各个事务验签操作的验签结果均设置为验签通过的同时,对设置为验签通过的各个事务进行多版本检查操作,以对各个事务的验签操作及多版本检查操作进行并行处理。
进一步地,所述处理系统被所述处理器执行时,还实现如下步骤:
若该第一验签结果不正确,则丢弃该第一验签结果及第一多版本检查结果,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理,以提交并入链保存。
进一步地,所述基于该签名信息获取第二验签结果的步骤为串行处理步骤或者并行处理步骤,若为并行处理步骤,则所述基于该签名信息获取第二验签结果的步骤,具体包括:
获取当前的事务请求秒流量、当前的CPU负载状况信息及预设的处理值,基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU,以基于该签名信息进行动态并行验签,得到该第二验签结果。
进一步地,所述CPU负载状况信息包括CPU工作时间比例,所述预设的处理值包括预设的用于验签的CPU的最大数值、预设的验签时间,所述基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU的步骤,具体包括:
根据该事务请求秒流量及CPU工作时间比例实时分析当前验签所需的 时间是否大于该预设的验签时间,且实时分析CPU的工作时间比例是否达到上限值,以及分析当前线程的数量是否小于预设的用于验签的CPU的最大数值;
若当前验签所需的时间大于该预设的验签时间,且该CPU工作时间比例未达到该上限值,以及当前线程的数量小于预设的用于验签的CPU的最大数值,则增加预设数量的线程,以对各个事务进行验签;
若当前验签所需的时间小于等于该预设的验签时间,则继续执行实时分析当前验签所需的时间是否大于该预设的验签时间的步骤。
本申请中,由于实际应用场景中大部分的事务验签为通过的情况,因此,在设置或者假定所有事务都通过验签的情况下,原先必须要顺序执行的验证签名步骤和多版本检查步骤可以并发执行,这样提升了系统的吞吐率,使得整体运行速度大大提高
如图3所示,图3为本申请区块链事务处理的方法一实施例的流程示意图,该区块链事务处理的方法包括以下步骤:
步骤S1,在接收到待入链的区块后,获取该待入链的区块中的各个事务及各个事务对应的签名信息;
在区块链网络中,预先将标识有处理顺序的各个事务打包成区块的形式,在接收到待入链的区块后,对区块进行解析处理,获取区块中的各个事务及对应的签名信息,按照标识的处理顺序逐个对事务进行验签等处理。其中,事务例如为数据库中的数据相关的操作,包括数据的修改操作、数据的删除操作等等,当然还包括其他的操作。
步骤S2,对各个事务的验签操作及多版本检查操作进行并行处理,并获取对应的第一验签结果及第一多版本检查结果;
其中,在实际应用场景中必须等待事务的验签操作完成后才可执行多版 本检查操作,本实施例可以直接对各个事务的验签操作及多版本检查操作进行并行处理。
其中,第一验签结果为验签通过,所述对各个事务的验签操作及多版本检查操作进行并行处理的步骤,具体包括:分别将各个事务验签操作的验签结果均设置为验签通过的同时,对设置为验签通过的各个事务进行多版本检查操作,以对各个事务的验签操作及多版本检查操作进行并行处理。
在实际应用场景中,大部分事务验签操作均为验签通过的情况,只有少量的事务验签操作为不通过的情况。本实施例直接将各个事务验签结果设置为验签通过,不需要根据签名信息进行验签操作,该设置符合大部分的实际应用场景,通过该设置,可以同时进行多版本检查操作,实现两者的并行处理。
其中,各个事务的验签操作是合法性进行验证,多版本检查为是一种并发控制机制,例如,A事务为“将a改为1”,B事务为“将a改为2”,那么通过多版本检查,可以最终确认哪个是用于进行持久化处理的数据。
步骤S3,基于该签名信息获取第二验签结果,基于该第二验签结果检查该第一验签结果是否正确;
其中,在对各个事务的验签操作及多版本检查操作进行并行处理之后,再根据签名信息进行事务的验签操作,得到第二验签结果,该第二验签结果为真实的验签结果。如果第二验签结果为全部的事务的验签通过,则第一验签结果是正确的,如果第二验签结果中有事务的验签未通过,则第一验签结果是不正确的。
在一实施例中,本次根据签名信息进行事务的验签操作可以采用串行处理的方式,即逐个事务进行验签,在其他实施例中,也可以采用并行处理的方式。
其中,如果采用并行处理的方式,则基于该签名信息获取第二验签结果 的步骤,具体包括:获取当前的事务请求秒流量、当前的CPU负载状况信息及预设的处理值,基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU,以基于该签名信息进行动态并行验签,得到该第二验签结果。
其中,CPU负载状况信息包括CPU工作时间比例(当然也可以是CPU空闲时间比例),预设的处理值包括预设的用于验签的CPU的最大数值、预设的验签时间,所述基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU的步骤,具体包括:
根据该事务请求秒流量及CPU工作时间比例实时分析当前验签所需的时间是否大于该预设的验签时间,且实时分析CPU的工作时间比例是否达到上限值,以及分析当前线程的数量是否小于预设的用于验签的CPU的最大数值;若当前验签所需的时间大于该预设的验签时间,且该CPU工作时间比例未达到该上限值,以及当前线程的数量小于预设的用于验签的CPU的最大数值,则增加预设数量的线程,以对各个事务进行验签;若当前验签所需的时间小于等于该预设的验签时间,则不需要增加线程,可继续执行实时分析当前验签所需的时间是否大于该预设的验签时间的步骤。
其中,CPU工作时间比例越大则CPU的使用率越高;预设的用于验签的CPU的最大数值例如为16个,预设的验签时间例如为10秒。
本实施例中,同时考虑当前的事务请求秒流量、CPU负载状况信息及预设的处理值来建立线程:在当前的事务请求秒流量较大、当前的CPU工作时间比例较小时,为了使得验签时间达到预设的验签时间,可以建立数量相对多的线程;在当前的事务请求秒流量较小、当前的CPU工作时间比例较小时,可以建立数量相对少的线程,等等,通过多线程动态控制的方式,实现事务的并行验签,提高验签的速度。
例如:当前的事务请求秒流量为10000/h(每小时10000条数据),当前的CPU工作时间比例为20%,预设的验签时间为10秒,经分析可以建立5个线程用于验签,基于该5个线程将事务分配给5个CPU进行并行验签。
此外,在CPU进行验签的实际过程中可能出现其他因素影响验签的时间,为了使得验签时间不大于预设的验签时间,本实施例还可以动态调整线程的数量,例如,在受其他因素的影响使得验签时间大于预设的验签时间的情况下,若当前的事务请求秒流量较大、当前的CPU工作时间比例较小,以及当前线程的数量不超过预设的用于验签的CPU的最大数值时,可以增加线程的数量。理想状态下,一个线程分配事务给一个CPU进行验签,因此线程数量的增加的同时,也相当于调整当前用于验签CPU的数量。
步骤S4,若该第一验签结果正确,则基于该第一多版本检查结果进行事务的持久化处理,以提交并入链保存。
其中,如果第一验签结果正确,则可以利用第一多版本检查结果进行事务的持久化处理,即将事务进行存储,以提交并入链保存。
其中,结合参阅图4,所述步骤S3之后,还包括步骤S5:若该第一验签结果不正确,则丢弃该第一验签结果及第一多版本检查结果,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理,以提交并入链保存。
其中,如果该第一验签结果不正确,则第一多版本检查结果也不能使用,丢弃该第一验签结果及第一多版本检查结果,按照已有的验签-多版本检查的流程,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理。
本申请首先设置或者假定所有事务都通过验签,这样就可以将验签和多版本检查并行执行。在事务持久化之前,重新根据签名信息检查事务是否验签通过,如果验签通过,说明前述的设置或假定是正确的,可以直接利用多 版本检查的结果;如果验签不通过,说明前述的设置或假定不正确,基于本次的检查得到的验签结果重新进行多版本检查。由于实际应用场景中大部分的事务验签为通过的情况,因此,在设置或者假定所有事务都通过验签的情况下,原先必须要顺序执行的验证签名步骤和多版本检查步骤可以并发执行,这样提升了系统的吞吐率,使得整体运行速度大大提高;即使后续检查出有事务未通过验签,也不影响系统的整体运行速度,对整体性能的影响也可以忽略不计。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有处理系统,所述处理系统被处理器执行时实现上述的区块链事务处理的方法的步骤。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (20)
- 一种区块链事务处理的装置,其特征在于,所述区块链事务处理的装置包括存储器及与所述存储器连接的处理器,所述存储器中存储有可在所述处理器上运行的处理系统,所述处理系统被所述处理器执行时实现如下步骤:在接收到待入链的区块后,获取该待入链的区块中的各个事务及各个事务对应的签名信息;对各个事务的验签操作及多版本检查操作进行并行处理,并获取对应的第一验签结果及第一多版本检查结果;基于该签名信息获取第二验签结果,基于该第二验签结果检查该第一验签结果是否正确;若该第一验签结果正确,则基于该第一多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求1所述的区块链事务处理的装置,其特征在于,所述第一验签结果为验签通过,所述对各个事务的验签操作及多版本检查操作进行并行处理的步骤,具体包括:分别将各个事务验签操作的验签结果均设置为验签通过的同时,对设置为验签通过的各个事务进行多版本检查操作,以对各个事务的验签操作及多版本检查操作进行并行处理。
- 根据权利要求1所述的区块链事务处理的装置,其特征在于,所述处理系统被所述处理器执行时,还实现如下步骤:若该第一验签结果不正确,则丢弃该第一验签结果及第一多版本检查结果,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求2所述的区块链事务处理的装置,其特征在于,所述处 理系统被所述处理器执行时,还实现如下步骤:若该第一验签结果不正确,则丢弃该第一验签结果及第一多版本检查结果,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求3所述的区块链事务处理的装置,其特征在于,所述基于该签名信息获取第二验签结果的步骤为串行处理步骤或者并行处理步骤,若为并行处理步骤,则所述基于该签名信息获取第二验签结果的步骤,具体包括:获取当前的事务请求秒流量、当前的CPU负载状况信息及预设的处理值,基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU,以基于该签名信息进行动态并行验签,得到该第二验签结果。
- 根据权利要求4所述的区块链事务处理的装置,其特征在于,所述基于该签名信息获取第二验签结果的步骤为串行处理步骤或者并行处理步骤,若为并行处理步骤,则所述基于该签名信息获取第二验签结果的步骤,具体包括:获取当前的事务请求秒流量、当前的CPU负载状况信息及预设的处理值,基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU,以基于该签名信息进行动态并行验签,得到该第二验签结果。
- 根据权利要求5或6所述的区块链事务处理的装置,其特征在于,所述CPU负载状况信息包括CPU工作时间比例,所述预设的处理值包括预设的用于验签的CPU的最大数值、预设的验签时间,所述基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU的步骤,具体包括:根据该事务请求秒流量及CPU工作时间比例实时分析当前验签所需的时间是否大于该预设的验签时间,且实时分析CPU的工作时间比例是否达到上限值,以及分析当前线程的数量是否小于预设的用于验签的CPU的最大数值;若当前验签所需的时间大于该预设的验签时间,且该CPU工作时间比例未达到该上限值,以及当前线程的数量小于预设的用于验签的CPU的最大数值,则增加预设数量的线程,以对各个事务进行验签;若当前验签所需的时间小于等于该预设的验签时间,则继续执行实时分析当前验签所需的时间是否大于该预设的验签时间的步骤。
- 一种区块链事务处理的方法,其特征在于,所述区块链事务处理的方法包括:S1,在接收到待入链的区块后,获取该待入链的区块中的各个事务及各个事务对应的签名信息;S2,对各个事务的验签操作及多版本检查操作进行并行处理,并获取对应的第一验签结果及第一多版本检查结果;S3,基于该签名信息获取第二验签结果,基于该第二验签结果检查该第一验签结果是否正确;S4,若该第一验签结果正确,则基于该第一多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求8所述的区块链事务处理的方法,其特征在于,所述第一验签结果为验签通过,所述对各个事务的验签操作及多版本检查操作进行并行处理的步骤,具体包括:分别将各个事务验签操作的验签结果均设置为验签通过的同时,对设置为验签通过的各个事务进行多版本检查操作,以对各个事务的验签操作及多版本检查操作进行并行处理。
- 根据权利要求8所述的区块链事务处理的方法,其特征在于,所述步骤S3之后,还包括:若该第一验签结果不正确,则丢弃该第一验签结果及第一多版本检查结果,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求9所述的区块链事务处理的方法,其特征在于,所述步骤S3之后,还包括:若该第一验签结果不正确,则丢弃该第一验签结果及第一多版本检查结果,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求10所述的区块链事务处理的方法,其特征在于,所述基于该签名信息获取第二验签结果的步骤为串行处理步骤或者并行处理步骤,若为并行处理步骤,则所述基于该签名信息获取第二验签结果的步骤,具体包括:获取当前的事务请求秒流量、当前的CPU负载状况信息及预设的处理值,基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU,以基于该签名信息进行动态并行验签,得到该第二验签结果。
- 根据权利要求11所述的区块链事务处理的方法,其特征在于,所述基于该签名信息获取第二验签结果的步骤为串行处理步骤或者并行处理步骤,若为并行处理步骤,则所述基于该签名信息获取第二验签结果的步骤,具体包括:获取当前的事务请求秒流量、当前的CPU负载状况信息及预设的处理值,基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU,以基于该签名信息 进行动态并行验签,得到该第二验签结果。
- 根据权利要求12或13所述的区块链事务处理的方法,其特征在于,所述CPU负载状况信息包括CPU工作时间比例,所述预设的处理值包括预设的用于验签的CPU的最大数值、预设的验签时间,所述基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU的步骤,具体包括:根据该事务请求秒流量及CPU工作时间比例实时分析当前验签所需的时间是否大于该预设的验签时间,且实时分析CPU的工作时间比例是否达到上限值,以及分析当前线程的数量是否小于预设的用于验签的CPU的最大数值;若当前验签所需的时间大于该预设的验签时间,且该CPU工作时间比例未达到该上限值,以及当前线程的数量小于预设的用于验签的CPU的最大数值,则增加预设数量的线程,以对各个事务进行验签;若当前验签所需的时间小于等于该预设的验签时间,则继续执行实时分析当前验签所需的时间是否大于该预设的验签时间的步骤。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有处理系统,所述处理系统被处理器执行时实现步骤:在接收到待入链的区块后,获取该待入链的区块中的各个事务及各个事务对应的签名信息;对各个事务的验签操作及多版本检查操作进行并行处理,并获取对应的第一验签结果及第一多版本检查结果;基于该签名信息获取第二验签结果,基于该第二验签结果检查该第一验签结果是否正确;若该第一验签结果正确,则基于该第一多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求15所述的计算机可读存储介质,其特征在于,所述第一验签结果为验签通过,所述对各个事务的验签操作及多版本检查操作进行并行处理的步骤,具体包括:分别将各个事务验签操作的验签结果均设置为验签通过的同时,对设置为验签通过的各个事务进行多版本检查操作,以对各个事务的验签操作及多版本检查操作进行并行处理。
- 根据权利要求15所述的计算机可读存储介质,其特征在于,所述处理系统被所述处理器执行时,还实现如下步骤:若该第一验签结果不正确,则丢弃该第一验签结果及第一多版本检查结果,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求16所述的计算机可读存储介质,其特征在于,所述处理系统被所述处理器执行时,还实现如下步骤:若该第一验签结果不正确,则丢弃该第一验签结果及第一多版本检查结果,基于该第二验签结果进行多版本检查得到第二多版本检查结果,并基于该第二多版本检查结果进行事务的持久化处理,以提交并入链保存。
- 根据权利要求17所述的计算机可读存储介质,其特征在于,所述基于该签名信息获取第二验签结果的步骤为串行处理步骤或者并行处理步骤,若为并行处理步骤,则所述基于该签名信息获取第二验签结果的步骤,具体包括:获取当前的事务请求秒流量、当前的CPU负载状况信息及预设的处理值,基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU,以基于该签名信息进行动态并行验签,得到该第二验签结果。
- 根据权利要求18所述的计算机可读存储介质,其特征在于,所述基 于该签名信息获取第二验签结果的步骤为串行处理步骤或者并行处理步骤,若为并行处理步骤,则所述基于该签名信息获取第二验签结果的步骤,具体包括:获取当前的事务请求秒流量、当前的CPU负载状况信息及预设的处理值,基于该事务请求秒流量、CPU负载状况信息及预设的处理值建立多个线程,基于该多个线程分别将各个事务分配给相应的CPU,以基于该签名信息进行动态并行验签,得到该第二验签结果。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201811250449.8 | 2018-10-25 | ||
| CN201811250449.8A CN109614206A (zh) | 2018-10-25 | 2018-10-25 | 区块链事务处理的装置、方法及存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020082576A1 true WO2020082576A1 (zh) | 2020-04-30 |
Family
ID=66002991
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2018/123582 Ceased WO2020082576A1 (zh) | 2018-10-25 | 2018-12-25 | 区块链事务处理的装置、方法及存储介质 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN109614206A (zh) |
| WO (1) | WO2020082576A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111985928A (zh) * | 2020-09-03 | 2020-11-24 | 深圳壹账通智能科技有限公司 | 一种验证方法、装置、电子设备和存储介质 |
| CN115953243A (zh) * | 2022-12-28 | 2023-04-11 | 北京航天智造科技发展有限公司 | 一种基于区块链的大宗交易管理系统、方法和存储介质 |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110336779B (zh) * | 2019-05-07 | 2022-08-05 | 弦子科技(北京)有限公司 | 一种区块链的构建方法、装置和电子设备 |
| CN110245126A (zh) * | 2019-05-20 | 2019-09-17 | 深圳壹账通智能科技有限公司 | 区块处理方法、装置、计算机设备和存储介质 |
| CN110675255B (zh) * | 2019-08-30 | 2021-04-02 | 创新先进技术有限公司 | 在区块链中并发执行交易的方法和装置 |
| CN110781196A (zh) * | 2019-09-06 | 2020-02-11 | 深圳壹账通智能科技有限公司 | 区块链事务处理方法、装置、计算机设备及存储介质 |
| CN111126978B (zh) * | 2019-12-28 | 2023-03-14 | 飞天诚信科技股份有限公司 | 一种区块链上快速处理事务的实现方法及装置 |
| CN111241594B (zh) * | 2020-01-06 | 2023-10-13 | 平安科技(深圳)有限公司 | 交易信息的加签方法、装置、计算机设备和存储介质 |
| CN111586147B (zh) * | 2020-04-30 | 2021-09-28 | 平安科技(深圳)有限公司 | 区块链的节点同步方法、装置、设备及存储介质 |
| CN112037058B (zh) * | 2020-08-28 | 2024-03-26 | 平安科技(深圳)有限公司 | 数据验证方法、装置及存储介质 |
| CN112636915B (zh) * | 2020-11-27 | 2024-03-22 | 杭州趣链科技有限公司 | 基于国密sm2算法的批量签名验证方法、装置、设备及介质 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107395343A (zh) * | 2017-07-10 | 2017-11-24 | 腾讯科技(深圳)有限公司 | 证书管理方法及系统 |
| CN107729137A (zh) * | 2017-09-04 | 2018-02-23 | 上海壹账通金融科技有限公司 | 服务器、区块链验签解密的方法及存储介质 |
| CN107992356A (zh) * | 2017-12-13 | 2018-05-04 | 上海壹账通金融科技有限公司 | 区块链事务区块处理方法、电子装置及可读存储介质 |
| CN108063758A (zh) * | 2017-11-27 | 2018-05-22 | 众安信息技术服务有限公司 | 用于区块链网络的签名验证方法及区块链网络中的节点 |
| CN108540459A (zh) * | 2018-03-22 | 2018-09-14 | 北京京东尚科信息技术有限公司 | 数据储存方法、装置、系统、电子设备及计算机可读介质 |
-
2018
- 2018-10-25 CN CN201811250449.8A patent/CN109614206A/zh active Pending
- 2018-12-25 WO PCT/CN2018/123582 patent/WO2020082576A1/zh not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107395343A (zh) * | 2017-07-10 | 2017-11-24 | 腾讯科技(深圳)有限公司 | 证书管理方法及系统 |
| CN107729137A (zh) * | 2017-09-04 | 2018-02-23 | 上海壹账通金融科技有限公司 | 服务器、区块链验签解密的方法及存储介质 |
| CN108063758A (zh) * | 2017-11-27 | 2018-05-22 | 众安信息技术服务有限公司 | 用于区块链网络的签名验证方法及区块链网络中的节点 |
| CN107992356A (zh) * | 2017-12-13 | 2018-05-04 | 上海壹账通金融科技有限公司 | 区块链事务区块处理方法、电子装置及可读存储介质 |
| CN108540459A (zh) * | 2018-03-22 | 2018-09-14 | 北京京东尚科信息技术有限公司 | 数据储存方法、装置、系统、电子设备及计算机可读介质 |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111985928A (zh) * | 2020-09-03 | 2020-11-24 | 深圳壹账通智能科技有限公司 | 一种验证方法、装置、电子设备和存储介质 |
| CN115953243A (zh) * | 2022-12-28 | 2023-04-11 | 北京航天智造科技发展有限公司 | 一种基于区块链的大宗交易管理系统、方法和存储介质 |
| CN115953243B (zh) * | 2022-12-28 | 2024-03-29 | 北京航天智造科技发展有限公司 | 一种基于区块链的大宗交易管理系统、方法和存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN109614206A (zh) | 2019-04-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2020082576A1 (zh) | 区块链事务处理的装置、方法及存储介质 | |
| US11657034B2 (en) | Data consistency in master data integration | |
| EP3811316B1 (en) | Blockchain system and method | |
| CN113179272B (zh) | 基于智能合约的区块链跨链交互方法、装置和计算机可读存储介质 | |
| CN111241061B (zh) | 状态数据库的写入方法、数据处理装置及存储介质 | |
| CN102473122B (zh) | 容错的批量处理 | |
| CN110401720B (zh) | 信息处理方法、装置、系统、应用服务器和介质 | |
| CN108462760B (zh) | 电子装置、集群访问域名自动生成方法及存储介质 | |
| CN107729137B (zh) | 服务器、区块链验签解密的方法及存储介质 | |
| CN110188110B (zh) | 一种构建分布式锁的方法及装置 | |
| WO2021042733A1 (zh) | 区块链事务处理方法、装置、计算机设备及存储介质 | |
| CN112035144B (zh) | 区块链系统的升级方法、装置、计算机设备及存储介质 | |
| CN115378954B (zh) | 一种融合谱聚类和信誉值机制的区块链分片方法 | |
| WO2020042503A1 (zh) | 风控系统的验证方法、装置、设备及存储介质 | |
| WO2020224100A1 (zh) | 区块链配置文件的处理装置、系统、方法及存储介质 | |
| US11743051B2 (en) | Blockchain machine compute acceleration engine with a block verify and a block validate | |
| CN109710695A (zh) | 事务请求有效性识别和发起方法、装置、设备和介质 | |
| CN114846458A (zh) | 分布式可串行化并发控制方案 | |
| WO2019169763A1 (zh) | 电子装置、业务系统风险控制方法及存储介质 | |
| WO2019205370A1 (zh) | 电子装置、分配任务的方法及存储介质 | |
| CN114157550B (zh) | 一种基于无冲突事务合并的联盟区块链系统 | |
| CN110347517B (zh) | 双系统的通信方法及计算机可读存储介质 | |
| CN115314258B (zh) | 一种应用弱口令检测方法、装置、电子设备及存储介质 | |
| CN113592645A (zh) | 数据验证的方法和装置 | |
| HK1263041A1 (zh) | 区块链事务处理的装置、方法及存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18938005 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 30.08.2021) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 18938005 Country of ref document: EP Kind code of ref document: A1 |