Privacy protection and traceable zero-trust single packet authorization authentication method and system
Through the dual-layer CA management of the two-layer CA and blockchain network, combined with group signature and SM2 algorithm, the problems of identity privacy protection and traceability in single-pack authorization authentication are solved, and the privacy protection and traceability of user identity are realized. Enhanced network resources security and regulatory capabilities.
Patent Information
- Application Number
- CN202411316716.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-20
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2044-09-20
AI Technical Summary
The existing single-pack authorization and authentication scheme lacks privacy protection for user identity information and cannot effectively traceability and identify identity information, resulting in the risk of exposure and anonymous abuse.
Adopting a two-layer CA management and blockchain network, digital certificates are issued through sub-CA and root CA, user clients and zero-trust gateway are registered with SDP controller, to realize anonymous identity authentication and real identity traceability, and to use group signatures and SM2 algorithms for Key negotiation and authentication.
It realizes privacy protection and traceability of user identities, prevents anonymous abuse, enhances the security and supervision capabilities of network resources, and forms a complete closed loop of identity authentication.
Smart Images

Figure CN119276454A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of network security technology, and in particular to a zero-trust single-packet authorization authentication method and system that supports privacy protection and traceability. Background Art
[0002] With the rapid development of technologies such as the Internet of Things, cloud computing, and big data, the Internet has greatly facilitated human beings, but it has inevitably increased the risk of data leakage and identity theft. At the same time, with the increasing number of new network attack methods such as advanced persistent threats, unauthorized access, internal security risks, and malicious data leakage, traditional software boundary network security, such as firewalls, antivirus software, and intrusion prevention systems, can no longer meet the needs of the current security protection level under the new situation. In order to make up for the shortcomings of traditional software-defined boundaries, better protect resources, and resist various threats and attacks, the zero-trust network model came into being. Through authentication, monitoring, tracking and other processes, it ensures the safety and reliability of the entire process, and guarantees the security of resources and the legitimacy of identities. The zero-trust network model subverts the traditional network-centric security protection and turns to a new concept of user-centric and least-privilege access control. The single-package authorization technology can meet the security needs of zero trust. By hiding the server's port and setting a default abandonment policy, the service is kept secret, which can greatly improve the security performance of the network system. Although the single-packet authorization mechanism is an important key technology of the current zero-trust architecture, the existing solutions generally adopt the traditional centralized key storage and distribution solution, which cannot effectively protect the privacy information of visitors and cannot trace and supervise the identity of users. Therefore, how to achieve the legal protection of user privacy information under the zero-trust system and how to trace and supervise the identity of users have become urgent problems to be solved in the current authentication solution under the zero-trust architecture.
[0003] In order to achieve security authentication and privacy protection in the authentication process, IdentityMixer proposed by IBM is a classic anonymous identity authentication scheme. During the identity authentication process, users can selectively present their real identity attributes and hide the identity attributes that do not need to be presented. The converted user identity tag can still be correctly verified under the public key of the CA. For example, the two identity-based ring signature schemes improve the efficiency of anonymous authentication by reducing the number of bilinear pairing operations and polynomial calculations. For another example, the improved anonymous authentication scheme based on elliptic cryptographic curves can not only reduce the cost of both parties in communication, but also resist many cryptographic attacks, and has high security. In response to the problem of privacy information protection, there is a solution that uses designated verifier signatures to achieve zero-trust anonymous access under the software-defined boundary framework, which not only reduces communication overhead, but also has strong security. In order to meet the current privacy protection needs in various scenarios such as medical care, Internet of Things, and cloud services, a forward-secure anonymous authentication protocol based on group signatures is established to ensure the security of vehicle privacy information.
[0004] Although the current anonymous identity privacy protection technology can protect user privacy, the complete adoption of anonymity will also lead to the problem of anonymous abuse, so corresponding supervision is needed. The existing single-package authorization authentication scheme lacks protection for the identity information of visitors, resulting in the exposure of the identity information of visiting users and the risk of being compromised. Anonymous authentication using ring signatures, elliptic curves, zero-knowledge proofs, etc. can achieve the hiding of user information, but due to the lack of authentication and supervision, it is easy to lead to anonymous abuse and affect resource security. Summary of the invention
[0005] To this end, the present invention provides a zero-trust single-package authorization authentication method and system that supports privacy protection and traceability, so as to solve the problems that the existing single-package authorization mechanism lacks privacy protection for user identity information and cannot effectively trace and identify the identity of the visitor.
[0006] According to the design scheme provided by the present invention, on the one hand, a zero-trust single-package authorization authentication method supporting privacy protection and traceability is provided, comprising:
[0007] A two-tier CA is used to manage and issue digital certificates. The two-tier CA includes a sub-CA for issuing digital certificates to different user clients, and a root CA for generating group signature keys and tracking keys and authorizing and issuing digital certificates to the sub-CA. Both the sub-CA and the root CA are deployed in the blockchain network.
[0008] The user client and the zero-trust gateway register with the SDP controller, which is deployed in the blockchain and uses the legal user list and the legal gateway list to maintain the successfully registered user client and the zero-trust gateway client, and stores the identity information of the registered user client on the blockchain;
[0009] The SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request. If the anonymous identity authentication of the user client is successful, the anonymous certificate of the user client is stored in the blockchain network, and the single-package authorization authentication request is authenticated according to the single-package authorization authentication request of the user client, so that the user client can negotiate the key with the corresponding zero-trust gateway and obtain the service resources corresponding to the anonymous access request;
[0010] For tracing requests for anonymous identities, the sub-CA is used to extract the user's anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user's anonymous certificate.
[0011] As a zero-trust single-package authorization authentication method supporting privacy protection and traceability of the present invention, further, a double-layer CA is used to generate, manage and issue digital certificates, including:
[0012] The root CA randomly selects random number parameters and generates private keys and public keys, obtains public parameters using bilinear mapping, and sets tracking keys, group private keys, and group public keys. The public parameters include an additive cyclic group, a multiplicative cyclic group, an additive cyclic group generator, a random signature key, a single-package authorization information key parameter, and a hash function.
[0013] The sub-CA applies to the root CA for a registration identity request and provides its own real identity information. The root CA generates a private key for the sub-CA based on the different service resource attribute information provided by the sub-CA and issues it a digital certificate. After the sub-CA obtains its own digital certificate and private key, it publishes its own public key and sets its corresponding group tracking key, group public key and group private key by selecting random numbers.
[0014] As a zero-trust single-packet authorization authentication method supporting privacy protection and traceability of the present invention, further, the user client registers with the SDP controller, including:
[0015] Generate auxiliary information for verification based on the attribute value set presented by the sub-CA required by the user client, and use the auxiliary information to obtain the user client challenge value to verify the identity of the sub-CA;
[0016] The sub-CA registers the user client according to the user client registration request and stores the user client's identity information and private key information;
[0017] The user client requests a certificate from the sub-CA. The sub-CA generates a challenge value and sends it to the user client, which causes the user client to submit attribute values and generate a certificate request.
[0018] The sub-CA verifies the certificate request, generates an anonymous digital certificate based on the attribute values submitted by the user, and issues it to the user client;
[0019] The user client sends a registration request to the SDP controller using its own information, wherein the self-information includes: an anonymous digital certificate, key negotiation parameters, and an online identifier;
[0020] The SDP controller verifies the user client registration request, records the verified user client information into the legal user list, and sends the legal user list to the zero-trust gateway.
[0021] As a zero-trust single-packet authorization authentication method supporting privacy protection and traceability of the present invention, further, the zero-trust gateway registers with the SDP controller, including:
[0022] The zero-trust gateway generates a gateway registration request using its own information and sends it to the SDP controller. The zero-trust gateway's own information includes: gateway identity, gateway digital certificate, gateway online status representation, network information required to access the gateway, and gateway key negotiation parameters;
[0023] The SDP controller extracts the gateway identity and gateway digital certificate in the gateway registration request and performs comparison and verification, stores the verified zero-trust gateway's own information in the legal gateway list, and sends the legal gateway list to the user client.
[0024] As a zero-trust single-packet authorization authentication method supporting privacy protection and traceability of the present invention, further, the user client and the zero-trust gateway register with the SDP controller, which also includes:
[0025] The SDP controller maintains the legal user list and legal gateway list. If a new zero-trust gateway and user client are successfully registered, the legal user list and legal gateway list will be updated.
[0026] As a zero-trust single-packet authorization authentication method supporting privacy protection and traceability of the present invention, further, the SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request, including:
[0027] The user client sends an anonymous certificate to the SDP;
[0028] The SDP controller verifies the legitimacy of the anonymous certificate. If the verification is successful, the auxiliary information used for verification is calculated based on the attributes presented by the user client, and a challenge value is generated using the auxiliary information to authenticate the user's anonymous access using the challenge value. If the verification fails, the anonymous access of the user client is prohibited.
[0029] As a zero-trust single-package authorization authentication method supporting privacy protection and traceability of the present invention, further, authenticating the single-package authorization authentication request according to the single-package authorization authentication request of the user client includes:
[0030] The user client generates single-package information according to the service resource information to be accessed, adjusts its own online status identifier, generates a single-package authorization and authentication request according to the single-package information and the adjusted online status identifier, and sends the single-package authorization and authentication request and the anonymous certificate to the SDP controller;
[0031] The SDP controller triggers the zero-trust gateway of the corresponding service resource to go online based on the single-packet information in the single-packet authorization authentication request, and verifies the currently online zero-trust gateway based on the legal gateway list, so that after the zero-trust gateway verification is passed, the user client can establish communication with the zero-trust gateway.
[0032] On the other hand, the present invention also provides a zero-trust single-package authorization and authentication system that supports privacy protection and traceability, comprising: a double-layer CA, an SDP client, a zero-trust gateway, an SDP controller, a resource server, and a blockchain network, wherein:
[0033] A two-tier CA for managing and issuing digital certificates. The two-tier CA includes a sub-CA for issuing digital certificates to different user clients, and a root CA for generating group signature keys and tracking keys and authorizing and issuing digital certificates to the sub-CA. Both the sub-CA and the root CA are deployed in the blockchain network;
[0034] The SDP client is used to obtain authorization for accessing the service resources in the resource server corresponding to the user's access requirements and to access them;
[0035] Zero Trust Gateway, used to control SDP client access to service resources in resource servers;
[0036] The SDP controller is used to register and verify the SDP client and zero-trust gateway. The SDP controller is deployed in the blockchain and uses the legal user list and legal gateway list to maintain the successfully registered user client and zero-trust gateway client, and stores the identity information of the registered user client on the blockchain;
[0037] In addition, the SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request. If the anonymous identity authentication of the user client is passed, the anonymous certificate of the user client is stored in the blockchain network, and the single-package authorization authentication request is authenticated according to the single-package authorization authentication request of the user client, so that the user client can negotiate keys with the corresponding zero-trust gateway and obtain the service resources corresponding to the anonymous access request; and for the tracing request of the anonymous identity, the sub-CA is used to extract the user anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user anonymous certificate.
[0038] Beneficial effects of the present invention:
[0039] The present invention aims at the advantages and shortcomings of identity authentication technology, and realizes a zero-trust single-package authorization authentication scheme that supports privacy protection and traceability based on blockchain. On the basis of the original zero-trust network single-package authorization authentication technology, a group signature scheme is adopted to realize anonymous authentication technology, thereby realizing hidden protection of user identity; using the blockchain network as a carrier, using its open, transparent, and tamper-proof characteristics, the anonymous authentication scheme of user identity is expanded, and identity traceability supervision is supported while authentication. The national secret SM2 algorithm can be used to complete the key authentication exchange protocol process, so that user identity information can be verified, traceable, and supervised, effectively resisting the problem of anonymous identity authentication. And further, the performance evaluation experiment of this scheme and the existing scheme is carried out. The experimental results show that this scheme has good security, practicality and convenience, and finally makes the identity authentication technology form a complete closed loop in the zero-trust network architecture, improves the traditional single-package authorization authentication technology, and provides new ideas and new viewpoints for future identity authentication technology. It has wide compatibility and adaptability, and can be widely used in the fields of Internet of Things, cloud computing, big data, etc., and has good application prospects. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Figure 1 This is a schematic diagram of a zero-trust single-package authorization and authentication framework process that supports privacy protection and traceability in an embodiment;
[0041] Figure 2 This is a schematic diagram of the basic process of group signature in the embodiment;
[0042] Figure 3 This is a schematic diagram of the blockchain block structure and link in the embodiment;
[0043] Figure 4 This is a schematic diagram of the SM2 signature algorithm verification process in the embodiment;
[0044] Figure 5 This is a schematic diagram of the client registration process in the embodiment;
[0045] Figure 6 This is a schematic diagram of the zero-trust gateway registration process in the embodiment;
[0046] Figure 7 This is a schematic diagram of the anonymous authentication access process in the embodiment;
[0047] Figure 8 The following is a schematic diagram of the anonymous single-packet authorization and authentication process in the embodiment. DETAILED DESCRIPTION
[0048] In order to make the purpose, technical solutions and advantages of the present invention clearer and more understandable, the present invention is further described in detail below in conjunction with the accompanying drawings and technical solutions.
[0049] As an important part of the standard software-defined boundary in the zero-trust architecture, the single-package authorization mechanism has played a significant role in achieving invisible access to resources, access identity authentication, and reducing network attack surfaces. However, the standard single-package authorization mechanism uses a traditional centralized structure to store and distribute keys, lacks privacy protection for user identity information, and cannot effectively trace and identify the visitor's information during the authentication process. To this end, the embodiments of the present invention, see Figure 1 As shown, a zero-trust single-package authorization authentication method that supports privacy protection and traceability is provided, including:
[0050] A two-tier CA is used to manage and issue digital certificates. The two-tier CA includes a sub-CA for issuing digital certificates to different user clients, and a root CA for generating group signature keys and tracking keys and authorizing and issuing digital certificates to the sub-CA. Both the sub-CA and the root CA are deployed in the blockchain network.
[0051] The user client and the zero-trust gateway register with the SDP controller, which is deployed in the blockchain and uses the legal user list and the legal gateway list to maintain the successfully registered user client and the zero-trust gateway client, and stores the identity information of the registered user client on the blockchain;
[0052] The SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request. If the anonymous identity authentication of the user client is successful, the anonymous certificate of the user client is stored in the blockchain network, and the single-package authorization authentication request is authenticated according to the single-package authorization authentication request of the user client, so that the user client can negotiate the key with the corresponding zero-trust gateway and obtain the service resources corresponding to the anonymous access request;
[0053] For tracing requests for anonymous identities, the sub-CA is used to extract the user's anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user's anonymous certificate.
[0054] Among them, the group signature is a special digital signature with the characteristics of unforgeability, anonymity, and traceability. It is mainly composed of three entities: group managers, trackers, and some group members. Figure 2 As shown in the figure, a complete group signature scheme mainly includes five algorithms: initialization, group member registration, group signature, group signature verification, and group member tracking. The algorithms are introduced as follows:
[0055] (1) Initialization: The group administrator uses security parameter input and outputs the public and private keys of each entity in the system (including the group administrator) as well as the tracking key;
[0056] (2) Group member registration: Group members and administrators jointly input the administrator's public and private keys, and output a group certificate corresponding to the input group member's public key.
[0057] (3) Group signature: Group members input the group certificate, group member public key and message m to obtain the corresponding signature.
[0058] (4) Group signature verification: The verifier inputs the message m, the group signature of the message, and the administrator's public key to verify whether the signature is valid. If the signature is valid, it outputs 1, otherwise it outputs 0.
[0059] (5) Group member tracking: The group administrator inputs the group tracking key and the group signature of message m, and outputs the group member who generated the signature.
[0060] The implementation process of group signature ensures that group signature can achieve the following security properties: anonymity: legitimate group members generate group signatures, and no one except the administrator can reveal the identity of the signer; unforgeability: only legitimate group members can generate and verify signatures on behalf of the group, and illegal group members cannot generate and verify signatures; traceability: when it is necessary to determine the identity of group members, the administrator can use the tracking key to trace back to a specific group member and determine the true identity of the member.
[0061] Blockchain is a core supporting technology of distributed digital currency. It integrates multiple technical elements such as P2P network, economics, game theory, cryptography, etc. It has the characteristics of decentralization, data immutability and high transparency. It is composed of many data blocks in series, and each block contains two parts: block header and block body. Figure 3As shown, each block header contains the hash value of the previous block and the hash value of the current block, facilitating the implementation of the link between blocks. Each transaction in the block body is hashed, and a unique Merkle root hash value is generated through the hash algorithm of the Merkle tree and recorded in the block header to ensure the non-forgery of each transaction and avoid duplicate transactions. Compared with the traditional trust system, the most significant feature of the blockchain is its decentralized architecture. Each node enjoys equal rights and has a high degree of autonomy, without relying on any central server, making the entire network model more flattened. At the same time, the block also contains elements such as its hash value, nonce, and timestamp. Through the hash pointer in chronological order, the data blocks can be traced back throughout the entire link, with good traceability.
[0062] SM2 is a public-key encryption method, and its security is based on the elliptic curve discrete logarithm problem. This algorithm is widely used in generating and verifying digital signatures, key exchange, and encryption and decryption processes, providing an encryption strength of up to 256 bits and being able to process a data volume of up to 128G. As Figure 4 shown, the SM2 digital signature algorithm mainly consists of four steps: creating system parameters, generating key pairs, performing signatures, and the verification process. The verification process of the SM2 signature algorithm can be described as follows:
[0063] (1) System parameter selection
[0064] Select an appropriate set of elliptic curve domain parameters, including the definition of the finite field, the elliptic curve equation, the base point G, and the order n;
[0065] Select a hash function H, usually using the SM3 hashing algorithm.
[0066] (2) Key pair generation
[0067] Randomly select an integer d (1 < d < n - 1) as the private key;
[0068] Calculate the public key Q = dG, where G is a base point of the elliptic curve;
[0069] The user's key pair consists of the public key Q and the private key d.
[0070] (3) Signature process
[0071] Select a random number k (1 < k < n - 1);
[0072] Calculate the elliptic curve point C = kG;
[0073] Calculate the elliptic curve point [x1, y1] = kG;
[0074] Calculate r = x1 mod n. If r = 0 or r + k = n, reselect k.
[0075] Calculate s = (1 + dA)^(n-2)*(kr*dA) mod n, where dA is the private key and n is the order of the base point;
[0076] If s=0, reselect k;
[0077] The signature result is (r,s).
[0078] (4) Verification process
[0079] The verifier receives the message M and the signature (r, s);
[0080] The verifier calculates t = (r + s) mod n. If t = 0, the signature is invalid.
[0081] Compute the elliptic curve point [x2, y2] = sG + tPA, where PA is the signer’s public key;
[0082] Calculate R = x2 mod n. If R = r, the signature is valid; otherwise, the signature is invalid.
[0083] Due to the good properties of the national secret SM2 algorithm, in the embodiment of this case, the signature algorithm involved can be implemented using the SM2 algorithm.
[0084] Bilinear mapping is defined on the basis of groups. When there are three cyclic groups G1, G2 and G T There is e:G1×G2→G t And if it satisfies the following properties, then e is called a bilinear pairing:
[0085] (1) Bilinear: and There is always e(ag1,bg2)=e(g1,g2) ab ;
[0086] (2) Non-degenerate:
[0087] (3) Computability: e(g1,g2) can be computed using a polynomial time algorithm.
[0088] Figure 1The zero-trust single-package authorization and authentication scheme box that supports privacy protection and traceability can be divided into four stages: system construction, identity registration, anonymous access, and anonymous identity authentication. First, the system is constructed. The root CA generates a key pair, a tracking key, and a group public key for group signature. The sub-CA sends a registration application to the root CA. The root CA assigns a private key to the sub-CA based on the attribute information of different service resources provided by the sub-CA, and issues the corresponding certificate to it. After the sub-CA obtains the certificate and the private keys corresponding to different services, it will publish the corresponding public key and generate the corresponding tracking key and group key. Then, the user and the zero-trust gateway register. The user sends the identity to the SDP controller through the SDP client, and the controller interacts with the sub-CA to complete the registration and issue a certificate to the client; the zero-trust gateway also provides the identity and digital certificate as well as the corresponding network information and the specified signing key, and obtains the sub-CA authentication license through the SDP controller to complete the registration process. Subsequently, the client performs anonymous access. The user encrypts the single-package authorization information, hides the port, and accesses the corresponding resources through the zero-trust gateway. Finally, the anonymous identity tracing stage is performed. Sub-CA uses the blockchain network to track anonymous identities by inputting block hash values and outputting the user's real information.
[0089] Among them, during system construction and initialization, the root CA randomly selects random number parameters and generates private keys and public keys, uses bilinear mapping to obtain public parameters, and sets tracking keys, group private keys and group public keys. The public parameters include additive cyclic groups, multiplicative cyclic groups, additive cyclic group generators, random signature keys, single-package authorization information key parameters and hash functions; the sub-CA applies to the root CA for identity registration and provides its own real identity information. The root CA generates a private key for the sub-CA based on the different service resource attribute information provided by the sub-CA and issues a digital certificate to it; after the sub-CA obtains its own digital certificate and private key, it publishes its own public key, and sets its corresponding group tracking key, group public key and group private key by selecting random numbers.
[0090] Assume p is a large prime number. The SDP controller selects the additive cyclic group G and the multiplicative cyclic group G' of order p, and uses the generator Q of G to adopt the bilinear mapping e:G1×G2→G t and hash function H1: {0, 1} * →G1, Root CA random selection parameters Design your own private key Pri t = t, and calculate the public key: Randomly select the signature key S, calculate the single packet authorization information SPA key parameter T, and disclose the system parameters <G,G T ,e,Q,S,T,H1,H2>.
[0091] The root CA randomly selects a random number m, Calculate separately Then set the tracking key TK t =Pri t , group private key GRK=(d,s), group public key GPK=(D t ,S t ,T t ).
[0092] After the root CA generates the group key, tracking key, group public key, and group private key, the sub-CA in the blockchain network applies to the root CA for identity registration, thereby obtaining the right to grant the user server corresponding access certificates for different resources. The sub-CA provides its real identity information to the root CA. i The private key is generated by the root CA, namely SR i =x i , calculate the public key information
[0093]
[0094] sub-CA i Choose a random number d i , And calculate
[0095]
[0096] sub-CA i The group tracking key TK i =SR i , group private key GRK i =(d i ,s i ), group public key GPK i =(D t ,S t ,T t ).
[0097] The user client registers with the SDP controller, and the process can be designed to include:
[0098] Generate auxiliary information for verification based on the attribute value set presented by the sub-CA required by the user client, and use the auxiliary information to obtain the user client challenge value to verify the identity of the sub-CA;
[0099] The sub-CA registers the user client according to the user client registration request and stores the user client's identity information and private key information;
[0100] The user client requests a certificate from the sub-CA. The sub-CA generates a challenge value and sends it to the user client, which causes the user client to submit attribute values and generate a certificate request.
[0101] The sub-CA verifies the certificate request, generates an anonymous digital certificate based on the attribute values submitted by the user, and issues it to the user client;
[0102] The user client sends a registration request to the SDP controller using its own information, wherein the self-information includes: an anonymous digital certificate, key negotiation parameters, and an online identifier;
[0103] The SDP controller verifies the user client registration request, records the verified user client information into the legal user list, and sends the legal user list to the zero-trust gateway.
[0104] In a zero-trust network, the SDP controller is responsible for access control of various service resources. If a client server wants to access resources through a zero-trust gateway, both the SDP gateway and the client server need to provide identity information to the controller to complete registration.
[0105] Since the controller is deployed in the blockchain network and connected to the sub-CA server, once the client completes the registration, its identity information will also be stored on the chain. Even if anonymous access is made through group signatures, the real user identity can be traced back. In order to achieve anonymous access, the user client verifies the sub-CA through the controller before registration. i The user can specify the sub-CA according to the needs i The attribute values and anonymous credentials that need to be presented. Figure 5 As shown, the user verifies the sub-CA i The certificate is legitimate. To continue registration, you can perform the following steps:
[0106] (1) Assume that the set of attribute values that the user needs to display is show i =[shi1,shi2,...,shi n-h ], the user calculates the auxiliary value:
[0107]
[0108]
[0109] Among them, HSK and Hrand are pseudonym parameters, hdi is the attribute value, and r, g, C, Q are related auxiliary values.
[0110] The user calculates the challenge value using the above calculated values:
[0111]
[0112] If the verification is successful, the user can continue to register; otherwise, the registration is abandoned.
[0113] (2)Sub CA iReceive a registration request from the user and register the user client;
[0114] sub-CA i Select a random element And ensure the uniqueness of the private key value; after the selection is completed, the sub-CA i calculate:
[0115]
[0116] sub-CA i choose and At this time u 、s i ,d i and z u Satisfy u +z u *s i *y u =d i ;
[0117] User usr u The private key value is RK u =y u , sub-CA i will usr u identity information and for storage.
[0118] (3) The user sends a request to the sub-CA through the controller i Request certificate, sub-CA i Generate a random number to generate a challenge value and send it to user usr u After receiving the certificate, the user correctly calculates and submits the attribute value Prop, generates a certificate request, and finally obtains the sub-CA i The verification passed.
[0119] (4) The user obtains the sub-CA i After verification, set the submitted attribute value to sub-CA i Randomly select an element ek u ,ran u ∈Z p , and calculate Subsequently, the sub-CA i According to the following two formulas, usr u Certificate issued:
[0120]
[0121]
[0122] Finally generate the certificate Cert u =(Au ,K u ,ek u ,ran u ,Prop u ,SP i ) to issue an anonymous certificate to the user.
[0123] (5) After the user client obtains the certificate, it sends a registration request to the SDP controller, which contains the digital certificate Cert u , SPA key negotiation parameter SPAV client 、Online logo client Because anonymous authentication is adopted, there is no need to provide identity information to the controller.
[0124] (6) The SDP controller verifies the registration request submitted by the client. u ,Online client ,SPAV client ) is recorded in the khList list. At this point, the registration of the SDP client is completed.
[0125] Among them, the zero-trust gateway registers with the SDP controller, which can be designed to include the following content:
[0126] The zero-trust gateway generates a gateway registration request using its own information and sends it to the SDP controller. The zero-trust gateway's own information includes: gateway identity, gateway digital certificate, gateway online status representation, network information required to access the gateway, and gateway key negotiation parameters;
[0127] The SDP controller extracts the gateway identity and gateway digital certificate in the gateway registration request and performs comparison and verification, stores the verified zero-trust gateway's own information in the legal gateway list, and sends the legal gateway list to the user client.
[0128] See also Figure 6 As shown, the zero-trust gateway sends a registration request to the SDP controller, which contains a unique identity ID wg , digital certificate Cert w , online status indicator Online wangguan , access the network information required by the gateway Inform wg , SPA key negotiation parameter SPAV wangguan Information such as the SDP controller's identity ID for the zero-trust gateway wg With digital certificate Cert w After verification, (ID wg ,Cert wg ,Informwg ,Online wg ,SPAV wg ) is recorded in the wgList list. At this point, the zero trust gateway registration is completed.
[0129] After the zero-trust gateway and client server complete registration, the controller will generate and maintain the zero-trust gateway list wglist and client list khlist, send the gateway list wglist to the client server, and send the client list khlist to the zero-trust gateway. Whenever a new zero-trust gateway and client are successfully registered, the controller will update the list content.
[0130] Among them, the SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request, which can be designed to include the following content:
[0131] The user client sends an anonymous certificate to the SDP;
[0132] The SDP controller verifies the legitimacy of the anonymous certificate. If the verification is successful, the auxiliary information used for verification is calculated based on the attributes presented by the user client, and a challenge value is generated using the auxiliary information to authenticate the user's anonymous access using the challenge value. If the verification fails, the anonymous access of the user client is prohibited.
[0133] Before the user sends an anonymous single packet authorization authentication, he must first complete the authentication access to the anonymous identity to the SDP controller. Therefore, the user client sends its own anonymous certificate to the SDP controller. The controller receives the anonymous certificate from the user client, see Figure 7 As shown, you can verify whether it is valid by following the steps below:
[0134] (1) SDP controller verification
[0135]
[0136] If the equation is true, it means that the certificate is valid and the verification will proceed to the next step. Otherwise, it means that the certificate is invalid and access is prohibited.
[0137] (2) The client presents the attribute with the subscript "show" i =[shi1,shi2,...,shi n-h ], the SDP controller calculates the auxiliary value:
[0138]
[0139] (1) The SDP controller calculates the challenge value:
[0140]
[0141] If c′ m,u =c m,u If the authentication is established, the anonymous access authentication is successful. SDP can continue to provide authentication services based on the single-package authorization service authentication request subsequently submitted by the client, and upload and record relevant information such as the anonymous certificate to the blockchain network to facilitate subsequent identity tracing.
[0142] Among them, the single-package authorization authentication request is authenticated according to the single-package authorization authentication request of the user client, which can be designed to include:
[0143] The user client generates single-package information according to the service resource information to be accessed, adjusts its own online status identifier, generates a single-package authorization and authentication request according to the single-package information and the adjusted online status identifier, and sends the single-package authorization and authentication request and the anonymous certificate to the SDP controller;
[0144] The SDP controller triggers the zero-trust gateway of the corresponding service resource to go online based on the single-packet information in the single-packet authorization authentication request, and verifies the currently online zero-trust gateway based on the legal gateway list, so that after the zero-trust gateway verification is passed, the user client can establish communication with the zero-trust gateway.
[0145] like Figure 8 As shown in the figure, after the client anonymous authentication access is passed, when it wants to access the corresponding resources, it will generate a single packet information and change its own status to online status, that is, Online client The identifier is valid, and then a single-package authorization and authentication request is issued to the SDP controller and its own anonymous certificate is submitted. After the SDP controller receives the request from the client, since the anonymous certificate has been verified, it will send information requesting the zero-trust gateway corresponding to the access resource to go online, and verify whether the zero-trust gateway status and identity are consistent with the recorded wgList list. When both the client and the zero-trust gateway are online, they can interact. The SPA key is calculated according to the corresponding SPA key negotiation parameters, without the participation of other parties, and the client information is not exposed to others, thereby realizing anonymous single-package authorization and authentication.
[0146] When there is a dispute between the zero-trust gateway and the client, the sub-CA can be requested through the SDP controller i , use the hash value stored in the blockchain to retrieve the user's anonymous certificate and trace their true identity. sub-CA i Use the obtained By comparing with the database, the corresponding user information can be obtained, thereby tracking and tracing the user's real identity information.
[0147] Furthermore, based on the above method, an embodiment of the present invention also provides a zero-trust single-package authorization and authentication system that supports privacy protection and traceability, comprising: a double-layer CA, an SDP client, a zero-trust gateway, an SDP controller, a resource server, and a blockchain network, wherein:
[0148] A two-tier CA for managing and issuing digital certificates. The two-tier CA includes a sub-CA for issuing digital certificates to different user clients, and a root CA for generating group signature keys and tracking keys and authorizing and issuing digital certificates to the sub-CA. Both the sub-CA and the root CA are deployed in the blockchain network;
[0149] The SDP client is used to obtain authorization for accessing the service resources in the resource server corresponding to the user's access requirements and to access them;
[0150] Zero Trust Gateway, used to control SDP client access to service resources in resource servers;
[0151] The SDP controller is used to register and verify the SDP client and zero-trust gateway. The SDP controller is deployed in the blockchain and uses the legal user list and legal gateway list to maintain the successfully registered user client and zero-trust gateway client, and stores the identity information of the registered user client on the blockchain;
[0152] In addition, the SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request. If the anonymous identity authentication of the user client is passed, the anonymous certificate of the user client is stored in the blockchain network, and the single-package authorization authentication request is authenticated according to the single-package authorization authentication request of the user client, so that the user client can negotiate keys with the corresponding zero-trust gateway and obtain the service resources corresponding to the anonymous access request; and for the tracing request of the anonymous identity, the sub-CA is used to extract the user anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user anonymous certificate.
[0153] See also Figure 1As shown in the figure, the root CA is the core of the whole system, responsible for issuing authorization certificates and granting them to sub-CAs, so that sub-CAs can issue certificates for users. In this system, the root CA is deployed in the blockchain network; sub-CA is an institution that can issue certificates through the root CA authentication, and can issue certificates for different users. At the same time, it is deployed on the blockchain to use the anonymous certificates it saves to trace the real identity of the user. In the SDP client, the user accesses the corresponding resources through the SDP client server. Before accessing, the CA needs to authenticate and issue the certificate for it. The user can present the corresponding anonymous certificate to the resource server according to the service he needs, and can access the corresponding resources after the authentication is passed. After the zero-trust gateway is authenticated by the SDP controller, it interacts with the controller and is responsible for querying and judging the key from the SDP client, verifying the validity of the SDP client access rights through the query list, and controlling the client's access to the resource server. The SDP controller is responsible for registering and verifying the client and the zero-trust gateway, and provides the client and the zero-trust gateway with the data encryption key of the single-package authorization information. The SDP controller is also deployed in the blockchain network to facilitate the tracing of the legitimacy of the anonymous identity through the blockchain during anonymous authentication, and realize the traceability function. :As the carrier of root CA and sub-CA, blockchain network provides the system with privacy protection function based on group signature. At the same time, based on its openness, transparency and non-tamperability, it can also realize the legal traceability authentication of anonymous identity, which is the core functional carrier of the system. The resource server carries the resource information of the client server and is connected to the zero-trust gateway. After the single-package authorization information is decrypted by the zero-trust gateway, it is sent to the corresponding resource server according to the relevant information in the single-package authorization, so that users can accurately access the corresponding resources.
[0154] In order to verify the effectiveness of this solution, the following is a further explanation of the solution in combination with the analysis data:
[0155] The comparative analysis method is adopted to evaluate the zero-trust single-package authorization scheme that supports privacy protection and traceability in this case. The advantages and disadvantages of this case scheme are analyzed by comparing it with other schemes in existing research results, as shown in Table 1.
[0156] Table 1 Comparison of different authentication schemes
[0157]
[0158]
[0159] Among them, Scheme A is the Identity Mixer classic anonymous identity authentication scheme proposed by IBM. Scheme B is two identity-based ring signature schemes. Scheme C is an improved anonymous authentication scheme based on elliptic cryptographic curves. Scheme D is a scheme for achieving zero-trust anonymous access using designated verifier signatures under the software-defined boundary framework. Scheme E is a forward-secure anonymous authentication protocol scheme based on group signatures. Scheme F is an anonymous identity authentication scheme based on group signatures. Scheme G is a controllable anonymous authentication scheme implemented using identity mixer short group signatures. Scheme H is a scheme for blockchain-based verifiable credential digital identity and management architecture to achieve autonomous digital identity and authentication management. Scheme J is a scheme that combines blockchain with zero-knowledge proof algorithm and uses zero-knowledge proof to verify whether the identity attributes in the credential meet the requirements.
[0160] Table 1 compares the scheme of this case with the existing authentication technology from nine dimensions. The comparison results show that ensuring security and integrity is the premise of achieving authentication. Therefore, the above-mentioned research schemes can ensure the security and integrity of authentication. With the continuous enhancement of privacy protection in the access process, current research technologies can achieve anonymity of access through group signatures, accumulators and other technologies. However, if users abuse their identities during anonymous access, the above-mentioned schemes cannot completely solve the problem, and traceability and controllability cannot be guaranteed. At the same time, most of the above-mentioned schemes adopt traditional architectures and do not consider the use of single-package authorization technology for resource protection. Although some schemes adopt blockchain technology, they do not make good use of the technical characteristics of blockchain and do not achieve full supervision and verification. The solution in this case not only ensures good security and integrity, but also utilizes the architecture that combines zero-trust architecture and blockchain network, and adopts group signature technology for anonymous access and protection. At the same time, it makes good use of the characteristics of blockchain to achieve traceability, verifiability, and controllability. While ensuring the privacy protection and traceability of the access process, it also achieves protection of access resources, and integrates identity authentication and access control well. It can provide effective auxiliary decision support for security managers to configure reasonable single-package authorization control strategies and design integrated authentication and access solutions, and has good application prospects.
[0161] Unless otherwise specifically stated, the relative steps, numerical expressions and values of the components and steps set forth in these embodiments do not limit the scope of the present invention.
[0162] In this specification, each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the system disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part.
[0163] The units and method steps of each example described in conjunction with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. A person of ordinary skill in the art may use different methods to implement the described functions for each specific application, but such implementation is not considered to be beyond the scope of the present invention.
[0164] Those skilled in the art will appreciate that all or part of the steps in the above method can be completed by instructing related hardware through a program, and the program can be stored in a computer-readable storage medium, such as a read-only memory, a disk or an optical disk. Optionally, all or part of the steps in the above embodiment can also be implemented using one or more integrated circuits, and accordingly, each module / unit in the above embodiment can be implemented in the form of hardware or in the form of software function modules. The present invention is not limited to any specific form of combination of hardware and software.
[0165] Finally, it should be noted that the above-described embodiments are only specific implementations of the present invention, which are used to illustrate the technical solutions of the present invention, rather than to limit them. The protection scope of the present invention is not limited thereto. Although the present invention is described in detail with reference to the above-described embodiments, ordinary technicians in the field should understand that any technician familiar with the technical field can still modify the technical solutions recorded in the above-described embodiments within the technical scope disclosed by the present invention, or can easily think of changes, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.
Claims
1. A zero-trust single-package authorization and authentication method supporting privacy protection and traceability, characterized in that: Include: A two-tier CA is used to manage and issue digital certificates. The two-tier CA includes a sub-CA for issuing digital certificates to different user clients, and a root CA for generating group signature keys and tracking keys and authorizing and issuing digital certificates to the sub-CA. Both the sub-CA and the root CA are deployed in the blockchain network. The user client and the zero-trust gateway register with the SDP controller, which is deployed in the blockchain and uses the legal user list and the legal gateway list to maintain the successfully registered user client and the zero-trust gateway client, and stores the identity information of the registered user client on the blockchain; The SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request. If the anonymous identity authentication of the user client is successful, the anonymous certificate of the user client is stored in the blockchain network, and the single-package authorization authentication request is authenticated according to the single-package authorization authentication request of the user client, so that the user client can negotiate the key with the corresponding zero-trust gateway and obtain the service resources corresponding to the anonymous access request; For tracing requests for anonymous identities, the sub-CA is used to extract the user's anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user's anonymous certificate.
2. According to claim 1, the privacy protection and traceability supporting zero-trust single-package authorization and authentication method is characterized in that: Use a two-tier CA to generate, manage, and issue digital certificates, including: The root CA randomly selects random number parameters and generates private keys and public keys, obtains public parameters using bilinear mapping, and sets tracking keys, group private keys, and group public keys. The public parameters include an additive cyclic group, a multiplicative cyclic group, an additive cyclic group generator, a random signature key, a single-package authorization information key parameter, and a hash function. The sub-CA applies to the root CA for a registration identity request and provides its own real identity information. The root CA generates a private key for the sub-CA based on the different service resource attribute information provided by the sub-CA and issues it a digital certificate. After the sub-CA obtains its own digital certificate and private key, it publishes its own public key and sets its corresponding group tracking key, group public key and group private key by selecting random numbers.
3. According to claim 1, the privacy protection and traceability supporting zero-trust single-package authorization and authentication method is characterized in that: The user client registers with the SDP controller, including: Generate auxiliary information for verification based on the attribute value set presented by the sub-CA required by the user client, and use the auxiliary information to obtain the user client challenge value to verify the identity of the sub-CA; The sub-CA registers the user client according to the user client registration request and stores the user client's identity information and private key information; The user client requests a certificate from the sub-CA. The sub-CA generates a challenge value and sends it to the user client, which causes the user client to submit attribute values and generate a certificate request. The sub-CA verifies the certificate request, generates an anonymous digital certificate based on the attribute values submitted by the user, and issues it to the user client; The user client sends a registration request to the SDP controller using its own information, wherein the self-information includes: an anonymous digital certificate, key negotiation parameters, and an online identifier; The SDP controller verifies the user client registration request, records the verified user client information into the legal user list, and sends the legal user list to the zero-trust gateway.
4. According to claim 1, the privacy protection and traceability supporting zero-trust single-package authorization and authentication method is characterized in that: The zero-trust gateway registers with the SDP controller, including: The zero-trust gateway generates a gateway registration request using its own information and sends it to the SDP controller. The zero-trust gateway's own information includes: gateway identity, gateway digital certificate, gateway online status representation, network information required to access the gateway, and gateway key negotiation parameters; The SDP controller extracts the gateway identity and gateway digital certificate in the gateway registration request and performs comparison and verification, stores the verified zero-trust gateway's own information in the legal gateway list, and sends the legal gateway list to the user client.
5. The privacy protection and traceability-supporting zero-trust single-package authorization authentication method according to claim 3 or 4, characterized in that: The user client and zero-trust gateway register with the SDP controller, which also includes: The SDP controller maintains the legal user list and legal gateway list. If a new zero-trust gateway and user client are successfully registered, the legal user list and legal gateway list will be updated.
6. The zero-trust single-package authorization authentication method supporting privacy protection and traceability according to claim 1 is characterized in that: The SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request, including: The user client sends an anonymous certificate to the SDP; The SDP controller verifies the legitimacy of the anonymous certificate. If the verification is successful, the auxiliary information used for verification is calculated based on the attributes presented by the user client, and a challenge value is generated using the auxiliary information to authenticate the user's anonymous access using the challenge value. If the verification fails, the anonymous access of the user client is prohibited.
7. The zero-trust single-package authorization authentication method supporting privacy protection and traceability according to claim 1 is characterized in that: Authenticate the single-package authorization authentication request based on the user client's single-package authorization authentication request, including: The user client generates single-package information according to the service resource information to be accessed, adjusts its own online status identifier, generates a single-package authorization and authentication request according to the single-package information and the adjusted online status identifier, and sends the single-package authorization and authentication request and the anonymous certificate to the SDP controller; The SDP controller triggers the zero-trust gateway of the corresponding service resource to go online based on the single-packet information in the single-packet authorization authentication request, and verifies the currently online zero-trust gateway based on the legal gateway list, so that after the zero-trust gateway verification is passed, the user client can establish communication with the zero-trust gateway.
8. A zero-trust single-package authorization and authentication system that supports privacy protection and traceability, characterized in that: Contains: dual-layer CA, SDP client, zero-trust gateway, SDP controller, resource server and blockchain network, among which, A two-tier CA for managing and issuing digital certificates. The two-tier CA includes a sub-CA for issuing digital certificates to different user clients, and a root CA for generating group signature keys and tracking keys and authorizing and issuing digital certificates to the sub-CA. Both the sub-CA and the root CA are deployed in the blockchain network; The SDP client is used to obtain authorization for accessing the service resources in the resource server corresponding to the user's access requirements and to access them; Zero Trust Gateway, used to control SDP client access to service resources in resource servers; The SDP controller is used to register and verify the SDP client and zero-trust gateway. The SDP controller is deployed in the blockchain and uses the legal user list and legal gateway list to maintain the successfully registered user client and zero-trust gateway client, and stores the identity information of the registered user client on the blockchain; In addition, the SDP controller authenticates the validity of the anonymous identity of the user client in the anonymous access request. If the anonymous identity authentication of the user client is passed, the anonymous certificate of the user client is stored in the blockchain network, and the single-package authorization authentication request is authenticated according to the single-package authorization authentication request of the user client, so that the user client can negotiate keys with the corresponding zero-trust gateway and obtain the service resources corresponding to the anonymous access request; and for the tracing request of the anonymous identity, the sub-CA is used to extract the user anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user anonymous certificate.
9. An electronic device, characterized in that: include: at least one processor, and a memory coupled to the at least one processor; The memory stores a computer program, and the computer program can be executed by the at least one processor to implement the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed, the method according to any one of claims 1 to 7 can be implemented.
Citation Information
Patent Citations
Method for protecting CA privacy through PKI based on block chain
CN116707830A
Unified identity authentication method and platform based on zero-trust architecture
CN117834218A
Access control method, access control system, terminal and storage medium
WO2023116791A1
Cited By
Data access control method and system based on zero trust
CN121396571A
Carbon emission abnormity tracing method and device, medium and equipment
CN121998668A
A method, device, medium and equipment for tracing carbon emission anomaly
CN121998668B