An anonymous supervisable cross-chain privacy protection method based on zero-knowledge proof

By deploying smart contracts and virtual address generators in cross-chain transactions, combined with zero-knowledge proof algorithms, the privacy leakage problem in cross-chain transactions is solved, enabling secure and efficient anonymous transaction verification and asset exchange.

CN115859316BActive Publication Date: 2026-05-05KUNMING UNIV OF SCI & TECH
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
KUNMING UNIV OF SCI & TECH
Filing Date
2022-08-23
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

Existing cross-chain transactions suffer from privacy breaches, as third-party participants collect user transaction information, leading to insecure asset information.

Method used

An anonymous and regulated cross-chain privacy protection method based on zero-knowledge proof is adopted. By deploying cross-chain smart contracts on the main chain and side chains, using a virtual address generator to generate anonymous transactions, and using a relay chain for transaction verification and asset exchange, the anonymity and correctness of transactions are ensured by combining the Groth16 zero-knowledge proof algorithm.

Benefits of technology

It improves the security and verification stability of cross-chain transactions, reduces transaction time, enhances local storage and transmission efficiency, and ensures the anonymity and integrity of transactions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115859316B_ABST
    Figure CN115859316B_ABST
Patent Text Reader

Abstract

This invention relates to an anonymous and oversightable cross-chain privacy protection method based on zero-knowledge proofs, belonging to the field of network security technology. First, cross-chain smart contracts and virtual address generator contracts are deployed on the main chain and side chains, connected via a cross-chain relay network. Then, the transaction initiator uses the cross-chain contract on the relay chain to call the cross-chain contracts of both transaction chains to generate an anonymous transaction. Finally, a zero-knowledge proof algorithm calculates the proof information, packages it together with the transaction, and sends it to the recipient and the relay chain, completing the transaction. This invention protects user privacy information, enables oversightable transaction traceability, and facilitates secure and efficient cross-chain transactions, improving the security of blockchain cross-chain communication in a zero-trust environment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to an anonymous and regulated cross-chain privacy protection method based on zero-knowledge proofs, belonging to the field of cybersecurity technology. Background Technology

[0002] Due to the rapid development of blockchain technology, numerous blockchain frameworks have emerged. These blockchains can be categorized into three main types based on their openness: public blockchains, consortium blockchains, and private blockchains. These blockchains differ in standards, consensus algorithms, and asset values. The vast blockchain networks are isolated from each other, forming different parallel networks. Users need to use physical assets as collateral to facilitate transactions between two blockchains. Therefore, cross-chain technology has emerged to meet this need.

[0003] Cross-chain technology primarily establishes bridges between different blockchains to facilitate cross-blockchain transactions and enable value exchange or transfer. It guarantees interoperability, atomicity, and consistency through the use of specific protocol standards. Currently verified cross-chain technologies include hash time locking, notary mechanisms, sidechains / relay chains, and distributed private key control.

[0004] In these cross-chain technologies, in order to ensure the accuracy of transaction asset amounts and the authenticity and validity of transactions, third-party participants collect user transaction information and asset information, which leads to privacy leakage issues in multi-party blockchain transactions. Summary of the Invention

[0005] The technical problem to be solved by this invention is to provide an anonymous and regulated cross-chain privacy protection method based on zero-knowledge proof, so as to solve the problem of privacy leakage in the cross-chain transaction process of blockchain in the prior art.

[0006] The technical solution of this invention is: an anonymous and regulated cross-chain privacy protection method based on zero-knowledge proof. First, cross-chain smart contracts and virtual address generator contracts are deployed on the main chain and side chain, and the network is connected through cross-chain relay. Then, the transaction initiator uses the cross-chain contract on the relay chain to call the cross-chain contracts of the two transaction chains to generate an anonymous transaction. Finally, the zero-knowledge proof algorithm calculates the proof information and packages it together with the transaction and sends it to the recipient and the relay chain, and the initiator and recipient complete the transaction.

[0007] The specific steps are as follows:

[0008] Step 1: Deploy cross-chain smart contracts and process control contracts on the main and side chains, and connect the network using cross-chain routing. Set the initiator as Chaina and the receiver as Chainb. Connect to the relay chain network R-Chain through relay routing, deploy cross-chain smart contracts on Chaina and Chainb, and the network setup is complete.

[0009] Step 2: The initiator of the transaction creates a cross-chain transaction. The cross-chain router uses a virtual address generator to generate a new transaction address, calls the cross-chain smart contract, and locks the transaction on the relay chain. Chaina creates a transaction, calls the cross-chain smart contract to generate the transaction, and corresponds the source address addr_a and the destination address addr_a′ of the transaction. Here, addr_a′ is a virtual address mapped by the virtual address generator, forming an anonymous transaction T(addr_a, addr_a′). The relay router collects the asset proof of this transaction, and the transaction is locked.

[0010] Step 3: The relay chain anchors the asset, verifies the legality of the transaction information between the two parties, and the receiving party applies to the relay chain to unlock the asset, completing the transaction. The relay chain records this transaction. The specific steps of Step 3 are as follows:

[0011] Step 3.1: The relay route collects identity verification and SPV transaction verification from both parties to the transaction.

[0012] Step 3.2: R-Chain verifies whether asset T(addr_a,addr_a′) satisfies the transaction. If not, the transaction is abandoned and the transaction is rolled back.

[0013] Step 3.3: If the conditions are met, the transaction will be transferred to the public account address addr_Ra, forming a new transaction Tra(T(*,addr_a′),addr_Ra), and the Chaina part of the transaction will be completed.

[0014] Step 3.4: Some Chainb transactions are transferred from the relay chain public account address addr_Rb to the destination address addr_b′, and then the relay routing controls the unlocking of the transactions and transfers them to addr_b, forming a new transaction Trb(addr_b′, addr_b). At this point, the assets of both parties are exchanged, and the relay chain records the transaction result.

[0015] Step 4: Based on the transaction records on the relay chain, use a virtual address generator to trace the transaction and broadcast it to both parties involved. First, query the user's transaction records on the main chain to obtain the user's transaction order n, and then input n into the generation function. Obtain the point set A(x,y), generate the external address in the generator, and the two parties in the transaction use the point sets Aa,Ab to calculate the following formula (1). The intersection of the points yields an anonymous list of transaction records.

[0016] Urecord = Aa(x(na),y)∩Ab(x(nb),y) (1)

[0017] The specific steps of the Step2 virtual address generator algorithm are as follows:

[0018] Step 2.1: Select the generating function as shown in equation (2), where the parameter η is used to control the amplitude of the function, ω controls the period, and β adjusts the curve in the y-axis direction. Its main function is to make the generating function y>0 when x=0.

[0019]

[0020] Step 2.2: Take a discrete point set A(x,y) according to equation (3), where α is the sampling density on the x-axis and n is the number of transactions. Each time a transaction is added, n = n + 1.

[0021]

[0022] Step 2.3: Use the snowflake algorithm to concatenate a 64-bit external address. It extracts the last 16 bits of the common address of each chain as a prefix. The first bit is the sign bit, which is fixed to 0. The last 47 bits are generated by taking the first 47 bits of the y-value of the point set. If the number of bits is insufficient, it is padded with 0.

[0023] Step 2.4: Deliver the generated virtual address to the cross-chain smart contract.

[0024] The specific steps of the transaction proof in Step 3.1 are as follows:

[0025] Step 3.1.1: The relay router receives the identity information and SPV proof information from Chaina, extracts the transaction value, and verifies whether it is greater than or equal to the value to be achieved in this transaction.

[0026] Step 3.1.2: Use the Groth16 zero-knowledge proof algorithm to generate identity proof. The generated identity proof file contains a private key, a verification key, and proof evidence. The verification key is stored on the relay chain, and the proof evidence is placed on the transaction Tra to form a new transaction certificate.

[0027] The beneficial effects of this invention are:

[0028] 1. Compared with existing technologies, the present invention improves transaction verification time by 3% and also enhances verification stability.

[0029] 2. This invention represents a significant improvement in local storage, on-chain storage, and byte transmission.

[0030] 3. This invention uses virtual addresses to replace the original real addresses, enabling anonymous transactions during cross-chain processes, and employs zero-knowledge proofs to ensure the correctness of transactions, thereby improving the security of the entire cross-chain transaction. Attached Figure Description

[0031] Figure 1 This is a detailed flowchart illustrating the implementation of cross-chain transaction privacy protection in this invention;

[0032] Figure 2 This is a comparison chart of the number of users and transaction time changes in the method described in this invention. Detailed Implementation

[0033] The present invention will be further described below with reference to the accompanying drawings and specific embodiments.

[0034] Implementation method one: such as Figure 1 As shown, an anonymous and manageable cross-chain privacy protection method based on zero-knowledge proofs is presented, with the following specific steps:

[0035] Step 1: Deploy cross-chain smart contracts and process control contracts on the main and side chains, and connect the network using cross-chain routing. Set the initiator as Chaina and the receiver as Chainb. Connect to the relay chain network R-Chain through relay routing, deploy cross-chain smart contracts on Chaina and Chainb, and the network setup is complete.

[0036] Step 2: The initiator of the transaction creates a cross-chain transaction. The cross-chain router uses a virtual address generator to generate a new transaction address, calls the cross-chain smart contract, and locks the transaction on the relay chain. Chaina creates a transaction, calls the cross-chain smart contract to generate the transaction, and corresponds the source address addr_a and the destination address addr_a′ of the transaction. Here, addr_a′ is a virtual address mapped by the virtual address generator, forming an anonymous transaction T(addr_a, addr_a′). The relay router collects the asset proof of this transaction, and the transaction is locked.

[0037] Step 3: The relay chain anchors the asset, verifies the legality of the transaction information between the two parties, and the receiving party applies to the relay chain to unlock the asset, completing the transaction. The relay chain records this transaction. The specific steps of Step 3 are as follows:

[0038] Step 3.1: The relay route collects identity verification and SPV transaction verification from both parties to the transaction.

[0039] Step 3.2: R-Chain verifies whether asset T(addr_a,addr_a′) satisfies the transaction. If not, the transaction is abandoned and the transaction is rolled back.

[0040] Step 3.3: If the conditions are met, the transaction will be transferred to the public account address addr_Ra, forming a new transaction Tra(T(*,addr_a ′),addr_Ra), and the Chaina part of the transaction will be completed.

[0041] Step 3.4: Some Chainb transactions are transferred from the relay chain public account address addr_Rb to the destination address addr_b′, and then the relay routing controls the unlocking of the transactions and transfers them to addr_b, forming a new transaction Trb(addr_b′, addr_b). At this point, the assets of both parties are exchanged, and the relay chain records the transaction result.

[0042] Step 4: Use a virtual address generator to trace the transaction records on the relay chain and broadcast to both parties. First, query the user's transaction records on the main chain to obtain the user's transaction order n. Input n into the generation function φ(x) to obtain the point set A(x,y). Generate an external address in the generator. Both parties use the point sets Aa and Ab to calculate the intersection of the following formula (1) to obtain an anonymous list of transaction records.

[0043] Urecord = Aa(x(na),y)∩Ab(x(nb),y) (1)

[0044] The specific steps of the Step2 virtual address generator algorithm are as follows:

[0045] Step 2.1: Select the generating function as shown in equation (2), where the parameter η is used to control the amplitude of the function, ω controls the period, and β adjusts the curve in the y-axis direction. Its main function is to make the generating function y>0 when x=0.

[0046]

[0047] Step 2.2: Take a discrete point set A(x,y) according to equation (3), where α is the sampling density on the x-axis and n is the number of transactions. Each time a transaction is added, n = n + 1.

[0048]

[0049] Step 2.3: Use the snowflake algorithm to concatenate a 64-bit external address. It extracts the last 16 bits of the common address of each chain as a prefix. The first bit is the sign bit, which is fixed to 0. The last 47 bits are generated by taking the first 47 bits of the y-value of the point set. If the number of bits is insufficient, it is padded with 0.

[0050] Step 2.4: Deliver the generated virtual address to the cross-chain smart contract.

[0051] The specific steps of the transaction proof in Step 3.1 are as follows:

[0052] Step 3.1.1: The relay router receives the identity information and SPV proof information from Chaina, extracts the transaction value, and verifies whether it is greater than or equal to the value to be achieved in this transaction.

[0053] Step 3.1.2: Use the Groth16 zero-knowledge proof algorithm to generate identity proof. The generated identity proof file contains a private key, a verification key, and proof evidence. The verification key is stored on the relay chain, and the proof evidence is placed on the transaction Tra to form a new transaction certificate.

[0054] like Figure 2 The chart shown here illustrates a comparison of the number of users and transaction time changes in the method described in this invention:

[0055] The horizontal axis represents the number of participating users, and the vertical axis represents the data transmission time. Initially, with fewer than 15 users, the coin mixing solution offers relatively good performance. However, as the number of users engaging in cross-chain transactions increases, transaction times increase dramatically due to the complexity of the coin mixing technology. In contrast, this invention exhibits more stable performance. Even with 50 users, the single transaction time is only 92.4ms. The difference between the minimum and maximum number of users in the experiment is less than 10ms, significantly less than the basic CoinShuffle coin mixing solution.

[0056] The specific embodiments of the present invention have been described in detail above with reference to the accompanying drawings. However, the present invention is not limited to the above embodiments. Within the scope of knowledge possessed by those skilled in the art, various changes can be made without departing from the spirit of the present invention.

Claims

1. A cross-chain privacy protection method based on zero-knowledge proofs that is anonymous and manageable, characterized in that: Step 1: Deploy cross-chain smart contracts and process control contracts on the main and side chains, and use cross-chain routing to connect the network; Step 2: The initiator of the transaction creates a cross-chain transaction. The cross-chain uses a virtual address generator to generate a new transaction address, calls the cross-chain smart contract, and locks the transaction on the relay chain. Step 3: The relay chain anchors the asset, verifies the legality of the transaction information between the two parties, the receiving party applies to the relay chain to unlock the asset, the transaction is completed, and the relay chain records this transaction; Step 4: Use a virtual address generator to trace the transaction records on the relay chain and broadcast the information to both parties involved in the transaction. Step 2 specifically refers to: Chain a Create a transaction by calling a cross-chain smart contract to generate a transaction corresponding to the source address addr_a and the destination address addr_a', where addr_a' is a virtual address mapped by a virtual address generator, forming an anonymous transaction T(addr_a, addr_a'). The relay route collects the asset proof of the transaction and locks the transaction. The virtual address generator is: Step 2.1: Select the generating function as shown in equation (2), where the parameter η is used to control the amplitude of the function, ω controls the period, and β adjusts the curve in the y-axis direction so that the generating function y>0 when x=0; φ(x)=|η·x·sin(ω·x)+β|, x∈(0,+∞)(2); Step 2.2: According to equation (3), take a discrete α as the sampling density on the x-axis, and n is the number of transactions. Each time a transaction is added, n = n + 1. (3); Step 2.3: Use the snowflake algorithm to concatenate a 64-bit external address, extract the last 16 bits of the common address of each chain as a prefix, the first bit is the sign bit, which is fixed to 0, and the last 47 bits are generated by taking the first 47 bits of the y value of the point set. If the number of bits is insufficient, pad with 0. Step 2.4: Deliver the generated virtual address to the cross-chain smart contract.

2. The anonymous and manageable cross-chain privacy protection method based on zero-knowledge proofs according to claim 1, characterized in that, Step 1 specifically involves: setting the initiator as Chaina and the receiver as Chainb, connecting to the relay chain network R-Chain through relay routing, deploying cross-chain smart contracts on Chaina and Chainb, and completing the network setup operation.

3. The anonymous and manageable cross-chain privacy protection method based on zero-knowledge proofs according to claim 1, characterized in that, Step 3 specifically refers to: Step 3.1: The relay route collects identity verification and SPV transaction verification from both parties to the transaction; Step 3.2: R-Chain verifies whether asset T(addr_a,addr_a´) satisfies the transaction. If not, the transaction is abandoned and the transaction is rolled back. Step 3.3: If the conditions are met, the transaction is transferred to the public account address addr_Ra, forming a new transaction Tra(T(*,addr_a´),addr_Ra), and the Chaina part of the transaction is completed; Step 3.4: Some Chainb transactions are transferred from the relay chain public account address addr_Rb to the destination address addr_b', and then the relay routing controls the unlocking of the transactions and transfers them to addr_b, forming a new transaction Trb(addr_b', addr_b). At this point, the assets of both parties are exchanged, and the relay chain records the transaction result.

4. The anonymous and manageable cross-chain privacy protection method based on zero-knowledge proofs according to claim 1, characterized in that, Step 4 specifically involves: using a virtual address generator to trace the transaction records on the relay chain; broadcasting this process to both parties; firstly, querying the user's transaction records on the main chain to obtain the user's transaction order n; inputting n into the generation function φ(x) to obtain the point set A(x,y); generating an external address in the generator; and then using the point set A. a A b Calculate the intersection of the following equation (1): Urecord=A a (x(n a ),y)∩A b (x(n b ),y)(1); Finally, an anonymous list of transaction records was obtained.

5. The anonymous and manageable cross-chain privacy protection method based on zero-knowledge proofs according to claim 3, characterized in that, Step 3.1 specifically refers to: Step 3.1.1: The relay router receives the identity information and SPV proof information from Chaina, extracts the transaction value, and verifies whether it is greater than or equal to the value to be achieved in this transaction. Step 3.1.2: Use the Groth16 zero-knowledge proof algorithm to generate identity proof. The generated identity proof file contains a private key, a verification key, and proof evidence. The verification key is stored on the relay chain, and the proof evidence is placed on the transaction Tra to form a new transaction certificate.