A method for protecting and supervising identity privacy in alliance chains based on ring signatures
By generating and verifying ring signatures in the alliance chain, and putting relevant data on the chain, and auditing and supervision in combination with the chain of custody, the problem of protecting user identity privacy and achieving effective supervision in the alliance chain is solved, and accountability for the legality and compliance of transactions is achieved.
Patent Information
- Application Number
- CN202111181659.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-11
- Publication Date
- 2025-03-07
- Estimated Expiration
- 2041-10-11
AI Technical Summary
In the alliance chain, it is difficult for the prior art to achieve effective supervision while protecting user identity privacy, especially due to the complete anonymity of ring signatures, which makes it difficult to hold accountable.
By generating a ring member list, initializing the ring, generating ring signatures, sending and verifying ring signatures, and putting ring members and ring signature behaviors and data on the chain, audit supervision is carried out in combination with the chain of custody.
It realizes that under the premise of protecting user identity privacy, regulators can effectively view and manage the information of ring membership and ring signature user information, solve the regulatory difficulties caused by ring signature anonymity, and ensure the legality and compliance of transactions.
Smart Images

Figure CN113935065B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of blockchain, and in particular relates to a method for protecting and supervising identity privacy of a consortium chain based on ring signatures. Background Art
[0002] Blockchain is a distributed data management technology that combines cryptography technology and uses a chain structure to store data. Blockchain 1.0 is a digital currency application represented by Bitcoin, and the data stored is mainly transaction information. At this time, the blockchain system has relatively simple data management, and all users can access and obtain data. Ethereum combines smart contract technology with the blockchain system, providing a wider and new application scenario for blockchain, and blockchain 2.0 has followed. At this time, permissioned blockchains such as Hyperledger have also appeared, adding identity authentication and permission management mechanisms to the blockchain system, providing basic privacy protection capabilities.
[0003] In the alliance chain system, new nodes need to obtain permission to join the blockchain network, and only the permitted nodes can manage and maintain the data. Unlike the public chain, the alliance chain can assume that some nodes in the network are trustworthy. However, within the alliance chain, multiple organizations still have the ability to obtain each other's private data, such as the user data of each transaction. Under the constraints of multiple interests, a measure is still needed in the alliance chain to protect the privacy of all parties. In addition, under the premise of protecting user privacy, it is also necessary to consider providing regulators with a regulated measure to ensure the security and legality of transactions and achieve the purpose of accountability.
[0004] Ring signature is a special digital signature scheme that selects a set of signers (including the signer himself) and uses the private key of the signer and the public key of others in the set to generate an independent signature to sign the transaction. The set only has members, no administrator, and others can only verify the validity of the ring signature, but no one can obtain the information of the signer, and the identity information of the signer is completely anonymous. Due to the characteristics of complete anonymity, ring signatures have always been difficult to regulate and cannot be used well in consortium chains. Summary of the invention
[0005] The purpose of the present invention is to provide a consortium chain identity privacy protection and supervision method based on ring signature to address the deficiencies of the existing technology.
[0006] The purpose of the present invention is to achieve the following technical method: a method for protecting and supervising the identity privacy of a consortium chain based on a ring signature, comprising the following steps:
[0007] 1) Generate a ring member list: When the consortium chain network is created, the authorized node is specified by setting the configuration file. In addition to generating the necessary digital certificate files for each organization, the authorized node also generates the public and private keys of each node in each organization. Collect the public keys of each node in each organization and generate a member list List_{key}, which is called the ring member library.
[0008] 2) Initialize the ring: Randomly select n-1 public keys from the member list generated in step 1 to form a temporary member list List_{tpkey} for signing transactions, called a temporary ring.
[0009] 3) Generate a ring signature: The data to be signed is M. The signer uses his own private key Key_s and the temporary ring List_{tpkey} information generated in step 2 to sign the data to be signed M and generate a ring signature sig.
[0010] 4) Send the ring signature: Send the data to be signed M and the ring signature sig generated in step 3 to the specified smart contract.
[0011] 5) Verify the ring signature: The smart contract verifies the validity of the signature on the data sent in step 4 to determine whether the signature result is valid.
[0012] 6) Update the ring member list: When a new member joins the network, the public and private keys of the new member are generated by the authorized node, and the public key of the new member is added to the member list List_{key} generated in step 1.
[0013] 7) Node data maintenance: The authorized node needs to maintain a user status table UST. The UST table is created when the network starts and is used to record whether the application chain node is available for the ring member list.
[0014] 8) Supervision data maintenance: The supervision node needs to maintain a supervision status table MST, which is stored on the supervision chain and is used to record and identify various types of data uploaded to the supervision chain, including member list data and ring signature supervision information.
[0015] Furthermore, the behavior of the authorized node generating the public and private keys of each node is spontaneous after the alliance chain is created, and the generation algorithm adopted is determined by the initial configuration information.
[0016] Furthermore, when the network starts, the generated member list information is encrypted and packaged into a transaction and uploaded to the supervision chain, and broadcast to all supervision nodes in the chain to form a consensus.
[0017] Furthermore, when initializing the ring members, the temporary ring information is encrypted and packaged into a transaction and uploaded to the supervision chain, and broadcast to all supervision nodes in the chain to form a consensus.
[0018] Furthermore, when a ring signature is generated, the ring signature sig and the signer's public key information are encrypted and packaged into a transaction and uploaded to the supervision chain for broadcasting to all supervision nodes in the chain.
[0019] Furthermore, if the ring signature is valid, the signature data is uploaded to the application chain, and then the ring signature sig and the signer's public key information are encrypted and packaged into a transaction and uploaded to the supervision chain, and the transaction is marked as true. If it is invalid, the transaction on the chain is marked as false.
[0020] Furthermore, all nodes will be required to provide identity information of a specified structure when applying to join the ring member list, and a unified identity authentication model will be adopted.
[0021] Furthermore, when the authorized node completes the addition of a new member, or removes the authority of a node according to specific conditions, the UST table is updated. In the network, the node data in the UST table needs to be kept updated in real time.
[0022] The beneficial effects of the present invention are as follows: on the premise that the alliance chain uses ring signatures to protect the privacy of user identities, the present invention solves the problem of difficulty in supervision and accountability caused by the complete anonymity of ring signatures by putting ring members and ring signature behaviors and data on the chain, and realizes later audit supervision measures; among them, under the premise of ensuring that the data information signed with the ring signature cannot be obtained between and within the participating organizations, the regulatory agency can view and manage the ring member information of each ring signature and the user information that signed. It not only effectively guarantees the privacy between application chains, but also realizes the ability to track audits using the regulatory chain. The present invention effectively solves the problem that the identity privacy of traditional alliance chains cannot be effectively protected and that supervision cannot be achieved after it is protected using ring signatures. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 This is the flow chart of the ring signature;
[0024] Figure 2 This is a schematic diagram of privacy data on-chain;
[0025] Figure 3 It is a diagram of the chain of custody data being uploaded to the chain. DETAILED DESCRIPTION
[0026] The present invention will be described in detail below with reference to the accompanying drawings and specific embodiments, and the purpose and effects of the present invention will become more apparent.
[0027] The present invention discloses a method for protecting and supervising an identity privacy of a consortium chain based on a ring signature. In the consortium chain, a technical system is used to encrypt the ring signature and integrate the ring signature supervision information on the chain. The purpose is to use the ring signature to protect the transaction identity privacy of both parties in the blockchain network, and introduce a supervision chain to ensure the legality and compliance of the transaction signatures of the regulatory agency within the network. The ring signature technology is introduced, and the nodes on the consortium chain use ring signatures to protect the identity privacy of the transaction. In addition, the present invention introduces a supervision chain. In the process of using ring signatures to protect identity privacy in the consortium chain, the operation and content of the ring signature are packaged into a transaction chain to achieve traceability and evidence collection of transaction compliance in the later stage. Specifically, the following steps are included:
[0028] (1) Generate a ring member list: When the consortium chain network is created, the authorized node is specified by setting a configuration file. In addition to generating the necessary digital certificate files for each organization, the authorized node also generates the public and private keys of each node in each organization. Collect the public keys of each node in each organization to generate a member list List_{key}, which can also be called a ring member library. Encrypt the member list information and package it into a transaction and upload it to the supervision chain to broadcast it to all supervision nodes in the chain to form a consensus.
[0029] (2) Initialization loop: Figure 1 As shown in the figure, n-1 ring member public keys are randomly selected from the ring member list generated in step 1 to form a temporary member list List_{tpkey} for signing transactions, i.e., a temporary ring. The temporary ring information is encrypted and packaged into a transaction and uploaded to the supervision chain, and broadcast to all supervision nodes in the chain.
[0030] (3) Generate a ring signature: Assuming the data to be signed is M, the signer uses his private key Key_s and the temporary ring List_{tpkey} information generated in step 2 to sign the data to be signed M and generate a ring signature sig. The ring signature sig and the signer's public key information are encrypted and packaged into a transaction and uploaded to the supervision chain for broadcast to all supervision nodes in the chain.
[0031] (4) Sending a ring signature: Figure 2 As shown, the data to be signed M and the ring signature sig generated in step 3 are sent to the specified smart contract.
[0032] (5) Verify the ring signature: Figure 2 As shown, the smart contract verifies the validity of the signature of the data sent in step 4 to determine whether the signature result is valid. If valid, the signature data is first uploaded to the application chain, and then the ring signature sig generated in step 3 and the signer's public key information are encrypted and packaged into a transaction and uploaded to the supervision chain to broadcast to all supervision nodes in the chain, and the transaction uploaded in step 3 is marked as true. If invalid, the on-chain transaction in step 3 is marked as false.
[0033] (6) Update the ring member list: When a new member joins the network, the public and private keys of the new member are generated by the authorization node, and the public key of the new member is added to the member list List_{key} generated in step 1. The update of the ring member list is packaged into a transaction and uploaded to the supervision chain for broadcast to all supervision nodes in the chain. All nodes will be required to provide identity information of a specified structure when applying to join the ring member list, and a unified identity authentication model will be adopted. Among them, the behavior of the authorization node to generate the public and private keys of each node is spontaneous after the alliance chain is created, and the generation algorithm used is determined by the initial configuration information.
[0034] (7) Node data maintenance: The authorized node needs to maintain a User Status Table (UST). The UST table is created when the network starts and is used to record whether the application chain node is available for the ring member list. When the authorized node completes the addition of new members or removes the permissions of a node according to specific conditions, the UST table is updated. In the network, the node data in the UST table needs to be kept updated in real time.
[0035] (8) Supervision data maintenance: The supervision node needs to maintain a supervision status table (MST), which is stored on the supervision chain and is used to record and identify various data uploaded to the supervision chain, such as member list data, ring signature supervision information, etc. Figure 3 As shown in the figure, when the network is started, the member list information generated by the supervision node is uploaded to the chain, marked as status = 0, flag = 0. When the ring signature generates temporary ring member information, the temporary ring member information is uploaded to the chain, marked as status = 0, flag = 1. When the ring signature information is generated, the generated ring signature supervision information is uploaded to the chain, marked as status = 1, flag = 0. When sending the ring signature, the final temporary ring signature information of this ring signature is uploaded to the chain, marked as status = 0, flag = 2. When verifying the ring signature information, the verified ring signature supervision information is uploaded to the chain. If the ring signature information is valid, it is marked as status = 1, flag = 1; otherwise, it is marked as status = 1, flag = 2.
[0036] The following is a specific explanation using a consortium chain instantiation and its transaction example.
[0037] By setting the configuration file, when the alliance chain network is started, the designated authorization node generates the necessary digital certificate files for each organization and the public and private keys of each node of each organization. The authorization node will collect the public keys of each organization's nodes and generate a member list List_key, which can also be called the ring member library. The information of the ring member library is encrypted and packaged into transactions and broadcasted within the alliance chain, and the transaction is packaged into blocks as the founding blocks and chained to the supervision chain MoniBlockChain to form a consensus. At this time, the supervision status table MST is maintained, and the member list information generated by the supervision node is marked as status = 0, flag = 0.
[0038] At this time, if a new node in the organization wants to join the alliance chain network, after verification by the authorized node, the public and private keys of the node will be generated, and the public key of the new node will be added to the ring member library List_key, and the user status table will be updated and maintained. The ring member library update operation will be packaged into a transaction and chained to the supervision chain MoniBlockChain. The supervision status table needs to be updated, and the ring member library update transaction will be marked as status = 0, flag = 0.
[0039] At this time, if the authorized node A wants to initiate a transaction and initiates a signature application to the authorized node, the authorized node will randomly select n-1 public keys from the ring member library to form a temporary ring member library List_tpkey for signing transactions, encrypt and package the temporary ring information into a transaction and upload it to the supervision chain, and update the supervision status table, marking the temporary ring member library transaction generated this time as status=0, flag=1 status; after generating the temporary ring member library, node A can use its own private key Key_s and the temporary ring member library List_tpkey to sign the transaction and generate a ring signature sig. At this time, the ring signature sig and the public key information of node A will be encrypted and packaged into a transaction and uploaded to the supervision chain, and the supervision status table will be updated to upload the generated ring signature supervision information to the chain, marking status=1, flag=0.
[0040] After the ring signature is generated, the transaction data and the ring signature sig are sent to the specified smart contract, and the smart contract verifies the validity of the received data. If valid, the signature data is first chained to the application chain, and then the generated ring signature sig and the signer's public key information are chained to the supervision chain, and the supervision status table is updated, marking the transaction as status = 1, flag = 1; if invalid, the supervision status table is updated, and the chained transaction is marked as status = 1, flag = 2.
Claims
1. A method for protecting and supervising identity privacy in a consortium chain based on ring signature, characterized in that: The steps include: 1) Generate a ring member list: When the consortium chain network is created, the authorized node is specified by setting the configuration file. In addition to generating the necessary digital certificate files for each organization, the authorized node also generates the public and private keys of each node in each organization; collect the public keys of each node in each organization, and generate a member list List_{key}, which is called the ring member library; 2) Initialize the ring: Randomly select n-1 public keys from the member list generated in step 1 to form a temporary member list List_{tpkey} for signing transactions, called a temporary ring; 3) Generate a ring signature: The data to be signed is M. The signer uses his private key Key_s and the temporary ring List_{tpkey} information generated in step 2 to sign the data M to generate a ring signature sig; 4) Send the ring signature: Send the data to be signed M and the ring signature sig generated in step 3 to the specified smart contract; 5) Verify the ring signature: The smart contract verifies the validity of the signature of the data sent in step 4 to determine whether the signature result is valid; 6) Update the ring member list: When a new member joins the network, the public and private keys of the new member are generated by the authorized node, and the public key of the new member is added to the member list List_{key} generated in step 1; 7) Node data maintenance: The authorized node needs to maintain a user status table UST. The UST table is created when the network starts and is used to record whether the application chain node is available for the ring member list; 8) Supervision data maintenance: The supervision node needs to maintain a supervision status table MST, which is stored on the supervision chain and is used to record and identify various types of data uploaded to the supervision chain, including member list data and ring signature supervision information.
2. The method for protecting and supervising identity privacy of a consortium chain based on a ring signature as claimed in claim 1, characterized in that: The behavior of the authorized node generating the public and private keys of each node is spontaneous after the alliance chain is created, and the generation algorithm adopted is determined by the initial configuration information.
3. The alliance chain identity privacy protection and supervision method based on ring signature as claimed in claim 1 is characterized in that: When the network starts, the generated member list information is encrypted and packaged into a transaction and uploaded to the supervision chain, and broadcast to all supervision nodes in the chain to form a consensus.
4. The method for protecting and supervising identity privacy of a consortium chain based on a ring signature as claimed in claim 1, characterized in that: When initializing the ring members, the temporary ring information is encrypted and packaged into a transaction and uploaded to the supervision chain, and broadcast to all supervision nodes in the chain to form a consensus.
5. The alliance chain identity privacy protection and supervision method based on ring signature as claimed in claim 1 is characterized in that: When a ring signature is generated, the ring signature sig and the signer's public key information are encrypted and packaged into a transaction and uploaded to the supervision chain for broadcast to all supervision nodes in the chain.
6. The alliance chain identity privacy protection and supervision method based on ring signature as claimed in claim 1 is characterized in that: If the ring signature is valid, the signature data will be uploaded to the application chain, and then the ring signature sig and the signer's public key information will be encrypted and packaged into a transaction and uploaded to the supervision chain, and the transaction will be marked as true; if it is invalid, the transaction on the chain will be marked as false.
7. The method for protecting and supervising identity privacy of a consortium chain based on a ring signature as claimed in claim 1, characterized in that: All nodes will be required to provide identity information of a specified structure when applying to join the ring member list, and a unified identity authentication model will be adopted.
8. The method for protecting and supervising identity privacy of a consortium chain based on a ring signature as claimed in claim 1, characterized in that: When the authorized node completes the addition of a new member, or removes the authority of a node according to specific conditions, the UST table is updated; in the network, the node data in the UST table needs to be kept updated in real time.