WO2020177488A1 - 一种区块链交易追溯的方法及装置 - Google Patents
一种区块链交易追溯的方法及装置 Download PDFInfo
- Publication number
- WO2020177488A1 WO2020177488A1 PCT/CN2020/071551 CN2020071551W WO2020177488A1 WO 2020177488 A1 WO2020177488 A1 WO 2020177488A1 CN 2020071551 W CN2020071551 W CN 2020071551W WO 2020177488 A1 WO2020177488 A1 WO 2020177488A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- transaction
- traced
- block
- bloom filter
- output value
- Prior art date
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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- 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/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
- G06Q20/0655—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed centrally
-
- 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/382—Payment protocols; Details thereof insuring higher security of transaction
-
- 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/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
- G06Q20/38215—Use of certificates or encrypted proofs of transaction rights
-
- 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/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- 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/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- 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/42—Confirmation, e.g. check or permission by the legal debtor of payment
-
- 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
- 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
-
- 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
- G06Q2220/00—Business processing using cryptography
Definitions
- the embodiment of the present invention provides a method and device for blockchain transaction traceability, which are used to quickly construct a traceability path of a transaction and save system overhead.
- An embodiment of the present invention provides a method for tracing blockchain transactions, including:
- Acquiring information of the transaction to be traced includes the input value of the transaction to be traced;
- the leaf node of the transaction to be traced is determined; the bloom filter stores the block containing The output value of the transaction;
- the trace path of the transaction to be traced is generated.
- the traceability path of the traceability transaction can be quickly generated based on the input value of the traceability transaction, which improves the traceability efficiency of the traceability route and reduces system overhead.
- the determining the leaf node of the transaction to be traced based on the input value of the transaction to be traced and the bloom filter corresponding to each block in the blockchain system includes:
- the traceability is terminated; otherwise, the first transaction is determined as the leaf node of the transaction to be traced, and the The input value of the first transaction is determined as the output value to be traced, and the transaction dependent on the transaction to be traced is continuously determined until it is determined that the traceability is terminated.
- Hash the output value to be traced using the m hash functions in the bloom filter to obtain m values at corresponding positions;
- the block is determined as the block in which the exchange to be traced depends on.
- the method further includes:
- the output values of all transactions in the first block are stored in the Bloom filter corresponding to the first block.
- an embodiment of the present invention also provides a device for tracing blockchain transactions, including:
- An obtaining unit for obtaining information of a transaction to be traced includes the input value of the transaction to be traced;
- the processing unit is configured to determine the leaf node of the transaction to be traced based on the input value of the transaction to be traced and the bloom filter corresponding to each block in the blockchain system; the bloom filter stores The output value of the transaction contained in the block; and generating the traceability path of the transaction to be traced according to the leaf node of the transaction to be traced.
- the traceability is terminated; otherwise, the first transaction is determined as the leaf node of the transaction to be traced, and the The input value of the first transaction is determined as the output value to be traced, and the transaction dependent on the transaction to be traced is continuously determined until it is determined that the traceability is terminated.
- processing unit is specifically configured to:
- Hash the output value to be traced using the m hash functions in the bloom filter to obtain m values at corresponding positions;
- the block is determined as the block in which the exchange to be traced depends on.
- processing unit is further configured to:
- the output values of all the transactions in the first block are stored in the Bloom filter corresponding to the first block.
- an embodiment of the present invention also provides a computing device, including: a memory and a processor; the memory stores one or more executable programs that are used to configure the processor; the processor, One or more executable programs are configured, and the one or more executable programs are used to execute the blockchain transaction traceability method described in any one of the above.
- FIG. 1 is a schematic diagram of a system architecture provided by an embodiment of the present invention
- FIG. 2 is a schematic flowchart of a method for tracing blockchain transactions according to an embodiment of the present invention
- Figure 5 is a schematic diagram of a leaf node provided by an embodiment of the present invention.
- FIG. 7 is a schematic diagram of a Bloom filter array provided by an embodiment of the present invention.
- FIG. 8 is a schematic structural diagram of a device for tracing blockchain transactions according to an embodiment of the present invention.
- FIG. 9 is a schematic structural diagram of a computing device provided by an embodiment of the present invention.
- Fig. 1 is a system architecture applicable to an embodiment of the present invention.
- the system architecture may include multiple clients 100 and a blockchain system 200.
- the client 100 may be connected to the blockchain system 200 through a network.
- FIG. 1 is only an example, which is not limited in the embodiment of the present invention.
- FIG. 2 exemplarily shows the flow of a blockchain transaction traceability method provided by an embodiment of the present invention.
- the flow can be executed by a block chain transaction traceability device, which may be the block Chain system.
- the process specifically includes:
- Step 201 Obtain information about transactions to be traced.
- the information of the transaction to be traced may include the input value of the transaction to be traced.
- each transaction will have an input value and an output value, and the output value of each transaction is the input value of the next transaction of the transaction. Therefore, all historical transactions on which it depends can be traced through the input value of the current transaction.
- each block Before obtaining the information of the transaction to be traced, it is also necessary to set the corresponding bloom filter when generating each block, and each block will correspond to a bloom filter. Specifically, when the first block is generated, the output values of all transactions in the first block may be stored in the Bloom filter corresponding to the first block.
- the bloom filter may be located in the block header of the first block, or may be located in the bloom filter array of the database of the blockchain system. If the Bloom filter is located in the block header, the specific structure of the block can be shown in Figure 3.
- Step 202 Determine the leaf node of the transaction to be traced based on the input value of the transaction to be traced and the bloom filter corresponding to each block in the blockchain system.
- the leaf node of the transaction to be traced can be determined according to the Bloom filter corresponding to each block.
- the leaf node is also the node in the traceability path, which can be called a leaf transaction , Is the transaction that the transaction to be traced depends on.
- each block first determine the input value of the transaction to be traced as the output value to be traced, and determine according to the output value to be traced and the Bloom filter corresponding to each block in the blockchain system The block where the exchange to be traced depends on is located. Then, according to the output value to be traced, the first transaction that is the same as the output value to be traced is found in the block where the transaction to be traced depends on. Finally, a judgment is made.
- the traceability is terminated; otherwise, the first transaction is determined as the leaf node of the transaction to be traced, and the The input value of a transaction is determined as the output value to be traced, and the transaction that the transaction to be traced depends on is determined until the termination of traceability is determined.
- the preset termination condition can be set based on experience. Of course, when determining the first transaction here, it can also be determined whether the first transaction is a transaction in the genesis block or a transaction less than the preset block height, etc., and reasonable adjustments can be made in the specific implementation process.
- the m hash functions in the Bloom filter can be used to hash the output value to be traced to obtain m corresponding positions value. Then a judgment is made.
- the block is determined as the block in which the exchange to be traced depends on.
- the preset value here can be set based on experience, for example, it can be 1.
- the values of m corresponding positions are all 1, it can be determined that the transaction that the transaction to be traced depends on is in the block.
- Step 203 Generate a traceability path of the transaction to be traced based on the leaf node of the transaction to be traced.
- the traceability path of the transaction to be traced can be generated based on these leaf nodes.
- the traceability path is a tree structure. Of course, it can also have other structures in specific implementation, such as graphs. structure.
- multiple threads can be used for simultaneous traceability, thus speeding up the efficiency of traceability.
- a bloom filter with a size of 1024 bits and a false positive rate of 0.001 is selected. Tracing the path of transaction T, assuming that its path has four levels of transactions, each transaction has two input values. The specific process is as follows:
- T7, T8, T9, and T10 are coinbase transactions.
- Preparation stage First, for each block, build a Bloom filter array based on the output values of all transactions in the block, and store it in the database in the structure shown in Figure 7.
- T7, T8, T9, and T10 are coinbase transactions.
- the above embodiment shows that the information of the transaction to be traced is obtained, and the information of the transaction to be traced includes the input value of the transaction to be traced.
- the Bloom filter stores the output value of the transaction contained in the block, and generates the trace path of the transaction to be traced according to the leaf node of the transaction to be traced.
- FIG. 8 exemplarily shows a block chain transaction traceability device provided by an embodiment of the present invention, and the device can execute the block chain transaction traceability process.
- the device specifically includes:
- the obtaining unit 801 is configured to obtain information of the transaction to be traced; the information of the transaction to be traced includes the input value of the transaction to be traced;
- the processing unit 802 is configured to determine the leaf node of the transaction to be traced according to the input value of the transaction to be traced and the bloom filter corresponding to each block in the blockchain system; the bloom filter is stored There is an output value of the transaction contained in the block; and a traceability path of the transaction to be traced is generated according to the leaf node of the transaction to be traced.
- the traceability is terminated; otherwise, the first transaction is determined as the leaf node of the transaction to be traced, and the The input value of the first transaction is determined as the output value to be traced, and the transaction dependent on the transaction to be traced is continuously determined until it is determined that the traceability is terminated.
- processing unit 802 is specifically configured to:
- Hash the output value to be traced using the m hash functions in the bloom filter to obtain m values at corresponding positions;
- the block is determined as the block in which the exchange to be traced depends on.
- processing unit 802 is further configured to:
- the output values of all the transactions in the first block are stored in the Bloom filter corresponding to the first block.
- the bloom filter corresponding to the first block is located in the block header or in the bloom filter array of the database of the blockchain system.
- the embodiments of the present invention also provide a computer-readable storage medium, the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to make the computer execute the above-mentioned area.
- the method of blockchain transaction traceability is not limited to:
- an embodiment of the present invention also provides a computing device.
- the computing device 900 can be applied to the foregoing embodiment of the present invention.
- the computing device 900 may include: a memory 901 and a processor 902, where:
- the memory 901 stores one or more executable programs and is used to configure the processor 902;
- the processor 902 is configured with one or more executable programs, and the one or more executable programs are used to execute the following method: acquiring information of a transaction to be traced, and the information of the transaction to be traced includes the transaction to be traced According to the input value of the transaction to be traced and the bloom filter corresponding to each block in the blockchain system, determine the leaf node of the transaction to be traced; the bloom filter stores The output value of the transaction contained in the block; according to the leaf node of the transaction to be traced, a trace path of the transaction to be traced is generated.
- the memory 901 is used to store programs.
- the program may include program code, and the program code includes computer operation instructions.
- the memory 901 may be a volatile memory (volatile memory), such as a random-access memory (random-access memory, RAM for short); it may also be a non-volatile memory (non-volatile memory), such as a flash memory (flash memory). ), a hard disk drive (HDD for short) or a solid-state drive (SSD for short); it can also be any one or a combination of any of the above-mentioned volatile memories and non-volatile memories.
- volatile memory volatile memory
- RAM random-access memory
- non-volatile memory such as a flash memory (flash memory).
- flash memory flash memory
- HDD hard disk drive
- SSD solid-state drive
- the memory 901 stores the following elements, executable modules or data structures, or their subsets, or their extended sets:
- Operating instructions including various operating instructions, used to implement various operations.
- Operating system including various system programs, used to implement various basic services and process hardware-based tasks.
- the processor 902 may be a central processing unit (central processing unit, CPU for short), a network processor (NP for short), or a combination of CPU and NP. It can also be a hardware chip.
- the aforementioned hardware chip may be an application-specific integrated circuit (ASIC for short), a programmable logic device (PLD for short), or a combination thereof.
- ASIC application-specific integrated circuit
- PLD programmable logic device
- the above-mentioned PLD may be a complex programmable logic device (complex programmable logic device, CPLD), field-programmable gate array (FPGA), general array logic (generic array logic, GAL), or any of them combination.
- the memory 901 may also be integrated with the processor 902.
- the bus 903 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc.
- PCI peripheral component interconnect
- EISA extended industry standard architecture
- the bus can be divided into address bus, data bus, control bus, etc. For ease of representation, only one thick line is used in FIG. 9, but it does not mean that there is only one bus or one type of bus.
- the processor 902 is specifically configured to:
- the traceability is terminated; otherwise, the first transaction is determined as the leaf node of the transaction to be traced, and the The input value of the first transaction is determined as the output value to be traced, and the transaction dependent on the transaction to be traced is continuously determined until it is determined that the traceability is terminated.
- Hash the output value to be traced using the m hash functions in the bloom filter to obtain m values at corresponding positions;
- the block is determined as the block in which the exchange to be traced depends on.
- the processor 902 is further configured to:
- the output values of all the transactions in the first block are stored in the Bloom filter corresponding to the first block.
- the bloom filter corresponding to the first block is located in the block header or in the bloom filter array of the database of the blockchain system.
- These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
- the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
- These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
- the instructions provide steps for implementing functions specified in a flow or multiple flows in the flowchart and/or a block or multiple blocks in the block diagram.
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Claims (12)
- 一种区块链交易追溯的方法,其特征在于,包括:获取待追溯交易的信息;所述待追溯交易的信息包括所述待追溯交易的输入值;根据所述待追溯交易的输入值和区块链系统中每个区块对应的布隆过滤器,确定所述待追溯交易的叶子节点;所述布隆过滤器中存储有所述区块包含的交易的输出值;根据所述待追溯交易的叶子节点,生成所述待追溯交易的追溯路径。
- 如权利要求1所述的方法,其特征在于,所述根据所述待追溯交易的输入值和区块链系统中每个区块对应的布隆过滤器,确定所述待追溯交易的叶子节点,包括:将所述待追溯交易的输入值确定为待追溯输出值;根据所述待追溯输出值和所述区块链系统中每个区块对应的布隆过滤器,确定出所述待追溯交易所依赖的交易所在的区块;根据所述待追溯输出值,在待追溯交易的所依赖的交易所在的区块中查找出与所述待追溯输出值相同的第一交易;若所述第一交易为挖矿交易的交易或符合预设终止条件的区块的交易,则终止追溯;否则将所述第一交易确定为所述待追溯交易的叶子节点,并将所述第一交易的输入值确定为所述待追溯输出值,继续确定所述待追溯交易所依赖的交易,直到确定出终止追溯为止。
- 如权利要求2所述的方法,其特征在于,所述根据所述待追溯输出值和所述区块链系统中每个区块对应的布隆过滤器,确定出所述待追溯交易的所依赖的交易所在的区块,包括:使用所述布隆过滤器中的m个哈希函数对所述待追溯输出值进行哈希处理,得到m个对应位置的值;若所述m个对应位置的值都为预设值,则将所述区块确定为所述待追溯 交易所依赖的交易所在的区块。
- 如权利要求1至3任一项所述的方法,其特征在于,在所述获取待追溯交易的信息之前,还包括:在生成第一区块时,将所述第一区块中的所有交易的输出值存储在所述第一区块对应的布隆过滤器中。
- 如权利要求4所述的方法,其特征在于,所述第一区块对应的布隆过滤器位于所述区块头中或所述区块链系统的数据库的布隆过滤器数组中。
- 一种区块链交易追溯的装置,其特征在于,包括:获取单元,用于获取待追溯交易的信息;所述待追溯交易的信息包括所述待追溯交易的输入值;处理单元,用于根据所述待追溯交易的输入值和区块链系统中每个区块对应的布隆过滤器,确定所述待追溯交易的叶子节点;所述布隆过滤器中存储有所述区块包含的交易的输出值;以及根据所述待追溯交易的叶子节点,生成所述待追溯交易的追溯路径。
- 如权利要求6所述的装置,其特征在于,所述处理单元具体用于:将所述待追溯交易的输入值确定为待追溯输出值;根据所述待追溯输出值和所述区块链系统中每个区块对应的布隆过滤器,确定出所述待追溯交易所依赖的交易所在的区块;根据所述待追溯输出值,在待追溯交易的所依赖的交易所在的区块中查找出与所述待追溯输出值相同的第一交易;若所述第一交易为挖矿交易的交易或符合预设终止条件的区块的交易,则终止追溯;否则将所述第一交易确定为所述待追溯交易的叶子节点,并将所述第一交易的输入值确定为所述待追溯输出值,继续确定所述待追溯交易所依赖的交易,直到确定出终止追溯为止。
- 如权利要求7所述的装置,其特征在于,所述处理单元具体用于:使用所述布隆过滤器中的m个哈希函数对所述待追溯输出值进行哈希处理,得到m个对应位置的值;若所述m个对应位置的值都为预设值,则将所述区块确定为所述待追溯交易所依赖的交易所在的区块。
- 如权利要求6至8任一项所述的装置,其特征在于,所述处理单元还用于:在所述获取待追溯交易的信息之前,在生成第一区块时,将所述第一区块中的所有交易的输出值存储在所述第一区块对应的布隆过滤器中。
- 如权利要求9所述的装置,其特征在于,所述第一区块对应的布隆过滤器位于所述区块头中或所述区块链系统的数据库的布隆过滤器数组中。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行如权利要求1至5中任一项所述的方法。
- 一种计算设备,其特征在于,包括:存储器和处理器;所述存储器,存储一个或多个可执行程序,被用于配置所述处理器;所述处理器,被配置了一个或多个可执行程序,所述一个或多个可执行程序执行如权利要求1至5中任一项所述的方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/281,459 US20220005004A1 (en) | 2019-03-01 | 2020-01-10 | Method and device for blockchain transaction tracing |
CN202080029743.5A CN113711265A (zh) | 2019-03-01 | 2020-01-10 | 一种区块链交易追溯的方法及装置 |
KR1020217028551A KR20210125522A (ko) | 2019-03-01 | 2020-01-10 | 블록체인 거래를 추적하기 위한 방법 및 장치 |
EP20767224.7A EP3933743A4 (en) | 2019-03-01 | 2020-01-10 | BLOCKCHAIN TRANSACTION TRACKING METHOD AND DEVICE |
JP2021551810A JP7303321B2 (ja) | 2019-03-01 | 2020-01-10 | ブロックチェーントランザクションを追跡するための方法およびデバイス |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910155057.1 | 2019-03-01 | ||
CN201910155057.1A CN111640012A (zh) | 2019-03-01 | 2019-03-01 | 一种区块链交易追溯的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020177488A1 true WO2020177488A1 (zh) | 2020-09-10 |
Family
ID=72330473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/071551 WO2020177488A1 (zh) | 2019-03-01 | 2020-01-10 | 一种区块链交易追溯的方法及装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20220005004A1 (zh) |
EP (1) | EP3933743A4 (zh) |
JP (1) | JP7303321B2 (zh) |
KR (1) | KR20210125522A (zh) |
CN (2) | CN111640012A (zh) |
TW (1) | TWI727639B (zh) |
WO (1) | WO2020177488A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2595489A (en) * | 2020-05-28 | 2021-12-01 | Nchain Holdings Ltd | Probabilistic membership test for blockchain transaction outputs |
EP4216130A4 (en) * | 2021-05-14 | 2024-04-24 | Tencent Tech Shenzhen Co Ltd | METHOD AND DEVICE FOR VERIFYING TRANSACTION REPEATS AND DEVICE AND MEDIUM |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247773A (zh) * | 2017-06-07 | 2017-10-13 | 北京邮电大学 | 一种基于区块链的在分布式数据库中进行交易查询的方法 |
US20180097779A1 (en) * | 2016-09-30 | 2018-04-05 | Nec Europe Ltd. | Method and system for providing a transaction forwarding service in blockchain implementations |
CN108615156A (zh) * | 2018-05-09 | 2018-10-02 | 上海魅联信息技术有限公司 | 一种基于区块链的数据结构 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10204341B2 (en) * | 2016-05-24 | 2019-02-12 | Mastercard International Incorporated | Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees |
US11170395B2 (en) * | 2016-12-02 | 2021-11-09 | Stack Fintech Inc. | Digital banking platform and architecture |
WO2018119930A1 (zh) * | 2016-12-29 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 交易验证处理方法、装置及节点设备 |
CN107025559B (zh) * | 2017-01-26 | 2020-09-18 | 创新先进技术有限公司 | 一种业务处理方法及装置 |
GB201711879D0 (en) * | 2017-07-24 | 2017-09-06 | Nchain Holdings Ltd | Computer-implemented system and method |
CN108711056A (zh) * | 2018-05-16 | 2018-10-26 | 四川大学 | 一种中心化的可追溯的区块链系统及方法 |
CN109299038A (zh) * | 2018-08-29 | 2019-02-01 | 南京数睿数据科技有限公司 | 一种适用于区块链的海量数据摘要生成系统和方法 |
TWM572512U (zh) * | 2018-09-28 | 2019-01-01 | 彰化商業銀行股份有限公司 | 使用區塊鏈技術之跨行帳戶交易查詢系統 |
US10698728B1 (en) * | 2019-11-15 | 2020-06-30 | Blockstack Pbc | Systems and methods for forming application-specific blockchains |
-
2019
- 2019-03-01 CN CN201910155057.1A patent/CN111640012A/zh active Pending
-
2020
- 2020-01-10 KR KR1020217028551A patent/KR20210125522A/ko not_active Application Discontinuation
- 2020-01-10 EP EP20767224.7A patent/EP3933743A4/en active Pending
- 2020-01-10 WO PCT/CN2020/071551 patent/WO2020177488A1/zh active Application Filing
- 2020-01-10 JP JP2021551810A patent/JP7303321B2/ja active Active
- 2020-01-10 CN CN202080029743.5A patent/CN113711265A/zh active Pending
- 2020-01-10 US US17/281,459 patent/US20220005004A1/en not_active Abandoned
- 2020-02-03 TW TW109103162A patent/TWI727639B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180097779A1 (en) * | 2016-09-30 | 2018-04-05 | Nec Europe Ltd. | Method and system for providing a transaction forwarding service in blockchain implementations |
CN107247773A (zh) * | 2017-06-07 | 2017-10-13 | 北京邮电大学 | 一种基于区块链的在分布式数据库中进行交易查询的方法 |
CN108615156A (zh) * | 2018-05-09 | 2018-10-02 | 上海魅联信息技术有限公司 | 一种基于区块链的数据结构 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3933743A4 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2595489A (en) * | 2020-05-28 | 2021-12-01 | Nchain Holdings Ltd | Probabilistic membership test for blockchain transaction outputs |
EP4216130A4 (en) * | 2021-05-14 | 2024-04-24 | Tencent Tech Shenzhen Co Ltd | METHOD AND DEVICE FOR VERIFYING TRANSACTION REPEATS AND DEVICE AND MEDIUM |
Also Published As
Publication number | Publication date |
---|---|
JP7303321B2 (ja) | 2023-07-04 |
KR20210125522A (ko) | 2021-10-18 |
US20220005004A1 (en) | 2022-01-06 |
CN113711265A (zh) | 2021-11-26 |
CN111640012A (zh) | 2020-09-08 |
EP3933743A1 (en) | 2022-01-05 |
TWI727639B (zh) | 2021-05-11 |
JP2022522790A (ja) | 2022-04-20 |
EP3933743A4 (en) | 2022-04-27 |
TW202034265A (zh) | 2020-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110520853B (zh) | 直接存储器访问的队列管理 | |
WO2019128475A1 (zh) | 数据训练方法及装置、存储介质、电子装置 | |
US10572456B2 (en) | Method, apparatus, and computer program product for data quality analysis | |
WO2018045753A1 (zh) | 用于分布式图计算的方法与设备 | |
WO2020177488A1 (zh) | 一种区块链交易追溯的方法及装置 | |
WO2020248982A1 (zh) | 一种区块链中交易处理的方法及装置 | |
WO2020216077A1 (zh) | 一种区块链事件去重方法、装置、计算机设备及存储介质 | |
WO2022166294A1 (zh) | 一种目标检测方法和装置 | |
TW202006642A (zh) | 風險防控方法、系統及終端設備 | |
CN115237599B (zh) | 一种渲染任务处理方法和装置 | |
CN106649344B (zh) | 一种网络日志压缩方法和装置 | |
WO2020211622A1 (zh) | 一种基于区块链的消息存储方法及装置 | |
CN115964374A (zh) | 一种基于预计算场景的查询处理方法及其装置 | |
CN105988995B (zh) | 一种基于HFile批量加载数据的方法 | |
WO2022160856A1 (zh) | 一种分类网络及其实现方法和装置 | |
CA3094727C (en) | Transaction processing method and system, and server | |
WO2021004266A1 (zh) | 数据插入方法、装置、设备和储存介质 | |
WO2021115002A1 (zh) | 一种区块链交易记录的处理方法及装置 | |
US20230325149A1 (en) | Data processing method and apparatus, computer device, and computer-readable storage medium | |
CN106502842A (zh) | 数据恢复方法及系统 | |
US11924116B2 (en) | Resource address allocation method, system and apparatus for PCI device | |
TWI662486B (zh) | 檢查分布式業務處理完整度的方法及裝置 | |
Li et al. | An extraction algorithm for a set of elementary siphons based on mixed-integer programming | |
CN113132261B (zh) | 一种流量数据包分类方法、装置及电子设备 | |
WO2015062035A1 (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: 20767224 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021551810 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20217028551 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2020767224 Country of ref document: EP |