WO2021134876A1 - Blockchain-based transaction data obfuscation method, and related device - Google Patents

Blockchain-based transaction data obfuscation method, and related device Download PDF

Info

Publication number
WO2021134876A1
WO2021134876A1 PCT/CN2020/076974 CN2020076974W WO2021134876A1 WO 2021134876 A1 WO2021134876 A1 WO 2021134876A1 CN 2020076974 W CN2020076974 W CN 2020076974W WO 2021134876 A1 WO2021134876 A1 WO 2021134876A1
Authority
WO
WIPO (PCT)
Prior art keywords
transaction
parameter
target
challenge
challenge parameter
Prior art date
Application number
PCT/CN2020/076974
Other languages
French (fr)
Chinese (zh)
Inventor
辛佳骏
来鑫
张骁
李武璐
Original Assignee
深圳市网心科技有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 深圳市网心科技有限公司 filed Critical 深圳市网心科技有限公司
Publication of WO2021134876A1 publication Critical patent/WO2021134876A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management

Definitions

  • the present invention relates to the technical field of block chains, in particular to a method and related equipment for obfuscation of transaction data based on block chains.
  • the first aspect of the present invention provides a blockchain-based transaction data obfuscation method, which is applied to obfuscate service provider node equipment, and the method includes:
  • the using the target random number to obfuscate the target confidential transaction, and obtaining the obfuscated transaction includes:
  • the C′ i is the obfuscated transaction
  • C ⁇ (i) is the target confidential transaction
  • h is a system parameter
  • r is the target random number.
  • the second challenge parameter y Hash(C B1
  • the third challenge parameter z Hash(C B1
  • the performing product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable includes:
  • the product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
  • the performing a power proof based on the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable includes:
  • the power proof is performed according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, wherein the power proof formula is as follows:
  • the second aspect of the present invention provides a blockchain-based transaction data obfuscation method, which is applied to a node device of a regulatory agency, and the method includes:
  • the signed first challenge parameter and the random mapping parameter are sent to the obfuscated service provider node device, so that the obfuscated service provider node device can use the signed first challenge parameter and the random mapping parameter pair
  • the target confidential transaction performs a supervisable proof of confusion.
  • the method further includes:
  • a third aspect of the present invention provides a blockchain node device, the blockchain node device includes a memory and a processor, the memory stores blockchain transaction data that can run on the processor to prove supervision The downloading program of the method, when the downloading program of the blockchain transaction data certification supervision method is executed by the processor, realizes the transaction data obfuscation method based on the blockchain.
  • a fourth aspect of the present invention provides a computer-readable storage medium, the computer-readable storage medium stores a download program for the blockchain transaction data certification and supervision method, and the download program for the blockchain transaction data certification and supervision method It can be executed by one or more processors to implement the blockchain-based transaction data obfuscation method.
  • the target confidential transaction is an encrypted transaction. Only both parties to the transaction can decrypt the amount in the target confidential transaction, which protects the transaction privacy from being leaked.
  • the target confidential transaction can be confused with the target.
  • the obfuscated transaction equivalent to the confidential transaction realizes the anonymity of the transaction.
  • the required parameters are obtained from the node device of the supervisory authority, which is convenient for the supervisor to supervise the transaction data on the chain.
  • FIG. 1 is a flowchart of a preferred embodiment of a method for obfuscation of transaction data based on blockchain disclosed in the present invention.
  • Fig. 2 is a flowchart of another preferred embodiment of a block chain-based transaction data obfuscation method disclosed in the present invention.
  • Fig. 3 is a functional block diagram of a preferred embodiment of a transaction data obfuscation device disclosed in the present invention.
  • Fig. 4 is a functional module diagram of another preferred embodiment of a transaction data obfuscation device disclosed in the present invention.
  • FIG. 5 is a schematic structural diagram of a blockchain node device according to a preferred embodiment of the method for obfuscation of transaction data based on the blockchain according to the present invention.
  • first and second in the description and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific sequence or sequence, nor can they be understood as instructions or Imply its relative importance or implicitly indicate the number of technical features indicated. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments described herein can be implemented in an order other than the content illustrated or described here, and the features defined as “first” and “second” can be At least one of this feature is explicitly or implicitly included.
  • FIG. 1 is a flowchart of a preferred embodiment of a method for obfuscation of transaction data based on blockchain disclosed in the present invention.
  • the block chain-based transaction data obfuscation method is applied to obfuscate the service provider node equipment, and the block chain-based transaction data obfuscation method specifically includes the following steps. According to different needs, the steps in the flowchart The order can be changed, and some steps can be omitted.
  • the obfuscation request carries a target random number
  • the target random number is used to obfuscate the original transaction on the blockchain.
  • the target confidential transaction may be one or multiple.
  • the supplier node device needs to perform a series of operations in advance before sending the obfuscation request.
  • the supplier node device sends a transaction On the chain, with Gas, where g and h are system parameters, x 1 is the transaction amount, r 1 is a random number, and Gas represents the number of times the transaction can be confused.
  • the supplier node device selects the target random number r 2 and calculates the result after confusion And after the confusion, the specific value of Gas' and Gas' depends on the setting of the specific parameters of the system. Assuming that the initial value of Gas is 3, it will be reduced by 1 each time it is confused.
  • the supplier node device can carry The obfuscation request of is sent to the obfuscated service provider node device to trigger the obfuscated service provider node device to obfuscate the target confidential transaction.
  • the use of the target random number to obfuscate the target confidential transaction to obtain the obfuscated transaction includes:
  • the C′ i is the obfuscated transaction
  • C ⁇ (i) is the target confidential transaction
  • h is the system parameter
  • r is the target random number
  • ⁇ (i) is within the range of [1,k]
  • the target confidential transaction is equivalent to the obfuscated transaction.
  • the obfuscated service provider node device calculates the obfuscated transaction, it also needs to perform obfuscation proof.
  • the random mapping parameter and the signed first challenge parameter can be obtained in advance from the node device of the supervisory authority, where the random mapping parameter ⁇ (i) falls within the range of [1, k] , ⁇ (1), ⁇ (2),..., ⁇ (k) ⁇ is a rearrangement of ⁇ 1,2,...,k ⁇ .
  • the first challenge parameter x Hash(C A1
  • the regulatory agency node device After the regulatory agency node device generates the first challenge parameter x, it can use the private key to sign the first challenge parameter x and send it to the obfuscated service provider node device.
  • the second challenge parameter y Hash(C B1
  • the third challenge parameter z Hash(C B1
  • the first intermediate variable is The second intermediate variable is
  • ⁇ i is a random number generated by the obfuscated service provider node device itself.
  • the performing product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable includes:
  • the product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
  • the performing the exponentiation proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable includes:
  • the power proof is performed according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, wherein the power proof formula is as follows:
  • the random mapping parameters and the signed first challenge parameter are obtained from the regulatory agency node device
  • the random mapping parameter obtained from the regulatory agency node device and the signed first challenge parameter are used to perform a provable confusion algorithm It can be called a verifiable shuffle with multi-regulators.
  • Subsequent regulatory agency node devices can use their own stored random mapping parameters and signed first challenge parameters to track and supervise the transactions that need to be confused.
  • the target confidential transaction is an encrypted transaction. Only both parties to the transaction can decrypt the amount in the target confidential transaction, which protects transaction privacy from being leaked.
  • the target confidential transaction is obfuscated.
  • the obfuscated transaction equivalent to the target confidential transaction realizes the anonymity of the transaction.
  • the required parameters are obtained from the node device of the supervisory authority, so that the supervisor can subsequently supervise the transaction data on the chain.
  • FIG. 2 is a flowchart of another preferred embodiment of a block chain-based transaction data obfuscation method disclosed in the present invention.
  • the block chain-based transaction data obfuscation method is applied to the node equipment of the regulatory agency, and the block chain-based transaction data obfuscation method specifically includes the following steps. According to different needs, the order of the steps in the flowchart can be Change, some steps can be omitted.
  • the regulatory agency node device can randomly select a random mapping parameter ⁇ (i), where the random mapping parameter ⁇ (i) belongs to the range of [1, k], ⁇ (1), ⁇ (2),... , ⁇ (k) ⁇ is the rearrangement of ⁇ 1,2,...,k ⁇ .
  • the regulatory agency node device may calculate the first challenge parameter according to the random mapping parameter.
  • g 1 , g 2 ,..., g v , h are all system parameters
  • ⁇ r A1 ,..., r Au ⁇ are u random variables
  • x is the first challenge parameter
  • the supervisory authority node device may use the private key to sign the first challenge parameter, and save the signature locally.
  • the regulatory agency node device may send the signed first challenge parameter and the random mapping parameter to the obfuscated service provider node device after generating the random mapping parameter and the signed first challenge parameter.
  • the obfuscation service provider node device can use the supervisable and provable obfuscation algorithm described in Embodiment 1 above to perform confidential transactions on the target according to the first challenge parameter after the signature and the random mapping parameter. Make a supervisable proof of confusion.
  • the target confidential transaction is a confidential transaction that needs to be obfuscated and encrypted.
  • the method further includes:
  • the regulatory agency node device can save the signed first challenge parameter and the random mapping parameter, and when the target confidential transaction sent by the supplier node device is obtained on the blockchain, it can use all The signed first challenge parameter and the random mapping parameter decrypt, supervise and track the confusion of the target confidential transaction.
  • the supervisory authority node equipment can generate by itself The stored random mapping parameters and the first challenge parameter after signing supervise transactions on the blockchain, and at the same time, track the confusion of transactions.
  • FIG. 3 is a functional block diagram of a preferred embodiment of a transaction data obfuscation device disclosed in the present invention.
  • the transaction data obfuscation device runs in obfuscated service provider node equipment.
  • the transaction data obfuscation device may include multiple functional modules composed of program code segments.
  • the program code of each program segment in the transaction data obfuscation device can be stored in a memory and executed by at least one processor to execute part or all of the block chain-based transaction data obfuscation method described in FIG. 1 step.
  • the transaction data obfuscation device can be divided into multiple functional modules according to the functions it performs.
  • the functional modules may include: a receiving module 301, a confusion module 302, an acquisition module 303, a calculation module 304, a certification module 305, and an output module 306.
  • the module referred to in the present invention refers to a series of computer program segments that can be executed by at least one processor and can complete fixed functions, and are stored in a memory.
  • the receiving module 301 is configured to receive an obfuscation request sent by the supplier node device for the target confidential transaction, where the obfuscation request carries the target random number.
  • the obfuscation request carries a target random number
  • the target random number is used to obfuscate the original transaction on the blockchain.
  • the target confidential transaction may be one or multiple.
  • the supplier node device needs to perform a series of operations in advance before sending the obfuscation request.
  • the supplier node device sends a transaction On the chain, with Gas, where g and h are system parameters, x 1 is the transaction amount, r 1 is a random number, and Gas represents the number of times the transaction can be confused.
  • the supplier node device selects the target random number r 2 and calculates the result after confusion And after the confusion, the specific value of Gas' and Gas' depends on the setting of the specific parameters of the system. Assuming that the initial value of Gas is 3, it will be reduced by 1 each time it is confused.
  • the supplier node device can carry The obfuscation request of is sent to the obfuscated service provider node device to trigger the obfuscated service provider node device to obfuscate the target confidential transaction.
  • the obfuscation module 302 is configured to obfuscate the target confidential transaction by using the target random number to obtain an obfuscated transaction.
  • the obfuscation module 302 uses the target random number to obfuscate the target confidential transaction, and obtaining the obfuscated transaction includes:
  • the C′ i is the obfuscated transaction
  • C ⁇ (i) is the target confidential transaction
  • h is a system parameter
  • r is the target random number.
  • the target confidential transaction is equivalent to the obfuscated transaction.
  • the obtaining module 303 is configured to obtain the random mapping parameter and the signed first challenge parameter from the regulatory agency node device.
  • the obfuscated service provider node device calculates the obfuscated transaction, it also needs to perform obfuscation proof.
  • the random mapping parameter and the signed first challenge parameter can be obtained in advance from the node device of the supervisory authority, where the random mapping parameter ⁇ (i) falls within the range of [1, k] , ⁇ (1), ⁇ (2),..., ⁇ (k) ⁇ is a rearrangement of ⁇ 1,2,...,k ⁇ .
  • the first challenge parameter x Hash(C A1
  • the regulatory agency node device After the regulatory agency node device generates the first challenge parameter x, it can use the private key to sign the first challenge parameter x and send it to the obfuscated service provider node device.
  • the calculation module 304 is configured to generate a plurality of first random numbers, calculate a second challenge parameter according to the plurality of first random numbers and the first challenge parameter, and calculate a third challenge according to the second challenge parameter parameter.
  • the second challenge parameter y Hash(C B1
  • the third challenge parameter z Hash(C B1
  • the calculation module 304 is also used to calculate the first intermediate variable and the second intermediate variable.
  • the first intermediate variable is The second intermediate variable is
  • ⁇ i is a random number generated by the obfuscated service provider node device itself.
  • the proof module 305 is configured to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable.
  • the certification module 305 performs product certification according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, including:
  • the product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
  • the proof module 305 is further configured to perform exponentiation proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable.
  • the proof module 305 performs the exponentiation proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, including:
  • the power proof is performed according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, wherein the power proof formula is as follows:
  • the random mapping parameters and the signed first challenge parameter are obtained from the regulatory agency node device
  • the random mapping parameter obtained from the regulatory agency node device and the signed first challenge parameter are used to perform a provable confusion algorithm It can be called a verifiable shuffle with multi-regulators.
  • Subsequent regulatory agency node devices can use their own saved random mapping parameters and signed first challenge parameters to track and supervise the transactions that need to be confused.
  • the output module 306 is configured to output the confusion transaction, the result of the product proof, and the result of the power proof.
  • the target confidential transaction is an encrypted transaction. Only both parties to the transaction can decrypt the amount in the target confidential transaction, which protects the transaction privacy from being leaked.
  • the obfuscated transaction equivalent to the target confidential transaction realizes the anonymity of the transaction.
  • the required parameters are obtained from the node device of the supervisory authority, which is convenient for the supervisor to supervise the transaction data on the chain.
  • FIG. 4 is a functional module diagram of a preferred embodiment of a transaction data obfuscation device disclosed in the present invention.
  • the transaction data obfuscation device runs in obfuscated service provider node equipment.
  • the transaction data obfuscation device may include multiple functional modules composed of program code segments.
  • the program code of each program segment in the transaction data obfuscation device may be stored in a memory and executed by at least one processor to execute part or all of the block chain-based transaction data obfuscation method described in FIG. 2 step.
  • the transaction data obfuscation device can be divided into multiple functional modules according to the functions it performs.
  • the functional modules may include: a generation module 401, a calculation module 402, a signature module 403, and a sending module 404.
  • the module referred to in the present invention refers to a series of computer program segments that can be executed by at least one processor and can complete fixed functions, and are stored in a memory.
  • the generating module 401 is used to generate random mapping parameters.
  • the regulatory agency node device can randomly select a random mapping parameter ⁇ (i), where the random mapping parameter ⁇ (i) belongs to the range of [1, k], ⁇ (1), ⁇ (2),... , ⁇ (k) ⁇ is the rearrangement of ⁇ 1,2,...,k ⁇ .
  • the calculation module 402 is configured to calculate the first challenge parameter according to the random mapping parameter.
  • the regulatory agency node device may calculate the first challenge parameter according to the random mapping parameter.
  • g 1 , g 2 ,..., g v , h are all system parameters
  • ⁇ r A1 ,..., r Au ⁇ are u random variables
  • x is the first challenge parameter
  • the signature module 403 is configured to use a private key to sign the first challenge parameter.
  • the supervisory authority node device may use the private key to sign the first challenge parameter, and save the signature locally.
  • the sending module 404 is configured to send the signed first challenge parameter and the random mapping parameter to the obfuscated service provider node device, so that the obfuscated service provider node device can according to the signed first challenge parameter and The random mapping parameter performs supervisable confusion proof for the target confidential transaction.
  • the regulatory agency node device may send the signed first challenge parameter and the random mapping parameter to the obfuscated service provider node device after generating the random mapping parameter and the signed first challenge parameter.
  • the obfuscation service provider node device can use the supervisable and provable obfuscation algorithm described in Embodiment 1 above to perform confidential transactions on the target according to the first challenge parameter after the signature and the random mapping parameter. Make a supervisable proof of confusion.
  • the target confidential transaction is a confidential transaction that needs to be obfuscated and encrypted.
  • the transaction data obfuscation device further includes:
  • a saving module configured to save the signed first challenge parameter and the random mapping parameter
  • the obtaining module is used to obtain the target confidential transaction sent by the supplier node device
  • the supervision module is configured to use the signed first challenge parameter and the random mapping parameter to supervise the target confidential transaction.
  • the regulatory agency node device can save the signed first challenge parameter and the random mapping parameter, and when the target confidential transaction sent by the supplier node device is obtained on the blockchain, it can use all The signed first challenge parameter and the random mapping parameter decrypt, supervise and track the confusion of the target confidential transaction.
  • the regulatory agency node device since the random mapping parameter and the first challenge parameter for the obfuscated service provider node device to perform the obfuscation proof are obtained from the regulatory agency node device, the regulatory agency node device can use its own generation and The saved random mapping parameters and the first challenge parameter after signing supervise transactions on the blockchain, and at the same time, track the confusion of transactions.
  • FIG. 5 is a schematic structural diagram of a blockchain node device according to a preferred embodiment of the method for obfuscation of transaction data based on blockchain according to the present invention.
  • the blockchain node device 5 may include a memory 51, a processor 52, a bus 53 and a transceiver 54.
  • FIG. 5 only shows the blockchain node device 5 with components 51-54.
  • the structure shown in FIG. 5 does not constitute a limitation on the blockchain node device 5. It may be a bus-type structure or a star-shaped structure.
  • the blockchain node device 5 may also include fewer or more components than shown in the figure, or a combination of certain components, or a different component arrangement.
  • Other existing or future electronic products that can be adapted to the present invention should also be included in the protection scope of the present invention, and are included here by reference.
  • the memory 51 includes at least one type of readable storage medium, and the readable storage medium includes flash memory, hard disk, multimedia card, card-type memory (for example, SD or DX memory, etc.), magnetic memory, magnetic disk, optical disk, and the like.
  • the memory 51 may be an internal storage unit of the blockchain node device 5 in some embodiments, such as a hard disk of the blockchain node device 5.
  • the memory 51 may also be an external storage device of the blockchain node device 5, such as a plug-in hard disk equipped on the blockchain node device 5, a smart memory card (Smart Media Card, SMC). ), Secure Digital (SD) card, Flash Card, etc.
  • the memory 51 may also include not only the internal storage unit of the blockchain node device 5, but also an external storage device.
  • the memory 51 can not only be used to store application programs and various data installed in the blockchain node device 5, for example, a transaction data obfuscation device and its various functional modules, but also can be used to temporarily store what has been output or will be output. data.
  • the processor 52 may be a central processing unit (CPU), controller, microcontroller, or microprocessor in some embodiments, and is used to run program codes or process data stored in the memory 51.
  • CPU central processing unit
  • controller microcontroller
  • microprocessor in some embodiments, and is used to run program codes or process data stored in the memory 51.
  • the bus 53 may be a peripheral component interconnect standard (PCI) bus or an extended industry standard architecture (EISA) bus, etc.
  • PCI peripheral component interconnect standard
  • EISA extended industry standard architecture
  • the bus can be divided into address bus, data bus, control bus and so on. For ease of presentation, only one thick line is used to represent in FIG. 5, but it does not mean that there is only one bus or one type of bus.
  • the blockchain node device 5 may also include a network interface, and the network interface may optionally include a wired interface and/or a wireless interface (such as a WI-FI interface, a Bluetooth interface, etc.), which is usually used in the block
  • the link node device 5 establishes a communication connection with other dispatch servers.
  • the blockchain node device 5 may also include a user interface
  • the user interface may include a display (Display), an input unit, such as a keyboard (Keyboard), optionally, the user interface may also include a standard wired interface, wireless interface.
  • the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, an organic light-emitting diode (OLED) touch device, and the like.
  • the display may also be called a display screen or a display unit, which is used to display the messages processed in the dispatch server and to display a visualized user interface.
  • a plurality of instructions are stored in the memory 51, and the processor 52 can execute the plurality of instructions to achieve:
  • the processor 52 uses the target random number to obfuscate the target confidential transaction, and obtaining the obfuscated transaction includes:
  • the C′ i is the obfuscated transaction
  • C ⁇ (i) is the target confidential transaction
  • h is a system parameter
  • r is the target random number.
  • the second challenge parameter y Hash(C B1
  • the third challenge parameter z Hash(C B1
  • the processor 52 performing product certification according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable includes:
  • the product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
  • the processor 52 performing the exponentiation proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable includes:
  • the signed first challenge parameter and the random mapping parameter are sent to the obfuscated service provider node device, so that the obfuscated service provider node device can use the signed first challenge parameter and the random mapping parameter pair
  • the target confidential transaction performs a supervisable proof of confusion.
  • processor 52 may also execute the multiple instructions to achieve:
  • the computer program product includes one or more computer instructions.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium.
  • the computer instructions may be transmitted from a website, computer, server, or data center. Transmission to another website site, computer, server or data center via wired (for example, coaxial cable, optical fiber, digital subscriber line) or wireless (for example, infrared, wireless, microwave, etc.).
  • the computer-readable storage medium may be any available medium that can be stored by a computer or a data storage device such as a server or a data center integrated with one or more available media.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, and a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).
  • modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional modules in the various embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit may be implemented in the form of hardware, or may be implemented in the form of hardware plus software functional modules.

Abstract

Disclosed is a blockchain-based transaction data obfuscation method. The method comprises: receiving an obfuscation request sent by a supplier node device for a target confidential transaction; obfuscating the target confidential transaction by using a target random number to obtain an obfuscated transaction; acquiring a random mapping parameter and a signed first challenge parameter from a regulator node device; performing product proving and power proving; and outputting the obfuscated transaction, a product proving result and a power proving result. Further provided is a related device. According to the present invention, anonymity of a transaction can be realized, and regulation of transaction data can also be realized.

Description

基于区块链的交易数据混淆方法及相关设备Block chain-based transaction data obfuscation method and related equipment
本申请要求于2019年12月31日提交中国专利局,申请号为201911416640.X、发明名称为“基于区块链的交易数据混淆方法及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the Chinese Patent Office on December 31, 2019, the application number is 201911416640.X, and the invention title is "Blockchain-based transaction data obfuscation method and related equipment", and its entire content Incorporated in this application by reference.
技术领域Technical field
本发明涉及区块链技术领域,尤其涉及一种基于区块链的交易数据混淆方法及相关设备。The present invention relates to the technical field of block chains, in particular to a method and related equipment for obfuscation of transaction data based on block chains.
背景技术Background technique
在区块链技术中,为了保证交易数据的不可篡改,通常会将交易数据上传添加至区块链,但是这样就会导致区块链网络中的任意节点均可以获取到该交易数据,使交易数据失去了保密性,同时,任意节点均可以查看该交易数据的交易双方,无法实现交易的匿名。In blockchain technology, in order to ensure that the transaction data cannot be tampered with, the transaction data is usually uploaded and added to the blockchain, but this will cause any node in the blockchain network to obtain the transaction data, making the transaction The data loses its confidentiality. At the same time, any node can view both parties of the transaction data, and the anonymity of the transaction cannot be realized.
因此,如何提高交易数据的保密性,同时实现交易的匿名是一个亟待解决的技术问题。Therefore, how to improve the confidentiality of transaction data and at the same time realize the anonymity of transactions is an urgent technical problem to be solved.
发明内容Summary of the invention
鉴于以上内容,有必要提供一种基于区块链的交易数据混淆方法及相关设备,能够提高交易数据的保密性,实现交易的匿名,同时,还能够实现交易数据的监管。In view of the above, it is necessary to provide a blockchain-based transaction data obfuscation method and related equipment, which can improve the confidentiality of transaction data, realize the anonymity of transactions, and at the same time, realize the supervision of transaction data.
本发明的第一方面提供一种基于区块链的交易数据混淆方法,应用于混淆服务提供商节点设备,所述方法包括:The first aspect of the present invention provides a blockchain-based transaction data obfuscation method, which is applied to obfuscate service provider node equipment, and the method includes:
接收供应商节点设备针对目标机密交易发送的混淆请求,所述混淆请求携带有目标随机数;Receiving an obfuscation request sent by a supplier node device for a target confidential transaction, where the obfuscation request carries the target random number;
使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易;Use the target random number to confuse the target confidential transaction to obtain a confused transaction;
从监管机构节点设备获取随机映射参数以及签名后的第一挑战参数;Obtain random mapping parameters and signed first challenge parameters from the node device of the regulatory agency;
生成多个第一随机数,并根据所述多个第一随机数以及所述第一挑战参数,计算第二挑战参数,以及根据所述第二挑战参数计算第三挑战参数;Generating a plurality of first random numbers, calculating a second challenge parameter according to the plurality of first random numbers and the first challenge parameter, and calculating a third challenge parameter according to the second challenge parameter;
计算第一中间变量和第二中间变量;Calculate the first intermediate variable and the second intermediate variable;
根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量, 进行乘积证明;Perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable;
根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明;Performing a power proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable;
输出所述混淆交易、所述乘积证明的结果以及所述乘幂证明的结果。Output the result of the confusing transaction, the result of the product proof, and the result of the power proof.
在一种可能的实现方式中,所述使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易包括:In a possible implementation manner, the using the target random number to obfuscate the target confidential transaction, and obtaining the obfuscated transaction includes:
利用如下公式,使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易,所述公式为:Use the following formula to obfuscate the target confidential transaction using the target random number to obtain a confused transaction. The formula is:
Figure PCTCN2020076974-appb-000001
Figure PCTCN2020076974-appb-000001
其中,所述C′ i为所述混淆交易,C π(i)为所述目标机密交易,h为系统参数,r为所述目标随机数。 Wherein, the C′ i is the obfuscated transaction, C π(i) is the target confidential transaction, h is a system parameter, and r is the target random number.
在一种可能的实现方式中,所述第二挑战参数y=Hash(C B1||…||C Bu),其中,
Figure PCTCN2020076974-appb-000002
Figure PCTCN2020076974-appb-000003
g 1,g 2,…,g v,h均为系统参数,{s 1,…,s u}为u个所述第一随机数,x为所述第一挑战参数,π(i)为所述随机映射参数,π(i)的范围为[1,k],C Bi为第三中间变量。
In a possible implementation manner, the second challenge parameter y=Hash(C B1 ||...||C Bu ), where,
Figure PCTCN2020076974-appb-000002
Figure PCTCN2020076974-appb-000003
g 1 , g 2 ,..., g v , h are all system parameters, {s 1 ,..., s u } are the u first random numbers, x is the first challenge parameter, and π(i) is For the random mapping parameter, the range of π(i) is [1, k], and C Bi is the third intermediate variable.
在一种可能的实现方式中,所述第三挑战参数z=Hash(C B1||…||C Bu||y),所述第一中间变量
Figure PCTCN2020076974-appb-000004
其中,
Figure PCTCN2020076974-appb-000005
所述第二中间变量
Figure PCTCN2020076974-appb-000006
其中,ρ i为第二随机数。
In a possible implementation manner, the third challenge parameter z=Hash(C B1 ||...||C Bu ||y), the first intermediate variable
Figure PCTCN2020076974-appb-000004
among them,
Figure PCTCN2020076974-appb-000005
The second intermediate variable
Figure PCTCN2020076974-appb-000006
Among them, ρ i is the second random number.
在一种可能的实现方式中,所述根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明包括:In a possible implementation manner, the performing product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable includes:
利用乘积证明公式,根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明,所述乘积证明公式如下:The product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
Figure PCTCN2020076974-appb-000007
Figure PCTCN2020076974-appb-000007
在一种可能的实现方式中,所述根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明包括:In a possible implementation manner, the performing a power proof based on the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable includes:
利用乘幂证明公式,根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明,其中,所述乘幂证明公式如下:Using the power proof formula, the power proof is performed according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, wherein the power proof formula is as follows:
Figure PCTCN2020076974-appb-000008
Figure PCTCN2020076974-appb-000008
其中,所述
Figure PCTCN2020076974-appb-000009
为所述目标机密交易,
Figure PCTCN2020076974-appb-000010
为所述混淆交易。
Among them, the
Figure PCTCN2020076974-appb-000009
Is the target confidential transaction,
Figure PCTCN2020076974-appb-000010
For the said obfuscated transaction.
本发明的第二方面提供一种基于区块链的交易数据混淆方法,应用于监管机构节点设备,所述方法包括:The second aspect of the present invention provides a blockchain-based transaction data obfuscation method, which is applied to a node device of a regulatory agency, and the method includes:
生成随机映射参数;Generate random mapping parameters;
根据所述随机映射参数,计算第一挑战参数;Calculating the first challenge parameter according to the random mapping parameter;
使用私钥对所述第一挑战参数进行签名;Use the private key to sign the first challenge parameter;
将签名后的第一挑战参数以及所述随机映射参数发送至混淆服务提供商节点设备,以使得所述混淆服务提供商节点设备根据所述签名后的第一挑战参数以及所述随机映射参数对目标机密交易进行可监管的混淆证明。The signed first challenge parameter and the random mapping parameter are sent to the obfuscated service provider node device, so that the obfuscated service provider node device can use the signed first challenge parameter and the random mapping parameter pair The target confidential transaction performs a supervisable proof of confusion.
在一种可能的实现方式中,所述方法还包括:In a possible implementation manner, the method further includes:
保存所述签名后的第一挑战参数以及所述随机映射参数;Saving the signed first challenge parameter and the random mapping parameter;
获取供应商节点设备发送的目标机密交易,并使用所述签名后的第一挑战参数以及所述随机映射参数对所述目标机密交易进行监管。Obtain the target confidential transaction sent by the supplier node device, and use the signed first challenge parameter and the random mapping parameter to supervise the target confidential transaction.
本发明的第三方面提供一种区块链节点设备,所述区块链节点设备包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的区块链交易数据证明监管方法的下载程序,所述区块链交易数据证明监管方法的下载程序被所述处理器执行时实现所述的基于区块链的交易数据混淆方法。A third aspect of the present invention provides a blockchain node device, the blockchain node device includes a memory and a processor, the memory stores blockchain transaction data that can run on the processor to prove supervision The downloading program of the method, when the downloading program of the blockchain transaction data certification supervision method is executed by the processor, realizes the transaction data obfuscation method based on the blockchain.
本发明的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有区块链交易数据证明监管方法的下载程序,所述区块链交易数据证明监管方法的下载程序可被一个或者多个处理器执行以实现所述的基于区块链的交易数据混淆方法。A fourth aspect of the present invention provides a computer-readable storage medium, the computer-readable storage medium stores a download program for the blockchain transaction data certification and supervision method, and the download program for the blockchain transaction data certification and supervision method It can be executed by one or more processors to implement the blockchain-based transaction data obfuscation method.
在上述技术方案中,目标机密交易是加密后的交易,只有交易双方能够解密目标机密交易中的金额,保护了交易隐私不被泄露,同时,通过对目标机密交易进行混淆,获得与所述目标机密交易等值的混淆交易,实现了交易的匿名,同时,从监管机构节点设备获取需要的参数,便于监管方后续对上链的交易数据进行监管。In the above technical solution, the target confidential transaction is an encrypted transaction. Only both parties to the transaction can decrypt the amount in the target confidential transaction, which protects the transaction privacy from being leaked. At the same time, by obfuscating the target confidential transaction, the target confidential transaction can be confused with the target. The obfuscated transaction equivalent to the confidential transaction realizes the anonymity of the transaction. At the same time, the required parameters are obtained from the node device of the supervisory authority, which is convenient for the supervisor to supervise the transaction data on the chain.
附图说明Description of the drawings
图1是本发明公开的一种基于区块链的交易数据混淆方法的较佳实施例的流程图。FIG. 1 is a flowchart of a preferred embodiment of a method for obfuscation of transaction data based on blockchain disclosed in the present invention.
图2是本发明公开的另一种基于区块链的交易数据混淆方法的较佳实施例的流程图。Fig. 2 is a flowchart of another preferred embodiment of a block chain-based transaction data obfuscation method disclosed in the present invention.
图3是本发明公开的一种交易数据混淆装置的较佳实施例的功能模块图。Fig. 3 is a functional block diagram of a preferred embodiment of a transaction data obfuscation device disclosed in the present invention.
图4是本发明公开的另一种交易数据混淆装置的较佳实施例的功能模块图。Fig. 4 is a functional module diagram of another preferred embodiment of a transaction data obfuscation device disclosed in the present invention.
图5是本发明实现基于区块链的交易数据混淆方法的较佳实施例的区块链节点设备的结构示意图。FIG. 5 is a schematic structural diagram of a blockchain node device according to a preferred embodiment of the method for obfuscation of transaction data based on the blockchain according to the present invention.
具体实施方式Detailed ways
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make the objectives, technical solutions, and advantages of the present invention clearer, the following further describes the present invention in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present invention, but not used to limit the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative work shall fall within the protection scope of the present invention.
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”是用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。The terms "first" and "second" in the description and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific sequence or sequence, nor can they be understood as instructions or Imply its relative importance or implicitly indicate the number of technical features indicated. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments described herein can be implemented in an order other than the content illustrated or described here, and the features defined as "first" and "second" can be At least one of this feature is explicitly or implicitly included.
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。In addition, the terms "including" and "having" and any variations of them are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or device that includes a series of steps or units is not necessarily limited to those clearly listed. Those steps or units may include other steps or units that are not clearly listed or are inherent to these processes, methods, products, or equipment.
另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。In addition, the technical solutions between the various embodiments can be combined with each other, but it must be based on what can be achieved by a person of ordinary skill in the art. When the combination of technical solutions is contradictory or cannot be achieved, it should be considered that such a combination of technical solutions does not exist. , Is not within the protection scope of the present invention.
请参见图1,图1是本发明公开的一种基于区块链的交易数据混淆方法的较佳实施例的流程图。Please refer to FIG. 1. FIG. 1 is a flowchart of a preferred embodiment of a method for obfuscation of transaction data based on blockchain disclosed in the present invention.
其中,所述基于区块链的交易数据混淆方法应用于混淆服务提供商节点设备中,所述基于区块链的交易数据混淆方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。Wherein, the block chain-based transaction data obfuscation method is applied to obfuscate the service provider node equipment, and the block chain-based transaction data obfuscation method specifically includes the following steps. According to different needs, the steps in the flowchart The order can be changed, and some steps can be omitted.
S11、接收供应商节点设备针对目标机密交易发送的混淆请求。S11. Receive the obfuscation request sent by the supplier node device for the target confidential transaction.
其中,所述混淆请求携带有目标随机数,所述目标随机数用于对区块链上原始的交易进行混淆。其中,所述目标机密交易可以是一个也可以是多个。Wherein, the obfuscation request carries a target random number, and the target random number is used to obfuscate the original transaction on the blockchain. Wherein, the target confidential transaction may be one or multiple.
供应商节点设备在发送混淆请求之前,需要预先进行一系列的操作。The supplier node device needs to perform a series of operations in advance before sending the obfuscation request.
举例来说,假设所述目标机密交易
Figure PCTCN2020076974-appb-000011
所述供应商节点设备发送交易
Figure PCTCN2020076974-appb-000012
Figure PCTCN2020076974-appb-000013
上链,附带Gas,其中,g、h均为系统参数,x 1为交易金额,r 1为随机数,Gas代表了该交易可以进行混淆的次数。
For example, suppose the target confidential transaction
Figure PCTCN2020076974-appb-000011
The supplier node device sends a transaction
Figure PCTCN2020076974-appb-000012
Figure PCTCN2020076974-appb-000013
On the chain, with Gas, where g and h are system parameters, x 1 is the transaction amount, r 1 is a random number, and Gas represents the number of times the transaction can be confused.
首先,所述供应商节点设备选择目标随机数r 2,并计算混淆之后的结果
Figure PCTCN2020076974-appb-000014
Figure PCTCN2020076974-appb-000015
以及混淆之后的Gas’,Gas’具体值取决于系统具体参数的设置,假设Gas的初始值为3,每次混淆减1。所述供应商节点设备计算hash 1=Hash(C′ 1||Gas′),并将hash 1映射到
Figure PCTCN2020076974-appb-000016
Figure PCTCN2020076974-appb-000017
其中,
Figure PCTCN2020076974-appb-000018
为交易金额的取值范围,
Figure PCTCN2020076974-appb-000019
为交易金额,并计算
Figure PCTCN2020076974-appb-000020
Figure PCTCN2020076974-appb-000021
Figure PCTCN2020076974-appb-000022
并提供证明:Chaum-Pedersen(C′ 1,C Hash),
Figure PCTCN2020076974-appb-000023
其中,C Hash为中间变量,Chaum-Pedersen(C′ 1,C Hash)证明所述供应商节点设备可以揭露C′ 1,也就意味着所述供应商节点设备是所述目标机密交易的拥有者;
Figure PCTCN2020076974-appb-000024
Figure PCTCN2020076974-appb-000025
证明了该轮混淆之后的Gas是能够被所述供应商节点设备接受的正确Gas值。
First, the supplier node device selects the target random number r 2 and calculates the result after confusion
Figure PCTCN2020076974-appb-000014
Figure PCTCN2020076974-appb-000015
And after the confusion, the specific value of Gas' and Gas' depends on the setting of the specific parameters of the system. Assuming that the initial value of Gas is 3, it will be reduced by 1 each time it is confused. The supplier node device calculates hash 1 = Hash(C′ 1 ||Gas′), and maps hash 1 to
Figure PCTCN2020076974-appb-000016
for
Figure PCTCN2020076974-appb-000017
among them,
Figure PCTCN2020076974-appb-000018
Is the value range of the transaction amount,
Figure PCTCN2020076974-appb-000019
Is the transaction amount, and calculate
Figure PCTCN2020076974-appb-000020
Figure PCTCN2020076974-appb-000021
Figure PCTCN2020076974-appb-000022
And provide proof: Chaum-Pedersen(C′ 1 ,C Hash ),
Figure PCTCN2020076974-appb-000023
Among them, C Hash is an intermediate variable, and Chaum-Pedersen (C′ 1 , C Hash ) proves that the supplier node device can expose C′ 1 , which means that the supplier node device is the owner of the target confidential transaction By;
Figure PCTCN2020076974-appb-000024
Figure PCTCN2020076974-appb-000025
It is proved that the Gas after this round of confusion is the correct Gas value that can be accepted by the supplier's node equipment.
之后,所述供应商节点设备即可将携带有
Figure PCTCN2020076974-appb-000026
Figure PCTCN2020076974-appb-000027
的混淆请求发送给所述混淆服务提供商节点设备,以触发所述混淆服务提供商节点设备对所述目标机密交易进行混淆。
After that, the supplier node device can carry
Figure PCTCN2020076974-appb-000026
Figure PCTCN2020076974-appb-000027
The obfuscation request of is sent to the obfuscated service provider node device to trigger the obfuscated service provider node device to obfuscate the target confidential transaction.
其中,Chaum-Pedersen证明属于现有技术,在此不再赘述。Among them, Chaum-Pedersen proves to belong to the prior art, so I won't repeat it here.
S12、使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易。S12. Use the target random number to obfuscate the target confidential transaction to obtain a confused transaction.
具体的,所述使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易包括:Specifically, the use of the target random number to obfuscate the target confidential transaction to obtain the obfuscated transaction includes:
利用如下公式,使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易,所述公式为:Use the following formula to obfuscate the target confidential transaction using the target random number to obtain a confused transaction. The formula is:
C′ i=h rC π(i) C′ i = h r C π(i)
其中,所述C′ i为所述混淆交易,C π(i)为所述目标机密交易,h为系统参数,r为所述目标随机数,π(i)为[1,k]范围内的随机映射参数。 Wherein, the C′ i is the obfuscated transaction, C π(i) is the target confidential transaction, h is the system parameter, r is the target random number, and π(i) is within the range of [1,k] The random mapping parameters.
其中,所述目标机密交易与所述混淆交易等值。Wherein, the target confidential transaction is equivalent to the obfuscated transaction.
S13、从监管机构节点设备获取随机映射参数以及签名后的第一挑战参数。S13. Obtain the random mapping parameter and the signed first challenge parameter from the regulatory agency node device.
其中,混淆服务提供商节点设备计算出混淆交易后,还需要进行混淆证明。Among them, after the obfuscated service provider node device calculates the obfuscated transaction, it also needs to perform obfuscation proof.
为了便于监管方对交易的监管,可以预先从监管机构节点设备中获取随机映射参数以及签名后的第一挑战参数,其中,所述随机映射参数π(i)属于为[1,k]范围内,{π(1),π(2),…,π(k)}是{1,2,…,k}的重新排列。In order to facilitate the supervision of the transaction by the supervisor, the random mapping parameter and the signed first challenge parameter can be obtained in advance from the node device of the supervisory authority, where the random mapping parameter π(i) falls within the range of [1, k] , {Π(1),π(2),...,π(k)} is a rearrangement of {1,2,...,k}.
其中,所述第一挑战参数x=Hash(C A1||…||C Au),
Figure PCTCN2020076974-appb-000028
g 1,g 2,…,g v,h均为系统参数,{r A1,…,r Au}为u个随机变量。
Wherein, the first challenge parameter x=Hash(C A1 ||...||C Au ),
Figure PCTCN2020076974-appb-000028
g 1 , g 2 ,..., g v , h are all system parameters, and {r A1 ,..., r Au } are u random variables.
监管机构节点设备在生成所述第一挑战参数x之后,即可使用私钥对所述第一挑战参数x进行签名,并发送给混淆服务提供商节点设备。After the regulatory agency node device generates the first challenge parameter x, it can use the private key to sign the first challenge parameter x and send it to the obfuscated service provider node device.
S14、生成多个第一随机数,并根据所述多个第一随机数以及所述第一挑战参数,计算第二挑战参数,以及根据所述第二挑战参数计算第三挑战参数。S14. Generate a plurality of first random numbers, calculate a second challenge parameter according to the plurality of first random numbers and the first challenge parameter, and calculate a third challenge parameter according to the second challenge parameter.
其中,所述第二挑战参数y=Hash(C B1||…||C Bu),其中,
Figure PCTCN2020076974-appb-000029
Figure PCTCN2020076974-appb-000030
g 1,g 2,…,g v,h均为系统参数,{s 1,…,s u}为u个所述第一随机数,x为所述第一挑战参数,π(i)为所述随机映射参数,π(i)的范围为[1,k],C Bi为第三中间变量。
Wherein, the second challenge parameter y=Hash(C B1 ||...||C Bu ), where,
Figure PCTCN2020076974-appb-000029
Figure PCTCN2020076974-appb-000030
g 1 , g 2 ,..., g v , h are all system parameters, {s 1 ,..., s u } are the u first random numbers, x is the first challenge parameter, and π(i) is For the random mapping parameter, the range of π(i) is [1, k], and C Bi is the third intermediate variable.
其中,所述第三挑战参数z=Hash(C B1||…||C Bu||y),所述第一中间变量
Figure PCTCN2020076974-appb-000031
其中,
Figure PCTCN2020076974-appb-000032
所述第二中间变量
Figure PCTCN2020076974-appb-000033
其中,ρ i为第二随机数。
Wherein, the third challenge parameter z=Hash(C B1 ||...||C Bu ||y), the first intermediate variable
Figure PCTCN2020076974-appb-000031
among them,
Figure PCTCN2020076974-appb-000032
The second intermediate variable
Figure PCTCN2020076974-appb-000033
Among them, ρ i is the second random number.
S15、计算第一中间变量和第二中间变量。S15. Calculate the first intermediate variable and the second intermediate variable.
其中,所述第一中间变量为
Figure PCTCN2020076974-appb-000034
所述第二中间变量为
Figure PCTCN2020076974-appb-000035
Wherein, the first intermediate variable is
Figure PCTCN2020076974-appb-000034
The second intermediate variable is
Figure PCTCN2020076974-appb-000035
其中,ρ i为所述混淆服务提供商节点设备自己生成的随机数。 Wherein, ρ i is a random number generated by the obfuscated service provider node device itself.
S16、根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明。S16. Perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable.
具体的,所述根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明包括:Specifically, the performing product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable includes:
利用乘积证明公式,根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明,所述乘积证明公式如下:The product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
Figure PCTCN2020076974-appb-000036
Figure PCTCN2020076974-appb-000036
其中,乘积证明的具体证明方法中还可以利用其它的中间变量,乘积证明的具体方法属于现有技术,在此不再赘述。上述乘积证明可以用于证明混淆服务提供商节点设备找到了一个随机的混淆π(i),证明混淆前后的顺序被打乱。Among them, other intermediate variables can also be used in the specific proof method of the product proof, and the specific method of the product proof belongs to the existing technology, and will not be repeated here. The above product proof can be used to prove that the obfuscated service provider node device has found a random obfuscation π(i), and prove that the order before and after the obfuscation is disturbed.
S17、根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明。S17. Perform a power proof based on the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable.
具体的,所述根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明包括:Specifically, the performing the exponentiation proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable includes:
利用乘幂证明公式,根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明,其中,所述乘幂证明公式如下:Using the power proof formula, the power proof is performed according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, wherein the power proof formula is as follows:
Figure PCTCN2020076974-appb-000037
Figure PCTCN2020076974-appb-000037
其中,所述
Figure PCTCN2020076974-appb-000038
为所述目标机密交易,
Figure PCTCN2020076974-appb-000039
为所述混淆交易。
Among them, the
Figure PCTCN2020076974-appb-000038
Is the target confidential transaction,
Figure PCTCN2020076974-appb-000039
For the said obfuscated transaction.
其中,乘幂证明的具体证明方法中还可以利用其它的中间变量,乘幂证明的具体方法属于现有技术,在此不再赘述。上述乘幂证明可以用于证明乘幂证明中的π(i)与乘积证明中使用的π(i)是同一个π(i),即证明了混淆的方法是相同的。Among them, other intermediate variables can also be used in the specific proof method of the power proof, and the specific method of the power proof belongs to the existing technology, and will not be repeated here. The above proof of power can be used to prove that the π(i) in the power proof and the π(i) used in the product proof are the same π(i), which proves that the method of confusion is the same.
其中,由于随机映射参数以及签名后的第一挑战参数是从监管机构节点设备中获取的,使用监管机构节点设备中获取的随机映射参数以及签名后的第一挑战参数来进行可证明混淆的算法可以称为可监管的可证明混淆算法(Verifiable shuffle with multi-regulators)。后续监管机构节点设备可以利用自己保存的随机映射参数以及签名后的第一挑战参数来对需要混淆的交易进行混淆追踪及监管。Among them, since the random mapping parameters and the signed first challenge parameter are obtained from the regulatory agency node device, the random mapping parameter obtained from the regulatory agency node device and the signed first challenge parameter are used to perform a provable confusion algorithm It can be called a verifiable shuffle with multi-regulators. Subsequent regulatory agency node devices can use their own stored random mapping parameters and signed first challenge parameters to track and supervise the transactions that need to be confused.
S18、输出所述混淆交易、所述乘积证明的结果以及所述乘幂证明的结果。S18. Output the confusion transaction, the result of the product proof, and the result of the power proof.
可选的,还可以输出上述供应商节点设备提供的相关参数及证明,比如输出
Figure PCTCN2020076974-appb-000040
Optionally, it can also output the relevant parameters and certifications provided by the above-mentioned supplier node equipment, such as output
Figure PCTCN2020076974-appb-000040
在图1所描述的方法流程中,目标机密交易是加密后的交易,只有交易双方能够解密目标机密交易中的金额,保护了交易隐私不被泄露,同时,通过对目标机密交易进行混淆,获得与所述目标机密交易等值的混淆交易,实现了交易的匿名,同时,从监管机构节点设备获取需要的参数,便于监管方后续对上链的交易数据进行监管。In the method flow described in Figure 1, the target confidential transaction is an encrypted transaction. Only both parties to the transaction can decrypt the amount in the target confidential transaction, which protects transaction privacy from being leaked. At the same time, the target confidential transaction is obfuscated. The obfuscated transaction equivalent to the target confidential transaction realizes the anonymity of the transaction. At the same time, the required parameters are obtained from the node device of the supervisory authority, so that the supervisor can subsequently supervise the transaction data on the chain.
请参见图2,图2是本发明公开的另一种基于区块链的交易数据混淆方法的较佳实施例的流程图。Please refer to FIG. 2, which is a flowchart of another preferred embodiment of a block chain-based transaction data obfuscation method disclosed in the present invention.
其中,所述基于区块链的交易数据混淆方法应用于监管机构节点设备中,所述基于区块链的交易数据混淆方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。Wherein, the block chain-based transaction data obfuscation method is applied to the node equipment of the regulatory agency, and the block chain-based transaction data obfuscation method specifically includes the following steps. According to different needs, the order of the steps in the flowchart can be Change, some steps can be omitted.
S21、生成随机映射参数。S21: Generate random mapping parameters.
其中,监管机构节点设备可以随机选择随机映射参数π(i),其中,所述随机映射参数π(i)属于为[1,k]范围内,{π(1),π(2),…,π(k)}是{1,2,…,k}的重新排列。Among them, the regulatory agency node device can randomly select a random mapping parameter π(i), where the random mapping parameter π(i) belongs to the range of [1, k], {π(1), π(2),... ,π(k)} is the rearrangement of {1,2,...,k}.
S22、根据所述随机映射参数,计算第一挑战参数。S22. Calculate a first challenge parameter according to the random mapping parameter.
监管机构节点设备可以根据所述随机映射参数,计算第一挑战参数。The regulatory agency node device may calculate the first challenge parameter according to the random mapping parameter.
具体的,可以计算
Figure PCTCN2020076974-appb-000041
x=Hash(C A1||…||C Au),
Specifically, it can be calculated
Figure PCTCN2020076974-appb-000041
x=Hash(C A1 ||...||C Au ),
其中,g 1,g 2,…,g v,h均为系统参数,{r A1,…,r Au}为u个随机变量,x为所述第一挑战参数。 Among them, g 1 , g 2 ,..., g v , h are all system parameters, {r A1 ,..., r Au } are u random variables, and x is the first challenge parameter.
S23、使用私钥对所述第一挑战参数进行签名。S23. Use the private key to sign the first challenge parameter.
监管机构节点设备可以使用私钥对所述第一挑战参数进行签名,并将签名保存在本地。The supervisory authority node device may use the private key to sign the first challenge parameter, and save the signature locally.
S24、将签名后的第一挑战参数以及所述随机映射参数发送至混淆服务提供商节点设备,以使得所述混淆服务提供商节点设备根据所述签名后的第一挑战参数以及所述随机映射参数对目标机密交易进行可监管的混淆证明。S24. Send the signed first challenge parameter and the random mapping parameter to the obfuscated service provider node device, so that the obfuscated service provider node device can use the signed first challenge parameter and the random mapping The parameters provide a supervisable proof of confusion for the target confidential transaction.
其中,监管机构节点设备在生成所述随机映射参数以及签名后的第一挑战参数之后,即可将签名后的第一挑战参数以及所述随机映射参数发送至混淆服务提供商节点设备。这样,所述混淆服务提供商节点设备即可根据所述签名后的第一挑战参数以及所述随机映射参数,利用上文实施例一所述的可监管的可证明混淆算法来对目标机密交易进行可监管的混淆证明。其中,目标机密交易为需要进行混淆且加密后的机密交易。Wherein, the regulatory agency node device may send the signed first challenge parameter and the random mapping parameter to the obfuscated service provider node device after generating the random mapping parameter and the signed first challenge parameter. In this way, the obfuscation service provider node device can use the supervisable and provable obfuscation algorithm described in Embodiment 1 above to perform confidential transactions on the target according to the first challenge parameter after the signature and the random mapping parameter. Make a supervisable proof of confusion. Among them, the target confidential transaction is a confidential transaction that needs to be obfuscated and encrypted.
可选的,所述方法还包括:Optionally, the method further includes:
保存所述签名后的第一挑战参数以及所述随机映射参数;Saving the signed first challenge parameter and the random mapping parameter;
获取供应商节点设备发送的目标机密交易,并使用所述签名后的第一挑战参数以及所述随机映射参数对所述目标机密交易进行监管。Obtain the target confidential transaction sent by the supplier node device, and use the signed first challenge parameter and the random mapping parameter to supervise the target confidential transaction.
在该实施例中,监管机构节点设备可以保存所述签名后的第一挑战参数以及所述随机映射参数,当在区块链上获取到供应商节点设备发送的目标机密交易时,可以使用所述签名后的第一挑战参数以及所述随机映射参数对所述目标机密交易进行解密、监管以及追踪交易的混淆。In this embodiment, the regulatory agency node device can save the signed first challenge parameter and the random mapping parameter, and when the target confidential transaction sent by the supplier node device is obtained on the blockchain, it can use all The signed first challenge parameter and the random mapping parameter decrypt, supervise and track the confusion of the target confidential transaction.
在图2所描述的方法流程中,由于混淆服务提供商节点设备进行混淆证明的随机映射参数和第一挑战参数是从监管机构节点设备中获取得到的,因此,监管机构节点设备可以利用自己生成并保存的随机映射参数以及签名后的第一挑战参数对区块链上的交易进行监管,同时,追踪交易的混淆。In the method flow described in Figure 2, since the random mapping parameter and the first challenge parameter for the obfuscation proof of the obfuscated service provider node equipment are obtained from the supervisory authority node equipment, the supervisory authority node equipment can generate by itself The stored random mapping parameters and the first challenge parameter after signing supervise transactions on the blockchain, and at the same time, track the confusion of transactions.
以上所述,仅是本发明的具体实施方式,但本发明的保护范围并不局限于此,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出改进,但这些均属于本发明的保护范围。The above are only specific embodiments of the present invention, but the scope of protection of the present invention is not limited to this. For those of ordinary skill in the art, without departing from the inventive concept of the present invention, they can also make Improvements, but these all belong to the protection scope of the present invention.
请参见图3,图3是本发明公开的一种交易数据混淆装置的较佳实施例的功能模块 图。Please refer to Fig. 3, which is a functional block diagram of a preferred embodiment of a transaction data obfuscation device disclosed in the present invention.
在一些实施例中,所述交易数据混淆装置运行于混淆服务提供商节点设备中。所述交易数据混淆装置可以包括多个由程序代码段所组成的功能模块。所述交易数据混淆装置中的各个程序段的程序代码可以存储于存储器中,并由至少一个处理器所执行,以执行图1所描述的基于区块链的交易数据混淆方法中的部分或全部步骤。In some embodiments, the transaction data obfuscation device runs in obfuscated service provider node equipment. The transaction data obfuscation device may include multiple functional modules composed of program code segments. The program code of each program segment in the transaction data obfuscation device can be stored in a memory and executed by at least one processor to execute part or all of the block chain-based transaction data obfuscation method described in FIG. 1 step.
本实施例中,所述交易数据混淆装置根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:接收模块301、混淆模块302、获取模块303、计算模块304、证明模块305及输出模块306。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。In this embodiment, the transaction data obfuscation device can be divided into multiple functional modules according to the functions it performs. The functional modules may include: a receiving module 301, a confusion module 302, an acquisition module 303, a calculation module 304, a certification module 305, and an output module 306. The module referred to in the present invention refers to a series of computer program segments that can be executed by at least one processor and can complete fixed functions, and are stored in a memory.
接收模块301,用于接收供应商节点设备针对目标机密交易发送的混淆请求,所述混淆请求携带有目标随机数。The receiving module 301 is configured to receive an obfuscation request sent by the supplier node device for the target confidential transaction, where the obfuscation request carries the target random number.
其中,所述混淆请求携带有目标随机数,所述目标随机数用于对区块链上原始的交易进行混淆。其中,所述目标机密交易可以是一个也可以是多个。Wherein, the obfuscation request carries a target random number, and the target random number is used to obfuscate the original transaction on the blockchain. Wherein, the target confidential transaction may be one or multiple.
供应商节点设备在发送混淆请求之前,需要预先进行一系列的操作。The supplier node device needs to perform a series of operations in advance before sending the obfuscation request.
举例来说,假设所述目标机密交易
Figure PCTCN2020076974-appb-000042
所述供应商节点设备发送交易
Figure PCTCN2020076974-appb-000043
Figure PCTCN2020076974-appb-000044
上链,附带Gas,其中,g、h均为系统参数,x 1为交易金额,r 1为随机数,Gas代表了该交易可以进行混淆的次数。
For example, suppose the target confidential transaction
Figure PCTCN2020076974-appb-000042
The supplier node device sends a transaction
Figure PCTCN2020076974-appb-000043
Figure PCTCN2020076974-appb-000044
On the chain, with Gas, where g and h are system parameters, x 1 is the transaction amount, r 1 is a random number, and Gas represents the number of times the transaction can be confused.
首先,所述供应商节点设备选择目标随机数r 2,并计算混淆之后的结果
Figure PCTCN2020076974-appb-000045
Figure PCTCN2020076974-appb-000046
以及混淆之后的Gas’,Gas’具体值取决于系统具体参数的设置,假设Gas的初始值为3,每次混淆减1。所述供应商节点设备计算hash 1=Hash(C′ 1||Gas′),并将hash 1映射到
Figure PCTCN2020076974-appb-000047
Figure PCTCN2020076974-appb-000048
其中,
Figure PCTCN2020076974-appb-000049
为交易金额的取值范围,
Figure PCTCN2020076974-appb-000050
为交易金额,并计算
Figure PCTCN2020076974-appb-000051
Figure PCTCN2020076974-appb-000052
Figure PCTCN2020076974-appb-000053
并提供证明:Chaum-Pedersen(C′ 1,C Hash),
Figure PCTCN2020076974-appb-000054
其中,C Hash为中间变量,Chaum-Pedersen(C′ 1,C Hash)证明所述供应商节点设备可以揭露C′ 1,也就意味着所述供应商节点设备是所述目标机密交易的拥有者;
Figure PCTCN2020076974-appb-000055
Figure PCTCN2020076974-appb-000056
证明了该轮混淆之后的Gas是能够被所述供应商节点设备接受的正确Gas值。
First, the supplier node device selects the target random number r 2 and calculates the result after confusion
Figure PCTCN2020076974-appb-000045
Figure PCTCN2020076974-appb-000046
And after the confusion, the specific value of Gas' and Gas' depends on the setting of the specific parameters of the system. Assuming that the initial value of Gas is 3, it will be reduced by 1 each time it is confused. The supplier node device calculates hash 1 = Hash(C′ 1 ||Gas′), and maps hash 1 to
Figure PCTCN2020076974-appb-000047
for
Figure PCTCN2020076974-appb-000048
among them,
Figure PCTCN2020076974-appb-000049
Is the value range of the transaction amount,
Figure PCTCN2020076974-appb-000050
Is the transaction amount, and calculate
Figure PCTCN2020076974-appb-000051
Figure PCTCN2020076974-appb-000052
Figure PCTCN2020076974-appb-000053
And provide proof: Chaum-Pedersen(C′ 1 ,C Hash ),
Figure PCTCN2020076974-appb-000054
Among them, C Hash is an intermediate variable, and Chaum-Pedersen (C′ 1 , C Hash ) proves that the supplier node device can expose C′ 1 , which means that the supplier node device is the owner of the target confidential transaction By;
Figure PCTCN2020076974-appb-000055
Figure PCTCN2020076974-appb-000056
It is proved that the Gas after this round of confusion is the correct Gas value that can be accepted by the supplier's node equipment.
之后,所述供应商节点设备即可将携带有
Figure PCTCN2020076974-appb-000057
Figure PCTCN2020076974-appb-000058
的混淆请求发送给所述混淆服务提供商节点设备,以触发所述混淆服务提供商节点设备对所述目标机密交易进行混淆。
After that, the supplier node device can carry
Figure PCTCN2020076974-appb-000057
Figure PCTCN2020076974-appb-000058
The obfuscation request of is sent to the obfuscated service provider node device to trigger the obfuscated service provider node device to obfuscate the target confidential transaction.
其中,Chaum-Pedersen证明属于现有技术,在此不再赘述。Among them, Chaum-Pedersen proves to belong to the prior art, so I won't repeat it here.
混淆模块302,用于使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易。The obfuscation module 302 is configured to obfuscate the target confidential transaction by using the target random number to obtain an obfuscated transaction.
具体的,所述混淆模块302使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易包括:Specifically, the obfuscation module 302 uses the target random number to obfuscate the target confidential transaction, and obtaining the obfuscated transaction includes:
利用如下公式,使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易,所述公式为:Use the following formula to obfuscate the target confidential transaction using the target random number to obtain a confused transaction. The formula is:
C′ i=h rC π(i) C′ i = h r C π(i)
其中,所述C′ i为所述混淆交易,C π(i)为所述目标机密交易,h为系统参数,r为所述目标随机数。 Wherein, the C′ i is the obfuscated transaction, C π(i) is the target confidential transaction, h is a system parameter, and r is the target random number.
其中,所述目标机密交易与所述混淆交易等值。Wherein, the target confidential transaction is equivalent to the obfuscated transaction.
获取模块303,用于从监管机构节点设备中获取随机映射参数以及签名后的第一挑战参数。The obtaining module 303 is configured to obtain the random mapping parameter and the signed first challenge parameter from the regulatory agency node device.
其中,混淆服务提供商节点设备计算出混淆交易后,还需要进行混淆证明。Among them, after the obfuscated service provider node device calculates the obfuscated transaction, it also needs to perform obfuscation proof.
为了便于监管方对交易的监管,可以预先从监管机构节点设备中获取随机映射参数以及签名后的第一挑战参数,其中,所述随机映射参数π(i)属于为[1,k]范围内,{π(1),π(2),…,π(k)}是{1,2,…,k}的重新排列。In order to facilitate the supervision of the transaction by the supervisor, the random mapping parameter and the signed first challenge parameter can be obtained in advance from the node device of the supervisory authority, where the random mapping parameter π(i) falls within the range of [1, k] , {Π(1),π(2),...,π(k)} is a rearrangement of {1,2,...,k}.
其中,所述第一挑战参数x=Hash(C A1||…||C Au),
Figure PCTCN2020076974-appb-000059
g 1,g 2,…,g v,h均为系统参数,{r A1,…,r Au}为u个随机变量。
Wherein, the first challenge parameter x=Hash(C A1 ||...||C Au ),
Figure PCTCN2020076974-appb-000059
g 1 , g 2 ,..., g v , h are all system parameters, and {r A1 ,..., r Au } are u random variables.
监管机构节点设备在生成所述第一挑战参数x之后,即可使用私钥对所述第一挑战参数x进行签名,并发送给混淆服务提供商节点设备。After the regulatory agency node device generates the first challenge parameter x, it can use the private key to sign the first challenge parameter x and send it to the obfuscated service provider node device.
计算模块304,用于生成多个第一随机数,并根据所述多个第一随机数以及所述第一挑战参数,计算第二挑战参数,以及根据所述第二挑战参数计算第三挑战参数。The calculation module 304 is configured to generate a plurality of first random numbers, calculate a second challenge parameter according to the plurality of first random numbers and the first challenge parameter, and calculate a third challenge according to the second challenge parameter parameter.
所述第二挑战参数y=Hash(C B1||…||C Bu),其中,
Figure PCTCN2020076974-appb-000060
g 1,g 2,…,g v,h均为系统参数,{s 1,…,s u}为u个所述第一随机数,x为所述第一挑战参数,π(i)为所述随机映射参数,π(i)的范围为[1,k],C Bi为第三中间变量。
The second challenge parameter y=Hash(C B1 ||...||C Bu ), where,
Figure PCTCN2020076974-appb-000060
g 1 , g 2 ,..., g v , h are all system parameters, {s 1 ,..., s u } are the u first random numbers, x is the first challenge parameter, and π(i) is For the random mapping parameter, the range of π(i) is [1, k], and C Bi is the third intermediate variable.
所述第三挑战参数z=Hash(C B1||…||C Bu||y),所述第一中间变量
Figure PCTCN2020076974-appb-000061
其中,
Figure PCTCN2020076974-appb-000062
所述第二中间变量
Figure PCTCN2020076974-appb-000063
其中,ρ i为第二随机数。
The third challenge parameter z=Hash(C B1 ||...||C Bu ||y), the first intermediate variable
Figure PCTCN2020076974-appb-000061
among them,
Figure PCTCN2020076974-appb-000062
The second intermediate variable
Figure PCTCN2020076974-appb-000063
Among them, ρ i is the second random number.
所述计算模块304,还用于计算第一中间变量和第二中间变量。The calculation module 304 is also used to calculate the first intermediate variable and the second intermediate variable.
其中,所述第一中间变量为
Figure PCTCN2020076974-appb-000064
所述第二中间变量为
Figure PCTCN2020076974-appb-000065
Wherein, the first intermediate variable is
Figure PCTCN2020076974-appb-000064
The second intermediate variable is
Figure PCTCN2020076974-appb-000065
其中,ρ i为所述混淆服务提供商节点设备自己生成的随机数。 Wherein, ρ i is a random number generated by the obfuscated service provider node device itself.
证明模块305,用于根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明。The proof module 305 is configured to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable.
具体的,所述证明模块305根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明包括:Specifically, the certification module 305 performs product certification according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, including:
利用乘积证明公式,根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明,所述乘积证明公式如下:The product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
Figure PCTCN2020076974-appb-000066
Figure PCTCN2020076974-appb-000066
其中,乘积证明的具体证明方法中还可以利用其它的中间变量,乘积证明的具体方法属于现有技术,在此不再赘述。上述乘积证明可以用于证明混淆服务提供商节点设备找到了一个随机的混淆π(i),证明混淆前后的顺序被打乱。Among them, other intermediate variables can also be used in the specific proof method of the product proof, and the specific method of the product proof belongs to the existing technology, and will not be repeated here. The above product proof can be used to prove that the obfuscated service provider node device has found a random obfuscation π(i), and prove that the order before and after the obfuscation is disturbed.
所述证明模块305,还用于根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明。The proof module 305 is further configured to perform exponentiation proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable.
具体的,所述证明模块305根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明包括:Specifically, the proof module 305 performs the exponentiation proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, including:
利用乘幂证明公式,根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明,其中,所述乘幂证明公式如下:Using the power proof formula, the power proof is performed according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, wherein the power proof formula is as follows:
Figure PCTCN2020076974-appb-000067
Figure PCTCN2020076974-appb-000067
其中,所述
Figure PCTCN2020076974-appb-000068
为所述目标机密交易,
Figure PCTCN2020076974-appb-000069
为所述混淆交易。
Among them, the
Figure PCTCN2020076974-appb-000068
Is the target confidential transaction,
Figure PCTCN2020076974-appb-000069
For the said obfuscated transaction.
其中,乘幂证明的具体证明方法中还可以利用其它的中间变量,乘幂证明的具体方法属于现有技术,在此不再赘述。上述乘幂证明可以用于证明乘幂证明中的π(i)与乘积证明中使用的π(i)是同一个π(i),即证明了混淆的方法是相同的。Among them, other intermediate variables can also be used in the specific proof method of the power proof, and the specific method of the power proof belongs to the existing technology, and will not be repeated here. The above proof of power can be used to prove that the π(i) in the power proof and the π(i) used in the product proof are the same π(i), which proves that the method of confusion is the same.
其中,由于随机映射参数以及签名后的第一挑战参数是从监管机构节点设备中获取的,使用监管机构节点设备中获取的随机映射参数以及签名后的第一挑战参数来进行可证明混淆的算法可以称为可监管的可证明混淆算法(Verifiable shuffle with multi-regulators)。后续监管机构节点设备可以利用自己保存的随机映射参数以及签名后的第一挑战参数来对需 要混淆的交易进行混淆追踪及监管。Among them, since the random mapping parameters and the signed first challenge parameter are obtained from the regulatory agency node device, the random mapping parameter obtained from the regulatory agency node device and the signed first challenge parameter are used to perform a provable confusion algorithm It can be called a verifiable shuffle with multi-regulators. Subsequent regulatory agency node devices can use their own saved random mapping parameters and signed first challenge parameters to track and supervise the transactions that need to be confused.
输出模块306,用于输出所述混淆交易、所述乘积证明的结果以及所述乘幂证明的结果。The output module 306 is configured to output the confusion transaction, the result of the product proof, and the result of the power proof.
可选的,还可以输出上述供应商节点设备提供的相关参数及证明,比如输出
Figure PCTCN2020076974-appb-000070
Optionally, it can also output the relevant parameters and certifications provided by the above-mentioned supplier node equipment, such as output
Figure PCTCN2020076974-appb-000070
在图3所描述的装置中,目标机密交易是加密后的交易,只有交易双方能够解密目标机密交易中的金额,保护了交易隐私不被泄露,同时,通过对目标机密交易进行混淆,获得与所述目标机密交易等值的混淆交易,实现了交易的匿名,同时,从监管机构节点设备获取需要的参数,便于监管方后续对上链的交易数据进行监管。In the device described in Figure 3, the target confidential transaction is an encrypted transaction. Only both parties to the transaction can decrypt the amount in the target confidential transaction, which protects the transaction privacy from being leaked. At the same time, by obfuscating the target confidential transaction, The obfuscated transaction equivalent to the target confidential transaction realizes the anonymity of the transaction. At the same time, the required parameters are obtained from the node device of the supervisory authority, which is convenient for the supervisor to supervise the transaction data on the chain.
请参见图4,图4是本发明公开的一种交易数据混淆装置的较佳实施例的功能模块图。Please refer to FIG. 4, which is a functional module diagram of a preferred embodiment of a transaction data obfuscation device disclosed in the present invention.
在一些实施例中,所述交易数据混淆装置运行于混淆服务提供商节点设备中。所述交易数据混淆装置可以包括多个由程序代码段所组成的功能模块。所述交易数据混淆装置中的各个程序段的程序代码可以存储于存储器中,并由至少一个处理器所执行,以执行图2所描述的基于区块链的交易数据混淆方法中的部分或全部步骤。In some embodiments, the transaction data obfuscation device runs in obfuscated service provider node equipment. The transaction data obfuscation device may include multiple functional modules composed of program code segments. The program code of each program segment in the transaction data obfuscation device may be stored in a memory and executed by at least one processor to execute part or all of the block chain-based transaction data obfuscation method described in FIG. 2 step.
本实施例中,所述交易数据混淆装置根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:生成模块401、计算模块402、签名模块403及发送模块404。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。In this embodiment, the transaction data obfuscation device can be divided into multiple functional modules according to the functions it performs. The functional modules may include: a generation module 401, a calculation module 402, a signature module 403, and a sending module 404. The module referred to in the present invention refers to a series of computer program segments that can be executed by at least one processor and can complete fixed functions, and are stored in a memory.
生成模块401,用于生成随机映射参数。The generating module 401 is used to generate random mapping parameters.
其中,监管机构节点设备可以随机选择随机映射参数π(i),其中,所述随机映射参数π(i)属于为[1,k]范围内,{π(1),π(2),…,π(k)}是{1,2,…,k}的重新排列。Among them, the regulatory agency node device can randomly select a random mapping parameter π(i), where the random mapping parameter π(i) belongs to the range of [1, k], {π(1), π(2),... ,π(k)} is the rearrangement of {1,2,...,k}.
计算模块402,用于根据所述随机映射参数,计算第一挑战参数。The calculation module 402 is configured to calculate the first challenge parameter according to the random mapping parameter.
监管机构节点设备可以根据所述随机映射参数,计算第一挑战参数。The regulatory agency node device may calculate the first challenge parameter according to the random mapping parameter.
具体的,可以计算
Figure PCTCN2020076974-appb-000071
x=Hash(C A1||…||C Au),
Specifically, it can be calculated
Figure PCTCN2020076974-appb-000071
x=Hash(C A1 ||...||C Au ),
其中,g 1,g 2,…,g v,h均为系统参数,{r A1,…,r Au}为u个随机变量,x为所述第一挑战参数。 Among them, g 1 , g 2 ,..., g v , h are all system parameters, {r A1 ,..., r Au } are u random variables, and x is the first challenge parameter.
签名模块403,用于使用私钥对所述第一挑战参数进行签名。The signature module 403 is configured to use a private key to sign the first challenge parameter.
监管机构节点设备可以使用私钥对所述第一挑战参数进行签名,并将签名保存在本地。The supervisory authority node device may use the private key to sign the first challenge parameter, and save the signature locally.
发送模块404,用于将签名后的第一挑战参数以及所述随机映射参数发送至混淆服务提 供商节点设备,以使得所述混淆服务提供商节点设备根据所述签名后的第一挑战参数以及所述随机映射参数对目标机密交易进行可监管的混淆证明。The sending module 404 is configured to send the signed first challenge parameter and the random mapping parameter to the obfuscated service provider node device, so that the obfuscated service provider node device can according to the signed first challenge parameter and The random mapping parameter performs supervisable confusion proof for the target confidential transaction.
其中,监管机构节点设备在生成所述随机映射参数以及签名后的第一挑战参数之后,即可将签名后的第一挑战参数以及所述随机映射参数发送至混淆服务提供商节点设备。这样,所述混淆服务提供商节点设备即可根据所述签名后的第一挑战参数以及所述随机映射参数,利用上文实施例一所述的可监管的可证明混淆算法来对目标机密交易进行可监管的混淆证明。其中,目标机密交易为需要进行混淆且加密后的机密交易。Wherein, the regulatory agency node device may send the signed first challenge parameter and the random mapping parameter to the obfuscated service provider node device after generating the random mapping parameter and the signed first challenge parameter. In this way, the obfuscation service provider node device can use the supervisable and provable obfuscation algorithm described in Embodiment 1 above to perform confidential transactions on the target according to the first challenge parameter after the signature and the random mapping parameter. Make a supervisable proof of confusion. Among them, the target confidential transaction is a confidential transaction that needs to be obfuscated and encrypted.
可选的,所述交易数据混淆装置还包括:Optionally, the transaction data obfuscation device further includes:
保存模块,用于保存所述签名后的第一挑战参数以及所述随机映射参数;A saving module, configured to save the signed first challenge parameter and the random mapping parameter;
获取模块,用于获取供应商节点设备发送的目标机密交易;The obtaining module is used to obtain the target confidential transaction sent by the supplier node device;
监管模块,用于使用所述签名后的第一挑战参数以及所述随机映射参数对所述目标机密交易进行监管。The supervision module is configured to use the signed first challenge parameter and the random mapping parameter to supervise the target confidential transaction.
在该实施例中,监管机构节点设备可以保存所述签名后的第一挑战参数以及所述随机映射参数,当在区块链上获取到供应商节点设备发送的目标机密交易时,可以使用所述签名后的第一挑战参数以及所述随机映射参数对所述目标机密交易进行解密、监管以及追踪交易的混淆。In this embodiment, the regulatory agency node device can save the signed first challenge parameter and the random mapping parameter, and when the target confidential transaction sent by the supplier node device is obtained on the blockchain, it can use all The signed first challenge parameter and the random mapping parameter decrypt, supervise and track the confusion of the target confidential transaction.
在图4所描述的装置中,由于混淆服务提供商节点设备进行混淆证明的随机映射参数和第一挑战参数是从监管机构节点设备中获取得到的,因此,监管机构节点设备可以利用自己生成并保存的随机映射参数以及签名后的第一挑战参数对区块链上的交易进行监管,同时,追踪交易的混淆。In the device described in Figure 4, since the random mapping parameter and the first challenge parameter for the obfuscated service provider node device to perform the obfuscation proof are obtained from the regulatory agency node device, the regulatory agency node device can use its own generation and The saved random mapping parameters and the first challenge parameter after signing supervise transactions on the blockchain, and at the same time, track the confusion of transactions.
请参见图5,图5是本发明实现基于区块链的交易数据混淆方法的较佳实施例的区块链节点设备的结构示意图。在本实施例中,所述区块链节点设备5可以包括存储器51、处理器52和总线53及收发器54。Please refer to FIG. 5, which is a schematic structural diagram of a blockchain node device according to a preferred embodiment of the method for obfuscation of transaction data based on blockchain according to the present invention. In this embodiment, the blockchain node device 5 may include a memory 51, a processor 52, a bus 53 and a transceiver 54.
图5仅示出了具有组件51-54的所述区块链节点设备5,本领域技术人员可以理解的是,图5示出的结构并不构成对所述区块链节点设备5的限定,既可以是总线型结构,也可以是星形结构,所述区块链节点设备5还可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。FIG. 5 only shows the blockchain node device 5 with components 51-54. Those skilled in the art can understand that the structure shown in FIG. 5 does not constitute a limitation on the blockchain node device 5. It may be a bus-type structure or a star-shaped structure. The blockchain node device 5 may also include fewer or more components than shown in the figure, or a combination of certain components, or a different component arrangement. Other existing or future electronic products that can be adapted to the present invention should also be included in the protection scope of the present invention, and are included here by reference.
其中,存储器51至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、 多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器51在一些实施例中可以是所述区块链节点设备5的内部存储单元,例如所述区块链节点设备5的硬盘。存储器51在另一些实施例中也可以是所述区块链节点设备5的外部存储设备,例如所述区块链节点设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器51还可以既包括所述区块链节点设备5的内部存储单元,也包括外部存储设备。存储器51不仅可以用于存储安装于所述区块链节点设备5的应用程序及各类数据,例如,交易数据混淆装置及其各个功能模块,还可以用于暂时地存储已经输出或者将要输出的数据。The memory 51 includes at least one type of readable storage medium, and the readable storage medium includes flash memory, hard disk, multimedia card, card-type memory (for example, SD or DX memory, etc.), magnetic memory, magnetic disk, optical disk, and the like. The memory 51 may be an internal storage unit of the blockchain node device 5 in some embodiments, such as a hard disk of the blockchain node device 5. In other embodiments, the memory 51 may also be an external storage device of the blockchain node device 5, such as a plug-in hard disk equipped on the blockchain node device 5, a smart memory card (Smart Media Card, SMC). ), Secure Digital (SD) card, Flash Card, etc. Further, the memory 51 may also include not only the internal storage unit of the blockchain node device 5, but also an external storage device. The memory 51 can not only be used to store application programs and various data installed in the blockchain node device 5, for example, a transaction data obfuscation device and its various functional modules, but also can be used to temporarily store what has been output or will be output. data.
处理器52在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器,用于运行存储器51中存储的程序代码或处理数据。The processor 52 may be a central processing unit (CPU), controller, microcontroller, or microprocessor in some embodiments, and is used to run program codes or process data stored in the memory 51.
该总线53可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The bus 53 may be a peripheral component interconnect standard (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into address bus, data bus, control bus and so on. For ease of presentation, only one thick line is used to represent in FIG. 5, but it does not mean that there is only one bus or one type of bus.
进一步地,所述区块链节点设备5还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该区块链节点设备5与其他调度服务器之间建立通信连接。Further, the blockchain node device 5 may also include a network interface, and the network interface may optionally include a wired interface and/or a wireless interface (such as a WI-FI interface, a Bluetooth interface, etc.), which is usually used in the block The link node device 5 establishes a communication connection with other dispatch servers.
可选地,该区块链节点设备5还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元,比如键盘(Keyboard),可选的,用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。其中,显示器也可以称为显示屏或显示单元,用于显示在所述调度服务器中处理的消息以及用于显示可视化的用户界面。Optionally, the blockchain node device 5 may also include a user interface, the user interface may include a display (Display), an input unit, such as a keyboard (Keyboard), optionally, the user interface may also include a standard wired interface, wireless interface. Optionally, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, an organic light-emitting diode (OLED) touch device, and the like. The display may also be called a display screen or a display unit, which is used to display the messages processed in the dispatch server and to display a visualized user interface.
结合图1,当所述区块链节点设备5是混淆服务提供商节点设备时,存储器51中存储有多个指令,所述处理器52可执行所述多个指令从而实现:With reference to FIG. 1, when the blockchain node device 5 is a confusing service provider node device, a plurality of instructions are stored in the memory 51, and the processor 52 can execute the plurality of instructions to achieve:
接收供应商节点设备针对目标机密交易发送的混淆请求,所述混淆请求携带有目标随机数;Receiving an obfuscation request sent by a supplier node device for a target confidential transaction, where the obfuscation request carries the target random number;
使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易;Use the target random number to confuse the target confidential transaction to obtain a confused transaction;
从监管机构节点设备中获取随机映射参数以及签名后的第一挑战参数;Obtain random mapping parameters and signed first challenge parameters from the regulatory agency node equipment;
生成多个第一随机数,并根据所述多个第一随机数以及所述第一挑战参数,计算第二挑 战参数,以及根据所述第二挑战参数计算第三挑战参数;Generating a plurality of first random numbers, calculating a second challenge parameter according to the plurality of first random numbers and the first challenge parameter, and calculating a third challenge parameter according to the second challenge parameter;
计算第一中间变量和第二中间变量;Calculate the first intermediate variable and the second intermediate variable;
根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明;Perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable;
根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明;Performing a power proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable;
输出所述混淆交易、所述乘积证明的结果以及所述乘幂证明的结果。Output the result of the confusing transaction, the result of the product proof, and the result of the power proof.
在一种可选的实施方式中,所述处理器52使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易包括:In an optional implementation manner, the processor 52 uses the target random number to obfuscate the target confidential transaction, and obtaining the obfuscated transaction includes:
利用如下公式,使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易,所述公式为:Use the following formula to obfuscate the target confidential transaction using the target random number to obtain a confused transaction. The formula is:
C′ i=h rC π(i) C′ i = h r C π(i)
其中,所述C′ i为所述混淆交易,C π(i)为所述目标机密交易,h为系统参数,r为所述目标随机数。 Wherein, the C′ i is the obfuscated transaction, C π(i) is the target confidential transaction, h is a system parameter, and r is the target random number.
在一种可选的实施方式中,所述第二挑战参数y=Hash(C B1||…||C Bu),其中,
Figure PCTCN2020076974-appb-000072
Figure PCTCN2020076974-appb-000073
g 1,g 2,…,g v,h均为系统参数,{s 1,…,s u}为u个所述第一随机数,x为所述第一挑战参数,π(i)为所述随机映射参数,π(i)的范围为[1,k],C Bi为第三中间变量。
In an optional implementation manner, the second challenge parameter y=Hash(C B1 ||...||C Bu ), where,
Figure PCTCN2020076974-appb-000072
Figure PCTCN2020076974-appb-000073
g 1 , g 2 ,..., g v , h are all system parameters, {s 1 ,..., s u } are the u first random numbers, x is the first challenge parameter, and π(i) is For the random mapping parameter, the range of π(i) is [1, k], and C Bi is the third intermediate variable.
在一种可选的实施方式中,所述第三挑战参数z=Hash(C B1||…||C Bu||y),所述第一中间变量
Figure PCTCN2020076974-appb-000074
其中,
Figure PCTCN2020076974-appb-000075
所述第二中间变量
Figure PCTCN2020076974-appb-000076
其中,ρ i为第二随机数。
In an optional implementation manner, the third challenge parameter z=Hash(C B1 ||...||C Bu ||y), the first intermediate variable
Figure PCTCN2020076974-appb-000074
among them,
Figure PCTCN2020076974-appb-000075
The second intermediate variable
Figure PCTCN2020076974-appb-000076
Among them, ρ i is the second random number.
在一种可选的实施方式中,所述处理器52根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明包括:In an optional implementation manner, the processor 52 performing product certification according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable includes:
利用乘积证明公式,根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明,所述乘积证明公式如下:The product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
Figure PCTCN2020076974-appb-000077
Figure PCTCN2020076974-appb-000077
在一种可选的实施方式中,所述处理器52根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明包括:In an optional implementation manner, the processor 52 performing the exponentiation proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable includes:
利用乘幂证明公式,根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所 述第二中间变量,进行乘幂证明,其中,所述乘幂证明公式如下:Use the power proof formula to perform the power proof based on the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, where the power proof formula is as follows:
Figure PCTCN2020076974-appb-000078
Figure PCTCN2020076974-appb-000078
其中,所述
Figure PCTCN2020076974-appb-000079
为所述目标机密交易,
Figure PCTCN2020076974-appb-000080
为所述混淆交易。
Among them, the
Figure PCTCN2020076974-appb-000079
Is the target confidential transaction,
Figure PCTCN2020076974-appb-000080
For the said obfuscated transaction.
具体地,所述处理器52对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。Specifically, for the specific implementation method of the above-mentioned instructions by the processor 52, reference may be made to the description of the relevant steps in the embodiment corresponding to FIG. 1, which will not be repeated here.
结合图2,当所述区块链节点设备5是监管机构节点设备时,存储器51中存储有多个指令,所述处理器52可执行所述多个指令从而实现:With reference to Fig. 2, when the blockchain node device 5 is a regulatory agency node device, multiple instructions are stored in the memory 51, and the processor 52 can execute the multiple instructions to achieve:
生成随机映射参数;Generate random mapping parameters;
根据所述随机映射参数,计算第一挑战参数;Calculating the first challenge parameter according to the random mapping parameter;
使用私钥对所述第一挑战参数进行签名;Use the private key to sign the first challenge parameter;
将签名后的第一挑战参数以及所述随机映射参数发送至混淆服务提供商节点设备,以使得所述混淆服务提供商节点设备根据所述签名后的第一挑战参数以及所述随机映射参数对目标机密交易进行可监管的混淆证明。The signed first challenge parameter and the random mapping parameter are sent to the obfuscated service provider node device, so that the obfuscated service provider node device can use the signed first challenge parameter and the random mapping parameter pair The target confidential transaction performs a supervisable proof of confusion.
在一种可选的实施方式中,所述处理器52还可执行所述多个指令从而实现:In an optional implementation manner, the processor 52 may also execute the multiple instructions to achieve:
保存所述签名后的第一挑战参数以及所述随机映射参数;Saving the signed first challenge parameter and the random mapping parameter;
获取供应商节点设备发送的目标机密交易,并使用所述签名后的第一挑战参数以及所述随机映射参数对所述目标机密交易进行监管。Obtain the target confidential transaction sent by the supplier node device, and use the signed first challenge parameter and the random mapping parameter to supervise the target confidential transaction.
具体地,所述处理器52对上述指令的具体实现方法可参考图2对应实施例中相关步骤的描述,在此不赘述。Specifically, for the specific implementation method of the above-mentioned instructions by the processor 52, reference may be made to the description of the relevant steps in the embodiment corresponding to FIG. 2, which will not be repeated here.
在上述实施例中,可以全部或部分地通过应用程序、硬件、固件或者其任意组合来实现。当使用应用程序实现时,可以全部或部分地以计算机程序产品的形式实现。In the above-mentioned embodiments, it may be implemented in whole or in part by application programs, hardware, firmware, or any combination thereof. When implemented using an application program, it can be implemented in the form of a computer program product in whole or in part.
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如,同轴电缆、光纤、数字用户线)或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD),或者半导体介质(例 如,固态硬盘(Solid State Disk,SSD))等。The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the processes or functions described in the embodiments of the present invention are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center. Transmission to another website site, computer, server or data center via wired (for example, coaxial cable, optical fiber, digital subscriber line) or wireless (for example, infrared, wireless, microwave, etc.). The computer-readable storage medium may be any available medium that can be stored by a computer or a data storage device such as a server or a data center integrated with one or more available media. The usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, and a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。In the several embodiments provided by the present invention, it should be understood that the disclosed system, device, and method may be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the modules is only a logical function division, and there may be other division methods in actual implementation.
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。The modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。In addition, the functional modules in the various embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware, or may be implemented in the form of hardware plus software functional modules.
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。系统权利要求中陈述的多个单元或装置也可以通过软件或者硬件来实现。For those skilled in the art, it is obvious that the present invention is not limited to the details of the above exemplary embodiments, and the present invention can be implemented in other specific forms without departing from the spirit or basic characteristics of the present invention. Therefore, from any point of view, the embodiments should be regarded as exemplary and non-limiting. The scope of the present invention is defined by the appended claims rather than the above description, and therefore it is intended to fall within the claims. All changes within the meaning and scope of the equivalent elements of are included in the present invention. Any associated diagram marks in the claims should not be regarded as limiting the claims involved. Multiple units or devices stated in the system claims can also be implemented by software or hardware.
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit them. Although the present invention has been described in detail with reference to the preferred embodiments, those of ordinary skill in the art should understand that the technical solutions of the present invention can be Modifications or equivalent replacements are made without departing from the spirit and scope of the technical solution of the present invention.

Claims (10)

  1. 一种基于区块链的交易数据混淆方法,应用于混淆服务提供商节点设备,其特征在于,所述方法包括:A block chain-based transaction data obfuscation method, which is applied to obfuscate service provider node equipment, and is characterized in that the method includes:
    接收供应商节点设备针对目标机密交易发送的混淆请求,所述混淆请求携带有目标随机数;Receiving an obfuscation request sent by a supplier node device for a target confidential transaction, where the obfuscation request carries the target random number;
    使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易;Use the target random number to confuse the target confidential transaction to obtain a confused transaction;
    从监管机构节点设备获取随机映射参数以及签名后的第一挑战参数;Obtain random mapping parameters and signed first challenge parameters from the node device of the regulatory agency;
    生成多个第一随机数,并根据所述多个第一随机数以及所述第一挑战参数,计算第二挑战参数,以及根据所述第二挑战参数计算第三挑战参数;Generating a plurality of first random numbers, calculating a second challenge parameter according to the plurality of first random numbers and the first challenge parameter, and calculating a third challenge parameter according to the second challenge parameter;
    计算第一中间变量和第二中间变量;Calculate the first intermediate variable and the second intermediate variable;
    根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明;Perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable;
    根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明;Performing a power proof according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable;
    输出所述混淆交易、所述乘积证明的结果以及所述乘幂证明的结果。Output the result of the confusing transaction, the result of the product proof, and the result of the power proof.
  2. 根据权利要求1所述的方法,其特征在于,所述使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易包括:The method according to claim 1, wherein the using the target random number to obfuscate the target confidential transaction, and obtaining the obfuscated transaction comprises:
    利用如下公式,使用所述目标随机数对所述目标机密交易进行混淆,获得混淆交易,所述公式为:Use the following formula to obfuscate the target confidential transaction using the target random number to obtain a confused transaction. The formula is:
    C′ i=h rC π(i) C′ i = h r C π(i)
    其中,所述C′ i为所述混淆交易,C π(i)为所述目标机密交易,h为系统参数,r为所述目标随机数。 Wherein, the C′ i is the obfuscated transaction, C π(i) is the target confidential transaction, h is a system parameter, and r is the target random number.
  3. 根据权利要求2所述的方法,其特征在于,所述第二挑战参数y=Hash(C B1||…||C Bu),其中,
    Figure PCTCN2020076974-appb-100001
    h均为系统参数,{s 1,…,s u}为u个所述第一随机数,x为所述第一挑战参数,π(i)为所述随机映射参数,π(i)的范围为[1,k],C Bi为第三中间变量。
    The method according to claim 2, wherein the second challenge parameter y=Hash(C B1 ||...||C Bu ), wherein,
    Figure PCTCN2020076974-appb-100001
    h are all system parameters, {s 1 ,..., s u } are the u first random numbers, x is the first challenge parameter, π(i) is the random mapping parameter, and π(i) is The range is [1, k], and C Bi is the third intermediate variable.
  4. 根据权利要求3所述的方法,其特征在于,所述第三挑战参数z=Hash(C B1||…||C Bu||y),所述第一中间变量
    Figure PCTCN2020076974-appb-100002
    其中,
    Figure PCTCN2020076974-appb-100003
    所述第二中间变量
    Figure PCTCN2020076974-appb-100004
    其中,ρ i为第二随机数。
    The method according to claim 3, wherein the third challenge parameter z=Hash(C B1 ||...||C Bu ||y), the first intermediate variable
    Figure PCTCN2020076974-appb-100002
    among them,
    Figure PCTCN2020076974-appb-100003
    The second intermediate variable
    Figure PCTCN2020076974-appb-100004
    Among them, ρ i is the second random number.
  5. 根据权利要求4所述的方法,其特征在于,所述根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明包括:The method according to claim 4, wherein the performing product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable comprises:
    利用乘积证明公式,根据所述第一挑战参数、所述第二挑战参数、所述第三挑战参数以及所述第一中间变量,进行乘积证明,所述乘积证明公式如下:The product proof formula is used to perform product proof according to the first challenge parameter, the second challenge parameter, the third challenge parameter, and the first intermediate variable, and the product proof formula is as follows:
    Figure PCTCN2020076974-appb-100005
    Figure PCTCN2020076974-appb-100005
  6. 根据权利要求5所述的方法,其特征在于,所述根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明包括:The method according to claim 5, wherein said performing a power proof based on said target confidential transaction, said obfuscated transaction, said random mapping parameter and said second intermediate variable comprises:
    利用乘幂证明公式,根据所述目标机密交易、所述混淆交易、所述随机映射参数以及所述第二中间变量,进行乘幂证明,其中,所述乘幂证明公式如下:Using the power proof formula, the power proof is performed according to the target confidential transaction, the obfuscated transaction, the random mapping parameter, and the second intermediate variable, wherein the power proof formula is as follows:
    Figure PCTCN2020076974-appb-100006
    Figure PCTCN2020076974-appb-100006
    其中,所述
    Figure PCTCN2020076974-appb-100007
    为所述目标机密交易,
    Figure PCTCN2020076974-appb-100008
    为所述混淆交易。
    Among them, the
    Figure PCTCN2020076974-appb-100007
    Is the target confidential transaction,
    Figure PCTCN2020076974-appb-100008
    For the said obfuscated transaction.
  7. 一种基于区块链的交易数据混淆方法,应用于监管机构节点设备,其特征在于,所述方法包括:A block chain-based transaction data obfuscation method applied to a node device of a regulatory agency, characterized in that the method includes:
    生成随机映射参数;Generate random mapping parameters;
    根据所述随机映射参数,计算第一挑战参数;Calculating the first challenge parameter according to the random mapping parameter;
    使用私钥对所述第一挑战参数进行签名;Use the private key to sign the first challenge parameter;
    将签名后的第一挑战参数以及所述随机映射参数发送至混淆服务提供商节点设备,以使得所述混淆服务提供商节点设备根据所述签名后的第一挑战参数以及所述随机映射参数对目标机密交易进行可监管的混淆证明。The signed first challenge parameter and the random mapping parameter are sent to the obfuscated service provider node device, so that the obfuscated service provider node device can use the signed first challenge parameter and the random mapping parameter pair The target confidential transaction performs a supervisable proof of confusion.
  8. 根据权利要求7所述的方法,其特征在于,所述方法还包括:The method according to claim 7, wherein the method further comprises:
    保存所述签名后的第一挑战参数以及所述随机映射参数;Saving the signed first challenge parameter and the random mapping parameter;
    获取供应商节点设备发送的目标机密交易,并使用所述签名后的第一挑战参数以及所述随机映射参数对所述目标机密交易进行监管。Obtain the target confidential transaction sent by the supplier node device, and use the signed first challenge parameter and the random mapping parameter to supervise the target confidential transaction.
  9. 一种区块链节点设备,其特征在于,所述区块链节点设备包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的区块链交易数据证明监管方法的下载程序,所述区块链交易数据证明监管方法的下载程序被所述处理器执行时实现如权利要求1至8中任意一项所述的基于区块链的交易数据混淆方法。A block chain node device, characterized in that the block chain node device includes a memory and a processor, and the memory stores the download of a method for proof supervision of blockchain transaction data that can run on the processor A program, when the download program of the blockchain transaction data certification supervision method is executed by the processor, the blockchain-based transaction data obfuscation method according to any one of claims 1 to 8 is realized.
  10. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有区块链交易数据证明监管方法的下载程序,所述区块链交易数据证明监管方法的下载程序可被一个 或者多个处理器执行以实现如权利要求1至8中任意一项所述的基于区块链的交易数据混淆方法。A computer-readable storage medium is characterized in that a download program of a blockchain transaction data certification supervision method is stored on the computer-readable storage medium, and the download program of the blockchain transaction data certification supervision method can be Or multiple processors are executed to implement the blockchain-based transaction data obfuscation method according to any one of claims 1 to 8.
PCT/CN2020/076974 2019-12-31 2020-02-27 Blockchain-based transaction data obfuscation method, and related device WO2021134876A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911416640.XA CN111127020B (en) 2019-12-31 2019-12-31 Transaction data confusion method based on blockchain and related equipment
CN201911416640.X 2019-12-31

Publications (1)

Publication Number Publication Date
WO2021134876A1 true WO2021134876A1 (en) 2021-07-08

Family

ID=70506885

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/076974 WO2021134876A1 (en) 2019-12-31 2020-02-27 Blockchain-based transaction data obfuscation method, and related device

Country Status (2)

Country Link
CN (1) CN111127020B (en)
WO (1) WO2021134876A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112288523B (en) 2020-10-29 2023-09-05 中国银联股份有限公司 Numerical ranking method and device based on blockchain

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108985927A (en) * 2017-06-05 2018-12-11 万事达卡国际公司 For making the method and system of the electronic transaction anonymization via block chain
CN109034800A (en) * 2018-07-31 2018-12-18 杭州复杂美科技有限公司 A kind of privacy method of commerce, system and equipment
US20190172067A1 (en) * 2017-12-04 2019-06-06 Mastercard International Incorporated Method and system for risk scoring anonymized transactions
CN110383311A (en) * 2018-11-07 2019-10-25 阿里巴巴集团控股有限公司 Supervise the transaction of block chain secret
CN110517147A (en) * 2019-08-30 2019-11-29 深圳市网心科技有限公司 Transaction data processing method, device, system and computer readable storage medium

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2545509A (en) * 2015-12-19 2017-06-21 Heliopay Ltd Financial apparatus and method
SG11201810306XA (en) * 2016-05-20 2018-12-28 Moog Inc Secure and traceable manufactured parts
CN108335106A (en) * 2018-01-24 2018-07-27 深圳壹账通智能科技有限公司 The more account books of Zero Knowledge based on block chain exchange transfer account method, device and storage medium
GB2572135B (en) * 2018-03-07 2023-01-25 The Maidsafe Found Data transaction system and method
US10929352B2 (en) * 2018-05-29 2021-02-23 Oracle International Corporation Securing access to confidential data using a blockchain ledger
GB2576375A (en) * 2018-08-17 2020-02-19 Uvue Ltd Transaction system and method of operation thereof
CN109067547A (en) * 2018-09-21 2018-12-21 北京计算机技术及应用研究所 A kind of block chain method for secret protection based on disposable ring signatures
CN109472601A (en) * 2018-11-21 2019-03-15 北京蓝石环球区块链科技有限公司 The block chain framework of privacy transaction can be supervised
CN109840771A (en) * 2019-04-01 2019-06-04 西安电子科技大学 A kind of block chain intimacy protection system and its method based on homomorphic cryptography
CN110008746B (en) * 2019-04-01 2020-11-03 大连理工大学 Block chain-based medical record storage, sharing and safety claim settlement model and method
CN110557385B (en) * 2019-08-22 2021-08-13 西安电子科技大学 Information hiding access method and system based on behavior confusion, and server

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108985927A (en) * 2017-06-05 2018-12-11 万事达卡国际公司 For making the method and system of the electronic transaction anonymization via block chain
US20190172067A1 (en) * 2017-12-04 2019-06-06 Mastercard International Incorporated Method and system for risk scoring anonymized transactions
CN109034800A (en) * 2018-07-31 2018-12-18 杭州复杂美科技有限公司 A kind of privacy method of commerce, system and equipment
CN110383311A (en) * 2018-11-07 2019-10-25 阿里巴巴集团控股有限公司 Supervise the transaction of block chain secret
CN110517147A (en) * 2019-08-30 2019-11-29 深圳市网心科技有限公司 Transaction data processing method, device, system and computer readable storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
费天龙 等 (FEI, TIANLONG ET AL.): "基于可信监管方的比特币强匿名混淆策略 (A Strong Anonymous Obfuscation Scheme for Bitcoin Based on Trusted Regulator)", 中国电子科学研究院学报 (JOURNAL OF CHINA ACADEMY OF ELECTRONICS AND INFORMATION TECHNOLOGY), vol. 14, no. 9, 30 September 2019 (2019-09-30), XP055805709 *

Also Published As

Publication number Publication date
CN111127020B (en) 2023-09-15
CN111127020A (en) 2020-05-08

Similar Documents

Publication Publication Date Title
CN109862041B (en) Digital identity authentication method, equipment, device, system and storage medium
US10116645B1 (en) Controlling use of encryption keys
US20190057115A1 (en) Method and system for distributing digital content on peer-to-peer network
US8856536B2 (en) Method and apparatus for secure firmware download using diagnostic link connector (DLC) and OnStar system
WO2021036086A1 (en) Transaction data processing method, apparatus and system, and computer-readable storage medium
US10032037B1 (en) Establishing application trust levels using taint propagation as a service
CN109034796B (en) Alliance chain-based transaction supervision method, electronic device and readable storage medium
US11356425B2 (en) Techniques for improving security of encrypted vehicle software updates
CN117278224A (en) Method and system for verifying identity attribute information
CN108449315B (en) Request validity verifying device, method and computer readable storage medium
US10003467B1 (en) Controlling digital certificate use
TW201939922A (en) Policy Deployment Method, Apparatus, System and Computing System of Trusted Server
CN113055380B (en) Message processing method and device, electronic equipment and medium
CN111062052B (en) Data query method and system
CN111105235B (en) Supply chain transaction privacy protection system, method and related equipment based on blockchain
WO2018112482A1 (en) Method and system for distributing attestation key and certificate in trusted computing
WO2021134898A1 (en) Blockchain transaction data proof supervision method and system, and related device
CN111695097A (en) Login checking method and device and computer readable storage medium
CN111160908A (en) Supply chain transaction privacy protection system and method based on block chain and related equipment
CN107979599A (en) Data Encrypting Transmission System
JP2019009767A (en) Information processing device
CN112311769A (en) Method, system, electronic device and medium for security authentication
WO2021134876A1 (en) Blockchain-based transaction data obfuscation method, and related device
CN108846671B (en) Online secure transaction method and system based on block chain
CN111224826B (en) Configuration updating method, device, system and medium based on distributed system

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: 20910285

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20910285

Country of ref document: EP

Kind code of ref document: A1