Zero-trust single-package authorization authentication method and system supporting privacy protection and traceability
By combining a double-layer CA and blockchain with a group signature scheme, the problems of user identity privacy protection and traceability identification in single-package authorization authentication are solved, the privacy protection and traceability of user identity are achieved, and the security and practicality of the zero-trust network are improved.
Patent Information
- Application Number
- CN202411316716.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-20
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2044-09-20
AI Technical Summary
The existing single-package authorization and authentication scheme lacks privacy protection for user identity information and cannot effectively trace and identify, resulting in the exposure of the identity information of accessing users and the risk of compromise.
It adopts a two-tier CA management and issuance of digital certificates, uses blockchain network to store evidence, combines group signature scheme to achieve anonymous authentication, and uses SM2 algorithm for key authentication exchange to ensure the privacy protection and traceability of user identity.
It realizes the privacy protection and traceability of user identity in the zero-trust network, effectively resists the anonymous abuse problem in anonymous identity authentication, forms a complete identity authentication closed loop, and improves security and practicality.
Smart Images

Figure CN119276454B_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 and 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, while networks have greatly facilitated humanity, they have also inevitably increased the risk of data breaches and identity theft. Furthermore, with the increasing prevalence of new cyberattack methods such as advanced persistent threats, unauthorized access, insider security risks, and malicious data leaks, traditional software-defined perimeter network security, such as firewalls, antivirus software, and intrusion prevention systems, is no longer able to meet the current security requirements. To address the shortcomings of traditional software-defined perimeters and better protect resources against various threats and attacks, the zero-trust network model has emerged. Through authentication, monitoring, and tracking, it ensures a secure and reliable process, guaranteeing resource security and identity legitimacy. The zero-trust network model overturns traditional network-centric security protection, shifting to a user-centric approach that implements least-privilege access control. Single-packet authorization technology meets the security requirements of zero trust. By hiding server ports and setting default discard policies, it achieves service privacy and significantly improves the security performance of network systems. While single-packet authorization is a key technology in the current zero-trust architecture, existing solutions generally use traditional centralized key storage and distribution schemes, which cannot effectively protect visitor privacy information and cannot trace and monitor user identities. Therefore, how to legally protect user privacy information and trace and monitor user identities in a zero-trust system have become urgent challenges for authentication solutions in the current zero-trust architecture.
[0003] To achieve secure authentication and privacy protection during the authentication process, IBM's IdentityMixer is a classic anonymous identity authentication scheme. During the authentication process, users can selectively present their real identity attributes while hiding those that do not need to be presented. The converted user identity token can still be correctly verified using the CA's public key. For example, two identity-based ring signature schemes improve the efficiency of anonymous authentication by reducing the number of bilinear pairing operations and polynomial computations. Another example is an improved anonymous authentication scheme based on elliptic cryptographic curves, which reduces communication costs for both parties and resists numerous cryptographic attacks, offering high security. To address privacy protection, a scheme using designated verifier signatures within a software-defined boundary framework achieves zero-trust anonymous access, reducing communication overhead while also providing strong security. To meet current privacy protection needs in diverse scenarios such as healthcare, the Internet of Things, and cloud services, a forward-secure anonymous authentication protocol based on group signatures has been developed to protect user privacy in vehicular ad hoc networks, ensuring the security of private vehicle information.
[0004] While current anonymous identity privacy protection technologies can safeguard user privacy, complete anonymity can also lead to abuse, necessitating appropriate regulation. Existing single-packet authorization and authentication schemes lack protection for visitor identity information, leading to exposure of accessing users' identities and creating a risk of compromise. Anonymous authentication using methods such as ring signatures, elliptic curves, and zero-knowledge proofs achieves user information concealment. However, the lack of authentication and regulation can easily lead to abuse, compromising resource security. Summary of the Invention
[0005] To this end, the present invention provides a zero-trust single-packet authorization authentication method and system that supports privacy protection and traceability, which solves the problems that the existing single-packet authorization mechanism lacks privacy protection for user identity information and cannot effectively trace and identify the visitor's identity.
[0006] According to the design scheme provided by the present invention, on the one hand, a zero-trust single-packet authorization and authentication method that supports privacy protection and traceability is provided, including:
[0007] Utilize a two-tier CA 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 signing keys and tracking keys, authorizing the sub-CAs, and issuing digital certificates. Both the sub-CAs and the root CA are deployed in the blockchain network.
[0008] The user client and zero-trust gateway register with the SDP controller, which 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;
[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 anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user anonymous certificate.
[0011] As a zero-trust single-package authorization and authentication method supporting privacy protection and traceability, the present invention further utilizes a two-tier CA to generate, manage, and issue digital certificates, including:
[0012] The root CA randomly selects random number parameters and generates private and public keys, uses bilinear mapping to obtain public parameters, and sets the tracking key, group private key, and group public key. The public parameters include the additive cyclic group, multiplicative cyclic group, additive cyclic group generator, random signature key, single-packet authorization information key parameter, and hash function.
[0013] The sub-CA applies for identity registration request to the root CA and provides its 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 and 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 then submits the attribute value and generates 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: anonymous digital certificate, key negotiation parameters and online identification;
[0020] The SDP controller verifies the user client registration request, records the verified user client's own 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 and 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, 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 and 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, further comprising:
[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, the SDP controller further 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 the auxiliary information is used to generate a challenge value 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 and authentication method supporting privacy protection and traceability of the present invention, further, authenticating the single-package authorization and authentication request according to the user client single-package authorization and authentication request includes:
[0030] The user client generates a single packet information based on the service resource information to be accessed, adjusts its own online status identifier, generates a single packet authorization and authentication request based on the single packet information and the adjusted online status identifier, and sends the single packet 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 two-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 sub-CAs for issuing digital certificates to different user clients, and a root CA for generating group signing keys and tracking keys, authorizing sub-CAs, and issuing digital certificates. Both the sub-CAs 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 perform access;
[0035] Zero Trust Gateway, used to control SDP client access to service resources in the resource server;
[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 user client after registration on the chain;
[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 based on 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 addresses the advantages and disadvantages of identity authentication technology and implements a zero-trust single-packet authorization and authentication scheme based on blockchain that supports privacy protection and traceability. Based on the existing zero-trust network single-packet authorization and authentication technology, a group signature scheme is adopted to implement anonymous authentication technology, thereby achieving hidden protection of user identity. Using the blockchain network as a carrier, and utilizing its openness, transparency, and tamper-proof characteristics, the anonymous user identity authentication scheme is expanded, supporting identity traceability and supervision during authentication. The national secret SM2 algorithm can be used to complete the key authentication exchange protocol process, making user identity information verifiable, traceable, and supervised, effectively resisting the problem of anonymous identity authentication. Furthermore, performance evaluation experiments are conducted on this scheme and existing schemes. The experimental results show that this scheme has good security, practicality, and convenience, ultimately forming a complete closed loop for identity authentication technology in the zero-trust network architecture, improving the traditional single-packet authorization and authentication technology, and providing new ideas and new perspectives for future identity authentication technology. It has broad compatibility and adaptability and can be widely used in the fields of the Internet of Things, cloud computing, big data, and has good application prospects. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Figure 1 This is a flowchart of a zero-trust single-package authorization and authentication framework 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 linking 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 This is a schematic diagram of the anonymous single-packet authorization and authentication process in the embodiment. DETAILED DESCRIPTION
[0048] In order to make the objectives, technical solutions and advantages of the present invention clearer and more understandable, the present invention is further described in detail below with reference to the accompanying drawings and technical solutions.
[0049] As an important component of the standard software-defined boundary in the zero-trust architecture, the single-packet 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-packet 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 and authentication method that supports privacy protection and traceability is provided, including:
[0050] Utilize a two-tier CA 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 signing keys and tracking keys, authorizing the sub-CAs, and issuing digital certificates. Both the sub-CAs and the root CA are deployed in the blockchain network.
[0051] The user client and zero-trust gateway register with the SDP controller, which 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;
[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 anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user anonymous certificate.
[0054] Among them, group signature is a special digital signature with the characteristics of unforgeability, anonymity and traceability, which is mainly composed of three entities: group manager, tracker 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 parameters as 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 the 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, and verifies 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 the message m, and outputs the group member who generated the signature.
[0060] The implementation process of group signatures ensures that group signatures 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 member's true identity.
[0061] Blockchain is a core supporting technology for distributed digital currency. It integrates multiple technical elements such as P2P network, economics, game theory, cryptography, etc., and has the characteristics of decentralization, data immutability, and high transparency. It is composed of many data blocks connected 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 will be hashed, and a unique Merkle root hash value will be 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 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 a key pair, performing the signature, 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 elliptic curve domain parameter, which includes 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 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 illustrated zero-trust single-packet authorization and authentication solution supporting privacy protection and traceability can be divided into four phases: system construction, identity registration, anonymous access, and anonymous identity authentication. First, system construction occurs. The root CA generates an issuance key pair, a tracking key, and a group public key for group signing. The sub-CA submits a registration request to the root CA. Based on the attribute information of the different service resources provided by the sub-CA, the root CA assigns a private key and issues the corresponding certificate. After receiving the certificate and the private keys corresponding to the different services, the sub-CA publishes the corresponding public keys and generates the corresponding tracking key and group key. Next, the user registers with the zero-trust gateway. The user sends their identity to the SDP controller through the SDP client. The controller interacts with the sub-CA to complete the registration and issue a certificate to the client. The zero-trust gateway also provides its identity and digital certificate, along with the corresponding network information and designated signing key, and obtains authentication permission from the sub-CA through the SDP controller, completing the registration process. Subsequently, the client performs anonymous access. The user encrypts the single-packet authorization information, hides the port, and accesses the corresponding resources through the zero-trust gateway. Finally, the anonymous identity tracing phase occurs. 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 group, multiplicative cyclic group, additive cyclic group generator, random signature key, single-package authorization information key parameters and hash function; the sub-CA applies to the root CA for identity registration 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 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, 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 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 then submits the attribute value and generates 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: anonymous digital certificate, key negotiation parameters and online identification;
[0103] The SDP controller verifies the user client registration request, records the verified user client's own 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 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 valid. To continue registration, perform the following steps:
[0106] (1) Assume that the set of attribute values that the user needs to present 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, and 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 a 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 attribute value submitted to sub-CA i Randomly select 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. If the verification is successful, 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] The zero-trust gateway registers with the SDP controller and can be designed to include the following:
[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, 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 Compare and verify (ID wg ,Cert wg ,Informwg ,Online wg ,SPAV wg ) is recorded in the wgList list. At this point, the Zero Trust Gateway registration is complete.
[0129] After the Zero Trust gateway and client server complete registration, the controller generates and maintains the Zero Trust gateway list wglist and client list khlist, sends the gateway list wglist to the client server, and sends the client list khlist to the Zero Trust gateway. Whenever a new Zero Trust gateway and client successfully register, the controller updates the list content.
[0130] 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 the auxiliary information is used to generate a challenge value 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, it 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 indicates that the certificate is valid and the verification process continues. Otherwise, the certificate is invalid and access is prohibited.
[0137] (2) The client presents the attribute subscripted as 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. The SDP can continue to provide authentication services based on the subsequent single-package authorization service authentication request submitted by the client, and upload relevant information such as the anonymous certificate to the blockchain network and record it to facilitate subsequent identity tracing.
[0142] The authentication of a single-package authorization and authentication request is performed based on the user client's single-package authorization and authentication request, and can be designed to include:
[0143] The user client generates a single packet information based on the service resource information to be accessed, adjusts its own online status identifier, generates a single packet authorization and authentication request based on the single packet information and the adjusted online status identifier, and sends the single packet 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, 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 a single-packet authorization and authentication request is subsequently sent to the SDP controller, along with its own anonymous certificate. After receiving the request from the client, the SDP controller, having verified the anonymous certificate, sends a message requesting the Zero Trust Gateway corresponding to the accessed resource to come online. It also verifies whether the Zero Trust Gateway's status and identity are consistent with the recorded wgList list. Once both the client and Zero Trust Gateway are online, they can interact. The SPA key is calculated based on the corresponding SPA key negotiation parameters, without the need for other parties to participate, and client information is not exposed to others, thus achieving anonymous single-packet 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 two-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 sub-CAs for issuing digital certificates to different user clients, and a root CA for generating group signing keys and tracking keys, authorizing sub-CAs, and issuing digital certificates. Both the sub-CAs 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 perform access;
[0150] Zero Trust Gateway, used to control SDP client access to service resources in the resource server;
[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 user client after registration on the chain;
[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 based on 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, the root CA is the core of the entire system, responsible for issuing authorization certificates and granting them to sub-CAs, enabling them to issue certificates to users. In this system, the root CA is deployed within the blockchain network. Sub-CAs are organizations authorized by the root CA to issue certificates. They can issue certificates for different users and are deployed on the blockchain, using the anonymous certificates they store to trace users' true identities. In the SDP client, users access resources through the SDP client server. Before accessing, they must obtain CA authentication and a certificate. Users present their anonymous certificates to the resource server based on the services they require. Once authenticated, they can access the corresponding resources. After being authenticated by the SDP controller, the zero-trust gateway interacts with the controller and queries and verifies the keys from the SDP client. It verifies the validity of the SDP client's access rights through a query list and controls client access to the resource server. The SDP controller is responsible for registering and verifying the client and the zero-trust gateway, providing them with data encryption keys for single-packet authorization information. The SDP controller is also deployed within the blockchain network, facilitating the verification of the legitimacy of anonymous identities through the blockchain during anonymous authentication, achieving traceability. The blockchain network, as the carrier of the root CA and sub-CA, provides the system with privacy protection based on group signatures. Its openness, transparency, and immutability also enable legal traceability and authentication of anonymous identities, making it the core functional carrier of the system. The resource server carries resource information to be sent to the client server and is connected to the zero-trust gateway. After decrypting the single-packet authorization information through the zero-trust gateway, it is sent to the corresponding resource server based on the relevant information in the single-packet authorization, allowing users to accurately access the corresponding resources.
[0154] To verify the effectiveness of this solution, the following is a further explanation of the solution based on the analysis data:
[0155] A comparative analysis approach was used to evaluate the privacy-preserving and traceable zero-trust single-packet authorization solution in this case. The advantages and disadvantages of this solution were analyzed by comparing it with other solutions in existing research results, as shown in Table 1.
[0156] Table 1 Comparison of different authentication schemes
[0157]
[0158]
[0159] Among them, Solution A is the classic anonymous identity authentication solution proposed by IBM, Identity Mixer. Solution B is a two-ring signature solution based on identity. Solution C is an improved anonymous authentication solution based on elliptic cryptographic curves. Solution D is a solution that uses designated verifier signatures to achieve zero-trust anonymous access under the software-defined boundary framework. Solution E is a forward-secure anonymous authentication protocol solution based on group signatures. Solution F is an anonymous identity authentication solution based on group signatures. Solution G is a controllable anonymous authentication solution implemented using identity mixer short group signatures. Solution H is a solution for blockchain-based verifiable credential digital identity and management architecture to achieve autonomous digital identity and authentication management. Solution J is a solution 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 this solution with existing authentication technologies from nine perspectives. The comparison results show that ensuring security and integrity is a prerequisite for achieving authentication. Therefore, the aforementioned research solutions can all guarantee the security and integrity of authentication. With the continuous enhancement of privacy protection during access, current research technologies can achieve anonymity through group signatures, accumulators, and other technologies. However, if users abuse their identities during anonymous access, these solutions cannot fully address the issues, and thus cannot guarantee traceability and controllability. Furthermore, most of the aforementioned solutions use traditional architectures and do not consider using single-package authorization technology for resource protection. Although some solutions use blockchain technology, they do not fully utilize the technical characteristics of blockchain and do not implement full-process supervision and verification. This solution 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 privacy protection and traceability during the access process, it also achieves protection of access resources, integrates identity authentication and access control well, and 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] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. Reference can be made to the common and similar parts between the various embodiments. For the systems disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple, and the relevant parts can be referred to the method description.
[0163] The units and method steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the components and steps of each example have been generally described in terms of function in the above description. 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 performed by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a magnetic disk, or an optical disk. Alternatively, all or part of the steps in the above embodiment can be implemented using one or more integrated circuits. Accordingly, each module / unit in the above embodiment can be implemented in the form of hardware or software functional modules. The present invention is not limited to any specific combination of hardware and software.
[0165] Finally, it should be noted that the above-described embodiments are only specific implementation methods of the present invention, which are used to illustrate the technical solutions of the present invention, rather than to limit them. The scope of protection of the present invention is not limited thereto. Although the present invention has been described in detail with reference to the above-described embodiments, those skilled in the art should understand that any person skilled in the art can modify or easily conceive of changes to the technical solutions described in the above-described embodiments within the technical scope disclosed by the present invention, or replace some of the technical features therein with equivalents. Such modifications, changes, or replacements do not deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the scope of protection of the present invention. Therefore, the scope of protection of the present invention shall be subject to the scope of protection of the claims.
Claims
1. A zero-trust single-packet authorization and authentication method that supports privacy protection and traceability, characterized in that: Include: Utilize a two-tier CA 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 signing keys and tracking keys, authorizing the sub-CAs, and issuing digital certificates. Both the sub-CAs and the root CA are deployed in the blockchain network. The user client and zero-trust gateway register with the SDP controller, which 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; 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 anonymous certificate stored in the blockchain, and the user's real identity information is obtained based on the user anonymous certificate.
2. The privacy protection and traceability-supporting zero-trust single-packet authorization and authentication method according to claim 1, 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 and public keys, uses bilinear mapping to obtain public parameters, and sets the tracking key, group private key, and group public key. The public parameters include the additive cyclic group, multiplicative cyclic group, additive cyclic group generator, random signature key, single-packet authorization information key parameter, and hash function. The sub-CA applies for identity registration request to the root CA and provides its 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. The privacy protection and traceability-supporting zero-trust single-packet authorization and authentication method according to claim 1, 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 then submits the attribute value and generates 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: anonymous digital certificate, key negotiation parameters and online identification; The SDP controller verifies the user client registration request, records the verified user client's own information into the legal user list, and sends the legal user list to the zero trust gateway.
4. The privacy protection and traceability-supporting zero-trust single-packet authorization and authentication method according to claim 1, 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, 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-packet authorization and 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 privacy protection and traceability-supporting zero-trust single-packet authorization and authentication method according to claim 1, characterized in that: The SDP controller verifies 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 the auxiliary information is used to generate a challenge value 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 privacy protection and traceability-supporting zero-trust single-packet authorization and authentication method according to claim 1, 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 a single packet information based on the service resource information to be accessed, adjusts its own online status identifier, generates a single packet authorization and authentication request based on the single packet information and the adjusted online status identifier, and sends the single packet 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 sub-CAs for issuing digital certificates to different user clients, and a root CA for generating group signing keys and tracking keys, authorizing sub-CAs, and issuing digital certificates. Both the sub-CAs 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 perform access; Zero Trust Gateway, used to control SDP client access to service resources in the resource server; 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 user client after registration on the chain; 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 based on 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.