A distributed remote authentication privacy protection method based on alliance chain
By adopting a distributed remote authentication privacy protection method based on the alliance chain in remote authentication, the identity key AIK is used for anonymous authentication, and through the privacy guarantee mechanism of the alliance chain, the problem of privacy leakage risk in remote authentication is solved, and efficient privacy protection is achieved.
Patent Information
- Application Number
- CN202411425516.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-12
- Publication Date
- 2025-04-29
- Estimated Expiration
- 2044-10-12
AI Technical Summary
The prior art has the risk of privacy leakage in remote authentication, especially in the application of blockchain technology, where user identity information may be acquired by malicious nodes, and the traditional remote proof model cannot establish a secure and trusted connection in a decentralized distributed network environment.
The distributed remote authentication privacy protection method based on the alliance chain is adopted. By building a scenario including user platform, verifier and blockchain alliance certificate center BCCA, the identity key AIK is used as an identity identifier to perform anonymous authentication, and through the privacy guarantee mechanism of the alliance chain, read permissions are restricted and the privacy of the user platform is protected.
It realizes the risk of privacy leakage to the greatest extent during the remote authentication process, and ensures the privacy of user identity information and the confidentiality of transaction information through anonymous authentication and the privacy guarantee of alliance chains.
Smart Images

Figure CN119299183B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of network security, and in particular to a distributed remote authentication privacy protection method based on an alliance chain. Background Art
[0002] Remote attestation is a process that allows a remote system to determine the trust level and integrity of a platform. It mainly includes binary-based remote attestation and attribute-based remote attestation.
[0003] Binary-based remote attestation has been widely studied and applied in academia and industry, but this method still has certain defects. First, the integrity of system resource data can only be proved by binary code, which can only prove the hardware, firmware and component configuration of the platform. It cannot intuitively understand whether the platform has a certain attribute, which is not easy for users to understand. Secondly, the binary code needs to be updated in time after each system upgrade or patch, which is a lot of work. Finally, binary-based remote attestation will leak platform configuration information, which may be exploited by malicious attackers.
[0004] Although attribute-based remote attestation has alleviated the privacy leakage risk of binary-based remote attestation to a certain extent and enhanced the functionality of remote attestation, the trust is concentrated on the trusted third party, and there is no supervision mechanism for the trusted third party, which cannot guarantee the security of the certificate verification and issuance process. In addition, the traditional remote attestation model is only suitable for use in centralized networks and cannot establish a secure and trusted connection in a decentralized distributed network environment.
[0005] To address the above issues, researchers proposed a blockchain-based remote authentication method, which disperses the authority of the trusted third party to each node. The nodes work together according to the strategy and supervise each other, which improves the security of the certificate life cycle and solves the problem that the traditional remote proof model is incompatible with the decentralized distributed network environment.
[0006] However, the remote authentication method based on blockchain brings more privacy leakage problems. First of all, a core feature of blockchain is that its transaction records are open and transparent to all participants. On some public chains, even if the user's identity information has been encrypted, its transaction pattern and frequency may still be analyzed, thereby inferring some personal privacy information. Secondly, when blockchain replaces a trusted third party for verification, malicious nodes can also obtain the user's real identity information. Summary of the invention
[0007] The purpose of the present invention is to provide a distributed remote authentication privacy protection method based on alliance chain to solve the above problems.
[0008] A distributed remote authentication privacy protection method based on alliance chain, comprising:
[0009] Step 1: Build a distributed remote authentication scenario based on the alliance chain. The scenario includes the following nodes: user platform, verifier, and blockchain alliance certificate center BCCA; the BCCA blockchain alliance certificate center includes CA, application, and various nodes of the alliance chain. The various nodes of the alliance chain include endorsement nodes, sorting nodes, master nodes, and accounting nodes;
[0010] Step 2: The verifier initiates a remote certification request for a certain attribute of the user platform to the user platform based on its own verification requirements;
[0011] Step 3: The user platform calls the application in BCCA based on the remote certification application and submits an attribute certificate application using the identity key AIK as the identity identifier;
[0012] Step 4: The application sends the attribute certificate application to the CA. The CA verifies the user platform attributes through the TPM and completes the registration after endorsing the user platform.
[0013] Step 5: The application initiates a transaction proposal, requesting to upload the attribute certificate application to the consortium chain;
[0014] Step 6: The application sends the attribute certificate and the query code required to verify the attribute certificate to the user platform;
[0015] Step 7: The user platform uses the user's private key to digitally sign the attribute certificate that needs to be verified, and sends the signed attribute certificate and query code to the verifier;
[0016] Step 8: The verifier uses the user's public key to verify the digitally signed attribute certificate obtained from the user platform, and applies for verification of the certificate content on the query page provided by BCCA using the certificate number and query code in the attribute certificate;
[0017] Step 9: The application reads the attribute certificate information in the alliance chain, verifies the legitimacy of the certificate and returns the result to the verifier.
[0018] Furthermore, in the step three, applying for an attribute certificate using the identity key AIK as the identity identifier includes: the user platform applies for different AIK key pairs and AIK certificates through the TPM, and selects an unused AIK key as the identity identifier of the user platform.
[0019] Furthermore, in the step four, the CA verifies the attributes of the user platform through TPM and completes the registration after endorsing the user platform, which specifically includes: after receiving the attribute certificate application, the CA calls the CA's TPM to verify the user platform's TPM, and implements identity authentication with the user platform through the direct anonymous attestation scheme DAA, and completes the registration after verification.
[0020] Furthermore, in step 5, the request to upload the attribute certificate to the alliance chain is specifically as follows:
[0021] Step a: Package and sign the transaction proposal and submit it to the corresponding endorsement node;
[0022] Step b: The endorsement node verifies the received attribute certificate application. If the verification is successful, the endorsement node performs a simulated transaction, signs the transaction result and returns it to the application.
[0023] Step c: When the application collects enough endorsement results, it will verify the signature of the endorsement results and compare the proposal responses returned by each endorsement node to determine whether the simulated transaction results are the same. If they meet the above requirements, a legal certificate request will be constructed and submitted to the sorting node for sorting and the ledger will be updated according to the transaction order. The transaction request includes the read-write set, the signature of the endorsement node and its channel ID;
[0024] Step d: After sorting, the sorting node packages the blocks and broadcasts them to the master nodes of other organizations;
[0025] Step e: After receiving the block, the master node broadcasts the transaction to other nodes in the organization simultaneously;
[0026] Step f: After receiving the broadcast of the synchronization block, each accounting node verifies the transactions in the block, determines whether the transaction complies with the decision-making mechanism, and marks the transaction as valid or invalid. If the transaction is valid, the write set is submitted to the current state database, that is, the transaction is updated to the ledger;
[0027] Step g: After the ledger information is updated, the system sends an event to notify the client application that the transaction has been completed and returns information related to the transaction result to the application; if the transaction fails to pass the verification, the system sends an event to the application to inform it that the transaction has not been put on the chain.
[0028] Furthermore, the step nine specifically includes: 1) the application system calls the API in the SDK to construct a transaction proposal for reading the ledger, and initiates a request to the endorsement node according to the endorsement policy; 2) the endorsement node checks whether the format of the transaction proposal is complete, whether the transaction proposal is submitted repeatedly, whether the signature is valid, and whether the initiator is authorized to perform this operation on the channel for verification; 3) the endorsement node uses the transaction proposal as a parameter of the called chain code function, and then executes the chain code to generate a transaction result, and returns the response value, read set and write set, and the signature of the endorsement node to the application through SDK parsing; 4) the application feeds back the verification result to the verifier through the website in the form of a visual attribute certificate.
[0029] The present invention uses the anonymization mechanism of trusted computing to initiate a certification application with the identity key AIK as the platform's identity identifier, thereby realizing anonymous authentication in remote certification and ensuring the privacy of user identity information; through the privacy of the alliance chain, it ensures that the information on the chain can only be viewed by authorized legal nodes, and through the restriction of reading permissions, it provides better privacy protection for the user platform and ensures the privacy of transaction information. The purpose of minimizing the risk of privacy leakage in the distributed remote authentication process is achieved. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 It is a flow chart of a distributed remote authentication privacy protection method based on alliance chain in an embodiment of the present invention.
[0031] Figure 2 It is a timing diagram of the user registration module in the method of the present invention.
[0032] Figure 3 It is a timing diagram of the attribute certificate issuance module in the method of the present invention.
[0033] Figure 4 It is a timing diagram of the attribute certificate verification module in the method of the present invention. DETAILED DESCRIPTION
[0034] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0035] The purpose of this invention is to propose a distributed remote authentication privacy protection method based on alliance chain, which combines the alliance chain with stronger privacy protection capabilities with anonymous authentication, ensures that the certificate information can only be viewed by legitimate nodes verified by the alliance chain, and the user identity cannot be guessed by the alliance chain nodes, thereby minimizing the risk of user privacy leakage in distributed remote authentication. Figure 1 As shown, the method of the present invention comprises the following steps one to nine:
[0036] Step 1: Build a distributed remote authentication scenario based on the alliance chain. The scenario includes the following nodes: user platform, verifier, blockchain alliance certificate center BCCA; among them, the BCCA blockchain alliance certificate center includes CA, application and various nodes of the alliance chain. The various nodes of the alliance chain include endorsement nodes, sorting nodes, master nodes and accounting nodes;
[0037] Step 2: The verifier initiates a remote certification request for a certain attribute of the user platform based on its own verification requirements;
[0038] like Figure 4 As shown, in step 2, the verifier submits an application for remote attestation to the user platform, including the attribute requirements that the verifier needs to verify.
[0039] Step 3: The user platform calls the application in BCCA based on the remote certification application and submits an attribute certificate application using the identity key AIK as the identity identifier;
[0040] like Figure 2 As shown, in step three: the user platform submits a registration application to the CA through the application using the identity key AIK as the identity identifier;
[0041] Step 4: The application first sends the attribute certificate application to the CA. The CA verifies the user platform attributes through the TPM and completes the registration after endorsing the user platform.
[0042] like Figure 2 As shown, in step 4, the following is executed: 1) When CA receives the registration application from the user platform, it first determines whether the user exists; 2) If the registration is successful, CA issues an identity certificate and sends the Token generated by the certificate to the user platform as its identity credential; 3) If the user platform exists, a prompt message indicating that the registration failed is returned.
[0043] like Figure 3 As shown, in step 4, when CA receives the user's application, it needs to call TPM to verify the TPM of the user platform, and verify the authenticity and credibility of the user platform identity through the DAA direct anonymous attestation protocol. After the verification is correct, the registration is completed.
[0044] Step 5: The application initiates a transaction proposal, requesting that the attribute certificate be uploaded to the consortium chain;
[0045] like Figure 3 As shown, in step 5, the following is performed: 1) The application uses the API provided by the corresponding SDK to build a certificate application, that is, to generate a transaction proposal for updating the ledger, and then packages and signs the transaction proposal and submits it to the corresponding endorsement node; 2) The endorsement node calls the chain code to verify the received certificate application. The contents that need to be verified include whether the format of the transaction proposal is complete, whether the transaction proposal is submitted repeatedly, whether the signature of the transaction proposal is valid, and whether the initiator satisfies the channel Writers strategy and signs the result. After the verification is passed, the endorsement node executes a simulated transaction and returns the signed endorsement result to the application; 3) When the application collects enough endorsement results, it will verify the signature of the endorsement result, and compare the proposal responses returned by each endorsement node to determine Whether the simulated transaction results are the same, if they meet the above requirements, a legal certificate request is constructed and submitted to the sorting node for sorting and the ledger is updated according to the transaction order. The transaction request includes the read-write set, the signature of the endorsement node and its channel ID; 4) The sorting node sorts all received transactions according to the consensus mechanism, does not check the entire content of the transaction, and only sorts the received transactions by time. After sorting, it will package the blocks and broadcast them to the master nodes of other organizations; 5) After receiving the block, the master node will broadcast the transaction to other nodes in the organization synchronously; 6) After receiving the broadcast of the synchronization block, each accounting node verifies the transaction in the block, determines whether the transaction complies with the decision-making mechanism, and marks the transaction as valid or invalid. If the transaction is valid, the write set is submitted to the current state database, that is, the transaction is updated to the ledger. 7) After the ledger information is updated, the system will issue an event to notify the client application that the transaction has been completed, and return the transaction result related information to the application. If the transaction fails to pass the verification, the system will issue an event to the application to inform that the transaction has not been put on the chain.
[0046] Step 6: The application sends the signed attribute certificate and the query code required to verify the attribute certificate to the user platform;
[0047] like Figure 3 As shown, in step six, if the transaction is successfully verified and uploaded to the chain, the application uses the public key of the user platform to sign the issued attribute certificate and query code, and sends the encrypted attribute certificate and query code to the user.
[0048] Step 7: The user platform signs the attribute certificate that needs to be verified, and sends the signed attribute certificate and query code to the verifier;
[0049] like Figure 3As shown, in step seven, the user uses the user's private key to decrypt and obtain the attribute certificate and the query code corresponding to the certificate.
[0050] like Figure 4 As shown, in steps 3 to 7, the user platform obtains the attribute certificate through the certificate issuance process according to the verifier's requirements for platform integrity and security, generates a summary of the attribute certificate, and digitally signs it with the user platform's private key. The user platform sends the signed attribute certificate and the corresponding query code to the verifier.
[0051] Step 8: The verifier uses the public key to verify the signature of the attribute certificate obtained from the user platform, and applies for verification of the certificate content on the query page provided by BCCA using the certificate number and query code;
[0052] like Figure 4 As shown, in step eight, the following is performed: 1) The verifier uses the user's public key to decrypt the attribute certificate, verify the integrity and source of the certificate, and determine whether the user platform meets the verifier's requirements for the attributes that the user platform should have. 2) The verifier can query the certificate through the query path provided by the Blockchain Alliance Certificate Center (BCCA) after registering and logging in on the website using the correct certificate number and the corresponding query code.
[0053] Step 9: BCCA verifies the legitimacy of the certificate and returns the result to the verifier.
[0054] like Figure 4 As shown, in step nine, the following is performed: 1) the application system calls the API in the SDK to construct a transaction proposal for reading the ledger, and initiates a request to the endorsement node according to the endorsement policy; 2) the endorsement node checks whether the format of the transaction proposal is complete, whether the transaction proposal is submitted repeatedly, whether the signature is valid, and whether the initiator is authorized to perform this operation on the channel for verification; 3) the endorsement node uses the transaction proposal as a parameter of the called chaincode function, and then executes the chaincode to generate a transaction result, and returns the response value, read set and write set, and the signature of the endorsement node to the application through SDK parsing; 4) the application feeds back the verification result to the verifier through the website in the form of a visual attribute certificate.
[0055] The present invention implements a distributed remote authentication privacy protection method based on alliance chain, using the identity key AIK as the platform's identity identifier to initiate a certification application. This mechanism ensures that when performing remote certification, the user's real identity information will not be directly exposed, but will be verified through an anonymized identifier, thereby achieving a high degree of anonymity.
[0056] In actual operation, when a user needs to perform remote authentication, the platform will generate a unique AIK and use it to initiate a certification request. This process is carried out through a trusted computing environment, ensuring the security and reliability of the entire process.
[0057] In order to further enhance privacy protection, the present invention also adopts alliance chain technology. Alliance chain is a semi-decentralized blockchain form, and only authorized legal nodes can participate in transactions and data management on the chain. In this way, the information on the chain can only be viewed by authorized legal nodes, thereby greatly reducing the risk of information leakage. In this way, the present invention provides a multi-level privacy protection measure for the user platform, ensuring the confidentiality and integrity of transaction information.
[0058] In summary, the present invention realizes anonymous authentication in remote proof and privacy protection of transaction information by combining the anonymization mechanism of trusted computing and the permission management mechanism of alliance chain. This comprehensive solution not only improves the privacy of user identity information, but also minimizes the risk of privacy leakage in the distributed remote authentication process, providing users with a safe, reliable and privacy-protected authentication environment.
[0059] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily thought of by a person skilled in the art within the technical scope disclosed by the present invention should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.
Claims
1. A distributed remote authentication privacy protection method based on alliance chain, characterized in that: The steps include: Step 1: Build a distributed remote authentication scenario based on the alliance chain. The scenario includes the following nodes: user platform, verifier, and blockchain alliance certificate center BCCA; the blockchain alliance certificate center BCCA includes CA, application, and various nodes of the alliance chain. The various nodes of the alliance chain include endorsement nodes, sorting nodes, master nodes, and accounting nodes; Step 2: The verifier initiates a remote certification request for a certain attribute of the user platform to the user platform based on its own verification requirements; Step 3: The user platform calls the application in BCCA based on the remote certification application and submits an attribute certificate application using the identity key AIK as the identity identifier; Step 4: The application sends the attribute certificate application to the CA. The CA verifies the user platform attributes through the TPM and completes the registration after endorsing the user platform. Step 5: The application initiates a transaction proposal, requesting to upload the attribute certificate application to the consortium chain; Step 6: The application sends the attribute certificate and the query code required to verify the attribute certificate to the user platform; Step 7: The user platform uses the user's private key to digitally sign the attribute certificate that needs to be verified, and sends the signed attribute certificate and query code to the verifier; Step 8: The verifier uses the user's public key to verify the digitally signed attribute certificate obtained from the user platform, and applies for verification of the certificate content on the query page provided by BCCA using the certificate number and query code in the attribute certificate; Step 9: The application reads the attribute certificate information in the alliance chain, verifies the legitimacy of the certificate and returns the result to the verifier; In the step 3, applying for an attribute certificate using the identity key AIK as the identity identifier includes: the user platform applies for different AIK key pairs and AIK certificates through the TPM, and selects an unused AIK key as the identity identifier of the user platform; In the step 4, the CA verifies the attributes of the user platform through TPM and completes the registration after endorsing the user platform, which specifically includes: after receiving the attribute certificate application, the CA calls the CA's TPM to verify the user platform's TPM, and implements identity authentication with the user platform through the direct anonymous attestation scheme DAA, and completes the registration after the verification is correct.
2. The distributed remote authentication privacy protection method based on alliance chain as claimed in claim 1, characterized in that: In step 5, the request to upload the attribute certificate to the alliance chain is specifically as follows: Step a: Package and sign the transaction proposal and submit it to the corresponding endorsement node; Step b: The endorsement node verifies the received attribute certificate application. If the verification is successful, the endorsement node performs a simulated transaction, signs the transaction result and returns it to the application. Step c: When the application collects enough endorsement results, it will verify the signature of the endorsement results and compare the proposal responses returned by each endorsement node to determine whether the simulated transaction results are the same. If they meet the requirements, it will build a legal certificate request and submit the request to the sorting node for sorting and update the ledger according to the transaction order. The transaction request includes the read-write set, the signature of the endorsement node and its channel ID; Step d: After sorting, the sorting node packages the blocks and broadcasts them to the master nodes of other organizations; Step e: After receiving the block, the master node broadcasts the transaction to other nodes in the organization simultaneously; Step f: After receiving the broadcast of the synchronization block, each accounting node verifies the transactions in the block, determines whether the transaction complies with the decision-making mechanism, and marks the transaction as valid or invalid. If the transaction is valid, the write set is submitted to the current state database, that is, the transaction is updated to the ledger; Step g: After the ledger information is updated, the system issues an event to notify the client application that the transaction has been completed and returns information related to the transaction result to the application; If the transaction fails verification, the system sends an event to the application to inform it that the transaction was not put on the chain.
3. The distributed remote authentication privacy protection method based on alliance chain as claimed in claim 2, characterized in that: The step nine specifically includes: 1) the application system calls the API in the SDK to construct a transaction proposal for reading the ledger, and initiates a request to the endorsement node according to the endorsement policy; 2) the endorsement node checks whether the format of the transaction proposal is complete, whether the transaction proposal is submitted repeatedly, whether the signature is valid, and whether the initiator is authorized to perform this operation on the channel for verification; 3) the endorsement node uses the transaction proposal as a parameter of the called chain code function, and then executes the chain code to generate a transaction result, and returns the response value, read set and write set, and the signature of the endorsement node to the application through SDK parsing; 4) the application feeds back the verification result to the verifier through the website in the form of a visual attribute certificate.
Citation Information
Patent Citations
Trusted remote certification system, storage and verification method thereof and storage medium
CN114679284A
Remote attestation method and device based on alliance chain, electronic equipment and storage medium
CN116112215A