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
- 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
- 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 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
- 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 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
- 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 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
- 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 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
- 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 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
- 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 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
- 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 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
-
- 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 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
- 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 |
| JP2021551810A JP7303321B2 (ja) | 2019-03-01 | 2020-01-10 | ブロックチェーントランザクションを追跡するための方法およびデバイス |
| CN202080029743.5A CN113711265A (zh) | 2019-03-01 | 2020-01-10 | 一种区块链交易追溯的方法及装置 |
| EP20767224.7A EP3933743A4 (en) | 2019-03-01 | 2020-01-10 | Method and device for blockchain transaction tracing |
| KR1020217028551A KR102742790B1 (ko) | 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 Ceased 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) | KR102742790B1 (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 Technology (Shenzhen) Company Limited | METHOD AND DEVICE FOR VERIFYING TRANSACTION REPEATS AND DEVICE AND MEDIUM |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3852305B1 (en) * | 2020-01-17 | 2022-11-16 | Fetch.ai Limited | Transaction verification system and method of operation thereof |
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 (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20170122048A (ko) * | 2016-04-26 | 2017-11-03 | 한국전자통신연구원 | 블룸 필터와 이진 트리를 이용한 암호 데이터 검색 시스템 및 그 방법 |
| 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 |
| WO2018098598A1 (en) * | 2016-12-02 | 2018-06-07 | Stack Fintech Inc. | Digital banking platform and architecture |
| CN107077674B (zh) * | 2016-12-29 | 2021-06-11 | 达闼机器人有限公司 | 交易验证处理方法、装置及节点设备 |
| CN107025559B (zh) * | 2017-01-26 | 2020-09-18 | 创新先进技术有限公司 | 一种业务处理方法及装置 |
| KR101841567B1 (ko) * | 2017-04-27 | 2018-05-04 | 주식회사 코인플러그 | 블록체인 내의 블록별로 발란스 데이터베이스를 관리하여 전자 바우처를 발행, 사용, 환불, 정산 및 파기하는 방법과 이를 이용한 서버 |
| 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 | 彰化商業銀行股份有限公司 | 使用區塊鏈技術之跨行帳戶交易查詢系統 |
| KR102051231B1 (ko) * | 2018-11-27 | 2020-01-08 | 한국과학기술원 | 블록체인을 활용한 사용자 개인정보 활용 파악을 위한 방법 및 시스템 |
| 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 WO PCT/CN2020/071551 patent/WO2020177488A1/zh not_active Ceased
- 2020-01-10 CN CN202080029743.5A patent/CN113711265A/zh active Pending
- 2020-01-10 EP EP20767224.7A patent/EP3933743A4/en active Pending
- 2020-01-10 JP JP2021551810A patent/JP7303321B2/ja active Active
- 2020-01-10 US US17/281,459 patent/US20220005004A1/en not_active Abandoned
- 2020-01-10 KR KR1020217028551A patent/KR102742790B1/ko active Active
- 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 (3)
| 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 Technology (Shenzhen) Company Limited | METHOD AND DEVICE FOR VERIFYING TRANSACTION REPEATS AND DEVICE AND MEDIUM |
| US12271897B2 (en) | 2021-05-14 | 2025-04-08 | Tencent Technology (Shenzhen) Company Limited | Repeat transaction verification method, apparatus, and device, and medium |
Also Published As
| Publication number | Publication date |
|---|---|
| TW202034265A (zh) | 2020-09-16 |
| CN113711265A (zh) | 2021-11-26 |
| EP3933743A1 (en) | 2022-01-05 |
| JP7303321B2 (ja) | 2023-07-04 |
| KR102742790B1 (ko) | 2024-12-16 |
| TWI727639B (zh) | 2021-05-11 |
| EP3933743A4 (en) | 2022-04-27 |
| JP2022522790A (ja) | 2022-04-20 |
| US20220005004A1 (en) | 2022-01-06 |
| CN111640012A (zh) | 2020-09-08 |
| KR20210125522A (ko) | 2021-10-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111221521B (zh) | 日志代码的生成方法、装置、计算机系统和可读存储介质 | |
| TWI727639B (zh) | 一種區塊鏈交易追溯的方法及裝置 | |
| WO2020248982A1 (zh) | 一种区块链中交易处理的方法及装置 | |
| CN103942108B (zh) | Hadoop同构集群下的资源参数优化方法 | |
| CN104036141B (zh) | 一种基于OpenCL的红黑树加速方法 | |
| WO2020010982A1 (zh) | 一种风险防控方法、系统及终端设备 | |
| WO2022160856A1 (zh) | 一种分类网络及其实现方法和装置 | |
| CN106293541A (zh) | 一种存储系统的日志管理方法和系统 | |
| WO2021004266A1 (zh) | 数据插入方法、装置、设备和储存介质 | |
| CN108628898A (zh) | 数据入库的方法、装置和设备 | |
| CN116561077A (zh) | dbf文件导入方法、装置、设备及存储介质 | |
| WO2021027530A1 (zh) | 一种基于区块链的数据处理方法及装置 | |
| WO2020224353A1 (zh) | 一种区块链中智能合约的发布方法及装置 | |
| CN113126919B (zh) | 一种RocksDB性能提升方法、系统及存储介质 | |
| CN107408127B (zh) | 用于索引队列的动态阈值门 | |
| CN110442433B (zh) | 一种执行sql任务的方法、设备以及存储介质 | |
| WO2021115002A1 (zh) | 一种区块链交易记录的处理方法及装置 | |
| CN111796806B (zh) | 生成对象的方法、装置、电子设备及可读存储介质 | |
| CN111538715B (zh) | 一种风控方案的迁移方法、装置及电子设备 | |
| CN116009889A (zh) | 深度学习模型的部署方法、装置、电子设备及存储介质 | |
| HK40054312A (zh) | 一种区块链交易追溯的方法及装置 | |
| CN116049492A (zh) | 关联规则挖掘方法、装置、设备及存储介质 | |
| CN114238934A (zh) | 一种设备信息获取方法、装置、设备及介质 | |
| CN113792247A (zh) | 基于代码特征生成功能流程图的方法、装置、设备和介质 | |
| CN110674179A (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 |