Anonymous satellite communication access method, communication equipment and system with attribute verification
By using Merkle trees and zero-knowledge proof technology for anonymous access authentication in satellite communications, the problems of storage overhead and privacy leakage in satellite communications are solved, refined access control and fast key negotiation are achieved, and secure satellite switching is supported.
Patent Information
- Application Number
- CN202411078510.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-07
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2044-08-07
AI Technical Summary
Existing satellite communication access authentication schemes have problems such as high storage overhead, risk of privacy information leakage, and inability to achieve refined access control.
An anonymous access method for satellite communications with attribute verification is adopted. User attribute values are stored in a Merkle tree structure, and zero-knowledge proof technology is used for identity authentication to reduce storage requirements and protect privacy. Digital signatures and key agreement schemes are combined to achieve refined control.
It reduces satellite storage overhead, protects user privacy, improves the strictness of access authentication, and reduces end-to-end verification latency through fast key negotiation and satellite switching solutions.
Smart Images

Figure CN119095030B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the technical field related to satellite communication identity authentication, and more specifically, relates to a satellite communication anonymous access method, communication equipment and system with attribute verification. Background Art
[0002] Satellite communications (SC) offer advantages over terrestrial communications (TS), such as wide coverage and unlimited geographical coverage. International organizations such as 3GPP have included satellite communications as a 5G access method, effectively complementing terrestrial communications. Satellite communications will effectively integrate with terrestrial communications, extending communication coverage to areas beyond the reach of traditional terrestrial communications, such as the sea and deserts, forming an integrated air-space-ground communications network.
[0003] Existing satellite access authentication solutions often directly store user IDs or keys within the satellite and use this stored information to verify the legitimacy of the access target. However, this traditional access authentication solution has at least the following drawbacks:
[0004] 1. Each user has an ID or key. Storing user IDs or keys incurs high storage overhead for the satellite, and traditional access authentication solutions struggle to manage a large number of user attributes.
[0005] 2. The vulnerability and susceptibility of satellites to attacks increase the risk of privacy information leakage in traditional solutions;
[0006] 3. With the increasingly diverse and complex satellite communication service requirements, traditional access authentication solutions are unable to implement refined access control based on the different attributes of different access objects for different communication services. Summary of the Invention
[0007] In response to the above-mentioned defects or improvement needs of the existing technology, the present application provides a satellite communication anonymous access method, communication equipment and system with attribute verification, which aims to reduce the storage overhead of the satellite, reduce the risk of privacy information leakage and achieve refined control of different attributes.
[0008] To achieve the above objectives, according to one aspect of the present application, a satellite communication anonymous access method with attribute verification is provided, which includes:
[0009] Step S1: The network control center initializes parameters, including:
[0010] Develop anonymous access control strategies for satellite communications;
[0011] Store the attribute values of the user's communication device in a Merkle tree structure and record the Merkle tree root hash;
[0012] Determine the large prime numbers and group generators used to generate temporary public keys and temporary private keys; determine the system security parameters and circuits used for zero-knowledge proof, set thresholds, and generate proof keys and verification keys based on the system security parameters and circuits;
[0013] Step S2: The user communication device requests to access the satellite, including:
[0014] Generate a first temporary public key, a first temporary private key, a count value, and a random number;
[0015] Constructing a first private input, comprising an attribute value to be verified, a storage path of the attribute value in the network control center, a first temporary public key, a count value, and a random number;
[0016] Performing a hash operation on the attribute value and the count value to obtain a first hash value, and performing a hash operation on the hash value of the first temporary public key and the random number to obtain a second hash value;
[0017] Constructing a first public input comprising a satellite communication anonymous access policy, a set threshold, a first hash value, a second hash value, and a root hash of a Merkle tree for indexing a current user communication device attribute value in a network control center;
[0018] generating a zero-knowledge access credential based on the first attestation key, the first private input, and the first public input;
[0019] sending an access request including the first public input and the zero-knowledge access credential to the satellite;
[0020] Step S3: The satellite verifies the access request, including:
[0021] The access request is verified based on a first verification key matching the first certification key, a first public input, and a zero-knowledge access credential. If the verification is successful, the user communication device is allowed to access; otherwise, the access is denied.
[0022] Preferably, the network control center further generates a satellite public-private key pair, comprising a satellite public key and a satellite private key;
[0023] After allowing the user communication device to access, executing:
[0024] Step S4: The satellite sends a key negotiation request, including:
[0025] Generate a second temporary public key and a second temporary private key, and use the satellite private key to generate a negotiation message signature for the second temporary public key;
[0026] sending a satellite key negotiation request including a second temporary public key and a negotiation message signature to the user communication device;
[0027] Step S5: The user communication device verifies the satellite key negotiation request, including:
[0028] The negotiation message signature is verified using the satellite public key. If the verification is successful, the session key is calculated based on the group element operation and the process proceeds to step S6:
[0029] Step S6: The user communication device sends a user-side key negotiation request, including:
[0030] Construct the second private input, including the random number;
[0031] Constructing a second public input comprising the first temporary public key and the second hash value;
[0032] generating a zero-knowledge key agreement credential based on the second attestation key, the second private input, and the second public input;
[0033] Sending a user terminal key negotiation request including a first temporary public key and a zero-knowledge key negotiation credential to the satellite;
[0034] Step S7: The satellite verifies the user terminal key negotiation request, including:
[0035] Verifying the client key agreement request based on a second verification key matching the second certification key, the second public input, and the zero-knowledge key agreement credential, and if successful, calculating a session key based on a group element operation;
[0036] The user communication device and the satellite communicate based on the same session key.
[0037] Preferably, generating the attestation key and the verification key based on the system security parameters and the circuit comprises:
[0038] Input the system security parameters and the first circuit into a key generation function to generate a first certification key and a first verification key; the first circuit satisfies the following constraints: the attribute value meets the access policy requirements, the first hash value is calculated correctly, the count value does not exceed the set threshold, the given attribute value and the Merkle tree root hash storage path are calculated correctly, and the second hash value is calculated correctly;
[0039] The system security parameter and the second circuit are input into a key generation function to generate a second certification key and a second verification key; the second circuit satisfies the constraint that the second hash value is calculated correctly.
[0040] Preferably, it also includes:
[0041] Step S8: The user communication device requests to switch satellites, including:
[0042] Regenerate the first temporary public key, the first temporary private key and the random number, and update the second hash value;
[0043] Using the session key, sending a satellite switching request including the second hash value to the currently connected satellite;
[0044] Step S9: The currently connected satellite selects a target satellite to be connected, including:
[0045] decrypting the satellite handover request using a session key;
[0046] Select a target satellite to be connected and use the satellite private key of the currently connected satellite to generate an inter-satellite handover message signature for the satellite handover request;
[0047] forwarding the inter-satellite handover message signature and the satellite handover request to the target satellite;
[0048] Step S10: The target satellite verifies the inter-satellite handover message signature using the satellite public key. If the verification is successful, the target satellite is used as the new satellite and the process jumps to step S4 to enter a new round of key negotiation.
[0049] Preferably, step S8 includes: the user communication device monitors the signal strength of the currently connected satellite, and when the signal strength is lower than a strength threshold, requests to switch satellites.
[0050] Preferably, in step S9, selecting a target satellite to be connected includes: selecting a satellite with the strongest signal as the target satellite to be connected.
[0051] According to another aspect of the present application, a user communication device is provided, comprising an access requesting unit, wherein the access requesting unit comprises:
[0052] A data generation module, configured to generate a first temporary public key, a first temporary private key, a count value, and a random number;
[0053] a hash operation module, configured to perform a hash operation on the attribute value to be verified and the count value to obtain a first hash value, and perform a hash operation on the hash value of the first temporary public key and the second random value to obtain a second hash value;
[0054] a first public input construction module, configured to construct a first public input comprising a satellite communication anonymous access policy, a set threshold, a first hash value, a second hash value, and a root hash of a Merkle tree for indexing a current user communication device attribute value in a network control center;
[0055] A first private input construction module, configured to construct a first private input including an attribute value to be verified, a storage path of the attribute value in the network control center, a first temporary public key, a first temporary private key, a count value, and a random number;
[0056] a first proof generation function module, configured to generate a zero-knowledge access credential based on a first proof key, a first public input, and a first private input;
[0057] The first sending module is configured to send an access request including a first public input and a zero-knowledge access credential to a satellite, so that the satellite verifies the access request using a first verification key matching a first certification key, the first public input, and the zero-knowledge access credential. If the verification is successful, the user communication device accesses the satellite.
[0058] Preferably, the system further includes a user-side key negotiation unit, wherein the user-side key negotiation unit includes:
[0059] a satellite key negotiation request verification module, configured to receive a satellite key negotiation request including a second temporary public key generated by the satellite and a negotiation message signature, where the negotiation message signature is a signature generated by the satellite using its satellite private key on the second temporary public key;
[0060] A first session key calculation module, configured to calculate a second session key based on group element operation when the negotiation message signature verification succeeds;
[0061] A second public input construction module, configured to construct a second public input including the first temporary public key and the second hash value when the negotiation message signature verification succeeds;
[0062] A second private input construction module, configured to construct a second private input including a random number when the negotiation message signature verification succeeds;
[0063] A second proof generation function module is used to generate a zero-knowledge key negotiation credential based on a second proof key, a second public input, and a second private input; the second proof key is paired with a second verification key used by the satellite for verification;
[0064] a second sending module, configured to send a user-side key negotiation request including the first temporary public key and the zero-knowledge key negotiation credential to the satellite, so that the satellite verifies the user-side key negotiation request based on the second verification key, the second public input, and the zero-knowledge key negotiation credential, and calculates a session key based on a group element operation when the verification is successful;
[0065] The user communication device and the satellite communicate based on the same session key.
[0066] According to another aspect of the present application, an anonymous communication system for attribute verification is provided, comprising a network control center, user communication equipment and a satellite, wherein:
[0067] The network control center includes:
[0068] Satellite management unit, used to formulate satellite communication anonymous access control strategy and generate satellite public-private key pairs, including satellite public key and satellite private key;
[0069] A storage unit, configured to store attribute values of user communication devices in a Merkle tree structure;
[0070] A key parameter determination unit, configured to determine a large prime number and a group generator for generating a temporary public key and a temporary private key; determine system security parameters and circuits for zero-knowledge proof, and generate a proof key and a verification key based on the system security parameters and circuits;
[0071] The user communication device is the user communication device described above;
[0072] The satellite comprises:
[0073] an access request verification unit, configured to verify the access request based on the first verification key, the first public input, and the zero-knowledge access credential, and if the verification is successful, allow the user communication device to access; otherwise, deny access;
[0074] If the user communication device has a user-side key negotiation unit, the satellite is further configured with a corresponding satellite-side key negotiation unit, and the satellite-side key negotiation unit includes:
[0075] a key agreement request sending module, configured to generate a second temporary public key and a second temporary private key, use the satellite private key to generate a signature agreement message signature for the second temporary public key, and send the satellite key agreement request including the second temporary public key and the agreement message signature to the user communication device;
[0076] The user-side key negotiation request verification module is used to verify the user-side key negotiation request based on the second verification key, the second public input and the zero-knowledge key negotiation credential, and if the verification is successful, calculate the session key based on the group element operation.
[0077] Preferably, the user communication device further comprises a satellite switching request unit, the satellite switching request unit being configured to regenerate the first temporary public key, the first temporary private key and the random number, and update the second hash value, and send a satellite switching request including the second hash value to the currently connected satellite using the session key;
[0078] The satellite also includes a switching unit corresponding to the switching satellite request unit, which is used to decrypt the satellite switching request using a session key, select a target satellite to be connected, and use the satellite private key of the currently connected satellite to generate an inter-satellite switching message signature for the satellite switching request, and forward the inter-satellite switching message signature and the satellite switching request to the target satellite, so that the user communication device can access the target satellite.
[0079] In general, compared with the prior art, the above technical solutions conceived by this application provide a satellite communication anonymous access method, communication equipment and system with attribute verification, which have the following beneficial effects:
[0080] 1. In this invention, the network control center can flexibly update satellite communication anonymous access control policies based on demand and formulate different anonymous satellite communication access control policies for different attributes. Identity authentication can be achieved by determining the match between the user's corresponding attribute value and the satellite communication anonymous access control policy. Therefore, this invention enables fine-grained access authentication based on user communication device attributes. Furthermore, the satellite only needs to store the access control policy, not individual user information, reducing satellite storage overhead. During specific authentication, anonymous authentication using zero-knowledge proof technology eliminates the need to disclose user privacy information, thus protecting user privacy. Furthermore, during the zero-knowledge proof, private inputs are constructed, including parameters such as the attribute value, storage path, first temporary public key, count value, and random number. The corresponding public value is then calculated to construct the public input. This construction of input information allows verification of attribute matching, credential validity, malicious attack activity, and the legitimacy of the attribute source. This significantly enhances the stringency of anonymous access authentication and ensures system communication security.
[0081] 2. Furthermore, after successful access, a key negotiation scheme is also provided. Digital signatures and zero-knowledge proof technology are used to ensure the integrity of the public key during the negotiation process. It also ensures that the user conducting key negotiation with the satellite is the same user as in the anonymous access phase. Combining the negotiation phase with the access phase reduces the number of interaction rounds between the two parties and reduces end-to-end verification latency.
[0082] 3. Furthermore, during successful access and normal communication, a satellite switching solution is provided to efficiently implement satellite switching. Legitimate user communication equipment does not need to repeat the authentication access process, achieving fast and secure inter-satellite switching. BRIEF DESCRIPTION OF THE DRAWINGS
[0083] Figure 1 is a system architecture diagram of a communication system in one embodiment of the present invention;
[0084] Figure 2 This is a flowchart of the steps of the satellite communication anonymous access method with attribute verification in one embodiment of the present invention;
[0085] Figure 3 is a key negotiation flow chart in one embodiment of the present invention;
[0086] Figure 4 is a satellite switching flow chart in one embodiment of the present invention;
[0087] Figure 5 This is a complete flow chart of the satellite communication anonymous access method with attribute verification from initialization to satellite switching in one embodiment of the present invention. DETAILED DESCRIPTION
[0088] In order to make the purpose, technical solutions and advantages of this application more clearly understood, this application is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are merely for explaining this application and are not intended to limit this application. In addition, the technical features involved in the various embodiments of this application described below may be combined with each other as long as they do not conflict with each other.
[0089] Example 1
[0090] like Figure 1 The figure shows a system architecture diagram of a communication system in one embodiment, which includes a network control center, user communication equipment and satellite access nodes (i.e., satellites). The network control center is responsible for managing user communication equipment and satellites. User communication equipment selects one of the satellites to access and communicate based on the strength of the satellite signal. The process generally first goes through an anonymous access stage. During this stage, the user communication equipment sends an anonymous access request to the satellite, and the satellite verifies the identity of the user communication equipment. If the verification fails, access is denied. If the verification succeeds, the key negotiation stage begins. During this stage, the satellite and the user communication equipment allowed to access negotiate a session key, and then encrypted communication is achieved through the session key.
[0091] Traditionally, during the anonymous access phase, identity authentication is performed by directly matching the user's communication device ID or key with the satellite's stored ID or key. However, this approach has limitations in terms of satellite storage overhead, privacy information leakage risks, and the granularity of authentication. To address these issues, the present invention proposes the following anonymous satellite communication access method using attribute verification.
[0092] like Figure 2 The flowchart shows the steps of the anonymous access method for satellite communication with attribute verification in one embodiment of the present invention, which includes requesting access and verifying requests. The main steps are described in detail below.
[0093] Step S1: The network control center initializes parameters.
[0094] S11. Formulate satellite communication anonymous access control strategy ac.
[0095] Satellite communication access policy ac is deployed or deleted based on the type of business requirements. For example, access policy ac can be for ages > 18. The network control center formulates satellite communication anonymous access control policy ac based on the type of services provided by the Internet service provider. Anonymous access control policies can be formulated or deleted at any stage of system operation.
[0096] S12. Store the attribute value of the user communication device in a Merkle tree structure and record the Merkle tree root hash.
[0097] Managing user equipment (UE) attributes involves building a Merkle forest to manage user equipment attributes and transmitting the specific attribute information (attribute value + attribute path + root hash) corresponding to the user communication device to the user communication device through a secure channel. The specific process is as follows:
[0098] The network control center stores the attributes of the user communication device in the form of a Merkle tree structure; each user communication device is stored in a Merkle tree structure, and all Merkle trees together form a Merkle tree forest structure. The Merkle forest and Merkle trees are dynamically updated according to the subscription information of the user communication device;
[0099] The network control center distributes Merkle forests and Merkle trees to satellites at regular intervals;
[0100] After receiving the Merkel Forest update request, the satellite broadcasts it to all user communication devices in the coverage area;
[0101] The user communication device synchronizes the local attribute path with the control center through the Merkle forest update amount received from the satellite.
[0102] S13. Determine a large prime number p and a group generator g for generating a temporary public key and a temporary private key.
[0103] Both the user communication device and the satellite generate a temporary public key and a temporary private key based on the same p and g.
[0104] S14: Determine the system security parameter λ, the first circuit C1, and the second circuit C2 for zero-knowledge proof, and set a threshold THS.
[0105] Generate a first circuit C1 and a first circuit C2 for subsequent zero-knowledge proof.
[0106] The first circuit C1 satisfies the following constraints: the attribute value meets the access policy requirements, the first hash value is calculated correctly, the count value does not exceed the set threshold, the given attribute value and the Merkle tree root hash storage path are calculated correctly, and the second hash value is calculated correctly. Specifically, it can be expressed as the following constraints: match(ac,atr u )=1,r1=hash(atr u ,k1),k1≤THS,root=(atr u ,θ), r2=hash(hash(B),k2);
[0107] The second circuit C2 satisfies the constraint that the second hash value is calculated correctly. Specifically, it can be expressed as the following constraint: r2 = hash(hash(B, k2));
[0108] The above parameters are described in detail later.
[0109] S15. Allocate satellite public and private key pairs, including satellite public key and satellite private key
[0110] Specifically, a public-private key pair (pk SAP ,sk SAP ), sk SAP is the satellite private key, pk SAP is the satellite public key.
[0111] The network control center generates a public-private key pair (pk SAP ,sk SAP ), where sk SAP The private key is burned into the chip before the satellite is launched. SAP It is the satellite public key, which is sent to the user communication device.
[0112] S16. Allocate zero-knowledge proof key and verification key.
[0113] A first certification / verification key pair (zpk1, zvk1) and a second certification / verification key pair (zpk2, zvk2) are distributed.
[0114] The network control center inputs the system security parameter λ and the circuit C1 into the key generation function to generate the first certification key and the first verification key (zpk1, zvk1) = zkGen(1 λ ,C1); zkGen is the key generation function, zpk1 is sent to the user communication device, and zvk1 is sent to the satellite;
[0115] The network control center inputs the system security parameter λ and the circuit C2 into the key generation function to generate the second certification key and the second verification key (zpk2, zvk2) = zkGen(1 λ ,C2); zkGen is the key generation function, zpk2 is sent to the user communication device, and zvk2 is sent to the satellite.
[0116] Public-private key pair (pk SAP ,sk SAP ), key pair (zpk1, zvk1) and key pair (zpk2, zvk2) are used for subsequent zero-knowledge proof.
[0117] Step S2: The user communication device requests to access the satellite.
[0118] S21. Generate a first temporary public key, a first temporary private key, a count value, and a random number.
[0119] Specifically, a first temporary public key B, a first temporary private key b, a count value k1≤THS, and a random number k2 are generated, where THS is the threshold set as above.
[0120] S22. Construct a first private input, including the attribute value to be verified, the storage path of the attribute value in the network control center, the first temporary public key, the count value, and the random number;
[0121] Construct the first private input ω1, ω1 contains the attribute value atr to be verified u , the storage path θ of the attribute value in the network control center, the first temporary public key B, the count value k1, and the random number k2;
[0122] The user communication device may request the Merkle path θ of the attribute from the network control center.
[0123] Specifically, it can be expressed as the first private input ω1={atr u ,k1,k2,B,θ}.
[0124] S23, for ATR u Perform a hash operation on B's hash value and k1 to obtain a first hash value r1, and perform a hash operation on B's hash value and k2 to obtain a second hash value r2.
[0125] Specific operations performed:
[0126] r1=hash(atr u ,k1);
[0127] r2=hash(hash(B),k2).
[0128] S24, constructing a first public input, including a satellite communication anonymous access policy, a set threshold, a first hash value, a second hash value, and a root hash of a Merkle tree for indexing a current user communication device attribute value in a network control center;
[0129] Construct a first public input x1, x1 includes a satellite communication anonymous access policy ac, a set threshold THS, a first hash value r1, a second hash value r2 and root; root is a Merkle tree root hash used to index the current user communication device attribute value in the network control center.
[0130] Specifically, the first common input x1 ={ac, THS, r1, r2, root}.
[0131] S25. Generate a zero-knowledge access credential based on the first certification key, the first private input, and the first public input;
[0132] Generate a zero-knowledge access credential π based on the first proof key zpk1, the first public input x1, and the first private input ω1 a .
[0133] The user's communication device generates credentials using zero-knowledge proof tools.
[0134] Specifically, the zero-knowledge access credential π a =zkProve(zpk1,x1,ω1), where zkProve is the zero-knowledge proof generation function.
[0135] In one embodiment, circuit C1 satisfies the following constraints:
[0136] ①match(ac,atr u ) = 1: Calculate the attribute matching degree to ensure that the attributes of the accessed user's communication device meet the satellite access requirements (such as user age requirements, etc.);
[0137] ②r1=hash(atr u ,k1): Implement the calculation of the validity of the certificate. Each time the user accesses, the user u The privacy-preserving access of this attribute needs to be different to ensure anonymous access, because from the satellite's perspective, the different k1 leads to different r1, which results in different generated zero-knowledge access credentials. Therefore, it is impossible to identify the two accesses as the same user, thus achieving anonymous access for the user;
[0138] ③k1≤THS: Implement rate limit calculation to prevent DDoS attacks, that is, users calculate the rate limit based on each attribute atr u Access can only generate THS valid certificates, preventing malicious users from generating a large number of certificates to launch DDoS attacks and cause system crashes;
[0139] ④root=(atr u ,θ): Ensure the user's attribute atr u It is a node in the Merkle tree, which proves to the satellite that the attribute is a legal attribute, because the root hash root and the path θ are applied by the user to the network control center;
[0140] ⑤r2=hash(hash(B),k2): Implements temporary key validity calculation, used to hide B and k2 during the anonymous access phase, and proves during the key negotiation phase that the user knows k2 and is the same user as in the anonymous access phase, not an attacker.
[0141] S26. Sending an access request including the first public input and the zero-knowledge access credential to the satellite;
[0142] The user communication device packages the zero-knowledge credential and public value to generate an access request and sends it to the satellite. The access request can be expressed as <ACC,x1,π a >, where ACC is the access request flag.
[0143] Step S3: The satellite verifies the access request.
[0144] The access request is verified based on the first verification key matching the first certification key, the first public input and the zero-knowledge access credential. If the verification is successful, the user communication device is allowed to access; otherwise, the access is denied.
[0145] The satellite accesses the system based on the first verification key zvk1, the first public input x1 and the zero-knowledge access credential π. a The access request is verified. If the verification is successful, the user's communication device is allowed to access. Otherwise, the access is denied.
[0146] Specifically, satellite verification can be expressed as:
[0147] zkVerify(zvk1,x1,π a )=True / False; zkVerify zero-knowledge proof verification function.
[0148] The satellite takes the zero-knowledge access credential and the first public input as input and invokes the zero-knowledge proof tool's verification function to verify the credential's validity. If the credential is valid, the satellite generates a temporary public key and private key based on the key agreement scheme. Otherwise, the satellite rejects the request. Furthermore, the satellite stores the first temporary key and the hash value of the random number in the access request for use in the key agreement phase.
[0149] Through steps S2 and S3, anonymous access of the user's communication device can be achieved. After successful access, both parties can negotiate the session key and transmit data.
[0150] Zero-knowledge proof is essentially a process based on polynomial operations, that is, the prover hides his secret value as the coefficient of a certain polynomial, and the verifier decides whether to believe that the prover knows the secret value by calculating whether the polynomial result is correct. The present invention can make use of an existing zero-knowledge proof library, such as the arkworks library based on the Groth16 algorithm. The zero-knowledge proof library can provide a matching key generation function, a proof generation function, a proof verification function, and form a tool interface. It only needs to input the relevant data of the design into the corresponding interface to generate a proof and verify the proof. In the present invention, by inputting the circuit into the key generation function, a proof key and a verification key can be generated. By inputting the proof key, circuit, privacy value and public value into the zero-knowledge proof generation function, a zero-knowledge certificate can be generated. By inputting the generated zero-knowledge certificate, circuit, verification key and public value into the zero-knowledge proof verification function, a success or failure result can be returned.
[0151] In the present invention, the network control center can flexibly update the satellite communication anonymous access control policy according to demand, and can formulate different satellite communication anonymous access control policies for different attributes. By judging the matching degree between the user's corresponding attribute value and the satellite communication anonymous access control policy, identity authentication can be achieved. Therefore, the present invention can achieve fine-grained access authentication of user communication device attributes. In the specific authentication, the zero-knowledge proof technology is used for anonymous authentication, without the need to disclose the user's privacy information, thus protecting the user's privacy security. Moreover, when performing zero-knowledge proof, the constructed private input contains atr u , k1, k2, B, θ and other parameters, and calculate the corresponding public values to construct the public input. By constructing the above input information, the attribute matching degree, credential validity, whether it is a malicious attack behavior and the legitimacy of the attribute source can be verified, which greatly improves the strictness of anonymous access authentication and ensures the security of system communication.
[0152] After successful access, the user communication device and the satellite can negotiate the session key and transmit data. Specifically, the session key can be negotiated in a conventional manner, or the following method can be used to achieve key negotiation.
[0153] like Figure 3 FIG. 4 is a flowchart of a key negotiation process according to an embodiment of the present invention.
[0154] Step S4: The satellite sends a key negotiation request.
[0155] S41: Generate a second temporary public key and a second temporary private key, and use the satellite private key to generate a negotiation message signature for the second temporary public key.
[0156] Generate the second temporary public key A, the second temporary private key a, and use the satellite private key sk SAP Generate a negotiation message signature σ for A.
[0157] S42: Send a satellite key negotiation request including the second temporary public key and the negotiation message signature to the user communication device.
[0158] If the zero-knowledge access credential is verified to be valid, the satellite generates a second temporary public key A and a second temporary private key a, and negotiates a message signature σ=sign(A,sk SAP ),send<DH-S,A,σ> To user communication equipment; DH-S is the satellite key negotiation request mark.
[0159] Step S5: Use the satellite public key to verify the signature of the negotiation message. If the verification is successful, calculate the session key based on the group element operation and enter step S6.
[0160] Using satellite public key pk SAP Verify the negotiation message signature σ, satellite public key pkSAP With satellite private key sk SAP Pairing, when verification is successful, the session key s1 = A is calculated based on the group element operation b , and proceed to step S6.
[0161] Specifically, the user communication device verifies the signature Verify(pk SAP ,A,σ)=True / False, if valid, calculate the session key s1=A b .
[0162] Step S6: The user communication device sends a user-side key negotiation request.
[0163] S61. Construct a second private input, including a random number;
[0164] Specifically, the second private input ω2={k2} is constructed.
[0165] S62. Construct a second public input, including the first temporary public key and the second hash value.
[0166] Specifically, construct a common input x2={B, r2}.
[0167] S63. Generate a zero-knowledge key agreement credential based on the second certification key, the second private input, and the second public input;
[0168] Generate a zero-knowledge key agreement credential π based on the second proof key zpk2, the second private input x2, and the second public input ω2 k ;
[0169] Specifically, generate a zero-knowledge key agreement credential π k =zkProve(zpk2,x2,ω2).
[0170] S64: Sending a user terminal key negotiation request including the first temporary public key and the zero-knowledge key negotiation credential to the satellite;
[0171] Contains the first temporary public key B, zero-knowledge key agreement certificate π k The user-side key negotiation request is sent to the satellite.
[0172] Specifically, the user-side key negotiation request can be expressed as <DH-U,B,π k >DH-U is the user-side key negotiation request flag.
[0173] Step S7: The satellite verifies the user terminal key negotiation request.
[0174] Verifying the client key agreement request based on a second verification key matching the second certification key, the second public input, and the zero-knowledge key agreement credential, and if successful, calculating a session key based on a group element operation;
[0175] Based on the second verification key zvk2, the second public input x2, and the zero-knowledge key agreement credential π k Verify the user's key negotiation request. zvk2 is the verification key paired with zpk2. If the verification is successful, the session key s2 = B is calculated based on the group element operation. a =A b .
[0176] The verification at this stage is mainly to verify whether the user who sent the user-side key negotiation request is the same as the user who successfully accessed the request.
[0177] Satellite verification zero-knowledge key agreement certificate zkVerify(zvk2,x2,π k )=True / False, if valid, calculate session key s2=B a =A b .
[0178] The user communication device and the satellite communicate based on the same session key.
[0179] During the key negotiation phase, steps S4 to S7 are executed. The satellite uses the private key to sign the temporary public key to prove the reliability and integrity of the temporary public key to the user communication device. The user communication device uses the temporary public key, the hash value of the temporary public key and the random number as the public value, and the random number as the privacy value. It calls the zero-knowledge proof tool to generate a temporary public key certificate and sends a key negotiation request to the satellite. The satellite uses the temporary public key and the hash value of the random number and the temporary public key stored in the anonymous access phase as the public value, and uses the public value and the temporary public key certificate as input to call the verification function of the zero-knowledge proof tool to verify the validity. If valid, the session key is generated based on the key negotiation scheme. If invalid, the request is rejected.
[0180] In this embodiment, digital signatures and zero-knowledge proof technologies are used to ensure the integrity of the public key during the negotiation process, and to ensure that the user conducting key negotiation with the satellite is the same user as in the anonymous access phase. Combining the negotiation phase with the access phase reduces the number of interaction rounds between the two parties and reduces end-to-end verification delay.
[0181] Furthermore, the user communication device monitors the signal strength of the currently connected satellite and requests to switch satellites when the signal strength falls below a strength threshold. The following describes the satellite switching process.
[0182] like Figure 4 FIG. 1 is a flowchart of satellite switching in one embodiment of the present invention.
[0183] Step S8: The user communication device requests to switch satellites.
[0184] S81. Regenerate the first temporary public key, the first temporary private key and the random number, and update the second hash value.
[0185] Specifically, the first temporary public key B, the first temporary private key b and the random number k2 are updated. For easy distinction, the updated first temporary public key B is recorded as B', the updated first temporary private key b is recorded as b', the updated random number k2 is recorded as k2', and the recalculated second hash value r2 is recorded as r2'.
[0186] S82: Use the session key to send the satellite switching request including the second hash value to the currently connected satellite.
[0187] The satellite switching request including the second hash value r2 ′ is sent to the currently connected satellite using the session key s1 .
[0188] Specifically, construct a satellite switching request<HO,r2′> It is encrypted with the session key and sent to the currently connected satellite.
[0189] Step S9: The currently connected satellite selects the target satellite to be connected.
[0190] S91. Decrypt the satellite handover request using the session key.
[0191] S92: Select a target satellite to be connected and use the satellite private key of the currently connected satellite to generate an inter-satellite handover message signature for the satellite handover request;
[0192] Use the private key sk of the currently connected satellite SAP Generate an inter-satellite handover message signature σ1 for the satellite handover request.
[0193] S93, forwarding the inter-satellite handover message signature and the satellite handover request to the target satellite;
[0194] The inter-satellite handover message signature σ1 and the satellite handover request are forwarded to the target satellite.
[0195] The currently connected satellite uses the session key to decrypt the user's switching request to select the best target satellite, and uses the private key to generate the inter-satellite switching message signature σ1=Sign(sk SAP ,HO), forwarding satellite switching request<HO,σ1> to the target satellite.
[0196] Step S10: The target satellite verifies the inter-satellite handover message signature using the satellite public key. If the verification is successful, the target satellite is used as the new satellite and the process jumps to step S4 to enter a new round of key negotiation.
[0197] The target satellite uses the satellite public key pk SAP The inter-satellite handover message signature σ1 is verified. When the verification succeeds, the target satellite is used as the new satellite and the process jumps to step S4 to enter a new round of key negotiation.
[0198] Target satellite verification Verify(pk SAP ,HO,σ)=True / False, if the verification is successful, a new round of key negotiation will be carried out with the user.
[0199] During the satellite handover phase, steps S8 to S10 are executed. The user communication device sends a satellite handover request to the currently connected satellite. The currently connected satellite verifies the user communication device's identity, signs the request, and forwards it to the target satellite. After verification, the satellite initiates a new round of key negotiation with the user communication device. Specifically, the user communication device selects a new first temporary public key and a random number, and calculates the hash value of the first temporary public key and the random number. The user communication device encrypts the satellite handover request using the session key to verify its identity to the currently connected satellite. The currently connected satellite then signs the satellite handover request using the target satellite's public key to ensure its legitimacy.
[0200] In this embodiment, satellite switching is achieved through the above method, which can efficiently achieve satellite switching. Legal user communication equipment does not need to repeat the authentication access process, thereby achieving fast and secure inter-satellite switching.
[0201] like Figure 5 FIG. 1 is a complete flow chart of a satellite communication anonymous access method with attribute verification in one embodiment of the present invention, from initialization to satellite switching. Generally speaking, the method can be divided into four stages, namely:
[0202] System initialization phase: The Network Control Center (NCC) initializes the zero-knowledge proof system security parameter λ, deploys or deletes satellite communication access policies based on business requirements, manages user equipment (UE) attributes, and issues public and private keys for satellite access points (SAP).
[0203] Anonymous access phase: The satellite broadcasts a communication signal, the user communication device selects the target satellite, generates a zero-knowledge access credential, and sends an access request. After the user communication device's access request is verified, the key negotiation phase begins.
[0204] Key negotiation phase: The user communication device and the satellite each generate a temporary public key based on the same large prime number and group generator. Given the other party's temporary public key and their own temporary private key, the user communication device and the satellite can derive the same session key.
[0205] Among them, the user communication device generates a zero-knowledge key negotiation certificate to prove the legitimacy of its temporary public key, and the satellite uses a digital signature to prove the integrity of its temporary public key.
[0206] Satellite switching phase: When the received signal is lower than the threshold, the user communication device sends a satellite switching request to the currently connected satellite. The currently connected satellite verifies the identity of the user communication device, signs the request, and forwards it to the selected target satellite. After the satellite verification is passed, a new round of key negotiation is carried out with the user communication device.
[0207] Example 2
[0208] The present invention also discloses a user communication device, which can participate in executing the satellite communication anonymous access method for attribute verification in embodiment 1.
[0209] Specifically, the user communication device at least includes an access request unit.
[0210] The access request unit includes:
[0211] A data generation module is used to generate a first temporary public key B, a first temporary private key b, a count value k1≤THS, and a random number k2, where THS is a set threshold;
[0212] Hash operation module for atr u The hash operation of B and k1 is performed to obtain the first hash value r1, and the hash operation of B's hash value and k2 is performed to obtain the second hash value r2, atr u The attribute value to be verified;
[0213] A first public input construction module is used to construct a first public input x1, where x1 includes ac, THS, r1, r2, and root; ac is the satellite communication anonymous access control policy, and root is the Merkle tree root hash used to index the current user communication device information in the network control center;
[0214] The first private input building block is used to build the first private input ω1, ω1 contains atr u , k1, k2, B, θ; θ is atr u Storage path in the network control center;
[0215] The first proof generation function module generates a zero-knowledge access credential π based on zpk1, x1, and ω1 a zpk1 is the first certification key and is paired with the first verification key zvk1 used by the satellite for verification;
[0216] The first sending module is used to send the data including x1, π a The access request is sent to the satellite to make the satellite based on zvk1, x1 and π aThe access request is verified, and if the verification is successful, the user communication device accesses the satellite.
[0217] Furthermore, the user communication device also includes a user-side key negotiation unit.
[0218] The user-side key negotiation unit includes:
[0219] The satellite key negotiation request verification module is used to receive a satellite key negotiation request containing A and σ, where A is the second temporary public key generated by the satellite and σ is the satellite private key sk SAP Sign the key agreement message generated by A using the satellite public key pk SAP Verify the signature σ, public key pk SAP With the private key sk SAP pair;
[0220] The first session key calculation module is used to calculate the session key s1 = A when the key agreement message signature σ is successfully verified. b ;
[0221] A second public input construction module is configured to construct a second public input x2 when the key agreement message signature σ is successfully verified, where x2 includes B and r2;
[0222] A second private input construction module is configured to construct a second private input ω2 when the key agreement message signature σ is successfully verified, where ω2 includes k2;
[0223] The second proof generation function module is used to generate the zero-knowledge key agreement certificate π based on zpk2, x2, and ω2 k zpk2 is the second certification key and is paired with the satellite's second verification key zvk2 for verification;
[0224] The second sending module is used to send the data including x2, π k The user-side key negotiation request is sent to the satellite, so that the satellite can k Verify the user's key negotiation request and enable the satellite to calculate the session key s2 = B when the verification is successful a =A b ;
[0225] The user communication device and the satellite communicate based on the same session key.
[0226] Example 3
[0227] The present invention also discloses an anonymous communication system with attribute verification, including a network control center, user communication equipment and a satellite. The network control center, user communication equipment and satellite are used to implement the anonymous satellite communication access method with attribute verification in embodiment 1.
[0228] Specifically, the network control center includes:
[0229] Satellite management unit, used to formulate satellite communication anonymous access control strategy ac and generate satellite public and private key pairs (pk SAP ,sk SAP ), where pk SAP is the public key, sk SAP is the private key;
[0230] A storage unit, configured to store attribute values of user communication devices in a Merkle tree structure;
[0231] The key parameter determination unit is used to determine the large prime number and group generator used to generate the temporary public key and the temporary private key; determine the system security parameters and circuits used for zero-knowledge proof, and generate the proof key and verification key based on the system security parameters and circuits.
[0232] The user communication device is the user communication device in Example 2. Please refer to the above introduction for details and will not be repeated here.
[0233] Satellites include:
[0234] The access request verification unit is used in conjunction with the access request unit in the user communication device to achieve anonymous access, specifically for a The access request is verified, zvk1 is the first verification key, if the verification is successful, the user communication device is allowed to access, otherwise, the access is denied.
[0235] If the user communication device has a user-side key negotiation unit, the satellite is also equipped with a corresponding satellite-side key negotiation unit. The satellite-side key negotiation unit includes:
[0236] A key negotiation request sending module, configured to send a satellite key negotiation request to the user communication device when the access request verification is successful;
[0237] The user-side key negotiation request verification module is used to verify the key based on zvk2, x2, π k Verify the client key negotiation request, zvk2 is the second verification key paired with zpk2, if the verification is successful, calculate the session key s2 = B a =A b .
[0238] Furthermore, the user communication device further includes a satellite switching request unit, which is configured to regenerate the first temporary public key B, the first temporary private key b, and the random number k2, update the hash value r2, and send a satellite switching request including the second hash value r2 to the currently connected satellite using the session key;
[0239] The satellite also includes a switching unit corresponding to the switching satellite request unit, which is used to decrypt the satellite switching request using the session key, select the target satellite to be connected and use the satellite public key pk of the target satellite SAP An inter-satellite handover message signature σ1 is generated for the satellite handover request, and σ1 and the satellite handover request are forwarded to the target satellite so that the user communication device can access the target satellite.
[0240] In general, the present invention provides an anonymous satellite communication access technology with attribute verification. Using zero-knowledge proof technology, the identity and attributes of user communication devices remain anonymous to the satellite throughout the entire process of access authentication, key negotiation, and satellite handover. The satellite can implement fine-grained access authentication for user communication device attributes based on different access strategies, greatly enhancing refined control over user access to the network while protecting user privacy and security. Furthermore, during communication key negotiation, the integrity of the public key during the negotiation process is ensured through digital signatures and zero-knowledge proof technology. Combining the negotiation phase with the access phase reduces the number of interaction rounds between the two parties and reduces end-to-end verification latency. Furthermore, an efficient satellite handover solution is added, eliminating the need for legitimate user communication devices to repeat the authentication access process, enabling fast and secure inter-satellite handover.
[0241] The technical features of the above embodiments can be combined in any combination. To keep the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification. It should be noted that the phrases "in one embodiment", "for example", "and another example" in this application are intended to illustrate this application and are not intended to limit this application.
[0242] The above embodiments merely illustrate several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent application. It should be noted that a person skilled in the art could make numerous variations and improvements without departing from the spirit of the present application, all of which fall within the scope of protection of the present application.
Claims
1. A satellite communication anonymous access method with attribute verification, characterized in that: include: Step S1: The network control center initializes parameters, including: Develop anonymous access control strategies for satellite communications; Store the attribute values of the user's communication device in a Merkle tree structure and record the Merkle tree root hash; Determining a large prime number and a group generator for generating a temporary public key and a temporary private key; determining system security parameters and circuits for zero-knowledge proof, setting thresholds, and generating a paired proof key and verification key based on the system security parameters and circuits, including a paired first proof key and a first verification key; Step S2: The user communication device requests to access the satellite, including: Generate a first temporary public key, a first temporary private key, a count value, and a random number; Constructing a first private input, comprising an attribute value to be verified, a storage path of the attribute value in the network control center, a first temporary public key, a count value, and a random number; Performing a hash operation on the attribute value and the count value to obtain a first hash value, and performing a hash operation on the hash value of the first temporary public key and the random number to obtain a second hash value; Constructing a first public input comprising a satellite communication anonymous access policy, a set threshold, a first hash value, a second hash value, and a root hash of a Merkle tree for indexing a current user communication device attribute value in a network control center; generating a zero-knowledge access credential based on the first attestation key, the first private input, and the first public input; sending an access request including the first public input and the zero-knowledge access credential to the satellite; Step S3: The satellite verifies the access request, including: The access request is verified based on a first verification key matching the first certification key, a first public input, and a zero-knowledge access credential. If the verification is successful, the user communication device is allowed to access; otherwise, the access is denied.
2. The anonymous satellite communication access method with attribute verification according to claim 1, wherein: The network control center also generates a satellite public-private key pair, including a satellite public key and a satellite private key, and the paired certification key and verification key also include a paired second certification key and a second verification key; After allowing the user communication device to access, executing: Step S4: The satellite sends a key negotiation request, including: Generate a second temporary public key 、 A second temporary private key is used to generate a negotiation message signature for the second temporary public key using the satellite private key; sending a satellite key negotiation request including a second temporary public key and a negotiation message signature to the user communication device; Step S5: The user communication device verifies the satellite key negotiation request, including: The negotiation message signature is verified using the satellite public key. If the verification is successful, the session key is calculated based on the group element operation and the process proceeds to step S6: Step S6: The user communication device sends a user-side key negotiation request, including: Construct the second private input, including the random number; Constructing a second public input comprising the first temporary public key and the second hash value; generating a zero-knowledge key agreement credential based on the second attestation key, the second private input, and the second public input; Will contain the first temporary public key 、 A user terminal key negotiation request of the zero-knowledge key negotiation credential is sent to the satellite; Step S7: The satellite verifies the user terminal key negotiation request, including: Verifying the client key agreement request based on a second verification key matching the second certification key, the second public input, and the zero-knowledge key agreement credential, and if successful, calculating a session key based on a group element operation; The user communication device and the satellite communicate based on the same session key.
3. The anonymous satellite communication access method with attribute verification according to claim 2, wherein: Generates attestation and verification keys based on system security parameters and circuits, including: Input the system security parameters and the first circuit into a key generation function to generate a first certification key and a first verification key; the first circuit satisfies the following constraints: the attribute value meets the access policy requirements, the first hash value is calculated correctly, the count value does not exceed the set threshold, the given attribute value and the Merkle tree root hash storage path are calculated correctly, and the second hash value is calculated correctly; The system security parameter and the second circuit are input into a key generation function to generate a second certification key and a second verification key; the second circuit satisfies the constraint that the second hash value is calculated correctly.
4. The anonymous satellite communication access method with attribute verification according to claim 2, wherein: Also includes: Step S8: The user communication device requests to switch satellites, including: Regenerate the first temporary public key 、 The first temporary private key and random number, and updates the second hash value; Using the session key, sending a satellite switching request including the second hash value to the currently connected satellite; Step S9: The currently connected satellite selects a target satellite to be connected, including: decrypting the satellite handover request using a session key; Select a target satellite to be connected and use the satellite private key of the currently connected satellite to generate an inter-satellite handover message signature for the satellite handover request; forwarding the inter-satellite handover message signature and the satellite handover request to the target satellite; Step S10: The target satellite verifies the inter-satellite handover message signature using the satellite public key. If the verification is successful, the target satellite is used as the new satellite and the process jumps to step S4 to enter a new round of key negotiation.
5. The anonymous satellite communication access method with attribute verification according to claim 4, characterized in that: Step S8 includes: the user communication device monitors the signal strength of the currently connected satellite, and when the signal strength is lower than a strength threshold, requests to switch satellites.
6. The anonymous satellite communication access method with attribute verification according to claim 4, characterized in that: In step S9, selecting a target satellite to be connected includes: selecting a satellite with the strongest signal as the target satellite to be connected.
7. A user communication device, characterized in that: The method comprises a request access unit, wherein the request access unit comprises: A data generation module, configured to generate a first temporary public key, a first temporary private key, a count value, and a random number; a hash operation module, configured to perform a hash operation on the attribute value to be verified and the count value to obtain a first hash value, and perform a hash operation on the hash value of the first temporary public key and the second random value to obtain a second hash value; a first public input construction module, configured to construct a first public input comprising a satellite communication anonymous access policy, a set threshold, a first hash value, a second hash value, and a root hash of a Merkle tree for indexing a current user communication device attribute value in a network control center; A first private input construction module, configured to construct a first private input including an attribute value to be verified, a storage path of the attribute value in the network control center, a first temporary public key, a first temporary private key, a count value, and a random number; a first proof generation function module, configured to generate a zero-knowledge access credential based on a first proof key, a first public input, and a first private input; The first sending module is configured to send an access request including a first public input and a zero-knowledge access credential to a satellite, so that the satellite verifies the access request using a first verification key matching a first certification key, the first public input, and the zero-knowledge access credential. If the verification is successful, the user communication device accesses the satellite.
8. The user communication device according to claim 7, wherein The invention also includes a user-side key negotiation unit, wherein the user-side key negotiation unit includes: a satellite key negotiation request verification module, configured to receive a satellite key negotiation request including a second temporary public key generated by the satellite and a negotiation message signature, where the negotiation message signature is a signature generated by the satellite using its satellite private key on the second temporary public key; A first session key calculation module, configured to calculate a second session key based on group element operation when the negotiation message signature verification succeeds; A second public input construction module, configured to construct a second public input including the first temporary public key and the second hash value when the negotiation message signature verification succeeds; A second private input construction module, configured to construct a second private input including a random number when the negotiation message signature verification succeeds; A second proof generation function module is used to generate a zero-knowledge key negotiation credential based on a second proof key, a second public input, and a second private input; the second proof key is paired with a second verification key used by the satellite for verification; The second sending module is used to send the first temporary public key 、 sending a user-side key negotiation request with the zero-knowledge key negotiation credential to the satellite, so that the satellite verifies the user-side key negotiation request based on the second verification key, the second public input, and the zero-knowledge key negotiation credential, and calculates a session key based on a group element operation when the verification is successful; The user communication device and the satellite communicate based on the same session key.
9. An anonymous communication system with attribute verification, comprising a network control center, user communication equipment and a satellite, characterized in that: The network control center includes: Satellite management unit, used to formulate satellite communication anonymous access control strategy and generate satellite public-private key pairs, including satellite public key and satellite private key; A storage unit, configured to store attribute values of user communication devices in a Merkle tree structure; A key parameter determination unit, configured to determine a large prime number and a group generator for generating a temporary public key and a temporary private key; determine system security parameters and circuits for zero-knowledge proof, and generate a proof key and a verification key based on the system security parameters and circuits; The user communication device is the user communication device according to claim 7 or 8; The satellite comprises: an access request verification unit, configured to verify the access request based on the first verification key, the first public input, and the zero-knowledge access credential, and if the verification is successful, allow the user communication device to access; otherwise, deny access; If the user communication device has a user-side key negotiation unit, the satellite is further configured with a corresponding satellite-side key negotiation unit, and the satellite-side key negotiation unit includes: Key negotiation request sending module, used to generate the second temporary public key 、 a second temporary private key, using the satellite private key to generate a signature negotiation message signature for the second temporary public key, and sending a satellite key negotiation request including the second temporary public key and the negotiation message signature to the user communication device; The user-side key negotiation request verification module is used to verify the user-side key negotiation request based on the second verification key, the second public input and the zero-knowledge key negotiation credential, and if the verification is successful, calculate the session key based on the group element operation.
10. The anonymous communication system for attribute verification according to claim 9, characterized in that: The user communication device further comprises a switching satellite request unit, wherein the switching satellite request unit is configured to regenerate a first temporary public key. 、 The first temporary private key and the random number are used to update the second hash value, and the satellite switching request including the second hash value is sent to the currently connected satellite using the session key; The satellite also includes a switching unit corresponding to the switching satellite request unit, which is used to decrypt the satellite switching request using a session key, select a target satellite to be connected, and use the satellite private key of the currently connected satellite to generate an inter-satellite switching message signature for the satellite switching request, and forward the inter-satellite switching message signature and the satellite switching request to the target satellite, so that the user communication device can access the target satellite.