CN113592469A - Red packet processing method based on zero knowledge proof, computer equipment and storage medium - Google Patents

Red packet processing method based on zero knowledge proof, computer equipment and storage medium Download PDF

Info

Publication number
CN113592469A
CN113592469A CN202110883014.2A CN202110883014A CN113592469A CN 113592469 A CN113592469 A CN 113592469A CN 202110883014 A CN202110883014 A CN 202110883014A CN 113592469 A CN113592469 A CN 113592469A
Authority
CN
China
Prior art keywords
address
red
red packet
contract
envelope
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110883014.2A
Other languages
Chinese (zh)
Inventor
马登极
王志文
吴思进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Fuzamei Technology Co Ltd
Original Assignee
Hangzhou Fuzamei Technology Co Ltd
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 Hangzhou Fuzamei Technology Co Ltd filed Critical Hangzhou Fuzamei Technology Co Ltd
Priority to CN202110883014.2A priority Critical patent/CN113592469A/en
Publication of CN113592469A publication Critical patent/CN113592469A/en
Pending legal-status Critical Current

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/387Payment using discounts or coupons
    • 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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • 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/3825Use of electronic signatures
    • 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/3827Use of message hashing
    • 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
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0208Trade or exchange of goods or services in exchange for incentives or rewards
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0239Online discounts or incentives

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides a red packet processing method based on zero knowledge proof, a computer device and a storage medium, wherein the method comprises the following steps: receiving first data, a first public key and first signature information in response to getting the first red packet; the method comprises the steps that first data, a first public key and a second address of a current user are used as public input of a proving algorithm of a zero-knowledge proving circuit, first signature information and a second private key corresponding to the second address are used as private input of the proving algorithm, and first proving information is generated; and generating a first red packet pick-up transaction comprising the first data, the first public key, the second address and the first certification information and sending the first red packet pick-up transaction to the blockchain network so as to be executed by the blockchain node through the red packet contract. The invention realizes that lawless persons can not receive the trade and steal the red envelope by analyzing the red envelope.

Description

Red packet processing method based on zero knowledge proof, computer equipment and storage medium
Technical Field
The application relates to the technical field of internet, in particular to a red packet processing method based on zero knowledge proof, computer equipment and a storage medium.
Background
In the existing block chain red packet solution, one implementation mode is that verification information of a red packet getting voucher is recorded in a red packet contract on a block chain, and when a user gets a red packet, a user side packs the red packet getting voucher according to the corresponding red packet getting voucher to generate a red packet getting transaction and sends the red packet getting transaction; and the red packet verifies the red packet getting voucher according to the verification information to judge whether the getting is successful or not when the red packet getting transaction is executed.
For example, in the scheme disclosed in the application No. CN201910077876.9 previously filed by the applicant, a random number is used as the red envelope acquiring certificate, and a hash value of the random number is used as the verification information of the red envelope acquiring certificate.
The problem with the above scheme is that when the red packet pickup transaction is intercepted by a malicious node at the beginning of sending, the red packet pickup voucher may be stolen, resulting in the red packet being stolen.
For example, the user terminal of the user a acquires the random number r1 as a red packet pickup certificate, packages and generates a red packet pickup transaction tx1 including r1, and sends the red packet pickup transaction tx1 to the blockchain node a. Normally, node a broadcasts tx1 to other nodes in the blockchain network, and finally tx1 is packed for uplink execution. However, when node a is a malicious node controlled by a lawless person, node a may resolve the random number r1 from tx1, discard tx1, and regenerate the red packet pickup transaction tx2 including r1 to steal the red packet. Even if the ue of user a also sends tx1 to other blockchain nodes at the same time, there is still a possibility that tx2 is packed for uplink execution before tx 1.
Disclosure of Invention
In view of the above-mentioned drawbacks and deficiencies of the prior art, it would be desirable to provide a red envelope processing method, computer device, and storage medium based on zero knowledge proof that would prevent a lawless person from obtaining a stolen red envelope by resolving the red envelope.
In a first aspect, the present invention provides a red packet processing method based on zero knowledge proof for a user side, where a block chain is configured with a red packet contract, and the red packet contract is configured with a zero knowledge proof circuit for verifying a red packet pickup certificate and a red packet collecting address, and the method includes:
receiving first data, a first public key and first signature information in response to getting the first red packet; wherein the first signature information is generated by a red envelope user signing the first data with a first private key corresponding to the first public key, the red envelope contract further configured to record the first data and the first public key into the red envelope contract when performing the corresponding red envelope transaction;
the method comprises the steps that first data, a first public key and a second address of a current user are used as public input of a proving algorithm of a zero-knowledge proving circuit, first signature information and a second private key corresponding to the second address are used as private input of the proving algorithm, and first proving information is generated;
generating a first red packet including first data, a first public key, a second address and first certification information to obtain a transaction and sending the transaction to a block chain network so as to be executed by a block chain node through a red packet contract, and inputting the first data, the first public key, the second address and the first certification information into a verification algorithm of a zero-knowledge certification circuit to verify:
whether the user of the red envelope holds a red envelope pick-up certificate signed by a first private key held by the user of the red envelope;
whether the second address is an address corresponding to a second private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to the second address.
In a second aspect, the present invention provides a red packet processing method based on zero knowledge proof for a block chain node, where a red packet contract is configured on a block chain, and a zero knowledge proof circuit for verifying a red packet pickup certificate and a red packet collecting address is configured in the red packet contract, the method including:
executing a first red envelope pickup transaction through a red envelope contract, inputting the first data, the first public key, the second address and the first certification information into a verification algorithm of a zero-knowledge certification circuit to verify:
whether the user of the red envelope holds a red envelope pick-up certificate signed by a first private key held by the user of the red envelope;
whether the second address is an address corresponding to a second private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to the second address.
The first red packet pickup transaction comprises first data, a first public key, a second address and first certification information, and is generated by packaging a first user side;
after the first user receives the first red packet and receives the first data, the first public key and the first signature information, the first data, the first public key and the second address are used as public input of a certification algorithm of the zero-knowledge certification circuit, and the first signature information and a second private key corresponding to the second address are used as private input of the certification algorithm to generate the first certification information;
the red envelope contract is further configured for recording the first data and the first public key into the red envelope contract when performing the corresponding red envelope transaction.
In a third aspect, the present invention further provides another red packet processing method based on zero knowledge proof for a user side, where a block chain is configured with a red packet contract, and the red packet contract is configured with a zero knowledge proof circuit for verifying a red packet pickup voucher and a red packet collecting address, where the method includes:
receiving a third public key and a third private key in response to getting the second red envelope; wherein the red envelope contract is further configured to record the third public key into the red envelope contract when performing the corresponding red envelope transaction;
the third public key and the fourth address of the current user are used as public input of a proving algorithm of the zero-knowledge proving circuit, and the third private key and a fourth private key corresponding to the fourth address are used as private input of the proving algorithm to generate second proving information;
generating a second red packet including a third public key, a fourth address and second certification information to obtain a transaction and sending the transaction to the block chain network so that the block chain node can execute through a red packet contract, and inputting the third public key, the fourth address and the second certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red packet holds a third private key corresponding to the third public key or not;
whether the fourth address is the address corresponding to the fourth private key held by the red packet user or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to a fourth address.
In a fourth aspect, the present invention further provides another zero-knowledge proof-based red packet processing method applicable to a blockchain node, where a red packet contract is configured on a blockchain, and a zero-knowledge proof circuit for verifying a red packet pickup certificate and a red packet collecting address is configured in the red packet contract, the method including:
and executing a second red packet getting transaction through the red packet contract, and inputting the third public key, the fourth address and the second certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red packet holds a third private key corresponding to the third public key or not;
whether the fourth address is the address corresponding to the fourth private key held by the red packet user or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to a fourth address.
The second red packet pickup transaction comprises a third public key, a fourth address and second certification information and is generated by packaging the second user end;
after the second user receives the second red packet and receives the third public key and the third private key, the second certification information is generated by taking the third public key and the fourth address as the public input of the certification algorithm of the zero-knowledge certification circuit and taking the third private key and the fourth private key corresponding to the fourth address as the private input of the certification algorithm;
the red envelope contract is further configured for recording the third public key in the red envelope contract when executing the corresponding red envelope transaction.
In a fifth aspect, the present invention further provides a red packet processing method based on zero knowledge proof for a user side, where a red packet contract is configured on a block chain, and a zero knowledge proof circuit for verifying a red packet pickup certificate and a red packet collecting address is configured in the red packet contract, where the method includes:
receiving a first random number in response to getting a third red packet; wherein the red envelope contract is further configured to record a hash value of the first random number into the red envelope contract when performing the corresponding red envelope transaction;
taking the hash value of the first random number and the fifth address of the current user as public input of a certification algorithm of the zero-knowledge certification circuit, and taking the first random number and a fifth private key corresponding to the fifth address as private input of the certification algorithm to generate third certification information;
generating a third red packet pick-up transaction comprising the hash value of the first random number, the fifth address and third certification information, sending the third red packet pick-up transaction to the blockchain network for the blockchain node to execute through a red packet contract, and inputting the hash value of the first random number, the fifth address and the third certification information into a verification algorithm of a zero-knowledge certification circuit for verification:
whether the user of the red packet has the first random number or not;
whether the fifth address is an address corresponding to a fifth private key held by the red packet user or not is judged;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to a fifth address.
In a sixth aspect, the present invention further provides a zero-knowledge proof-based red packet processing method applicable to a blockchain node, where a red packet contract is configured on a blockchain, and a zero-knowledge proof circuit for verifying a red packet pickup certificate and a red packet collecting address is configured in the red packet contract, the method including:
and executing a third red packet getting transaction through the red packet contract, and inputting the hash value of the first random number, the fifth address and third certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red packet has the first random number or not;
whether the fifth address is an address corresponding to a fifth private key held by the red packet user or not is judged;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to a fifth address.
The third red packet pickup transaction comprises a hash value of a first random number, a fifth address and third certification information, and is generated by packaging a third user end;
after the third user receives the third red packet and receives the first random number, the third certification information is generated by taking the hash value and the fifth address of the first random number as the public input of the certification algorithm of the zero-knowledge certification circuit and taking the first random number and a fifth private key corresponding to the fifth address as the private input of the certification algorithm;
the red envelope contract is further configured to record the hash value of the first random number into the red envelope contract when performing the corresponding red envelope transaction.
In a seventh aspect, the present invention also provides a computer device comprising one or more processors and a memory, wherein the memory contains instructions executable by the one or more processors to cause the one or more processors to perform the method for red packet processing based on zero knowledge proof provided according to the embodiments of the present invention.
In an eighth aspect, the present invention further provides a storage medium storing a computer program, the computer program causing a computer to execute the red packet processing method based on zero knowledge proof according to the embodiments of the present invention.
The red envelope processing method, the computer device and the storage medium based on the zero knowledge proof provided by the embodiments of the invention configure the zero knowledge proof circuit for verifying the red envelope getting certificate and the red envelope collecting address in the red envelope contract, and the user side obtaining the red envelope getting certificate generates the proof information according to the red envelope getting certificate and the collecting account private key, and then packs the proof information to generate the red envelope getting transaction, so that even if the lawless persons analyze the proof information from the red envelope getting transaction, the lawless persons can not steal the red envelope, thereby realizing that the lawless persons can not get the stolen red envelope by analyzing the red envelope getting transaction.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the following detailed description of non-limiting embodiments thereof, made with reference to the accompanying drawings in which:
fig. 1 is a flowchart of a red packet processing method based on zero knowledge proof for a user terminal according to an embodiment of the present invention.
Fig. 2 is a flowchart of a red packet processing method based on zero knowledge proof for blockchain nodes according to an embodiment of the present invention.
Fig. 3 is a flowchart of another method for red packet processing based on zero knowledge proof applicable to a user terminal according to an embodiment of the present invention.
Fig. 4 is a flowchart of another red packet processing method based on zero knowledge proof for blockchain nodes according to an embodiment of the present invention.
Fig. 5 is a flowchart of another method for red packet processing based on zero knowledge proof applicable to a user terminal according to an embodiment of the present invention.
Fig. 6 is a flowchart of another red packet processing method based on zero knowledge proof for blockchain nodes according to an embodiment of the present invention.
Fig. 7 is a schematic structural diagram of a computer device according to an embodiment of the present invention.
Detailed Description
The present application will be described in further detail with reference to the following drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the present invention are shown in the drawings.
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
Fig. 1 is a flowchart of a red packet processing method based on zero knowledge proof for a user terminal according to an embodiment of the present invention.
As shown in fig. 1, in this embodiment, the present invention provides a red envelope processing method based on zero-knowledge proof and applied to a user side, where a red envelope contract is configured on a block chain, and a zero-knowledge proof circuit for verifying a red envelope pickup certificate and a red envelope collecting address is configured in the red envelope contract, where the method includes:
s11: receiving first data, a first public key and first signature information in response to getting the first red packet; wherein the first signature information is generated by a red envelope user signing the first data with a first private key corresponding to the first public key, the red envelope contract further configured to record the first data and the first public key into the red envelope contract when performing the corresponding red envelope transaction;
s13: the method comprises the steps that first data, a first public key and a second address of a current user are used as public input of a proving algorithm of a zero-knowledge proving circuit, first signature information and a second private key corresponding to the second address are used as private input of the proving algorithm, and first proving information is generated;
s15: generating a first red packet including first data, a first public key, a second address and first certification information to obtain a transaction and sending the transaction to a block chain network so as to be executed by a block chain node through a red packet contract, and inputting the first data, the first public key, the second address and the first certification information into a verification algorithm of a zero-knowledge certification circuit to verify:
whether the user of the red envelope holds a red envelope pick-up certificate signed by a first private key held by the user of the red envelope;
whether the second address is an address corresponding to a second private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to the second address.
In this embodiment, the red packet pickup voucher is the first signature information, and the verification algorithm of the red packet pickup voucher is the signature verification algorithm, that is, it is verified according to the first public key whether the first signature information is generated by signing the first data according to the first private key; the verification algorithm of the red packet gathering address is to generate an address according to the private key and then verify whether the two addresses are the same, namely, verify whether the second address is an address generated according to the second private key. Those skilled in the art will understand the principles of various signature verification algorithms in the art, and the principles of one-to-one correspondence of private and public keys to addresses.
The zero knowledge proof circuit configured in the red envelope contract is generated according to the algorithms described above. Specifically, those skilled in the art can understand how to generate a zero knowledge proof circuit according to an algorithm in a zero knowledge proof system, the zero knowledge proof circuit including at least a proof algorithm pro () and a verification algorithm Verify (), and may further include a generation algorithm Setup (). The detailed process is not described herein.
The method shown in fig. 1 is exemplarily explained below by taking an example that the user b sends one 3-person red packet and the user robs one of the red packets.
When the user side of the user B sends the 3-person red pack, 3 data1, data2 and data3 are randomly selected or generated, and data1, data2, data3 and the public key P of the user B are generated in a packaging mode1The transaction tx3 of the red envelope is sent to the blockchain network by any one of direct sending, or packing the transaction into a transaction group with the transaction of the red envelope payment, and sending.
When tx3 execution succeeds, the chunk link points will be data1, data2, data3 and P1Recorded into the red envelope contract.
When the user C robs one of the red packets, the user C performs step S11 to receive the data1 and signature information sign (data1) corresponding to the red packet sent by the centralized red packet server, and the public key P1
In step S13, the user terminal of the user C uses the data1 and the public key P1Addr of user C2As the public input of the proof algorithm save () of the zero knowledge proof circuit, to sign the information sign (data1), corresponding to address addr2Private key p of2As a private input of the proof algorithm pro (), first proof information pro 1 is generated:
Prove(data1、P1、addr2,sign(data1)、p2)→prove1。
in step S15, the user uses the informationThe client packaging generation comprises data1 and public key P1Addr of address2And the red packet pickup transaction tx4 of the proof 1, which sends tx4 to the blockchain network.
The blockchain node receives, broadcasts, packages and executes tx4 through a red package contract, and data1 and a public key P are transmitted1Addr of address2And the proof information pro 1 inputs the verification algorithm Verify () of the zero-knowledge proof circuit for verification:
Verify(data1,P1,addr2,prove1)→Yes/No。
specifically, the verification algorithm Verify () ensures that the following two verifications are simultaneously performed inside the zero knowledge proof circuit:
according to the public key P1And data1 verifying whether signature information sign (data1) is held by private key p held by the user of the red parcel1Signature generated by data 1;
verifying address addr2Whether or not to private key p2The corresponding address;
when any one of the verification fails, the output result of the verification algorithm Verify () is No, the tx4 fails to execute, and the red packet pickup fails;
when all the items of verification are successful, the output result of the verification algorithm Verify () is Yes, the tx4 is successfully executed, and the red envelope money corresponding to the data1/sign (data1) is transferred to the address addr2
Specifically, in the above embodiment, if there is a malicious node parsing and tx4 is discarded, the malicious node can only parse the data1 and the public key P from tx41Addr of address2And proof information prove1, and sign (data1) cannot be resolved:
if the malicious node uses the data1 and the public key P1Addr of address2And proof information prove1 repackage a red envelope pickup transaction, the execution result of the transaction is still the transfer of the red envelope money to address addr2
If the malicious node uses the address addr of the lawless personxInstead of addr2Data1, public key P1Addr of addressxHe-Zheng-Ming-XinInformation positive 1 repacks another red packet to get the transaction, and the address addr is determined by the verification algorithm Verify () when the red packet is executedxNot the private key p2The corresponding address can not pass the verification of the transaction, and lawbreakers can not steal the red envelope.
In the embodiment, the zero-knowledge proving circuit for verifying the red packet getting certificate and the red packet collecting address is configured in the red packet contract, the user side for obtaining the red packet getting certificate generates proving information according to the red packet getting certificate and the collecting account private key, and then the proving information is packaged to generate the red packet getting transaction, so that even if the proving information is analyzed from the red packet getting transaction, a lawbreaker cannot steal the red packet, and the purpose that the lawbreaker cannot steal the red packet through analyzing the red packet getting transaction is achieved.
Fig. 2 is a flowchart of a red packet processing method based on zero knowledge proof for blockchain nodes according to an embodiment of the present invention. The method illustrated in fig. 2 may be performed in conjunction with the method illustrated in fig. 1.
As shown in fig. 2, the present invention further provides a red packet processing method based on zero knowledge proof for a block chain node, where a red packet contract is configured on a block chain, and a zero knowledge proof circuit for verifying a red packet pickup certificate and a red packet collecting address is configured in the red packet contract, the method includes:
s21: executing a first red envelope pickup transaction through a red envelope contract, inputting the first data, the first public key, the second address and the first certification information into a verification algorithm of a zero-knowledge certification circuit to verify:
whether the user of the red envelope holds a red envelope pick-up certificate signed by a first private key held by the user of the red envelope;
whether the second address is an address corresponding to a second private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to the second address.
The first red packet pickup transaction comprises first data, a first public key, a second address and first certification information, and is generated by packaging a first user side;
after the first user receives the first red packet and receives the first data, the first public key and the first signature information, the first data, the first public key and the second address are used as public input of a certification algorithm of the zero-knowledge certification circuit, and the first signature information and a second private key corresponding to the second address are used as private input of the certification algorithm to generate the first certification information;
the red envelope contract is further configured for recording the first data and the first public key into the red envelope contract when performing the corresponding red envelope transaction.
The red packet processing principle of the method shown in fig. 2 can refer to the method shown in fig. 1, and is not described herein again.
Fig. 3 is a flowchart of another method for red packet processing based on zero knowledge proof applicable to a user terminal according to an embodiment of the present invention.
As shown in fig. 3, the present invention further provides another zero-knowledge proof-based red packet processing method applicable to a user side, where a red packet contract is configured on a block chain, and a zero-knowledge proof circuit for verifying a red packet pickup certificate and a red packet recipient address is configured in the red packet contract, where the method includes:
s31: receiving a third public key and a third private key in response to getting the second red envelope; wherein the red envelope contract is further configured to record the third public key into the red envelope contract when performing the corresponding red envelope transaction;
s33: the third public key and the fourth address of the current user are used as public input of a proving algorithm of the zero-knowledge proving circuit, and the third private key and a fourth private key corresponding to the fourth address are used as private input of the proving algorithm to generate second proving information;
s35: generating a second red packet including a third public key, a fourth address and second certification information to obtain a transaction and sending the transaction to the block chain network so that the block chain node can execute through a red packet contract, and inputting the third public key, the fourth address and the second certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red packet holds a third private key corresponding to the third public key or not;
whether the fourth address is the address corresponding to the fourth private key held by the red packet user or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to a fourth address.
Specifically, the method shown in fig. 3 differs from the method shown in fig. 1 in that:
in the method shown in fig. 3, the red envelope getting certificate is the (disposable) third private key, and the verification algorithm of the red envelope getting certificate is the public-private key verification algorithm, i.e. the third private key is verified according to the third public key.
Similarly, taking an example that user b sends a 3-person red envelope, in the method shown in fig. 3, the user side of user b needs to randomly generate 3 pairs of disposable public and private key pairs, and records 3 disposable public keys into a red envelope contract through a red envelope transaction;
in step S31, the user end of user c receives the one-time public key P in the same manner3And a private key p3
In step S33, the user side of user c generates credential information pro 2 in the same manner:
Prove(P3、addr4,p3、p4)→prove2。
in step S35, the user side package of user c is generated to include the public key P3Addr of address4And the red packet pickup transaction tx5 of the proof 2, which sends tx5 to the blockchain network.
The blockchain node executes tx5 by red envelope contract and connects the public key P3Addr of address4And the proof information prove2 inputs a verification algorithm Verify () to Verify:
Verify(P3,addr4,prove2)→Yes/No。
likewise, when a malicious node parses and discards tx5, the public key P can only be parsed from tx53Addr of address4And proof information pro 2, without resolving out the private key p3
Regardless of whether the malicious node uses the address addr of the lawless personxInstead of addr4The red envelope cannot be stolen.
Fig. 4 is a flowchart of another red packet processing method based on zero knowledge proof for blockchain nodes according to an embodiment of the present invention. The method of fig. 4 may be performed in conjunction with the method of fig. 3.
As shown in fig. 4, the present invention further provides another zero-knowledge proof-based red packet processing method applicable to a blockchain node, where a red packet contract is configured on a blockchain, and a zero-knowledge proof circuit for verifying a red packet pickup certificate and a red packet collecting address is configured in the red packet contract, the method includes:
and executing a second red packet getting transaction through the red packet contract, and inputting the third public key, the fourth address and the second certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red packet holds a third private key corresponding to the third public key or not;
whether the fourth address is the address corresponding to the fourth private key held by the red packet user or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to a fourth address.
The second red packet pickup transaction comprises a third public key, a fourth address and second certification information and is generated by packaging the second user end;
after the second user receives the second red packet and receives the third public key and the third private key, the second certification information is generated by taking the third public key and the fourth address as the public input of the certification algorithm of the zero-knowledge certification circuit and taking the third private key and the fourth private key corresponding to the fourth address as the private input of the certification algorithm;
the red envelope contract is further configured for recording the third public key in the red envelope contract when executing the corresponding red envelope transaction.
The red packet processing principle of the method shown in fig. 4 can refer to the method shown in fig. 3, and is not described herein again.
Fig. 5 is a flowchart of another method for red packet processing based on zero knowledge proof applicable to a user terminal according to an embodiment of the present invention.
As shown in fig. 5, the present invention further provides a red packet processing method based on zero knowledge proof for a user side, where a block chain is configured with a red packet contract, and the red packet contract is configured with a zero knowledge proof circuit for verifying a red packet pickup certificate and a red packet recipient address, where the method includes:
s51: receiving a first random number in response to getting a third red packet; wherein the red envelope contract is further configured to record a hash value of the first random number into the red envelope contract when performing the corresponding red envelope transaction;
s53: taking the hash value of the first random number and the fifth address of the current user as public input of a certification algorithm of the zero-knowledge certification circuit, and taking the first random number and a fifth private key corresponding to the fifth address as private input of the certification algorithm to generate third certification information;
s55: generating a third red packet pick-up transaction comprising the hash value of the first random number, the fifth address and third certification information, sending the third red packet pick-up transaction to the blockchain network for the blockchain node to execute through a red packet contract, and inputting the hash value of the first random number, the fifth address and the third certification information into a verification algorithm of a zero-knowledge certification circuit for verification:
whether the user of the red packet has the first random number or not;
whether the fifth address is an address corresponding to a fifth private key held by the red packet user or not is judged;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to a fifth address.
Specifically, the method shown in fig. 5 differs from the method shown in fig. 1/3 in that:
in the method shown in fig. 5, the red packet pickup voucher is a first random number, and the verification algorithm of the red packet pickup voucher is a hash algorithm, that is, it is verified whether the hash value of the first random number is the same as the hash value recorded in the contract.
Similarly, taking an example that the user b sends a 3-person red packet, in the method shown in fig. 5, the user side of the user b needs to randomly generate 3 random numbers r1, r2, and r3, and records hash values of the 3 random numbers, namely hash (r1), hash (r2), and hash (r3), into a red packet contract through red packet transaction;
in step S51, the user side of user c receives the random number r1 in the same manner;
in step S53, the user side of user c generates credential information pro 3 in the same manner:
Prove(hash(r1)、addr5,r1、p5)→prove3。
in step S55, the user side package of user c includes hash (r1), addr5The red envelope of pro 3 gets the transaction tx6, which sends tx6 to the blockchain network.
The blockchain node executes tx6 through a red packet contract, and hashes (r1) and addrs are transmitted5The positive 3 inputs a verification algorithm Verify () to Verify:
Verify(hash(r1),addr5,prove3)→Yes/No。
likewise, when a malicious node parses and discards tx6, the hash (r1), addr, and the hash can only be parsed from tx65Pro 3, r1 cannot be resolved;
regardless of whether the malicious node uses the address addr of the lawless personxInstead of addr5The red envelope cannot be stolen.
Fig. 6 is a flowchart of another red packet processing method based on zero knowledge proof for blockchain nodes according to an embodiment of the present invention. The method of fig. 6 may be performed in conjunction with the method of fig. 5.
As shown in fig. 6, the present invention further provides a red packet processing method based on zero knowledge proof for a blockchain node, where a red packet contract is configured on a blockchain, and a zero knowledge proof circuit for verifying a red packet pickup certificate and a red packet collecting address is configured in the red packet contract, the method includes:
s61: and executing a third red packet getting transaction through the red packet contract, and inputting the hash value of the first random number, the fifth address and third certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red packet has the first random number or not;
whether the fifth address is an address corresponding to a fifth private key held by the red packet user or not is judged;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to a fifth address.
The third red packet pickup transaction comprises a hash value of a first random number, a fifth address and third certification information, and is generated by packaging a third user end;
after the third user receives the third red packet and receives the first random number, the third certification information is generated by taking the hash value and the fifth address of the first random number as the public input of the certification algorithm of the zero-knowledge certification circuit and taking the first random number and a fifth private key corresponding to the fifth address as the private input of the certification algorithm;
the red envelope contract is further configured to record the hash value of the first random number into the red envelope contract when performing the corresponding red envelope transaction.
The red packet processing principle of the method shown in fig. 6 can refer to the method shown in fig. 5, and is not described herein again.
Fig. 7 is a schematic structural diagram of a computer device according to an embodiment of the present invention.
As shown in fig. 7, as another aspect, the present application also provides a computer apparatus 700 including one or more Central Processing Units (CPUs) 701 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)702 or a program loaded from a storage section 708 into a Random Access Memory (RAM) 703. In the RAM703, various programs and data necessary for the operation of the apparatus 700 are also stored. The CPU701, the ROM702, and the RAM703 are connected to each other via a bus 704. An input/output (I/O) interface 705 is also connected to bus 704.
The following components are connected to the I/O interface 705: an input portion 706 including a keyboard, a mouse, and the like; an output section 707 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage section 708 including a hard disk and the like; and a communication section 709 including a network interface card such as a LAN card, a modem, or the like. The communication section 709 performs communication processing via a network such as the internet. A drive 710 is also connected to the I/O interface 705 as needed. A removable medium 711 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 710 as necessary, so that a computer program read out therefrom is mounted into the storage section 708 as necessary.
In particular, according to an embodiment of the present disclosure, the method described in any of the above embodiments may be implemented as a computer software program. For example, embodiments of the present disclosure include a computer program product comprising a computer program tangibly embodied on a machine-readable medium, the computer program comprising program code for performing any of the methods described above. In such an embodiment, the computer program can be downloaded and installed from a network through the communication section 709, and/or installed from the removable medium 711.
As yet another aspect, the present application also provides a computer-readable storage medium, which may be the computer-readable storage medium included in the apparatus of the above-described embodiment; or it may be a separate computer readable storage medium not incorporated into the device. The computer readable storage medium stores one or more programs for use by one or more processors in performing the methods described in the present application.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units or modules described in the embodiments of the present application may be implemented by software or hardware. The described units or modules may also be provided in a processor, for example, each unit may be a software program provided in a computer or a mobile intelligent device, or may be a separately configured hardware device. Wherein the designation of a unit or module does not in some way constitute a limitation of the unit or module itself.
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention herein disclosed is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the present application. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.

Claims (8)

1. A red packet processing method based on zero knowledge proof is characterized in that a block chain is provided with a red packet contract, the red packet contract is provided with a zero knowledge proof circuit used for verifying a red packet picking certificate and a red packet gathering address, the method is suitable for a user side, and the method comprises the following steps:
receiving first data, a first public key and first signature information in response to getting the first red packet; wherein the first signature information is generated by a red envelope user signing the first data with a first private key corresponding to the first public key, the red envelope contract further configured to record the first data and the first public key into a red envelope contract when performing a corresponding red envelope transaction;
the first data, the first public key and a second address of a current user are used as public input of a proving algorithm of the zero-knowledge proving circuit, and the first signature information and a second private key corresponding to the second address are used as private input of the proving algorithm to generate first proving information;
generating a first red packet pickup transaction including the first data, the first public key, the second address and the first certification information and sending the first red packet pickup transaction to a block chain network for a block chain node to execute through the red packet contract, and inputting the first data, the first public key, the second address and the first certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red envelope holds a red envelope pick-up certificate signed by a first private key held by the user of the red envelope;
whether the second address is an address corresponding to a second private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to the second address.
2. A red packet processing method based on zero knowledge proof is characterized in that a red packet contract is configured on a block chain, a zero knowledge proof circuit used for verifying a red packet pickup certificate and a red packet collection address is configured in the red packet contract, the method is suitable for a block chain node, and the method comprises the following steps:
executing a first red envelope pickup transaction through the red envelope contract, inputting first data, a first public key, a second address and first certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red envelope holds a red envelope pick-up certificate signed by a first private key held by the user of the red envelope;
whether the second address is an address corresponding to a second private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
if the two items of verification are successful, transferring the corresponding money of the red envelope to the second address;
the first red packet pickup transaction comprises the first data, the first public key, the second address and the first certification information and is generated by packaging a first user side;
after the first user receives the first data, the first public key and the first signature information, the first user uses the first data, the first public key and the second address as public input of a certification algorithm of the zero-knowledge certification circuit, and uses the first signature information and a second private key corresponding to the second address as private input of the certification algorithm to generate the first certification information;
the red envelope contract is further configured to record the first data and the first public key into the red envelope contract when performing the corresponding red envelope transaction.
3. A red packet processing method based on zero knowledge proof is characterized in that a block chain is provided with a red packet contract, the red packet contract is provided with a zero knowledge proof circuit used for verifying a red packet picking certificate and a red packet gathering address, the method is suitable for a user side, and the method comprises the following steps:
receiving a third public key and a third private key in response to getting the second red envelope; wherein the red envelope contract is further configured to record the third public key into the red envelope contract when performing the corresponding red envelope transaction;
the third public key and a fourth address of a current user are used as public input of a certification algorithm of the zero-knowledge certification circuit, and the third private key and a fourth private key corresponding to the fourth address are used as private input of the certification algorithm to generate second certification information;
generating a second red packet pickup transaction comprising the third public key, the fourth address and the second certification information, and sending the second red packet pickup transaction to a blockchain network for being executed by blockchain nodes through the red packet contract, and inputting the third public key, the fourth address and the second certification information into a verification algorithm of the zero-knowledge certification circuit for verification:
whether the user of the red packet holds a third private key corresponding to the third public key or not;
whether the fourth address is an address corresponding to a fourth private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to the fourth address.
4. A red packet processing method based on zero knowledge proof is characterized in that a red packet contract is configured on a block chain, a zero knowledge proof circuit used for verifying a red packet pickup certificate and a red packet collection address is configured in the red packet contract, the method is suitable for a block chain node, and the method comprises the following steps:
executing a second red envelope pickup transaction through the red envelope contract, and inputting a third public key, a fourth address and second certification information into a verification algorithm of the zero knowledge certification circuit to verify:
whether the user of the red packet holds a third private key corresponding to the third public key or not;
whether the fourth address is an address corresponding to a fourth private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
if the two items of verification are successful, transferring the corresponding money of the red envelope to the fourth address;
the second red packet pickup transaction comprises the third public key, the fourth address and the second certification information and is generated by packaging a second user end;
after the second user receives the third red packet and receives the third public key and the third private key, the second certification information is generated by taking the third public key and the fourth address as public inputs of a certification algorithm of the zero-knowledge certification circuit and taking the third private key and a fourth private key corresponding to the fourth address as private inputs of the certification algorithm;
the red envelope contract is further configured for recording the third public key into the red envelope contract when executing the corresponding red envelope transaction.
5. A red packet processing method based on zero knowledge proof is characterized in that a block chain is provided with a red packet contract, the red packet contract is provided with a zero knowledge proof circuit used for verifying a red packet picking certificate and a red packet gathering address, the method is suitable for a user side, and the method comprises the following steps:
receiving a first random number in response to getting a third red packet; wherein the red envelope contract is further configured to record the hash value of the first random number into the red envelope contract when performing the corresponding red envelope transaction;
taking the hash value of the first random number and a fifth address of the current user as public input of a certification algorithm of the zero-knowledge certification circuit, and taking the first random number and a fifth private key corresponding to the fifth address as private input of the certification algorithm to generate third certification information;
generating a third red packet pickup transaction including the hash value of the first random number, the fifth address and the third certification information and sending the third red packet pickup transaction to a blockchain network for execution by a blockchain node through the red packet contract, and inputting the hash value of the first random number, the fifth address and the third certification information into a verification algorithm of the zero-knowledge certification circuit for verification:
whether the user of the red packet holds the first random number or not;
whether the fifth address is an address corresponding to a fifth private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
and if the two items of verification are successful, transferring the corresponding money of the red envelope to the fifth address.
6. A red packet processing method based on zero knowledge proof is characterized in that a red packet contract is configured on a block chain, a zero knowledge proof circuit used for verifying a red packet pickup certificate and a red packet collection address is configured in the red packet contract, the method is suitable for a block chain node, and the method comprises the following steps:
executing a third red envelope pickup transaction through the red envelope contract, inputting the hash value of the first random number, the fifth address and third certification information into a verification algorithm of the zero-knowledge certification circuit to verify:
whether the user of the red packet holds the first random number or not;
whether the fifth address is an address corresponding to a fifth private key held by the user of the red envelope or not;
if any one of the verification fails, the red envelope is not taken;
if the two items of verification are successful, transferring the corresponding money of the red envelope to the fifth address;
wherein the third red packet pickup transaction includes the hash value of the first random number, the fifth address, and the third certification information, and is generated by a third user;
after the third user receives the third red packet and the first random number, the third certification information is generated by taking the hash value of the first random number and the fifth address as public inputs of a certification algorithm of the zero-knowledge certification circuit and taking the first random number and a fifth private key corresponding to the fifth address as private inputs of the certification algorithm;
the red envelope contract is further configured to record the hash value of the first random number into the red envelope contract when performing the corresponding red envelope transaction.
7. A computer device, the device comprising:
one or more processors;
a memory for storing one or more programs,
the one or more programs, when executed by the one or more processors, cause the one or more processors to perform the method recited in any of claims 1-6.
8. A storage medium storing a computer program, characterized in that the program, when executed by a processor, implements the method according to any one of claims 1-6.
CN202110883014.2A 2021-08-02 2021-08-02 Red packet processing method based on zero knowledge proof, computer equipment and storage medium Pending CN113592469A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110883014.2A CN113592469A (en) 2021-08-02 2021-08-02 Red packet processing method based on zero knowledge proof, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110883014.2A CN113592469A (en) 2021-08-02 2021-08-02 Red packet processing method based on zero knowledge proof, computer equipment and storage medium

Publications (1)

Publication Number Publication Date
CN113592469A true CN113592469A (en) 2021-11-02

Family

ID=78254009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110883014.2A Pending CN113592469A (en) 2021-08-02 2021-08-02 Red packet processing method based on zero knowledge proof, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113592469A (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108764874A (en) * 2018-05-17 2018-11-06 深圳前海微众银行股份有限公司 Anonymous refund method, system and storage medium based on block chain
CN108985760A (en) * 2018-06-15 2018-12-11 杭州复杂美科技有限公司 Method of payment and system, equipment and storage medium
CN109727009A (en) * 2019-01-28 2019-05-07 杭州复杂美科技有限公司 Red packet processing method, equipment and storage medium
CN110363512A (en) * 2019-07-12 2019-10-22 上海唯链信息科技有限公司 The processing of block chain red packet creates, gets method and apparatus, medium and computer program
CN110535648A (en) * 2018-05-24 2019-12-03 腾讯科技(深圳)有限公司 Electronic certificate is generated and verified and key controlling method, device, system and medium
US10535062B1 (en) * 2019-03-20 2020-01-14 Capital One Services, Llc Using a contactless card to securely share personal data stored in a blockchain
CN110827006A (en) * 2019-11-06 2020-02-21 杭州复杂美科技有限公司 Code scanning red packet generating method, equipment and storage medium
CN111159694A (en) * 2019-12-17 2020-05-15 上海七印信息科技有限公司 Private use authorization method of block chain digital assets based on zero knowledge proof
US20200193425A1 (en) * 2018-12-12 2020-06-18 American Express Travel Related Services Company, Inc. Zero-knowledge proof payments using blockchain
US20210058230A1 (en) * 2018-09-30 2021-02-25 Advanced New Technologies Co., Ltd. Blockchain-based transaction method and apparatus, and remitter device
US20210150522A1 (en) * 2018-04-13 2021-05-20 nChain Holdings Limited Computer-implemented system and method suitable for increasing the security of instant off-line blockchain transactions

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210150522A1 (en) * 2018-04-13 2021-05-20 nChain Holdings Limited Computer-implemented system and method suitable for increasing the security of instant off-line blockchain transactions
CN108764874A (en) * 2018-05-17 2018-11-06 深圳前海微众银行股份有限公司 Anonymous refund method, system and storage medium based on block chain
CN110535648A (en) * 2018-05-24 2019-12-03 腾讯科技(深圳)有限公司 Electronic certificate is generated and verified and key controlling method, device, system and medium
CN108985760A (en) * 2018-06-15 2018-12-11 杭州复杂美科技有限公司 Method of payment and system, equipment and storage medium
US20210058230A1 (en) * 2018-09-30 2021-02-25 Advanced New Technologies Co., Ltd. Blockchain-based transaction method and apparatus, and remitter device
US20200193425A1 (en) * 2018-12-12 2020-06-18 American Express Travel Related Services Company, Inc. Zero-knowledge proof payments using blockchain
CN109727009A (en) * 2019-01-28 2019-05-07 杭州复杂美科技有限公司 Red packet processing method, equipment and storage medium
US10535062B1 (en) * 2019-03-20 2020-01-14 Capital One Services, Llc Using a contactless card to securely share personal data stored in a blockchain
CN110363512A (en) * 2019-07-12 2019-10-22 上海唯链信息科技有限公司 The processing of block chain red packet creates, gets method and apparatus, medium and computer program
CN110827006A (en) * 2019-11-06 2020-02-21 杭州复杂美科技有限公司 Code scanning red packet generating method, equipment and storage medium
CN111159694A (en) * 2019-12-17 2020-05-15 上海七印信息科技有限公司 Private use authorization method of block chain digital assets based on zero knowledge proof

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ANCA NITULESC: "zk-SNARKs: A Gentle Introduction", pages 1 - 4, Retrieved from the Internet <URL:https://www.di.ens.fr/~nitulesc/files/Survey-SNARKs.pdf> *
E. BEN SASSON ET AL.: "Zerocash: Decentralized Anonymous Payments from Bitcoin", 2014 IEEE SYMPOSIUM ON SECURITY AND PRIVACY, 31 December 2014 (2014-12-31), pages 459 - 474 *
STEVEN YUE: "浅谈零知识证明之二:简短无交互证明(SNARK)", pages 1 - 12, Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/150246147> *
翟社平 等: "区块链中的隐私保护技术", 西安邮电大学学报, vol. 23, no. 5, 31 December 2018 (2018-12-31), pages 93 - 100 *

Similar Documents

Publication Publication Date Title
CN110992027B (en) Efficient transaction method and device for realizing privacy protection in block chain
CN110766408A (en) Cross-chain transaction verification method, engine, equipment and storage medium for heterogeneous block chain
CN104184713B (en) Terminal identification method, machine identifier register method and corresponding system, equipment
CN107124281B (en) Data security method and related system
CN113095827B (en) Anonymous multiple signature method, computer device, and storage medium
CN101447867B (en) Method for managing digital certificate and system
KR101831604B1 (en) Method for transmitting data, method for authentication, and server for executing the same
WO2020055993A1 (en) Systems and methods for cryptographic key generation and authentication
US20200259650A1 (en) Secure communication with an authentication process
CN116112187B (en) Remote proving method, device, equipment and readable storage medium
WO2021139311A1 (en) Routing forwarding method and apparatus, routing device and readable storage medium
CN109101664A (en) A kind of data transmission method, device, equipment and the medium of lightweight node
CN113098935B (en) Session keeping method, device and storage medium
KR20110009729A (en) Reducing unwanted and unsolicited electronic messages
CN113592469A (en) Red packet processing method based on zero knowledge proof, computer equipment and storage medium
Vattakunnel et al. Modelling and verification of CoAP over routing layer using SPIN model checker
US11874948B1 (en) Methods for verifying database query results and devices thereof
CN111400756A (en) Private data uplink method, device and storage medium
CN114844716B (en) Digital signature message processing method, device, equipment and computer medium
JP2014131212A (en) Verification program and information processing device
WO2022205957A1 (en) Method and apparatus for transferring message across chains on basis of relay device
CN113592477B (en) Cross-chain asset transfer method, computer device, and storage medium
CN111524010B (en) Parallel chain consensus method, apparatus and storage medium
CN114037449A (en) Cross-chain asset transfer method, computer device, and storage medium
CN113112269A (en) Multiple signature method, computer device, and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination