Satellite communication method, device and equipment
Through distributed key management and dynamic key update mechanism, constellation secret merging and Lagrange interpolation recovery are used to generate communication keys, which solves the problems of low efficiency of key management, difficulty in trust establishment and insufficient anti-attack ability in low-orbit satellite networks, and realizes efficient and secure cross-constellation and same-constellation satellite communications.
Patent Information
- Application Number
- CN202510998458.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-18
- Publication Date
- 2025-10-10
AI Technical Summary
In low-orbit satellite networks, with the expansion of satellite constellations and the increase in cross-constellation collaborative tasks, existing key management methods have problems such as low authentication efficiency in dynamic topology environments, difficulty in establishing trust across constellations, insufficient security and efficiency in key updates and management, insufficient anti-attack capabilities, and poor adaptability in resource-constrained environments.
A distributed key management scheme is adopted to generate communication keys by merging constellation secrets and recovering them through Lagrange interpolation. Combined with the dynamic key update mechanism of the ground control center, the SM2 elliptic curve algorithm is used to generate public keys and constellation secrets, thus achieving secure communication between satellites across constellations and within the same constellation.
It improves the security and efficiency of satellite communications, enhances the system's anti-attack capabilities and adaptability in resource-constrained environments, and supports real-time authentication and key management in highly dynamic environments.
Smart Images

Figure CN120768633A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of satellite communications and network security technology, and in particular to a satellite communications method, apparatus, and device. Background Art
[0002] In low-orbit satellite networks, with the continuous expansion of satellite constellations and the increase in cross-constellation collaborative tasks, identity authentication and key management have become important challenges in ensuring the security of network communications.
[0003] Related key management methods primarily rely on ground control centers to centrally generate and distribute keys. For example, the ground control center assigns a unique identifier and static key to each satellite, and uses symmetric encryption to encrypt and authenticate inter-satellite communications. However, because the keys are centrally managed by the ground control center and the encryption method is symmetric, they can be easily cracked over long periods of use or in high-risk environments, leading to data leakage and reduced inter-satellite communication security. Summary of the Invention
[0004] The present application provides a satellite communication method, apparatus, and device for realizing communication between satellites across constellations and within the same constellation, thereby improving the security of communication.
[0005] In a first aspect, an embodiment of the present application provides a satellite communication method, applied to a target satellite, the method comprising:
[0006] If an authentication request is received from a satellite belonging to a first constellation, the first public key of the first constellation is combined with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string, and the target character string is encrypted using an encryption algorithm to obtain a communication key; wherein the constellation secret is a character string of a preset length;
[0007] Decrypting the authentication information carried in the authentication request according to the communication key to obtain the first temporary public key and verification data to be verified carried in the authentication information;
[0008] A second temporary public key is determined based on the verification data, and if the second temporary public key is consistent with the first temporary public key, the communication key is used to communicate with the satellite.
[0009] Furthermore, the process of determining the constellation secret includes:
[0010] Sending a constellation secret acquisition request to other satellites belonging to the second constellation, and receiving sub-constellation secrets sent by the other satellites; wherein the sub-constellation secrets sent by each other satellite are different;
[0011] Lagrangian interpolation recovery is performed according to the sub-constellation secrets sent by the other satellites and the saved target sub-constellation secret corresponding to the target satellite to obtain the constellation secret.
[0012] Furthermore, the method further comprises:
[0013] Receive an update package sent by a ground control center; wherein the update package carries ciphertext and ciphertext verification data;
[0014] If it is determined based on the ciphertext verification data that the ciphertext has not been tampered with, decrypting the ciphertext using the saved master public key and the third temporary public key to obtain the candidate sub-constellation secret;
[0015] receiving other candidate sub-constellation secrets sent by other satellites in the second constellation, and determining a candidate constellation secret based on the candidate sub-constellation secret and the other candidate sub-constellation secrets;
[0016] The candidate constellation secret is used to update the stored constellation secret of the second constellation.
[0017] Furthermore, before determining the second temporary public key based on the verification data, the method further includes:
[0018] Obtaining a timestamp carried in the verification data, and determining a time interval between the current time and the timestamp;
[0019] If the time interval is less than the preset threshold, a subsequent process of determining a second temporary public key based on the verification data is performed.
[0020] Furthermore, if the first constellation is different from the second constellation, encrypting the target character string using an encryption algorithm to obtain a communication key includes:
[0021] A hash algorithm is used to encrypt a target character string obtained by concatenating the constellation secret and the first public key to obtain the communication key.
[0022] Furthermore, if the first constellation is the same as the second constellation, the authentication request also carries an unencrypted first temporary public key;
[0023] The step of merging the saved first public key of the first constellation with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string includes:
[0024] The first temporary public key, the first public key, and the constellation secret are combined to obtain the target character string.
[0025] Furthermore, the combining of the first temporary public key, the first public key, and the constellation secret to obtain the target character string includes:
[0026] Determine a sum of the first temporary public key and the first public key;
[0027] Performing a point multiplication operation on the constellation secret and the sum value to obtain the target character string.
[0028] Furthermore, the verification data includes: a signature parameter, an intermediate value, a random public key, an authentication public key, a first temporary public key, a first public key and a timestamp.
[0029] In a second aspect, an embodiment of the present application further provides a satellite communication device, applied to a target satellite, the device comprising:
[0030] a processing module configured to, upon receiving an authentication request sent by a satellite belonging to a first constellation, combine a stored first public key of the first constellation with a constellation secret of a second constellation to which the target satellite belongs to obtain a target string, and encrypt the target string using an encryption algorithm to obtain a communication key; wherein the constellation secret is a string of a preset length;
[0031] a decryption module, configured to decrypt the authentication information carried in the authentication request according to the communication key, and obtain the first temporary public key and verification data to be verified carried in the authentication information;
[0032] A verification module is configured to determine a second temporary public key based on the verification data, and if the second temporary public key is consistent with the first temporary public key, use the communication key to communicate with the satellite.
[0033] In a third aspect, an embodiment of the present application further provides an electronic device, comprising a processor, wherein the processor is configured to implement the steps of any of the satellite communication methods described above when executing a computer program stored in a memory.
[0034] In an embodiment of the present application, if a target satellite receives an authentication request from a satellite belonging to a first constellation, the target satellite combines the first public key of the first constellation with the constellation secret of the second constellation to which the target satellite belongs to obtain a target string, and encrypts the target string using an encryption algorithm to obtain a communication key; wherein the constellation secret is a string of a preset length; based on the communication key, the authentication information carried in the authentication request is decrypted to obtain the first temporary public key and verification data to be verified carried in the authentication information; based on the verification data, a second temporary public key is determined, and if the second temporary public key is consistent with the first temporary public key, the communication key is used to communicate with the satellite. In an embodiment of the present application, after the satellite sends an authentication request to the target satellite, the target satellite combines the first public key of the first constellation to which the satellite belongs with the constellation secret of the second constellation to which the target satellite belongs to obtain a target string, and encrypts the target string using an encryption algorithm to obtain a communication key, and uses the communication key to decrypt the authentication request to obtain the data carried in the authentication request, and verifies the accuracy and legitimacy of the data carried in the authentication request through an agreed verification mechanism, thereby ensuring the security of satellite communications. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] In order to more clearly illustrate the technical solution of the present application, the following is a brief introduction to the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0036] Figure 1 A schematic diagram of a satellite communication process provided in an embodiment of the present application;
[0037] Figure 2 A schematic diagram of the process of dynamic key update provided in an embodiment of the present application;
[0038] Figure 3 A schematic diagram of a process for a satellite to generate an authentication request during intra-constellation communication provided in an embodiment of the present application;
[0039] Figure 4 Flowchart of target satellite identity authentication and key confirmation during intra-constellation communication provided by an embodiment of the present application;
[0040] Figure 5 A schematic diagram of a process for a satellite to generate an authentication request during inter-constellation communication provided in an embodiment of the present application;
[0041] Figure 6 Flowchart of target satellite identity authentication and key confirmation during inter-constellation communication provided by an embodiment of the present application;
[0042] Figure 7 The overall architecture diagram of satellite communications provided in the embodiments of the present application;
[0043] Figure 8 A schematic structural diagram of a satellite communication device provided in an embodiment of the application;
[0044] Figure 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0045] To make the objectives, technical solutions, and advantages of this application more clear, this application will be further described in detail below with reference to the accompanying drawings. Obviously, the embodiments described are only some of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of this application.
[0046] In order to achieve communication between satellites across constellations and within the same constellation and improve the security of communication, the embodiments of the present application provide a satellite communication method, apparatus and device.
[0047] In an embodiment of the present application, if an authentication request is received from a satellite belonging to a first constellation, the saved first public key of the first constellation is merged with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string, and the target character string is encrypted using an encryption algorithm to obtain a communication key; wherein the constellation secret is a character string of a preset length; according to the communication key, the authentication information carried in the authentication request is decrypted to obtain the first temporary public key and verification data to be verified carried in the authentication information; according to the verification data, the second temporary public key is determined; if the second temporary public key is consistent with the first temporary public key, the communication key is used to communicate with the satellite across constellations.
[0048] Figure 1 A schematic diagram of a satellite communication process provided in an embodiment of the present application includes:
[0049] S101: If an authentication request is received from a satellite belonging to a first constellation, a first public key of the first constellation is combined with a constellation secret of a second constellation to which the target satellite belongs to obtain a target character string, and the target character string is encrypted using an encryption algorithm to obtain a communication key; wherein the constellation secret is a character string of a preset length.
[0050] An embodiment of the present application provides a satellite communication method applied to a target satellite, where the target satellite is any satellite in a multi-constellation low-orbit satellite network.
[0051] In Low Earth Orbit (LEO) satellite networks, with the continuous expansion of satellite constellations and the increase in cross-constellation collaborative missions, identity authentication and key management have become important challenges in ensuring network communication security. Existing technical solutions can be mainly divided into the following categories:
[0052] 1. Key distribution solution based on centralized management:
[0053] Traditional key management schemes typically rely on a ground control station (GCS) to centrally generate and distribute keys. For example, the GCS assigns a unique identifier (ID) and static key to each satellite, and uses symmetric encryption, such as the Advanced Encryption Standard (AES), to encrypt and authenticate inter-satellite communications. Key distribution is accomplished via an encrypted satellite-to-ground link, and the security of intra-constellation and inter-constellation communications relies entirely on the scheduling and management of the GCS.
[0054] 2. Authentication mechanism based on distributed key negotiation:
[0055] In recent years, some research has proposed satellite network authentication schemes based on distributed key agreement. Typical approaches utilize the Diffie-Hellman Key Exchange (DHKE) or Elliptic Curve Diffie-Hellman Key Exchange (ECDH) protocol, where both communicating parties independently negotiate to generate a symmetric key for encrypted intersatellite communications.
[0056] This solution avoids the single point failure problem of centralized management, but the key negotiation efficiency is low in dynamic topology networks and cannot solve the trust problem between constellations.
[0057] 3. Authentication scheme based on Public Key Infrastructure (PKI):
[0058] In the traditional PKI solution, the ground control center acts as a certification center (Certificate Authority CA), responsible for generating digital certificates for each satellite, and inter-satellite communication achieves identity authentication through certificate verification.
[0059] This solution uses asymmetric encryption for signing and verification, which can provide high security. However, the distribution, management and update of certificates are subject to large delays in dynamic environments, and the certificate revocation mechanism is difficult to adapt to resource-constrained satellite networks.
[0060] 4. Trust management based on blockchain or distributed ledger:
[0061] Some advanced technologies attempt to introduce blockchain or distributed ledgers into satellite networks, recording node identities and key information through distributed consensus mechanisms.
[0062] This solution can improve the system's tolerance to single point failures and malicious nodes, but the computational complexity and storage overhead of the blockchain are not applicable to the resource-constrained LEO network.
[0063] Although the above solutions have solved the authentication and key management issues in low-orbit satellite networks to a certain extent, the following technical problems still exist:
[0064] 1. Low authentication efficiency in dynamic topology environments:
[0065] Satellite nodes in LEO networks move quickly (about 7.8 km / s) and topology changes frequently. Existing centralized management or distributed key agreement schemes have low authentication efficiency in highly dynamic environments and are unable to meet real-time requirements.
[0066] For example, key agreement based on DHKE or ECDH requires multiple handshakes, which causes communication delay to increase significantly in dynamic environments.
[0067] 2. Difficulty in building trust across constellations:
[0068] Existing solutions mainly focus on authentication and communication within a constellation. However, in cross-constellation collaboration, due to the lack of unified public key or secret key systems between constellations, trust between nodes is difficult to establish, and cross-constellation communication faces major security risks.
[0069] For example, the PKI solution relies on a centralized certificate management agency, which makes it difficult to adapt to the distributed trust requirements of multi-constellation collaboration.
[0070] 3. Insufficient security and efficiency of key updates and management:
[0071] In existing solutions, key updates typically rely on centralized management by ground control centers. For large-scale satellite constellations, key distribution and updates incur high communication overhead and are not adaptable to scenarios involving node failures or dynamic node additions.
[0072] At the same time, static keys or keys used for a long time are easily cracked in high-risk environments, and existing solutions lack an efficient dynamic key management mechanism.
[0073] 4. Insufficient resistance to attack:
[0074] Existing schemes are vulnerable to replay attacks, man-in-the-middle attacks, or forgery attacks during the identity authentication process. For example, the key distribution process of traditional symmetric key schemes can be eavesdropped or tampered with due to the openness of the satellite-to-ground link.
[0075] Although blockchain-based solutions have advantages in tamper resistance, they have high computational complexity and place excessive demands on the power consumption and storage capacity of LEO satellites.
[0076] 5. Poor adaptability in resource-constrained environments:
[0077] The nodes in LEO satellite networks have limited computing power, storage capacity, and communication bandwidth. Existing solutions (such as PKI or blockchain) perform poorly in terms of high resource consumption and are difficult to promote and apply in large-scale constellation networks.
[0078] Based on this, in an embodiment of the present application, encryption and decryption methods are pre-configured in the satellite. When the target satellite receives an authentication request encrypted based on the agreed encryption method sent by any satellite, the target satellite generates a communication key based on the agreed decryption method to decrypt the authentication request.
[0079] In practical applications, a collaborative system consisting of a group of low-orbit satellites operating in the same or similar orbits is called a constellation. Each constellation covers a specific area and provides communication or data relay services. Satellites within a constellation are interconnected via inter-satellite links (ISLs) and share identity authentication and key management information. In the embodiments of this application, the target satellite implements distributed authentication and key management using the constellation's public key and constellation secret.
[0080] Among them, the constellation secret is the basic cryptographic data shared by all satellites in each constellation, which is used for identity authentication, key negotiation and inter-satellite trust establishment. The constellation secret is a high-entropy random number (such as 128 bits) generated by the ground control center and distributed to each satellite in the constellation, and is divided into multiple sub-constellation secrets distributed to each satellite through a distributed dynamic polynomial based on a threshold mechanism; that is, in the embodiment of the present application, the constellation secret is a pre-configured string of preset length. The public key of the constellation is the public key calculated by the constellation secret and the elliptic curve base point P, which is expressed as: Q k =S k P, where P is the elliptic curve base point recommended by SM2. k It is public content within the constellation and is used to bind identity information in intra-constellation and cross-constellation authentication, and to ensure the integrity and consistency of key negotiation and authentication messages.
[0081] Specifically, the target satellite stores the first public key of each constellation and the constellation secret of the second constellation to which the target satellite belongs. Furthermore, it stores a method for generating a communication key based on the constellation public key and constellation secret. Based on this, after receiving an authentication request from a satellite belonging to the first constellation, the target satellite obtains the stored first public key of the first constellation and the constellation secret of the second satellite. The target satellite then combines the first public key and the constellation secret to obtain a target string, and then encrypts the target string using a preset encryption algorithm to obtain the communication key.
[0082] The encryption algorithm used by the target satellite to encrypt the target character string is pre-agreed, and may be a hash algorithm or other encryption algorithms, etc., which are not limited here.
[0083] S102: Decrypt the authentication information carried in the authentication request according to the communication key, and obtain the first temporary public key and verification data to be verified carried in the authentication information.
[0084] In an embodiment of the present application, after the target satellite generates a communication key based on the first public key of the first constellation to which the satellite sending the authentication request belongs and the constellation secret of the second constellation to which the target satellite belongs, the target satellite uses the communication key to decrypt the authentication request.
[0085] The authentication request includes, but is not limited to, a first temporary public key to be verified and verification data. The first temporary public key belongs to the satellite sending the authentication request, and the verification data is used to generate a second temporary public key to verify the first temporary public key. This allows the user to determine whether the information carried in the authentication request has been altered during transmission, specifically verifying whether the pre-agreed encryption and decryption methods have been compromised.
[0086] In one possible implementation, when generating the first temporary public key, the satellite may randomly generate a 256-bit random number and use the random number as the temporary private key to ensure the independence of each authentication. The first temporary public key is then generated based on the stored authentication public key of the satellite and the temporary private key.
[0087] The first temporary public key can be generated by the following formula:
[0088] pk i-j =rk i-j ·PPKK k,i
[0089] Among them, pk i-j is the first temporary public key, rk i-j For temporary private key, PPKK k,i The public key for authentication.
[0090] It should be noted that in an embodiment of the present application, the target satellite can also calculate the temporary public key in the above manner, and construct an authentication request based on the generated temporary public key and the verification data used to verify the temporary public key, encrypt the authentication request, and send the encrypted authentication request to other satellites.
[0091] S103: Determine a second temporary public key based on the verification data, and if the second temporary public key is consistent with the first temporary public key, use the communication key to communicate with the satellite.
[0092] In an embodiment of the present application, after the target satellite decrypts the authentication request and obtains the verification data carried in the authentication request, the target satellite determines the second temporary public key based on the verification data according to the agreed verification data usage method.
[0093] The target satellite compares the first temporary public key with the second temporary public key. If the second temporary public key is consistent with the first temporary public key, the target satellite determines that the authentication request has not been modified and the agreed encryption and decryption methods have not been leaked. Based on this, the target satellite uses the communication key to communicate with the satellite.
[0094] In an embodiment of the present application, if a target satellite receives an authentication request sent by a satellite belonging to a first constellation, the first public key of the first constellation saved is combined with the constellation secret of the second constellation to which the target satellite belongs to obtain a target string, and the target string is encrypted using an encryption algorithm to obtain a communication key; wherein the constellation secret is a string of a preset length; according to the communication key, the authentication information carried in the authentication request is decrypted to obtain the first temporary public key and verification data to be verified carried in the authentication information; according to the verification data, the second temporary public key is determined, and if the second temporary public key is consistent with the first temporary public key, the communication key is used to communicate with the satellite. In an embodiment of the present application, after the satellite sends an authentication request to the target satellite, the target satellite will decrypt the authentication request using an agreed decryption method, obtain the data carried in the authentication request, and verify the accuracy and legitimacy of the data carried in the authentication request through an agreed verification mechanism to ensure the security of satellite communications.
[0095] Example 2:
[0096] In order to achieve communication between satellites in different constellations and the same constellation and improve communication security, based on the above embodiment, in the embodiment of the present application, the process of determining the constellation secret includes:
[0097] Sending a constellation secret acquisition request to other satellites belonging to the second constellation, and receiving sub-constellation secrets sent by the other satellites; wherein the sub-constellation secrets sent by each other satellite are different;
[0098] Lagrangian interpolation recovery is performed according to the sub-constellation secrets sent by the other satellites and the saved target sub-constellation secret corresponding to the target satellite to obtain the constellation secret.
[0099] In an embodiment of the present application, the ground control center is responsible for key generation, constellation secret distribution, and update instruction issuance for multiple constellations. It interacts with each constellation via a satellite-to-ground link and ensures communication security within and outside the constellation. Specifically, the constellation secret for each constellation is a string of preset length generated by the ground control center. For example, the constellation secret can be a 128-bit random number or a 256-bit random number randomly generated by the ground control center. After the ground control center randomly generates the constellation secret for each constellation, it splits the constellation secret based on the number of satellites stored in each constellation to obtain multiple sub-constellation secrets, and distributes each sub-constellation secret to each satellite in the constellation.
[0100] Among them, in the embodiment of the present application, the ground control center can simply split the constellation secret, and can also split the constellation secret through the Lagrange interpolation method. After the split, each satellite receives a different sub-constellation secret, which avoids the leakage of the constellation secret during the distribution process, ensures the security and distributed recovery capability of the constellation secret, and enhances the robustness against single point failures and malicious attacks.
[0101] Among them, the ground control center can divide the constellation secrets by the following formula:
[0102]
[0103] Among them, f k (x) represents the sub-constellation secret, S k Indicates the secrets of the constellations. is a random coefficient in the range [0, p-1], where p is a 256-bit prime number. Secretly restore thresholds for constellations.
[0104] When the ground control center uses the above formula to calculate the sub-constellation secret of the i-th satellite, it substitutes i into the x in the formula to solve and obtain the sub-constellation secret f k (i). Among them, i=ID k,i , ID k,i is the unique identifier of the satellite. For example, the system includes several independent satellite constellations, denoted as C = {C1, C2, ..., C M}(M≥2), each constellation C k By N k The satellites are composed of low-orbit satellites (k=1, 2, ..., M). Each satellite has a unique ID k,i (i=1,2,...,Nk ), used for authentication and communication.
[0105] Based on this, in this embodiment of the present application, after the target satellite receives the sub-constellation secret distributed by the ground control center, it sends a constellation secret acquisition request to other satellites belonging to the second constellation and receives the sub-constellation secrets sent by these other satellites. The target satellite then performs Lagrangian interpolation recovery based on the sub-constellation secrets sent by these other satellites and the stored target sub-constellation secret corresponding to the target satellite to obtain the constellation secret.
[0106] In the embodiment of the present application, the goal is to recover the constellation secret of the second constellation through the cooperation of satellites in the second constellation and verify the correctness of the secret distribution. Specifically, Lagrange interpolation is used to achieve distributed recovery, wherein, when performing recovery, t k More than 100 satellites can be reconfigured to improve the system's anti-attack and initialization integrity.
[0107] In one possible implementation, the target satellite can recover the constellation secret using the following formula:
[0108]
[0109] Among them, S k For the secret of constellation, f k (i) is the sub-constellation secret, T k For those who participated in the recovery k Satellite collection (such as ).
[0110] In an embodiment of the present application, the recovered constellation secret is temporarily stored in a security module of the target satellite for verification and subsequent authentication.
[0111] It should be noted that each satellite in the constellation will use the above method to recover the constellation secret. The embodiment of the present application only takes the target satellite as an example for illustration, and when other satellites in the second constellation recover the constellation secret, they will also send a constellation secret acquisition request to the target satellite. When the target satellite receives the constellation secret acquisition request sent by other satellites, it sends the target sub-constellation secret corresponding to the target satellite to the other satellite.
[0112] In addition, in this embodiment of the application, the ground control center will also assign an initial key to each satellite and each constellation to ensure that subsequent identity authentication and communication operations can be carried out in a safe and reliable environment. This process interacts through an encrypted satellite-to-ground link between the ground control center and the satellite and constellation. The specific steps are as follows:
[0113] The ground control center generates an initial identity and public-private key pair for each satellite, establishing the foundation for authentication and communication. Using an elliptic curve algorithm, a unique key is generated to ensure the satellite's identity is trustworthy and provide security for subsequent secret distribution and authentication.
[0114] Specifically, the ground control center selects the elliptic curve recommended by SM2, the base point is P, the hash function is SM3, and generates the master private key sk gs (256 bits) and master public key PK gs =sk gs P, and distribute the master public key to each satellite. The ground control center will also generate a master public key for each satellite S k,i (Constellation C k , (k=1, 2,...,M); i=1, 2,...,N k )Assign a unique ID k,i .
[0115] In addition, the target satellite S k,i An initial public-private key pair will also be generated, including: randomly selected initial private key sk k,i (256 bits), calculate the initial public key PK k,i =sk k,i P, the target satellite saves the generated initial private key and initial public key to the satellite security module (such as TPM chip, resistant to physical attacks). In addition, the target satellite sends the initial public key to the ground control center for storage.
[0116] The ground control center also generates a public key Q for each constellation k =S k P, where S k is the constellation secret, P is the SM2 elliptic curve base point, S k Perform elliptic curve point multiplication with P as a scalar.
[0117] The ground control center also generates enhanced authentication private and public keys for each satellite, combining them with constellation secrets for enhanced security. Through the multiple protections of random numbers and the ground master private key, a unique authentication private key is generated, bound to the constellation secret of the satellite's constellation, ensuring strong tamper resistance and traceability of identity authentication.
[0118] In one possible implementation, the ground control center calculates the target satellite's authentication private key using the following formula:
[0119] skk k,i =(r k,i ) -1 ·(e k,i +x k,i ·sk gs )·(sk k,i ) -1 ·(Sk ) -1 mod p
[0120] Among them, skk k,i is the authentication private key, r k,i Random number generated by the ground control center, PK k,i =r k,i P, PKK k,i =r k,i ·PK k,i is the random public key generated by the ground control center for the target satellite, e k,i =H(x k,i , PK k,i , PKK k,i ), x k,i =X(PKK k,i )mod p is the x coordinate of the random public key, H(......) is the SM3 hash algorithm, sk gs The master private key generated for the ground control center, sk k,i The initial private key generated for the target satellite, S k Secrets of the zodiac.
[0121] The ground control center calculates the target satellite's authentication public key using the following formula:
[0122] PPKK k,i =S k PKK k,i
[0123] Among them, PPKK k,i is the authentication public key, S k For the secrets of the constellation, PKK k,i A random public key.
[0124] The ground control center will send the master public key, certificate private key, authentication public key, e k,i =H(x k,i , PK k,i , PKK k,i ), the base point P and the random public key are sent to the target satellite, which newly stores the initial private key by replacing the authentication private key, and additionally stores the constellation authentication public key and the random public key in the security module of the target satellite.
[0125] Furthermore, the target satellite verifies the correctness of key and constellation secret distribution to ensure the reliability of the initialization process. The recovered constellation secret and stored parameters are verified consistent through discrete logarithmic relationships on the elliptic curve, confirming that the system initialization was correct and providing a trusted foundation for subsequent authentication.
[0126] Specifically, the verification steps include:
[0127] Target satellite calculation skk k,i ·PPKK k,i Is it equal to e k,i P+x k,i ·PK gs , where skk k,i The authentication private key received by the target satellite, PPKK k,i is the authentication public key received by the target satellite, e k,i =H(x k,i , PK k,i , PKK k,i ) is received by the target satellite, x k,i =X(PKK k,i )mod p is the x-coordinate of the random public key received by the target satellite, PK gs The master public key received by the target satellite. If skk k,i ·PPKK k,i Equal to e k,i P+x k,i ·PK gs , it means that the calculated constellation secret and the distributed and stored authentication private key, master public key, base point and authentication public key are correct.
[0128] At this point, the system initialization process has successfully established a secure and reliable cryptographic foundation for a multi-constellation distributed low-orbit satellite network through the orderly execution of key and identity generation, secret sharing and distribution, authenticated secret computation, intra-constellation secret recovery, and initialization verification. The distributed distribution and recovery of authenticated private keys and constellation secrets generated using the SM2 elliptic curve algorithm, combined with a secret sharing mechanism using Lagrange interpolation, ensures the high security and anti-attack resistance of key and identity parameters. The introduction of constellation public keys further enhances the system's scalability for intra-constellation and inter-constellation authentication. Through verification of the elliptic curve discrete logarithm relationship, the initialization process ensures parameter consistency and integrity, providing solid cryptographic guarantees for subsequent dual-domain authentication and dynamic key updates based on SM2 signatures, supporting secure communication and collaboration within the highly dynamic environment of the low-orbit satellite network.
[0129] Example 3:
[0130] In order to achieve communication between satellites in different constellations and the same constellation and improve the security of communication, based on the above embodiments, in an embodiment of the present application, the method further includes:
[0131] Receive an update package sent by a ground control center; wherein the update package carries ciphertext and ciphertext verification data;
[0132] If it is determined based on the ciphertext verification data that the ciphertext has not been tampered with, decrypting the ciphertext using the saved master public key and the third temporary public key to obtain the candidate sub-constellation secret;
[0133] receiving other candidate sub-constellation secrets sent by other satellites in the second constellation, and determining a candidate constellation secret based on the candidate sub-constellation secret and the other candidate sub-constellation secrets;
[0134] The candidate constellation secret is used to update the stored constellation secret of the second constellation.
[0135] In this embodiment of the present application, keys are also dynamically updated and managed to maintain the long-term security of the multi-constellation low-orbit satellite network by dynamically generating and distributing new secret shares, ensuring real-time updates and reliability of identity authentication and communication keys in a highly dynamic environment. This solution utilizes the ground control center to regularly update constellation secrets, combined with SM2 signature and encryption protection, and through a distributed verification and destruction of old shares mechanism, supports dynamic key management of the multi-constellation low-orbit satellite network, providing continuous security for subsequent authentication.
[0136] Specifically, in this embodiment of the present application, the ground control center generates new constellation secrets periodically or on demand to replace expired or damaged constellation secrets and maintain system security. Centralized management and random number generation by the ground control center ensure the anti-predictability of the dynamic key update process (based on the discrete logarithm problem, solving complexity and consistency), and support adaptability to node failure (such as orbital drift) and dynamic addition in multi-constellation low-orbit satellite networks.
[0137] The ground control center determines whether the constellation secret update conditions are currently met. The constellation secret update conditions include periodic updates and on-demand updates. Periodic updates include, but are not limited to, triggering an update every period (e.g., 24 hours, based on the mission cycle of multiple low-orbit satellites in a constellation); on-demand updates include, but are not limited to, whether the number of sub-constellation secrets currently suspected or believed to have been leaked reaches or exceeds a preset threshold, or whether new satellites have joined the constellation.
[0138] If the ground control center determines that the second constellation to which the target satellite belongs currently meets the constellation secret update conditions, the ground control center generates a new constellation secret and, based on the new constellation secret, a new constellation public key. The ground control center then splits the new constellation secret into candidate sub-constellation secrets to be distributed to the target satellite.
[0139] For ease of description, in an embodiment of the present application, the new constellation secret generated by the ground control center is referred to as a candidate constellation secret, the new sub-constellation secret corresponding to the target satellite is referred to as a candidate sub-constellation secret, and the new public key corresponding to the second constellation is referred to as a candidate second public key.
[0140] In order to securely distribute the candidate sub-constellation secret and the candidate public key of the constellation to each satellite in the second constellation and ensure the confidentiality and integrity of the update process, in an embodiment of the present application, the ground control center will encrypt the candidate sub-constellation secret and the candidate second public key corresponding to the target satellite to generate a ciphertext, and add the ciphertext and the ciphertext verification data used to verify the ciphertext to the update package, and send the update package to the target satellite.
[0141] In a possible implementation, the ground control center can generate the ciphertext using the following formula:
[0142] EC k,i =f′ k (i)⊕h(PK k,i ·sk gs ,t)
[0143] Among them, EC k,i is the ciphertext, f′ k (i) is the candidate sub-constellation secret, sk gs The master private key generated for the ground control center, PK k,i is the initial public key sent by the target satellite received by the ground control center, and t is the current timestamp.
[0144] In an embodiment of the present application, the ciphertext verification data includes a candidate second public key, a candidate timestamp, a message signature, and a candidate authentication public key.
[0145] The ground control center can calculate the candidate second public key using the following formula:
[0146] Q′ k =S′ k ·P
[0147] Among them, Q′ k is the candidate second public key, S′ k The base point on the elliptic curve stored by P is the secret of the candidate sub-constellation.
[0148] The ground control center can calculate the candidate authentication public key using the following formula:
[0149]
[0150] in, is the candidate authentication public key, S k is the original sub-constellation secret, S′ k Secret for the candidate sub-constellation, PPKK k,i The original authentication public key.
[0151] The ground control center can calculate the message signature using the following formula:
[0152]
[0153] Among them, ECS k,i Sign the message, r k,i is a random number, ee k,i =H(EC k,i , Q′ k ,t),EC k,i is the ciphertext, Q′ k is the candidate second public key, t is the current timestamp, is the x-coordinate of the candidate authentication public key, sk gs The master private key generated for the ground control center, sk k,i The initial private key received from the target satellite, S′ k Secret for the candidate sub-constellation.
[0154] Among them, the ground control center sends the update package to the target satellite through the satellite-to-ground link.
[0155] The target satellite receives the update package from the ground control center and obtains the ciphertext and ciphertext verification data contained in the update package. The target satellite uses the ciphertext verification data to determine whether the ciphertext has been tampered with. If the target satellite determines that the ciphertext has not been tampered with, it uses the stored master public key and initial public key to decrypt the ciphertext and obtain the candidate sub-constellation secret.
[0156] Specifically, the target satellite verifies whether the ciphertext has been tampered with using the following formula:
[0157]
[0158] ee k,i =H(EC k,i ,Q′ k ,t)
[0159] Among them, ECS k,i Sign the message, is the candidate authentication public key, EC k,i is the ciphertext, Q′ k is the candidate second public key, t is the candidate timestamp, P is the base point on the saved elliptic curve, is the x-coordinate of the candidate authentication public key, PK gs To save the master public key sent by ground control.
[0160] That is, in the embodiment of the present application, the target satellite calculates Is it equal to If they are equal, it indicates that the received data is complete and authentic and can be safely decrypted by the target satellite.
[0161] Among them, the target satellite can use the following formula to decrypt the ciphertext:
[0162] f′ k (i) = EC k,i ⊕h(sk k,i ·PK gs ,t)
[0163] Among them, f′ k (i) is the candidate sub-constellation secret, EC k,i is the ciphertext, sk k,i is the initial private key, PK gs is the master public key, and t is the current timestamp carried in the ciphertext verification data.
[0164] After the target satellite decrypts the ciphertext and obtains the candidate sub-constellation secret, it will also verify the consistency of the candidate sub-constellation secret and the candidate second public key. If they are consistent, the candidate sub-constellation secret is used to replace the stored sub-constellation secret, and the candidate second public key is used to replace the stored second public key.
[0165] The target satellite also receives other candidate sub-constellation secrets sent by other satellites in the second constellation, and determines the candidate constellation secret based on the candidate sub-constellation secret and other candidate sub-constellation secrets. It then determines whether the candidate constellation secret is consistent with the candidate second public key. If they are consistent, the candidate constellation secret is used to update the stored constellation secret of the second constellation.
[0166] For example, the product of the candidate constellation secret and a few points on the elliptic curve may be calculated. If the product is equal to the candidate second public key, it is determined that the candidate constellation secret is consistent with the candidate second public key.
[0167] The process of determining the candidate constellation secret by the target satellite based on the candidate sub-constellation secret and other candidate sub-constellation secrets is consistent with the process of generating the constellation secret in the above embodiment, and will not be repeated here.
[0168] In addition, the target satellite will update the authentication key and trust certificate based on the updated constellation secret to ensure the continued security and trust of cross-constellation communication, including but not limited to: calculating the new authentication private key Among them, skk′ k For the new authentication private key, skk k,i The original authentication private key saved locally. The original constellation secret stored locally, S′ k Secret for the candidate sub-constellation.
[0169] Figure 2 The following is a flow chart of the dynamic key update process provided by the embodiment of the present application, as shown in the Figure 2 As shown, the process includes:
[0170] S201: Generate a new constellation secret (candidate constellation secret) regularly or on demand, assign a new sub-constellation secret (candidate sub-constellation secret) to each satellite, and generate a new second public key (candidate second public key) based on the new constellation secret.
[0171] S202: Distribute each new sub-constellation secret and the new second public key to each satellite in the constellation;
[0172] The distribution steps include but are not limited to: calculating ciphertext, generating update message hash, calculating new authentication public key (candidate authentication public key), calculating update message signature, and sending update package via satellite-to-ground link.
[0173] S203: Each satellite receives the update package and decrypts the update package;
[0174] The decryption steps include but are not limited to: calculating the message hash, verifying whether the ciphertext has been tampered with, and decrypting.
[0175] S204: Verify the consistency of the new sub-constellation secret and the new second public key, and destroy the old sub-constellation secret and constellation secret.
[0176] S205: Key Update and Trust Continuation:
[0177] Update authentication keys and trust credentials based on new constellation secrets to ensure continued security and trust in cross-constellation communications.
[0178] Example 4:
[0179] In order to achieve communication between satellites in different constellations and the same constellation and improve the security of communication, based on the above embodiments, in an embodiment of the present application, before determining the second temporary public key based on the verification data, the method further includes:
[0180] Obtaining a timestamp carried in the verification data, and determining a time interval between the current time and the timestamp;
[0181] If the time interval is less than the preset threshold, a subsequent process of determining a second temporary public key based on the verification data is performed.
[0182] To enable communication between satellites across constellations and within the same constellation and improve communication security, timestamp verification can be used in embodiments of the present application. Timestamp verification is a key step in ensuring the timeliness of communication. Specifically, when a satellite node receives a communication request containing verification data, the target satellite can first obtain the timestamp carried in the verification data, compare it with the current timestamp, and calculate the time interval. This process can use a relative time verification mechanism to determine the validity of the data using a preset dynamic threshold. If the time interval is less than the preset threshold, a second temporary public key is determined based on the verification data.
[0183] Example 5:
[0184] In order to achieve communication between satellites in different constellations and the same constellation and improve communication security, based on the above embodiments, in an embodiment of the present application, if the first constellation and the second constellation are different, encrypting the target string using an encryption algorithm to obtain a communication key includes:
[0185] A hash algorithm is used to encrypt a target character string obtained by concatenating the constellation secret and the first public key to obtain the communication key.
[0186] In inter-constellation satellite communication scenarios, to ensure secure key negotiation between heterogeneous networks, a multi-layer encryption mechanism is used to generate communication keys. Specifically, the communication key can be determined using the following formula:
[0187] Key′=h(S m Q k )
[0188] Among them, Key′ is the communication key, S m Q k is the target string, S m For the secret of constellation, Q k The first public key.
[0189] Example 6:
[0190] In order to achieve communication between satellites in different constellations and the same constellation and improve communication security, based on the above embodiments, in this embodiment of the present application, if the first constellation is the same as the second constellation, the authentication request further carries an unencrypted first temporary public key;
[0191] The step of merging the saved first public key of the first constellation with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string includes:
[0192] The first temporary public key, the first public key, and the constellation secret are combined to obtain the target character string.
[0193] In this embodiment of the present application, if the first and second constellations are the same, a target string can be generated based on the first temporary public key. Specifically, the authentication request carries the unencrypted first temporary public key. The target satellite can combine the first temporary public key, the first public key, and the constellation secret to obtain the target string.
[0194] In order to achieve communication between satellites across constellations and within the same constellation and improve communication security, based on the above embodiments, in an embodiment of the present application, the first temporary public key, the first public key, and the constellation secret are combined to obtain the target string, which includes:
[0195] Determine a sum of the first temporary public key and the first public key;
[0196] Performing a point multiplication operation on the constellation secret and the sum value to obtain the target character string.
[0197] In the security verification mechanism of satellite communications, the target string generation process ensures the credibility of cross-domain identity through the fusion of multiple factors.
[0198] Specifically, the target character string can be determined by the following formula:
[0199] A=S k ·(pk i-j +Q k )
[0200] Among them, A is the target string, S k For the secret of constellation, Q k is the first public key, pk i-j is the first temporary public key.
[0201] The first temporary public key can ensure the freshness of the key for each session, while the first public key provides an identity anchor. The constellation secret serves as the trust root for cross-constellation consensus. The combination of the three can resist replay attacks and man-in-the-middle attacks.
[0202] Based on this, electronic devices can calculate the constellation key between satellites in the same constellation using the following formula:
[0203] Key′=H(S k ·(pk i-j +Q k ))
[0204] Among them, S k ·(pk i-j +Q k ) is the target string, and Key′ is the communication key.
[0205] Example 7:
[0206] In order to realize communication between satellites across constellations and within the same constellation and improve the security of communication, based on the above embodiments, in an embodiment of the present application, the verification data includes: signature parameters, intermediate values, random public keys, authentication public keys, first public keys and timestamps.
[0207] In the embodiments of the present application, satellite communication includes intra-constellation communication and inter-constellation communication, which are described below in conjunction with specific embodiments.
[0208] 1. Communication within the constellation:
[0209] The core goal of intra-constellation authentication is to ensure secure authentication between satellite nodes within the constellation. It also uses encryption technology to safeguard the confidentiality and integrity of inter-satellite communications and prevent unauthorized access. In low-Earth orbit satellite networks, satellite nodes frequently move (approximately 7.8 km / s), channels are affected by Doppler effects and fading, and latency fluctuates (1-5 ms). Authentication faces challenges arising from dynamic topology changes, communication interruptions, and air link openness. Furthermore, the security and reliability of air link requirements place higher demands on the design of authentication mechanisms.
[0210] In an embodiment of the present application, taking the example that the first satellite where the satellite initiating the authentication request is located and the second satellite where the target satellite is located are the same satellite, efficient and secure authentication is achieved based on the SM2 signature variant algorithm by using the initialized authentication private key, authentication public key and the first public key of the first satellite.
[0211] Among them, the satellite that sends the authentication request generates a verifiable authentication request message to prove the identity of the satellite and protect the integrity of the message. By fusing the random value and the first public key of the first constellation where the satellite is located through the SM2 signature variant algorithm, the anti-counterfeiting, anti-replay and dynamic nature of the authentication message are ensured, and the efficiency of inter-satellite communication and switching authentication is supported. Compared with the traditional SM2 signature, the embodiment of the present application solves the defects of the traditional SM2 in dynamic networks that are susceptible to private key leakage and replay attacks by introducing temporary public keys and authentication public keys, and improves the unpredictability and security of signature parameters.
[0212] Specifically, Figure 3 This is a flow chart of a satellite generating an authentication request during intra-constellation communication provided in an embodiment of the present application, as shown in the figure. Figure 3 As shown, the process includes:
[0213] S301: Generate random number: The satellite randomly generates a temporary private key rk i-j The temporary private key is a 256-bit random number, which ensures the independence of each authentication;
[0214] S302: Calculate temporary public key: The satellite calculates the first temporary public key pk i-j =rk i-j·PPKK k,i , of which PPKK k,i =S k PKK k,i The authentication public key for initialization storage;
[0215] S303: Generate timestamp: The satellite generates a timestamp t (with an accuracy of milliseconds, such as UTC time);
[0216] S304: Calculate hash value: Satellite calculates hash value eh i-j =h(PPKK k,i , Q k , pk i-j , t), where PPKK k,i is the saved authentication public key, Q k The first public key of the first constellation to which the saved satellite belongs, pk i-j is the first temporary public key, t is the timestamp, and h() is the SM3 hash algorithm;
[0217] S305: Calculate the intermediate value: Calculate the intermediate value re i-j =(eh i-j +X(pk i-j ))mod p, where X(pk i-j ) is the first temporary public key pk i-j The x-coordinate of , p is a 256-bit prime number;
[0218] S306: Calculate signature parameters: Use the following formula to calculate signature parameters:
[0219] ss i-j =(1+sk k,i ) -1 ·(rk i-j -re i-j ·skk k,i )mod p, where skk k,i The saved authentication private key;
[0220] S307: Key negotiation: Calculate the inter-satellite communication key Key = h(S k ·(pk i-j +Q k ));
[0221] S308: Encrypt the authentication message part using the communication key to generate ciphertext;
[0222] Among them, the ciphertext is [pk i-j ,PKK k,i ,PPKK k,i , ss i-j ,Q k ,rei-j , t] Key ;
[0223] S309: Sending an authentication request message to the target satellite via an intersatellite link;
[0224] The authentication request message is {[pk i-j ,PKK k,i ,PPKK k,i , ss i-j ,Q k ,re i-j , t] Key , pk i-j}.
[0225] After receiving the authentication request from the satellite, the target satellite verifies the satellite's identity and confirms the negotiated communication key, ensuring intersatellite communication security. This is achieved through elliptic curve signature verification based on a variant of SM2 and collaborative computation of constellation secrets to confirm identity and generate a shared key, supporting dynamic handoff and communication confidentiality without the need to transmit private authentication keys.
[0226] Specifically, Figure 4 The flowchart of the target satellite's identity authentication and key confirmation during intra-constellation communication provided in the embodiment of the present application is as follows: Figure 4 As shown, the process includes:
[0227] S401: Calculate the communication key;
[0228] The calculation process has been introduced in the above embodiments and will not be repeated here.
[0229] S402: Decrypt the authentication request using the communication key to obtain a first temporary private key and verification data, where the verification data includes a random public key, an authentication public key, a signature parameter, a first public key, an intermediate value, and a timestamp.
[0230] S403: Check whether the timestamp is valid. If so, execute S404. If not, determine that the verification has failed.
[0231] S404: Calculate the verification hash value: Calculate the verification hash value based on the following formula:
[0232] eh′ i-j =h(PPKK k,i ,Q k ,pk i-j ,t))
[0233] Among them, PPKK k,i is the authentication public key, Q k is the first public key, pk i-j is the first temporary public key, and t is the timestamp.
[0234] S405: Calculate the intermediate value: Calculate the intermediate value based on the following formula:
[0235] te i-j =re i-j +ss i-j
[0236] Among them, ss i-j is the signature parameter, re i-j This is the intermediate value carried in the authentication request.
[0237] S406: Calculate the verification parameter: The verification parameter is the second temporary public key, which is calculated based on the following formula:
[0238] P temp =ss i-j PKK k,i +te i-j eh′ i-j ·P+te i-j ·x k,i ·PK gs
[0239] Among them, P temp is the second temporary public key, ss i-j is the signature parameter, PKK k,i is a random public key, te i-j is the calculated intermediate value, eh′ i-j is the calculated verification hash value, P is the base point on the saved elliptic curve, x k,i is the x-coordinate of the random public key, PK gs The saved master public key.
[0240] S407: Check whether the first public key of the first constellation to which the satellite belongs carried in the verification data is consistent with the second public key of the second satellite stored locally. If they are consistent, the target satellite determines that the identity of the satellite is legal and uses the communication key to establish secure communication with the satellite.
[0241] Subsequent satellites can use the extended key Key to encrypt communications with other satellites in the same constellation. i-n =h(Key′, ID k,n , t new ), where ID k,n is the satellite identifier, t new is the new timestamp, Key′ is the communication key, Key i-n The hash output is 256 bits, ensuring confidential communication between the satellite and any other satellite in the same constellation.
[0242] Among them, the satellite broadcasts the authentication status (bound Qk and Key's hash digest h(Q k , Key', t)) is distributed to other satellites in the constellation, and other satellites verify the digest consistency to recognize the identity of the satellite, build a trust network in the constellation, and support multi-node collaboration (such as data relay).
[0243] II. Cross-Constellation Satellite Communication
[0244] Cross-Constellation Authentication takes a satellite in the first constellation and a target satellite in the second constellation as an example, aiming to ensure the security of identity verification of cross-constellation nodes in a low-orbit satellite network, and to establish a symmetric communication key through cryptographic negotiation to protect the confidentiality, integrity, and anti-unauthorized access capability of cross-constellation data relay and collaborative tasks. In a LEO network, cross-constellation communication is affected by differences in orbital height (100-500 km, such as 5° inclination difference between 500 km and 700 km constellations), relative speed (about 10 km / s), cross-constellation link latency (10-20 ms, affected by Earth curvature and relay hop count), multipath fading (Rayleigh distribution, signal-to-noise ratio fluctuation 10-15 dB), and potential interference (such as frequency overlap with neighboring constellations). The authentication needs to address the challenges of topology dynamics (switching period about 10 minutes), communication interruption, and cross-constellation trust establishment.
[0245] In the embodiments of the present application, the satellite of the first constellation initiates authentication to the target satellite of the second constellation, uses the authentication private key, the authentication public key, the first public key of the first satellite, the constellation secret of the first satellite, and the constellation secret of the second satellite generated by satellite initialization, and provides efficient and secure cross-constellation authentication based on the SM2 signature variant algorithm and the optimized key agreement mechanism.
[0246] Wherein, the authentication is initiated by the satellite of the first constellation (source constellation task initiation or relay satellite) to the target satellite of the second constellation (target constellation reception or collaboration satellite). In a low-orbit satellite network, cross-constellation communication (such as relay forwarding) usually triggers authentication by the source end to establish a secure link (typically laser communication, bandwidth 500 Mbps, error rate <10 -6 ), and one-way authentication design reduces the number of handshakes, adapting to the cross-constellation latency (target <20 ms) requirement.
[0247] The embodiments of the present application design a cross-constellation authentication message generation and symmetric key negotiation method based on the SM2 signature variant algorithm, aiming to establish a dynamic trust and secure communication channel for the satellite and the target satellite. By introducing a temporary random value, a dynamic public key mechanism, and an authentication message that integrates the characteristics of zero-knowledge proof, the message is ensured to be anti-forgery, anti-replay, and cross-constellation consistent. Compared with traditional methods, the embodiments of the present application overcome the risk of long-term exposure of private keys and the defect of insufficient cross-domain trust, and are particularly suitable for the efficiency and security requirements of low-orbit satellite cross-constellation communication.
[0248] Specifically, Figure 5 A schematic diagram of a process for generating an authentication request by a satellite during inter-constellation communication provided in an embodiment of the present application, such as the Figure 5 As shown, the process includes:
[0249] S501: Generate random number: Satellite generates temporary private key rk i-j The temporary private key is a 256-bit random number, which ensures high entropy randomness and resists seed prediction attacks;
[0250] S502: Calculate temporary public key: The satellite calculates the first temporary public key pk i-j =rk i-j ·PPKK k,i , of which PPKK k,i =S k PKK k,i The authentication public key for initialization storage;
[0251] S503: Generate timestamp and noise: Generate timestamp t and one-time noise parameter nonce i-j , nonce i-j It is a 128-bit random number used for double anti-replay protection;
[0252] S504: Calculate hash value:
[0253] Calculate the hash value eh i-j =h(PPKK k,i , Q k ,Q m , pk i-j ,t,nonce i-j ), among which PPKK k,i is the saved authentication public key, Q k The first public key of the first constellation to which the satellite belongs is stored, Q m The second public key of the second satellite to which the target satellite belongs is pre-acquired through the inter-constellation public key exchange protocol, pk i-j is the first temporary public key, t is the timestamp, nonce i-j is the noise parameter, h() is the SM3 hash operation;
[0254] S505: Calculate the intermediate value: Calculate the intermediate value re i-j =(eh i-j +X(pk i-j ))modp, where X(pk i-j ) is the first temporary public key pk i-j The x-coordinate of , p is the order of the SM2 curve;
[0255] S506: Calculate signature parameters: Use the following formula to calculate signature parameters:
[0256] ss i-j =(1+skk k,i ) -1 ·(rk i-j -re i-j sk k,i )mod p, where skk k,i The saved authentication private key;
[0257] S507: Key negotiation: Calculate the inter-constellation communication key Key = h(S k Q m ), the point product is based on the SM2 curve, and the hash output is 256 bits to ensure symmetry;
[0258] S508: Message encryption: Use the key to encrypt the message part and generate ciphertext;
[0259] Among them, the ciphertext is [pk i-j ,PKK k,i ,PPKK k,i , ss i-j ,Q k ,re i-j ,t,nonce i-j ] Key ;
[0260] S509: The satellite sends a message to the target satellite via an inter-constellation link;
[0261] Among them, the message is {[pk i-j ,PKK k,i ,PPKK k,i , ss i-j ,Q k ,re i-j ,t,nonce i-j ] Key}.
[0262] After receiving the authentication request from the satellite, the target satellite verifies the satellite's inter-constellation identity and confirms the negotiated communication key, ensuring inter-satellite communication security. Through elliptic curve signature verification based on an SM2 variant, distributed recovery of S_m, and symmetric key agreement, inter-constellation trust is established, supporting dynamic collaboration (such as inter-constellation relaying with latency fluctuations of 10-20ms) and attack resistance, without the need to transmit private authentication keys.
[0263] Specifically, Figure 6 The flowchart of the target satellite's identity authentication and key confirmation during inter-constellation communication provided in the embodiment of the present application is as follows: Figure 6 As shown, the process includes:
[0264] S601: Calculate the communication key;
[0265] The calculation process has been described in the above embodiments and will not be repeated here.
[0266] S602: The target satellite decrypts the authentication request using the communication key to obtain the first temporary private key and the verification data, which includes the random public key, the authentication public key, the signature parameter, the first public key, the intermediate value, the timestamp, and the nonce parameter.
[0267] S603: Check whether the timestamp is valid and whether the nonce parameter is not repeated; if yes, perform S404, and if no, determine that the verification fails;
[0268] For example, check t < 20 ms, check the storage of the latest 10-minute nonce, and the occupation < 1 MB.
[0269] S604: Calculate the verification hash value: calculate the verification hash value based on the following formula:
[0270] eh′ i-j = h (PPKK k,i , Q k , Q m , pk i-j , t, nonce i-j )
[0271] Wherein, PPKK k,i is the authentication public key, Q k is the first public key, Q m is the saved second public key of the second satellite, pk i-j is the first temporary public key, t is the timestamp, and nonce i-j is the nonce parameter.
[0272] S605: Calculate the intermediate value: calculate the intermediate value based on the following formula:
[0273] te i-j = re i-j + ss i-j
[0274] Wherein, ss i-j is the signature parameter, and re i-j is the intermediate value carried in the authentication request.
[0275] S606: Calculate the verification parameter: the verification parameter is the second temporary public key, which can be calculated based on the following formula:
[0276] After the target satellite determines that the timestamp is valid, the second temporary public key is determined based on the following formula:
[0277] P temp =ss i-j PKK k,i +te i-j eh′ i-j ·P+te i-j ·x k,i ·PK gs
[0278] Among them, P temp is the second temporary public key, ss i-j is the signature parameter, PKK k,i is a random public key, te i-j is the calculated intermediate value, eh′ i-j is the calculated verification hash value, P is the base point on the saved elliptic curve, x k,i is the x-coordinate of the random public key, PK gs The saved master public key.
[0279] S607: constellation belonging check;
[0280] If the verification is successful, the target satellite determines the satellite's identity and uses the communication key to establish cross-constellation communication with the satellite.
[0281] Subsequent satellites can use the extended key Key to communicate with other satellites in the second constellation. i-n =h(Key',ID m,n , t new ,nonce new ), where ID m,n is the identifier of the target satellite, t new For the new timestamp, nonce new is the new noise parameter, Key i-n The hash output is 256 bits, ensuring confidential communication between the satellite and any satellite in the second constellation.
[0282] When the satellite needs to switch to other satellites in the second satellite, it sends the certificate {h(Q k , Q m , Key′, t), t} distributes the re-trust certificate, and other satellites confirm the validity of the satellite by verifying the certificate, and the subsequent communication between the satellite and other satellites will be controlled by Key i-nTo conduct encrypted communication and construct a cross-constellation authentication scheme, by deeply integrating the SM2 signature variant algorithm with the constellation secret and the distributed characteristics of the satellite and the target satellite, an efficient and secure identity authentication and key negotiation mechanism is designed for the dynamic needs of cross-constellation communication in the earth-orbit satellite network, which effectively solves the problem that the traditional SM2 signature is susceptible to private key leakage and insufficient trust establishment in a cross-domain environment. This application adopts the freshness and randomness design of dynamic temporary public keys and one-time noise parameters to significantly enhance the anti-forgery and anti-replay properties of the authentication parameters. It uses the computational irreversibility of elliptic curve point multiplication operations and the distributed threshold protection of Shamir secret sharing to ensure the strong robustness of the system under multipath fading and frequency interference in cross-constellation channels. The negotiation method of the cross-constellation communication key binds the constellation identity by the point multiplication of the constellation secret of the second constellation and the first public key of the first constellation, and is extended to multi-node communication within the second constellation through the key derivation function. It is combined with the public key exchange protocol and trust distribution mechanism between constellations to adapt to the high delay tolerance of cross-constellation relay in the low-orbit satellite network. The solution's excellent performance in security, efficiency, and dynamic adaptability makes it of significant value in the field of cross-constellation authentication of low-orbit satellite networks, and provides solid cryptographic and satellite communication engineering support for dynamic key updates and multi-constellation collaborative tasks.
[0283] Figure 7 The overall architecture diagram of satellite communication provided in the embodiment of the present application is as follows Figure 7 As shown in Figure 1, this system comprises multiple satellite constellations, each composed of multiple satellite nodes. Each satellite acts as an independent node in a distributed network, performing tasks such as authentication, key management, and communication. The system's core architecture includes multiple satellite constellations, satellite nodes within each constellation, authentication modules within and outside the constellation, and secret sharing and update modules, enabling both intra-constellation and inter-constellation authentication.
[0284] Compared with related technologies, this application has the following technical advantages:
[0285] 1. This application uses an intra-constellation authentication mechanism based on a variant of the SM2 signature algorithm:
[0286] Specifically, this application uses a variant of the SM2 signature algorithm. By introducing a temporary public key, random number generation, and timestamps, this algorithm ensures the independence of each authentication and effectively prevents private key leakage and replay attacks. Combined with a constellation shared secret mechanism, it utilizes dynamic public key and key agreement technology to achieve efficient and secure identity authentication and information protection. This mechanism effectively addresses the challenges posed by frequent node changes, latency fluctuations, and channel fading in LEO satellite networks.
[0287] It improves the security of satellite communications and prevents identity forgery and communication tampering; by introducing SM2 signature variants and temporary public keys, it improves the reliability and security of authentication in dynamic networks; and ensures the efficiency and anti-attack capability of identity authentication between satellite nodes within the constellation, especially in the LEO network environment with limited latency and bandwidth.
[0288] 2. This application adopts a dynamic key management and update mechanism:
[0289] This application designs a shared dynamic key update mechanism based on Lagrange interpolation. By periodically or on-demand updating constellation secrets, new keys are distributed to satellite nodes, ensuring the system's continued secure operation in highly dynamic environments. Through distributed verification and key update strategies, security vulnerabilities caused by key leakage and node failure are avoided, ensuring the reliability and security of the key management process.
[0290] This application provides the ability to dynamically adapt to changes in satellite networks through a dynamic key management and update mechanism, supports dynamic node addition and failure recovery; through distributed recovery and shared secret encryption updates, it improves the security of key management, reduces the risk of single point failures, and realizes real-time key updates in highly dynamic environments, ensuring the security and robustness of long-term communications.
[0291] 3. This application uses a cross-constellation authentication and trust building mechanism:
[0292] The cross-constellation authentication mechanism proposed in this application, combined with a variant of the SM2 signature algorithm and shared secrets, can effectively verify the identities of satellites between different constellations and establish secure communication links through a key agreement mechanism. Using zero-knowledge proof technology, it ensures that data transmission in cross-constellation communications is tamper-proof and prevents cross-constellation trust and forgery attacks.
[0293] The cross-constellation authentication and trust building mechanism of this application ensures secure communication between different satellite constellations, prevents cross-constellation identity forgery and data tampering; through key negotiation and trust building mechanisms, the security and reliability of inter-constellation collaboration are improved; this application supports multi-constellation collaborative tasks and data relay, improving the communication efficiency and security of multi-constellation systems.
[0294] 4. This application uses the Lagrange interpolation method to implement distributed key recovery:
[0295] This application uses Lagrange interpolation to enable multiple satellite nodes to collaboratively recover the shared secret, ensuring that even if some nodes fail or are attacked, the system can still recover the key. This mechanism improves the system's fault tolerance and anti-attack capabilities in the highly dynamic LEO network, effectively ensuring the security of the key.
[0296] The distributed key recovery method of the present application improves the fault tolerance of the system, avoids key leakage or authentication failure caused by single point failure, ensures the security of the key recovery process, prevents secret leakage or tampering, guarantees the efficiency and robustness of key update and recovery under harsh network conditions, and adapts to the dynamic changes of satellite nodes.
[0297] 5. This application uses an encrypted secret distribution and update mechanism:
[0298] This application uses encryption technology to protect the distribution process of new key shares and ensures the validity of the key update process through a signature verification mechanism. During the key distribution process, satellite nodes only use encrypted communication protocols to receive and verify key shares, preventing malicious tampering and key leakage.
[0299] The secret distribution and update mechanism of this application ensures the security of the key update and distribution process, prevents man-in-the-middle attacks and data tampering, enhances the confidentiality and integrity protection of data during key transmission, reduces the risk of key leakage, and improves the adaptability of the system in highly dynamic environments, ensuring that even in the presence of frequent intersatellite communication interruptions or channel fluctuations, it can still maintain secure and stable key updates.
[0300] In this embodiment of the present application, each satellite not only performs authentication tasks within a constellation, but also implements cross-constellation authentication. Intra-constellation authentication includes identity verification between satellites and confidentiality protection of inter-satellite communications, while cross-constellation authentication ensures the security of communications between satellites in different constellations.
[0301] This includes intra-constellation authentication and mutual authentication between satellites within a constellation, supporting trusted identity verification during satellite handoffs and ensuring confidentiality in inter-satellite communications. For example, when satellite i sends a message to another satellite, it signs the message using the constellation secret, and other satellites in the constellation verify the signature using the constellation secret. Successful verification confirms the source of the message.
[0302] Cross-constellation authentication enables satellites from different constellations to communicate. The cross-constellation authentication module of the constellation will verify the legitimacy of the cross-constellation message and build the communication key through the proposed mechanism to ensure the security of cross-constellation communication.
[0303] This embodiment of the present application proposes a satellite constellation dual-domain authentication and dynamic key update method based on commercial secret SM2 signatures and secret sharing, aiming to provide an efficient, secure, and scalable identity authentication and key management solution for satellite constellation systems. This solution addresses the security, efficiency, and dynamic nature of intra-constellation authentication, cross-constellation authentication, and secret management in distributed satellite networks, particularly in multi-constellation, large-scale low-orbit satellite environments. The core innovation of the system lies in its combination of the SM2 signature algorithm, a Lagrange interpolation-based secret sharing mechanism, and a cross-constellation authentication framework, providing a scalable, attack-resistant, and real-time update solution for satellite constellations.
[0304] The implementation process of this solution includes the following main steps: system initialization, intra-constellation authentication, cross-constellation authentication, dynamic key update and management, to ensure that while ensuring security, it can effectively improve the efficiency and availability of the system, especially for the frequent node changes and communication needs in low-orbit satellite (LEO) networks.
[0305] This solution uses the commercially available SM2 signature algorithm to implement inter-satellite identity authentication and message signature verification, effectively preventing common security threats such as man-in-the-middle and replay attacks. Furthermore, a secret sharing scheme based on Lagrange interpolation ensures the security of dynamic key updates and sharing across and within constellations, ensuring that keys and identity information can be updated and managed in a dynamic environment.
[0306] System initialization involves distributing initial keys and shared secrets for the multi-constellation network, establishing a secure foundation for authentication and communication. The ground control center generates SM2 public-private key pairs and distributes constellation secret shares based on Lagrange interpolation, ensuring each satellite has independent authentication capabilities and laying the foundation for subsequent dual-domain authentication. This initialization process is completed via an encrypted and secure satellite-to-ground link, supporting dynamically added satellite nodes.
[0307] Intra-constellation authentication, including: Intra-constellation authentication ensures identity verification and communication confidentiality between satellites within the same constellation. Satellites sign messages using SM2 signatures and the constellation's shared secret, and other satellites verify the signatures to confirm their identity. This mechanism supports the frequent satellite handoffs in LEO networks, ensuring efficient and secure intra-constellation communications.
[0308] Cross-constellation authentication ensures the security and reliability of communications between different constellations. Through multi-satellite collaboration, secret sharing is used to recover constellation secrets and combine them with SM2 signatures to generate authentication messages. After verification by the target constellation, communication keys are established. This method effectively prevents cross-constellation forgery attacks and supports multi-constellation collaborative missions.
[0309] Dynamic key update and management, including: Dynamic key update and management maintains long-term system security by dynamically generating new secrets and distributing new shares. Ground control regularly updates constellation secrets, and satellites destroy old shares and verify the consistency of new shares. The update process is protected by the proposed SM2 variant signature and encryption, ensuring real-time and secure key management in the dynamic LEO environment.
[0310] The purpose of this application is to provide a satellite constellation authentication and key management method based on commercial secret SM2 signature and secret sharing, especially for the high dynamics, delay fluctuations and frequent node changes in the low-orbit satellite network environment, to ensure the security, reliability and efficiency of communications within the constellation.
[0311] The specific purposes are as follows:
[0312] 1. Improve the security and efficiency of intra-constellation authentication:
[0313] The frequent movement of nodes in low-orbit satellite networks, the instability of air links, and the challenges of channel Doppler effects and fading pose significant security threats to traditional authentication methods. This application addresses the vulnerability of traditional authentication methods to private key leakage and replay attacks in dynamic networks by introducing an SM2 signature variant algorithm and a shared secret mechanism, thereby improving authentication's anti-forgery, anti-replay, and dynamic adaptability. Furthermore, by combining temporary public keys with constellation public key verification, authentication message generation becomes more efficient, adapting to the high latency and low bandwidth environments of satellite communications.
[0314] 2. Ensure the confidentiality and integrity of intersatellite communications:
[0315] Through key negotiation and encryption mechanisms, this application effectively protects the confidentiality and integrity of intersatellite communications. By employing the SM2 signature algorithm, combined with the use of random numbers and timestamps, it prevents unauthorized access and data tampering. This method ensures the security of data transmission between satellite nodes within a constellation, ensuring that intersatellite communications remain encrypted and protected even in the dynamic LEO environment.
[0316] 3. Support dynamic key management and update:
[0317] Another important objective of this application is to implement dynamic key management in LEO satellite networks. Frequent node changes and orbit adjustments during long-term satellite network operation can lead to key leakage or failure. Using a dynamic key update mechanism based on Lagrange interpolation, the ground control center can periodically or on-demand update the constellation shared secret and securely distribute the new key to each satellite node. This mechanism not only ensures the security of key management but also enhances the system's anti-attack capabilities, ensuring the continued security of the satellite network in a dynamic environment.
[0318] 4. Enhance the security and trust of cross-constellation communications:
[0319] This application also considers the trust establishment and secure transmission issues that may arise in cross-constellation communications. By employing a cross-constellation authentication mechanism, combined with an inter-constellation public key exchange protocol and a shared secret mechanism, the security and reliability of satellite communications between different constellations can be ensured. The dynamic public key, ephemeral key, and zero-knowledge proof used in the authentication process ensure the efficiency and security of cross-constellation authentication, thereby supporting collaborative missions and data relay between satellites.
[0320] 5. Improve the scalability and adaptability of the system:
[0321] The authentication mechanism and key update method designed in this application can adapt to changes in the network topology of large-scale satellite constellations and support the dynamic addition of new nodes. Through the careful design of the authentication process and key management, the system can maintain efficient and secure operation in the face of complex network topologies and frequent node changes. This makes this application highly scalable and suitable for the long-term operation of large-scale LEO satellite networks.
[0322] Through the above-mentioned technological innovations, this application not only improves the security and reliability of satellite network communications, but also provides an efficient solution to meet the challenges of LEO networks. It has significant application value and lays the foundation for the future development of satellite networks.
[0323] Example 8:
[0324] Based on the above embodiments, an embodiment of the present application further provides a satellite communication device. Figure 8 A schematic diagram of the structure of a satellite communication device provided in an embodiment of the present application, the device comprising:
[0325] Processing module 801 is configured to, upon receiving an authentication request sent by a satellite belonging to a first constellation, combine a stored first public key of the first constellation with a constellation secret of a second constellation to which the target satellite belongs to obtain a target string, and encrypt the target string using an encryption algorithm to obtain a communication key; wherein the constellation secret is a string of a preset length;
[0326] A decryption module 802 is configured to decrypt the authentication information carried in the authentication request according to the communication key, and obtain the first temporary public key and verification data to be verified carried in the authentication information;
[0327] The verification module 803 is configured to determine a second temporary public key based on the verification data, and if the second temporary public key is consistent with the first temporary public key, use the communication key to communicate with the satellite.
[0328] In a possible implementation, the processing module 801 is further configured to send a constellation secret acquisition request to other satellites belonging to the second constellation, and receive sub-constellation secrets sent by the other satellites; wherein the sub-constellation secret sent by each other satellite is different; and perform Lagrangian interpolation recovery based on the sub-constellation secrets sent by the other satellites and the saved target sub-constellation secret corresponding to the target satellite to obtain the constellation secret.
[0329] In one possible implementation, the processing module 801 is further configured to receive an update package sent by a ground control center; the update package carries a ciphertext and ciphertext verification data; if the ciphertext is determined not to have been tampered with based on the ciphertext verification data, decrypt the ciphertext using the stored master public key and the third temporary public key to obtain a candidate sub-constellation secret; receive other candidate sub-constellation secrets sent by other satellites in the second constellation, and determine a candidate constellation secret based on the candidate sub-constellation secret and the other candidate sub-constellation secrets; and use the candidate constellation secret to update the stored constellation secret of the second constellation.
[0330] In one possible implementation, the processing module 801 is further used to obtain the timestamp carried in the verification data and determine the time interval between the current time and the timestamp; if the time interval is less than a preset threshold, a subsequent process of determining a second temporary public key based on the verification data is executed.
[0331] In a possible implementation, the processing module 801 is specifically configured to use a hash algorithm to encrypt a target character string obtained by concatenating the constellation secret and the first public key to obtain the communication key.
[0332] In a possible implementation manner, if the first constellation is the same as the second constellation, the authentication request further carries an unencrypted first temporary public key;
[0333] The processing module 801 is specifically configured to combine the first temporary public key, the first public key, and the constellation secret to obtain the target character string.
[0334] In a possible implementation, the processing module 801 is specifically configured to determine a sum of the first temporary public key and the first public key; and perform a point multiplication operation on the constellation secret and the sum to obtain the target character string.
[0335] In a possible implementation, the verification data includes: a signature parameter, an intermediate value, a random public key, an authentication public key, a first public key, and a timestamp.
[0336] Example 9:
[0337] Based on the above embodiments, the present application also provides an electronic device, Figure 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application is shown in FIG. Figure 9 As shown, it includes: a processor 901, a communication interface 902, a memory 903 and a communication bus 904, wherein the processor 901, the communication interface 902, and the memory 903 communicate with each other through the communication bus 904;
[0338] The memory 903 stores a computer program. When the program is executed by the processor 901, the processor 901 performs the following steps:
[0339] If an authentication request is received from a satellite belonging to a first constellation, the first public key of the first constellation is combined with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string, and the target character string is encrypted using an encryption algorithm to obtain a communication key; wherein the constellation secret is a character string of a preset length;
[0340] Decrypting the authentication information carried in the authentication request according to the communication key to obtain the first temporary public key and verification data to be verified carried in the authentication information;
[0341] A second temporary public key is determined based on the verification data, and if the second temporary public key is consistent with the first temporary public key, the communication key is used to communicate with the satellite.
[0342] In one possible implementation, the process of determining the constellation secret includes:
[0343] Sending a constellation secret acquisition request to other satellites belonging to the second constellation, and receiving sub-constellation secrets sent by the other satellites; wherein the sub-constellation secrets sent by each other satellite are different;
[0344] Lagrangian interpolation recovery is performed according to the sub-constellation secrets sent by the other satellites and the saved target sub-constellation secret corresponding to the target satellite to obtain the constellation secret.
[0345] In one possible implementation, the method further includes:
[0346] Receive an update package sent by a ground control center; wherein the update package carries ciphertext and ciphertext verification data;
[0347] If it is determined based on the ciphertext verification data that the ciphertext has not been tampered with, decrypting the ciphertext using the saved master public key and the third temporary public key to obtain the candidate sub-constellation secret;
[0348] receiving other candidate sub-constellation secrets sent by other satellites in the second constellation, and determining a candidate constellation secret based on the candidate sub-constellation secret and the other candidate sub-constellation secrets;
[0349] The candidate constellation secret is used to update the stored constellation secret of the second constellation.
[0350] In a possible implementation, before determining the second temporary public key based on the verification data, the method further includes:
[0351] Obtaining a timestamp carried in the verification data, and determining a time interval between the current time and the timestamp;
[0352] If the time interval is less than the preset threshold, a subsequent process of determining a second temporary public key based on the verification data is performed.
[0353] In a possible implementation, if the first constellation is different from the second constellation, encrypting the target character string using an encryption algorithm to obtain a communication key includes:
[0354] A hash algorithm is used to encrypt a target character string obtained by concatenating the constellation secret and the first public key to obtain the communication key.
[0355] In a possible implementation manner, if the first constellation is the same as the second constellation, the authentication request further carries an unencrypted first temporary public key;
[0356] The step of merging the saved first public key of the first constellation with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string includes:
[0357] The first temporary public key, the first public key, and the constellation secret are combined to obtain the target character string.
[0358] In a possible implementation, combining the first temporary public key, the first public key, and the constellation secret to obtain the target character string includes:
[0359] Determine a sum of the first temporary public key and the first public key;
[0360] Performing a point multiplication operation on the constellation secret and the sum value to obtain the target character string.
[0361] In a possible implementation, the verification data includes: a signature parameter, an intermediate value, a random public key, an authentication public key, a first public key, and a timestamp.
[0362] Since the principle of solving the problem by the above electronic device is similar to that of the satellite communication method, the implementation of the above electronic device can refer to the embodiment of the method, and the repeated parts will not be repeated.
[0363] The communication bus mentioned in the above-mentioned electronic device can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus. The communication interface 902 is used for communication between the above-mentioned electronic device and other devices. The memory can include a random access memory (RAM) and can also include a non-volatile memory (NVM), such as at least one disk storage. Optionally, the memory can also be at least one storage device located away from the aforementioned processor.
[0364] The above-mentioned processor can be a general-purpose processor, including a central processing unit, a network processor (NP), etc.; it can also be a digital signal processing processor (DSP), an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, etc.
[0365] Example 10:
[0366] Based on the above embodiments, an embodiment of the present invention further provides a computer-readable storage medium, which stores a computer program executable by a processor. When the program is executed on the processor, the processor implements the following steps:
[0367] If an authentication request is received from a satellite belonging to a first constellation, the first public key of the first constellation is combined with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string, and the target character string is encrypted using an encryption algorithm to obtain a communication key; wherein the constellation secret is a character string of a preset length;
[0368] Decrypting the authentication information carried in the authentication request according to the communication key to obtain the first temporary public key and verification data to be verified carried in the authentication information;
[0369] A second temporary public key is determined based on the verification data, and if the second temporary public key is consistent with the first temporary public key, the communication key is used to communicate with the satellite.
[0370] In one possible implementation, the process of determining the constellation secret includes:
[0371] Sending a constellation secret acquisition request to other satellites belonging to the second constellation, and receiving sub-constellation secrets sent by the other satellites; wherein the sub-constellation secrets sent by each other satellite are different;
[0372] Lagrangian interpolation recovery is performed according to the sub-constellation secrets sent by the other satellites and the saved target sub-constellation secret corresponding to the target satellite to obtain the constellation secret.
[0373] In one possible implementation, the method further includes:
[0374] Receive an update package sent by a ground control center; wherein the update package carries ciphertext and ciphertext verification data;
[0375] If it is determined based on the ciphertext verification data that the ciphertext has not been tampered with, decrypting the ciphertext using the saved master public key and the third temporary public key to obtain the candidate sub-constellation secret;
[0376] receiving other candidate sub-constellation secrets sent by other satellites in the second constellation, and determining a candidate constellation secret based on the candidate sub-constellation secret and the other candidate sub-constellation secrets;
[0377] The candidate constellation secret is used to update the stored constellation secret of the second constellation.
[0378] In a possible implementation, before determining the second temporary public key based on the verification data, the method further includes:
[0379] Obtaining a timestamp carried in the verification data, and determining a time interval between the current time and the timestamp;
[0380] If the time interval is less than the preset threshold, a subsequent process of determining a second temporary public key based on the verification data is performed.
[0381] In a possible implementation, if the first constellation is different from the second constellation, encrypting the target character string using an encryption algorithm to obtain a communication key includes:
[0382] A hash algorithm is used to encrypt a target character string obtained by concatenating the constellation secret and the first public key to obtain the communication key.
[0383] In a possible implementation manner, if the first constellation is the same as the second constellation, the authentication request further carries an unencrypted first temporary public key;
[0384] The step of merging the saved first public key of the first constellation with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string includes:
[0385] The first temporary public key, the first public key, and the constellation secret are combined to obtain the target character string.
[0386] In a possible implementation, combining the first temporary public key, the first public key, and the constellation secret to obtain the target character string includes:
[0387] Determine a sum of the first temporary public key and the first public key;
[0388] Performing a point multiplication operation on the constellation secret and the sum value to obtain the target character string.
[0389] In a possible implementation, the verification data includes: a signature parameter, an intermediate value, a random public key, an authentication public key, a first public key, and a timestamp.
[0390] Since the principle of solving the problem by the above-mentioned computer-readable storage medium is similar to that of the satellite communication method, the implementation of the above-mentioned computer-readable storage medium can refer to the embodiment of the method, and the repeated parts will be omitted.
[0391] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0392] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 a process or multiple processes and / or boxes Figure 1A device that provides the functions specified in a block or multiple blocks.
[0393] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0394] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0395] Obviously, those skilled in the art may make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.
Claims
1. A satellite communication method, characterized in that: Applied to a target satellite, the method comprises: If an authentication request is received from a satellite belonging to a first constellation, the first public key of the first constellation is combined with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string, and the target character string is encrypted using an encryption algorithm to obtain a communication key; wherein the constellation secret is a character string of a preset length; Decrypting the authentication information carried in the authentication request according to the communication key to obtain the first temporary public key and verification data to be verified carried in the authentication information; A second temporary public key is determined based on the verification data, and if the second temporary public key is consistent with the first temporary public key, the communication key is used to communicate with the satellite.
2. The method according to claim 1, characterized in that The process of determining the constellation secret includes: Sending a constellation secret acquisition request to other satellites belonging to the second constellation, and receiving sub-constellation secrets sent by the other satellites; wherein the sub-constellation secrets sent by each other satellite are different; Lagrangian interpolation recovery is performed according to the sub-constellation secrets sent by the other satellites and the saved target sub-constellation secret corresponding to the target satellite to obtain the constellation secret.
3. The method according to claim 1 or 2, characterized in that The method further comprises: Receive an update package sent by a ground control center; wherein the update package carries ciphertext and ciphertext verification data; If it is determined based on the ciphertext verification data that the ciphertext has not been tampered with, decrypting the ciphertext using the saved master public key and the third temporary public key to obtain the candidate sub-constellation secret; receiving other candidate sub-constellation secrets sent by other satellites in the second constellation, and determining a candidate constellation secret based on the candidate sub-constellation secret and the other candidate sub-constellation secrets; The candidate constellation secret is used to update the stored constellation secret of the second constellation.
4. The method according to claim 1, wherein Before determining the second temporary public key according to the verification data, the method further includes: Obtaining a timestamp carried in the verification data, and determining a time interval between the current time and the timestamp; If the time interval is less than the preset threshold, a subsequent process of determining a second temporary public key based on the verification data is performed.
5. The method according to claim 1 or 4, characterized in that If the first constellation is different from the second constellation, encrypting the target character string using an encryption algorithm to obtain a communication key includes: A hash algorithm is used to encrypt a target character string obtained by concatenating the constellation secret and the first public key to obtain the communication key.
6. The method according to claim 1 or 4, characterized in that If the first constellation is the same as the second constellation, the authentication request further carries an unencrypted first temporary public key; The step of merging the saved first public key of the first constellation with the constellation secret of the second constellation to which the target satellite belongs to obtain a target character string includes: The first temporary public key, the first public key, and the constellation secret are combined to obtain the target character string.
7. The method according to claim 6, characterized in that The step of combining the first temporary public key, the first public key, and the constellation secret to obtain the target character string includes: Determine a sum of the first temporary public key and the first public key; Performing a point multiplication operation on the constellation secret and the sum value to obtain the target character string.
8. The method according to claim 1, characterized in that The verification data includes: signature parameters, intermediate values, random public keys, authentication public keys, first public keys and timestamps.
9. A satellite communication device, characterized in that: Applied to a target satellite, the device comprises: a processing module configured to, upon receiving an authentication request sent by a satellite belonging to a first constellation, combine a stored first public key of the first constellation with a constellation secret of a second constellation to which the target satellite belongs to obtain a target string, and encrypt the target string using an encryption algorithm to obtain a communication key; wherein the constellation secret is a string of a preset length; a decryption module, configured to decrypt the authentication information carried in the authentication request according to the communication key, and obtain the first temporary public key and verification data to be verified carried in the authentication information; A verification module is configured to determine a second temporary public key based on the verification data, and if the second temporary public key is consistent with the first temporary public key, use the communication key to communicate with the satellite.
10. An electronic device, characterized in that: The electronic device comprises a processor, and the processor is configured to implement the steps of the satellite communication method according to any one of claims 1 to 8 when executing a computer program stored in a memory.