Block chain white list method supporting identity anonymity
By introducing one-time address and zero-knowledge proof technology into the blockchain, combined with cryptographic accumulator, the problem of how to protect user privacy in blockchain applications is solved, identity anonymity and effective verification are achieved, and the complexity and risks of system contract deployment are avoided.
Patent Information
- Application Number
- CN202411727273.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-28
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2044-11-28
AI Technical Summary
In the practical application of blockchain, especially in business scenarios involving sensitive information or privacy protection, how to protect user privacy while ensuring data transparency has become a technical problem that needs to be solved urgently. The existing technology does not support identity anonymity and requires the deployment of system contracts, which increases system complexity and potential vulnerabilities.
By introducing one-time address technology, users generate a random one-time address through their public key when calling blockchain services, and use zero-knowledge proof technology to generate a whitelist proof to prove whether their identity is on the whitelist. This method is based on a cryptographic accumulator, and the user calls the business anonymously. After the whitelist verification is passed, the contract calls the business.
It realizes the anonymity of the user's identity when participating in blockchain business. At the same time, the combination of cryptographic accumulator and zero-knowledge proof ensures the obscureness and verification of anonymous identity, avoiding the complexity and potential risks of deploying system contracts.
Smart Images

Figure CN119603034A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of blockchain technology, and in particular to a blockchain whitelist method. Background Art
[0002] With the rapid development of blockchain technology, its application in finance, supply chain management, identity authentication and other fields is becoming more and more extensive. The core characteristics of blockchain technology are decentralization and data immutability, which provide strong guarantees for data transparency and security. However, in the actual application of blockchain, especially in business scenarios involving sensitive information or privacy protection, how to protect user privacy while ensuring data transparency has become a technical problem that needs to be solved urgently.
[0003] The patent document "A method, system and storage medium for controlling the calling authority of a smart contract in a consortium chain" (publication number CN112395570A) discloses a method, system and storage medium for controlling the calling authority of a smart contract in a consortium chain. The method is as follows: before building a consortium chain, a system contract for role management is configured. After building the consortium chain, the management end creates different types of role attributes by calling the system contract, and assigns one or more corresponding types of role attributes to each client; the client performs client authorization settings by calling the system contract to authorize one or more methods in each deployed smart contract to the corresponding type of role attribute; if a smart contract is called, the node determines whether it has the authority to call the corresponding method of the smart contract based on the role attribute corresponding to the identity identifier of the client that initiated the smart contract call. Therefore, the invention can finely control the developer user's access to or call of contracts. However, the invention still has certain shortcomings, such as:
[0004] (1) Identity anonymity is not supported. In the method provided by this invention, each client needs to have a clear identity, and this identity is associated with its role attributes. This means that every time a smart contract is called, the node's verification process will reveal the identity of the client that initiated the call. This may lead to data leakage and user behavior tracking due to insufficient privacy protection. In some application scenarios, such as decentralized finance (DeFi), anonymous voting systems, or privacy-preserving transactions, users may want to remain anonymous. However, since this invention does not support identity anonymity, it cannot be applied to these scenarios, which limits its scope of application.
[0005] (2) System contracts need to be deployed. Deploying a system contract for role management means introducing an additional logic and data processing layer on the consortium chain. This not only increases the complexity of the system, but may also introduce new potential vulnerabilities and failure points; it will also increase system maintenance costs and affect performance. Summary of the invention
[0006] This application provides a blockchain whitelist method that supports identity anonymity, aiming to solve the problem of existing technologies ensuring the transparency of blockchain data while protecting the privacy of users.
[0007] The present application provides a blockchain whitelist method that supports identity anonymity. The method sets an access whitelist of public addresses for blockchain business smart contracts. The whitelist is based on a cryptographic accumulator. When a user calls a business smart contract, a random one-time address is generated through his or her public key. The user uses the one-time address to call the business, including steps S1 to S4.
[0008] Step S1, check whether your public address is in the whitelist. When the public address is in the whitelist, use zero-knowledge proof technology to generate a whitelist proof based on a cryptographic accumulator; otherwise, apply to add the public address to the whitelist and update the accumulated value of the cryptographic accumulator.
[0009] Step S2, using zero-knowledge proof technology to generate a whitelist proof based on a cryptographic accumulator, including steps S21-S23.
[0010] Step S21, using zero-knowledge proof technology, write constraints related to one-time addresses, public keys, and whitelist verification.
[0011] Step S22, setting the public input and secret input of the zero-knowledge proof algorithm.
[0012] Step S23, performing calculation of the zero-knowledge proof technology proof algorithm to obtain a whitelist proof;
[0013] Step S3, adding the generated whitelist certificate to the transaction of calling the service, and signing the transaction using the private key corresponding to the one-time address.
[0014] Step S4: submit the signed transaction to the blockchain network.
[0015] The above scheme may optionally also include: the business smart contract receives the transaction submitted by the user to the blockchain network and verifies the transaction, runs the zero-knowledge proof technology verification algorithm, verifies the validity of the whitelist proof, and if the verification is successful, the business smart contract makes a business call.
[0016] The above scheme may further optionally include: performing calculations of a zero-knowledge proof technology verification algorithm based on constraints related to one-time addresses, public public keys, and whitelist verification written using zero-knowledge proof technology, and public inputs of the zero-knowledge proof technology, to confirm the validity of the whitelist proof.
[0017] In the above scheme, optionally, it includes: the zero-knowledge proof technology is specifically zk-STARK technology.
[0018] In the above solution, optionally, the step S21 specifically includes steps S211 to S213.
[0019] Step S211, write a zero-knowledge proof constraint for calculating a one-time address.
[0020] Step S212, write a zero-knowledge proof constraint for calculating the public address from the public key.
[0021] Step S213, write a zero-knowledge proof constraint for verifying that the user's public address is in the whitelist.
[0022] In the above scheme, further optionally, it includes: when the cryptographic accumulator adopts a Merkle tree, the step S213 specifically includes writing a zero-knowledge proof constraint for verifying the Merkle tree proof path.
[0023] In the above solution, optionally, step S22 specifically includes step S221-step S222.
[0024] Step S221, setting the public input of the zero-knowledge proof technology to the one-time address and the accumulated value of the cryptographic accumulator.
[0025] Step S222, setting the secret input to a random number, a public key, a public address, and a cryptographic accumulator proof that the user's public address is in the whitelist; wherein the random number is generated by the user and is used to calculate a one-time public key.
[0026] In the above scheme, optionally, when the user calls the business smart contract, a random one-time address is generated by his own public key, including steps S01 to S03.
[0027] Step S01: The user generates a random number t using his / her public key P A The one-time public key is calculated using the following formula:
[0028] P one =t·G+P A
[0029] Where G represents the public base point on the elliptic curve.
[0030] Step S02: The user uses his own private key S A , calculate the one-time private key S one , the calculation formula is:
[0031] S one =t+S A
[0032] Among them, the private key S A Satisfy P A =S A G.
[0033] Step S03, using the one-time public key P one , get the one-time address A one , the calculation formula is:
[0034] A one =Address(P one )
[0035] Where Address() represents a function for calculating a one-time address.
[0036] In the above solution, optionally, adding the public address to the whitelist includes step S51-step S52.
[0037] Step S51: The user applies to the service provider to add the public address to the whitelist.
[0038] Step S52, if passed, then in the business smart contract, the public address is added to the address list of the whitelist, and the accumulated value of the cryptographic accumulator of the whitelist address list is updated.
[0039] In the above solution, optionally, removing the public address from the whitelist includes step S61-step S62.
[0040] Step S61: The user applies to the business provider, or the business provider proactively removes the public address from the whitelist.
[0041] Step S62, if passed, then in the business smart contract, the public address is removed from the whitelist address list, and the accumulated value of the cryptographic accumulator of the whitelist address list is updated.
[0042] Compared with the prior art, this application has at least the following beneficial effects:
[0043] Based on further analysis and research of existing technical problems, this application recognizes that in the actual application of blockchain, especially in business scenarios involving sensitive information or privacy protection, how to protect user privacy while ensuring data transparency has become a technical problem that needs to be solved urgently. By introducing one-time address technology, the identity anonymity of users when participating in blockchain business is achieved; at the same time, combined with the application of cryptographic accumulators and zero-knowledge proofs, the blockchain can verify whether the anonymous identity is on the whitelist, thereby ensuring the confidentiality of the user identity and the effectiveness of the verification.
[0044] Patent document CN112395570A requires the deployment of a system contract, and the system contract of the patent is the underlying contract of the system, that is, the contract needs to be deployed as a "system component" when the blockchain is built. If a chain does not deploy the contract, then the method provided by the patent cannot be used. Compared with patent document CN112395570A, this application can be used on any chain, and does not require the deployment of a system contract, but only requires the deployment of a common contract. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] Figure 1 A schematic diagram of a business process for calling a blockchain whitelist method that supports identity anonymity is provided for one embodiment of the present application. DETAILED DESCRIPTION
[0046] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0047] In the description of the present application: unless otherwise specified, expressions such as “include”, “comprising”, “having”, etc. also mean “not limited to” (certain units, components, materials, steps, etc.).
[0048] Concept definition and explanation:
[0049] Elliptic curve: An elliptic curve is a plane algebraic curve defined as satisfying the equation y 2 =x 3 +ax+b, where a and b are real constants. Elliptic curves are widely used in cryptography because of their computational difficulty in the elliptic curve discrete logarithm problem (ECDLP), which can provide efficient and secure encryption methods.
[0050] Public key: A public key is a public encryption key in a public key encryption system, used to encrypt messages or verify digital signatures. The public key is used in pairs with the corresponding private key, where the public key is public and the private key is kept secret, ensuring that only the person holding the private key can decrypt the information or generate a valid signature.
[0051] Private key: A private key is a secret key used to decrypt messages or generate digital signatures in a public key encryption system. It exists in pairs with the public key. The public key is public, while the private key must be kept strictly confidential. The security of the private key is critical because anyone who possesses the private key can decrypt information encrypted by the public key or forge a signature.
[0052] Address: An address is an identifier used in a blockchain system to receive digital assets, consisting of a string of letters and numbers. The process of generating an address usually starts with a public key generated by the user. First, the user generates a pair of keys: a private key and a public key. The public key is calculated from the private key using an elliptic curve cryptographic algorithm. The public key is then double-hashed (for example, first with SHA-256 and then with RIPEMD-160) to obtain a shorter hash value. Finally, this hash value is specifically encoded (such as Base58Check encoding) and prefixed to generate the final address. This address can be publicly used to receive digital assets, while the corresponding private key must be kept confidential to ensure the security of the transfer.
[0053] Hash function: A hash function is an algorithm that converts data input of arbitrary length into an output (hash value) of fixed length. Hash functions are one-way, that is, the original input cannot be reversed from the hash value, and the hash values generated for different inputs are almost always different. It is widely used in data integrity verification, digital signatures, and cryptography.
[0054] zk-STARK and related concepts:
[0055] zk-STARK (Zero-Knowledge Scalable Transparent Argument of Knowledge) is a zero-knowledge proof technology that allows a party to prove the authenticity of a piece of knowledge or data without revealing any specific information. zk-STARK is efficient, scalable, and transparent. It does not rely on trusted settings and can provide fast verification in large-scale data and complex calculations. It has important applications in the fields of blockchain and privacy protection.
[0056] Constraints: A set of rules or conditions imposed on each state and transition between states in a computational process in order to verify the correctness of the computational process.
[0057] Public Input: Input data that is known to both parties and does not need to be hidden during the proof process. This data is usually used as the starting point of the calculation or the basis for verification.
[0058] Secret input: During the proof process, one party wishes to hide input data that the other party does not want to know. This data is usually sensitive information such as personal privacy or business secrets.
[0059] Proof Algorithm: A protocol that does not require a trusted setup. By arithmetizing the computation process and making polynomial commitments, it is possible to prove the correctness of the computation results to the verifier without leaking any private data.
[0060] Verification algorithm: By performing a series of checks and calculations on the proof information provided by the prover, the correctness of the calculation process is verified to ensure that the prover has not cheated.
[0061] Smart Contract: A smart contract is a self-executing code deployed on the blockchain to automate and execute contract terms. It runs automatically when specific conditions are met without human intervention, thus ensuring the transparency and credibility of the contract. Smart contracts can handle functions such as asset transfer, automatic payment, and verification of conditions, and are widely used in finance, supply chain, insurance and other fields. Because it is based on blockchain technology, smart contracts are tamper-proof and irreversible, ensuring the security and reliability of contract execution.
[0062] In one embodiment, reference Figure 1 , provides a blockchain whitelist method that supports identity anonymity, the method is to set an access whitelist of public addresses for blockchain business smart contracts, the whitelist is based on cryptographic accumulators, when a user calls a business smart contract, a random one-time address is generated through his own public key, and the user uses the one-time address to call the business, including steps S1-step S4.
[0063] Step S1, check whether your public address is in the whitelist. When the public address is in the whitelist, use zero-knowledge proof technology to generate a whitelist proof based on the cryptographic accumulator; otherwise, apply to add the public address to the whitelist and update the accumulated value of the cryptographic accumulator.
[0064] Step S2, using zero-knowledge proof technology to generate a whitelist proof based on a cryptographic accumulator, including steps S21-S23.
[0065] Step S21, using zero-knowledge proof technology, write constraints related to one-time addresses, public keys, and whitelist verification.
[0066] Step S22, setting the public input and secret input of the zero-knowledge proof algorithm.
[0067] Step S23, perform calculation of the zero-knowledge proof technology proof algorithm to obtain a whitelist proof.
[0068] Step S3, add the generated whitelist certificate to the transaction of calling the service, and sign the transaction using the private key corresponding to the one-time address.
[0069] Step S4: submit the signed transaction to the blockchain network.
[0070] In this embodiment, a blockchain whitelist method that supports identity anonymity is proposed: each user holds a public key and address of a public identity, the business party sets an admission whitelist of public addresses for the blockchain business smart contract, and uses a cryptographic accumulator to calculate the cumulative value of the whitelist. Each time a user calls a contract, a random one-time address is generated through his or her public public key, and a zero-knowledge "whitelist proof" is generated to prove that he or she is in the whitelist while maintaining identity anonymity. Use a one-time address as the sender of a blockchain transaction, and upload the whitelist proof to the chain through a transaction. After the chain verification is passed, this one-time address can be allowed to call the business.
[0071] By introducing one-time address technology, users can achieve anonymity when participating in blockchain business; at the same time, combined with the application of cryptographic accumulators and zero-knowledge proofs, the blockchain can verify whether the anonymous identity is on the whitelist, thereby ensuring the anonymity of the user's identity and the effectiveness of the verification.
[0072] In one embodiment, based on the constraints related to the one-time address, public public key and whitelist verification written by zero-knowledge proof technology, and the public input of the zero-knowledge proof technology, the zero-knowledge proof technology verification algorithm is calculated to confirm the validity of the whitelist proof.
[0073] In one embodiment, the zero-knowledge proof technology is specifically zk-STARK technology. Users can also use other zero-knowledge proof technologies according to specific circumstances, and this application does not make specific limitations.
[0074] In one embodiment, step S21 is to write constraints related to one-time addresses, public keys, and whitelists based on cryptographic accumulator verification, and step S21 specifically includes steps S211 to S213.
[0075] Step S211, write a zero-knowledge proof constraint for calculating a one-time address.
[0076] Step S212, write a zero-knowledge proof constraint for calculating the public address from the public key.
[0077] Step S213, write a zero-knowledge proof constraint for verifying that the user's public address is in the whitelist.
[0078] In one embodiment, when the cryptographic accumulator adopts a Merkle tree, step S213 specifically includes writing a zero-knowledge proof constraint for verifying the Merkle tree proof path.
[0079] In one embodiment, step S22 is to set the public input and secret input of the zero-knowledge proof technology proof algorithm, and step S22 specifically includes steps S221 and S222.
[0080] Step S221, setting the public input of the zero-knowledge proof technology to the one-time address and the accumulated value of the cryptographic accumulator.
[0081] Step S222, setting the secret input to a random number, a public key, a public address, and a cryptographic accumulator proof that the user's public address is in the whitelist; wherein the random number is generated by the user and is used to calculate a one-time public key.
[0082] In this embodiment, the user's one-time address A one The process of calling a service is as follows:
[0083] 1. If the user's public address A is not in the whitelist, add it to the whitelist.
[0084] 2. Use zk-STARK technology to generate whitelist proof. The process includes:
[0085] (1) Write a zk-STARK constraint to calculate a one-time address.
[0086] (2) Write a zk-STARK constraint that computes the public address from the public key.
[0087] (3) Write a zk-STARK constraint to verify that the user’s public address is in the whitelist of cryptographic accumulators. For example, if the cryptographic accumulator uses a Merkle tree, write a zk-STARK constraint to verify the Merkle tree proof path.
[0088] (4) Set the zk-STARK public input to the one-time address and the cumulative value of the cryptographic accumulator; set the secret input to the random number t, the public key, the public address, and the cryptographic accumulator proof that the user's public address is in the whitelist.
[0089] (5) Perform calculations on the zk-STARK proof algorithm to obtain a whitelist proof.
[0090] 3. The user adds the whitelist certificate to the transaction calling the service and uses the one-time address A one The corresponding private key signs the transaction.
[0091] In one embodiment, the business smart contract receives transactions submitted by users to the blockchain network and verifies the transactions, runs a zero-knowledge proof technology verification algorithm, verifies the validity of the whitelist proof, and if the verification is successful, the business smart contract makes a business call.
[0092] In this embodiment, the user puts the above transaction on the chain. The business smart contract receives and verifies the transaction, including running the zk-STARK verification algorithm to verify the validity of the whitelist proof. The verification algorithm is as follows:
[0093] Based on the above zk-STARK constraints and public input (no secret input is required), the zk-STARK verification algorithm is calculated to obtain a valid or invalid result.
[0094] If the verification is successful, it proves that the user is allowed to call the service. The service call is made in the smart contract.
[0095] In one embodiment, when a user calls a business smart contract, a random one-time address is generated through his / her public key, including steps S01 to S03.
[0096] Step S01: The user generates a random number t using his / her public key P A The one-time public key is calculated using the following formula:
[0097] P one =t·G+P A
[0098] Where G represents the public base point on the elliptic curve.
[0099] Step S02: The user uses his own private key S A , calculate the one-time private key S one , the calculation formula is:
[0100] S one =t+S A
[0101] Among them, the private key S A Satisfy P A =S A G.
[0102] Step S03, using the one-time public key P one , get the one-time address A one , the calculation formula is:
[0103] A one =Address(P one )
[0104] Where Address() represents a function for calculating a one-time address.
[0105] In this embodiment, Address() represents a function for calculating a one-time address. According to the actual design, hash calculation may be performed first, and then a prefix may be added after the encoding is converted.
[0106] In one embodiment, adding a public address to a whitelist includes steps S51 and S52.
[0107] Step S51: The user applies to the service provider to add the public address to the whitelist.
[0108] Step S52, if passed, then in the business smart contract, the public address is added to the address list of the whitelist, and the accumulated value of the cryptographic accumulator of the whitelist address list is updated.
[0109] In this embodiment, the process of adding address A to the whitelist is as follows (Address A = Address (P A )):
[0110] 1. The user applies to the business party to add the address to the whitelist.
[0111] 2. If approved, add address A to the whitelist address list in the business smart contract.
[0112] 3. If passed, the accumulated value of the cryptographic accumulator of the whitelist address list is updated in the business smart contract. The cryptographic accumulator can use a Merkle tree, and the accumulated value is the Merkle root.
[0113] In one embodiment, removing the public address from the whitelist includes steps S61 and S62.
[0114] Step S61: The user applies to the business party, or the business party proactively removes the public address from the whitelist.
[0115] Step S62, if passed, then in the business smart contract, the public address is removed from the whitelist address list, and the accumulated value of the cryptographic accumulator of the whitelist address list is updated.
[0116] In this embodiment, the process of removing address A from the whitelist is as follows:
[0117] 1. The user applies to the business party, or the business party proactively removes address A from the whitelist.
[0118] 2. If approved, address A will be removed from the whitelist in the business smart contract.
[0119] 3. If passed, the accumulated value of the cryptographic accumulator of the whitelist address list is updated in the business smart contract. The cryptographic accumulator can use a Merkle tree, and the accumulated value is the Merkle root.
[0120] This application introduces one-time address technology to achieve user anonymity when participating in blockchain business; through the combined application of cryptographic accumulators and zero-knowledge proofs, the blockchain can verify whether the anonymous identity is in the whitelist while maintaining the anonymity of the identity.
[0121] In one embodiment, a computer-readable storage medium is further provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method in the above embodiment are implemented.
[0122] In one embodiment, a computer program product is also provided, including a computer program / instruction, which implements the steps of the above-mentioned embodiment method when executed by a processor.
[0123] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
Claims
1. A blockchain whitelist method supporting identity anonymity, characterized in that: The method sets a whitelist of public addresses for blockchain business smart contracts. The whitelist is based on a cryptographic accumulator. When a user calls a business smart contract, a random one-time address is generated by the user's public key. The user uses the one-time address to call the business, including: Step S1, check whether the public address is in the whitelist. If the public address is in the whitelist, use zero-knowledge proof technology to generate a whitelist proof based on a cryptographic accumulator; otherwise, apply to add the public address to the whitelist and update the accumulated value of the cryptographic accumulator; Step S2, using zero-knowledge proof technology to generate a whitelist proof based on a cryptographic accumulator, including: Step S21, using zero-knowledge proof technology to write constraints related to one-time addresses, public keys, and whitelist verification; Step S22, setting the public input and secret input of the zero-knowledge proof algorithm; Step S23, performing calculation of the zero-knowledge proof technology proof algorithm to obtain a whitelist proof; Step S3, adding the generated whitelist certificate to the transaction for calling the service, and signing the transaction using the private key corresponding to the one-time address; Step S4: submit the signed transaction to the blockchain network.
2. The blockchain whitelist method supporting identity anonymity according to claim 1, characterized in that: Also includes: The business smart contract receives transactions submitted by users to the blockchain network and verifies the transactions, runs the zero-knowledge proof technology verification algorithm, and verifies the validity of the whitelist proof. If the verification is successful, the business smart contract makes a business call.
3. The blockchain whitelist method supporting identity anonymity according to claim 2, characterized in that: include: Based on the constraints related to one-time addresses, public keys, and whitelist verification written through zero-knowledge proof technology, as well as the public input of zero-knowledge proof technology, the zero-knowledge proof technology verification algorithm is calculated to confirm the validity of the whitelist proof.
4. The blockchain whitelist method supporting identity anonymity according to claim 1, characterized in that: include: The zero-knowledge proof technology is specifically zk-STARK technology.
5. The blockchain whitelist method supporting identity anonymity according to claim 1, characterized in that: The step S21 specifically includes: Step S211, write a zero-knowledge proof constraint for calculating a one-time address; Step S212, write a zero-knowledge proof constraint for calculating a public address from a public key; Step S213, write a zero-knowledge proof constraint for verifying that the user's public address is in the whitelist.
6. The blockchain whitelist method supporting identity anonymity according to claim 5, characterized in that: include: When the cryptographic accumulator adopts a Merkle tree, the step S213 specifically includes writing a zero-knowledge proof constraint for verifying the Merkle tree proof path.
7. The blockchain whitelist method supporting identity anonymity according to claim 1, characterized in that: The step S22 specifically includes: Step S221, setting the public input of the zero-knowledge proof technology to the one-time address and the accumulated value of the cryptographic accumulator; Step S222, setting the secret input to a random number, a public key, a public address, and a cryptographic accumulator proof that the user's public address is in the whitelist; wherein the random number is generated by the user and is used to calculate a one-time public key.
8. The blockchain whitelist method supporting identity anonymity according to claim 1, characterized in that: When the user calls the business smart contract, a random one-time address is generated through his public key, including: Step S01: The user generates a random number t using his / her public key P A The one-time public key is calculated using the following formula: P one =t·G+P A In the formula, G represents the public base point on the elliptic curve; Step S02: The user uses his own private key S A , calculate the one-time private key S one , the calculation formula is: S one =t+S A Among them, the private key S A Satisfy P A =S A G; Step S03, using the one-time public key P one , get the one-time address A one : A one =Address(P one ) Where Address() represents a function for calculating a one-time address.
9. The blockchain whitelist method supporting identity anonymity according to claim 1, characterized in that: Whitelisting public addresses includes: Step S51, the user applies to the business party to add the public address to the whitelist; Step S52, if passed, then in the business smart contract, the public address is added to the address list of the whitelist, and the accumulated value of the cryptographic accumulator of the whitelist address list is updated.
10. The blockchain whitelist method supporting identity anonymity according to claim 1, characterized in that: Removing public addresses from the whitelist includes: Step S61: The user applies to the business party, or the business party proactively removes the public address from the whitelist; Step S62, if passed, then in the business smart contract, the public address is removed from the whitelist address list, and the accumulated value of the cryptographic accumulator of the whitelist address list is updated.
Citation Information
Patent Citations
Alliance chain intelligent contract calling permission control method and system and storage medium
CN112395570A
Cross-domain anonymous authentication method and system based on block chain
CN112039872A
Safe and efficient unlicensed blockchain condition anonymization method, system and application
CN113626852A
Block chain supervisible privacy protection method based on zero knowledge proof
CN115564434A
Digital identity verification method and system based on block chain smart contract
CN115622812A
Cited By
Block chain white list method and system supporting identity anonymity and supervision
CN122475867A