A drone cluster identity authentication method based on grouped Latin square
Optimizing drone cluster identity authentication through grouping Latin design and pre-sharing secret information, solving the problem of excessive communication and computing overhead in traditional solutions, and achieving efficient and low-latency drone cluster authentication.
Patent Information
- Application Number
- CN202411639101.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-18
- Publication Date
- 2025-08-19
- Estimated Expiration
- 2044-11-18
AI Technical Summary
The traditional drone cluster identity authentication scheme increases significantly when the number of nodes increases. The centralized architecture is prone to single point failures, and the digital certificate verification process consumes a lot of resources, making it difficult to meet the needs of high frequency and low latency.
The grouping Latin square design is adopted to divide the drone cluster into multiple authentication groups, and through in-group and inter-group identity authentication and key negotiation, use pre-shared secret information and message authentication code to replace digital certificates, optimizing communication and computing costs.
It greatly reduces the number of communication times of drone cluster identity authentication, reduces communication costs by 20-80%, improves the reliability and efficiency of the system, and is suitable for resource-constrained devices to meet low latency requirements.
Smart Images

Figure CN119521221B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of drone identity authentication, and in particular to a drone cluster identity authentication method based on grouped Latin squares. Background Art
[0002] Drone swarm technology, with its highly collaborative capabilities, offers diverse and innovative solutions across a wide range of industries, demonstrating immense potential for application. Drone swarm technology holds significant value in areas such as disaster relief, environmental monitoring, logistics and distribution, farmland management, and urban air mobility. This technology provides a new and viable means for efficiently executing complex, dangerous, and otherwise inaccessible human missions.
[0003] However, the rapid increase in the number of nodes has led to a significant increase in the number of authentication times. When dealing with a large number of nodes, the communication and computing overhead of the traditional point-to-point authentication mechanism increases exponentially. For example, if n nodes need to communicate with each other, the communication cost is O(n 2 ), that is, each node needs to communicate with n nodes. Especially in high-frequency, low-latency scenarios such as drone clusters and the Internet of Things, frequent identity authentication will take up valuable bandwidth and resources, reducing the overall performance of the system. In addition, many nodes, such as IoT devices, are limited by their computing power and energy and cannot withstand complex encryption algorithms, which further exacerbates the high cost of authentication. In traditional identity authentication and key agreement protocols, in order to improve this problem, some researchers have optimized the communication cost to and O(n=log2n), but the communication cost can still be further optimized.
[0004] Currently, most traditional authentication solutions rely on a centralized model. This not only introduces system bottlenecks but also creates the risk of single points of failure, severely impacting system reliability and availability. In a centralized architecture, if the authentication server or trust center fails, identity authentication for the entire system will be interrupted, resulting in service unavailability. Furthermore, traditional solutions typically use digital certificates for identity authentication. While this offers strong security, the generation, distribution, and verification of digital certificates in large-scale node environments consumes significant computing resources and bandwidth, further slowing authentication and increasing the burden on the system. This is particularly pronounced in resource-constrained devices and can also lead to increased latency in inter-node communication, making it difficult to meet the real-time and low-energy requirements of scenarios such as the Internet of Things. Summary of the Invention
[0005] The present invention proposes a drone cluster identity authentication method based on group Latin square to solve the technical problem of the existing authentication scheme that the authentication speed decreases sharply when the number of nodes increases sharply or the authentication server or trust center fails.
[0006] To solve the above technical problems, the present invention provides a drone cluster identity authentication method based on grouped Latin squares, comprising the following steps:
[0007] Step S1: Divide the n drones in the drone cluster into z authentication groups, and initialize the parameters of each drone;
[0008] Step S2: All authentication groups are performed simultaneously within the group Rounds of identity authentication and key negotiation to obtain a common temporary session key within the group;
[0009] In each round of certification, the jth group of drones numbered x Authentication information Sent to the jth group of drones numbered y Conduct certification and negotiation;
[0010] When x-(j-1)×n / z>2 r-1 When y=x-2 r-1 ; x-(j-1)×n / z≤2 r-1 When y=2 k +x-2 r-1 , r represents the number of rounds;
[0011] Step S3: Each group randomly selects a drone to perform kn=log2z rounds of inter-group authentication and negotiation to obtain a common inter-group session key;
[0012] The drone selected by group j in each round of inter-group certification Send the authentication information to the selected drone in the group Conduct certification and negotiation;
[0013] When j>2 r-1 When l = j-2 r-1 , j≤2 r-1 hour, r represents the number of rounds;
[0014] Step S4: Based on the intra-group temporary reply key, the inter-group session key is transferred within the group to complete the drone cluster identity authentication and key negotiation.
[0015] Preferably, the parameters initialized in step S1 include:
[0016] G: base point (generator), a point on the elliptic curve;
[0017] ID i :UAV numbered i i Identity serial number;
[0018] sid: secret information of drone swarm;
[0019] p: prime number, defining the finite field GF(p);
[0020] N: order of base point;
[0021] P i : Public key generated based on elliptic curve parameters, P i =d i G;
[0022] d i : Private key generated based on elliptic curve parameters.
[0023] Preferably, in step S2, the method for performing identity authentication in each round group includes:
[0024] Step S211: In the first round of authentication, all drones in group j generate a temporary random number rand x , and calculate rand x ·G gets
[0025] Step S212: Drone Calculate the temporary key temkey = P y ·d x , P y Represents the public key of drone y; use the temporary key temkey to Perform encryption operation to obtain ciphertext Calculate the message authentication code mac x =Hmac(sid, ID x ||T x ||c x );information Send to drone T x for Timestamp of the message being sent;
[0026] Step S213: After receiving the message, use the current time T when the message was received n and m2 to determine whether these two parameters satisfy the inequality T n -m2<Δt, Δt is the effective time window, m2 represents If the second parameter in the parameter is satisfied, the verification is passed; otherwise, the packet is discarded and the authentication fails.
[0027] Step S214: Calculate MAC using sid x =Hmac(sid,m1||m2||m3), if MAC x If it is the same as m4, the verification passes; otherwise, the packet is discarded and the authentication fails.
[0028] Preferably, in step S2, the method for performing key negotiation within the group includes:
[0029] Step S221: Based on the stored public key set Found The corresponding public key P x ;
[0030] Step S222: Calculate and obtain the temporary key temkey=P x ·d y ;
[0031] Step S223: Decrypt m3 to obtain
[0032] Step S224: right according to The algorithm is updated to obtain new
[0033] Step S225: Perform After rounds of identity authentication and key negotiation, the drones in group j have the same K j ,Right now The drones in the group use tsekey=K j sid is used as a temporary session key within the group.
[0034] Preferably, in step S3, the method of performing identity authentication between each round of groups includes:
[0035] Step S311: Calculate the temporary key jtemkey = P y ·d x ; For the temporary session key K of group j j Perform encryption operation to obtain ciphertext c x =enc(jtemkey, K j ); calculate the message authentication code mac x =Hmac(sid, ID x ||T x ||c x ); the message M (x,y) ={ID x , Tx , c x , mac x}Send to drone Where T x for Timestamp of the message being sent;
[0036] Step S312: take over Message sent M (x,y) ={m1,m2,m3,m4};
[0037] Step S313: Use the current time T at which the message was received n and m2 to determine whether these two parameters satisfy the inequality T n -m2<Δt, Δt is the valid time window. If it meets the requirement, the verification is passed. If not, the data packet is discarded and the authentication fails.
[0038] Step S314: Calculate MAC using sid x =Hmac(sid,m1||m2||m3), if MAC x If it is the same as m4, the verification passes; otherwise, the packet is discarded and the authentication fails.
[0039] Preferably, in step S3, the method for performing key negotiation between groups includes:
[0040] Step S321: Based on the stored public key set Find the corresponding public key P x , calculate the temporary key jtemkey = P x ·d y ;
[0041] Step S322: Decrypt m3 to obtain K j =dec(jtemkey,m3), finally K l According to K l =K j +K l The algorithm is updated to get the new K l .
[0042] Step S323: After kn rounds, the drones in each group have the same inter-group session key K, that is, K j =K,
[0043] Preferably, step S4 includes:
[0044] Step S41: The jth group participating in the authentication in step S3 Use the intra-group temporary session key tsekey to encrypt the inter-group session key K to obtain the ciphertext cip j =enc(tsekey, K); calculate the message authentication code mac j =Hmac(sid, ID x ||T x ||cip j ), T x for The timestamp of sending the message; then the data is packaged into a message mes = {ID x , T x , cip j , mac j}Send to other drones in the group;
[0045] Step S42: Other drones in the group receive the drone After sending the message mes = {me1, me2, me3, me4}, use the current time T of receiving the message n and me2 to determine whether these two parameters satisfy the inequality T n -me2<Δt, Δt is the valid time window. If it meets the requirement, the verification is passed. If not, the data packet is discarded and the authentication fails.
[0046] Step S43: Other drones in the group use sid to calculate MAC j =Hmac(sid,me1||me2||me3), if MAC x If the value is the same as me4, the verification is passed; otherwise, the packet is discarded and the authentication fails.
[0047] Step S44: Other drones in the group use the temporary session key in the group to perform a decryption operation on me3 to obtain K=dec(tsekey, m3), and calculate sekey=K·sid as the cluster session key.
[0048] Preferably, the following method is used for grouping in step S1, where the number of drones n is input to obtain the optimal number of groups z:
[0049] Step S11: Initialize best_z to None, indicating that the optimal number of groups has not yet been found;
[0050] Step S12: Initialize best_result to positive infinity to record the absolute value of the minimum number of groups;
[0051] Step S13: for each value h from 1 to n, check whether n is divisible by h;
[0052] Step S14: If it is divisible, calculate f_prime(h,n) using the following formula:
[0053]
[0054] Step S15: If the absolute value of f_prime(h,n) is smaller than the current best_result, then f_prime(h,n) is used as the new best_result to update best_result, and h is used as the new z to update z;
[0055] Step S16: Repeat steps S13 to S14, and output the final z as the number of groups.
[0056] The beneficial effects of the present invention include at least: the present invention uses the group Latin square design to greatly reduce the number of times required for large-scale node authentication, and the number of communications required for the authentication and negotiation of keys of n drones is usually O(n 2 ), based on block design and Latin square design, the communication cost is optimized to and O(n×log2n), and the communication cost is further reduced after the group Latin square optimization based on the present invention. 16 drones only need 48 communications, which is more than 20% lower than the block design and Latin square design. When the number of nodes reaches 521, it is reduced by nearly 80% and 50% respectively. Moreover, as the value of n increases, the advantage of the cluster identity authentication scheme proposed in the present invention becomes greater. BRIEF DESCRIPTION OF THE DRAWINGS
[0057] Figure 1 Schematic diagram of a method flow in an embodiment of the present invention;
[0058] Figure 2 Schematic diagram of authentication communication cost comparison according to an embodiment of the present invention. DETAILED DESCRIPTION
[0059] The following is a clear and complete description of the technical solutions in the embodiments of the present invention, in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments of the present invention without making any creative efforts are within the scope of protection of the present invention.
[0060] Example 1
[0061] like Figure 1 As shown, an embodiment of the present invention provides a drone cluster identity authentication method based on group Latin squares, comprising the following steps:
[0062] Step S1: Divide the n drones in the drone cluster into z authentication groups, and initialize the parameters of each drone;
[0063] Step S2: All authentication groups are performed simultaneously within the group Rounds of identity authentication and key negotiation to obtain a common temporary session key within the group;
[0064] In each round of certification, the jth group of drones numbered x Authentication information Sent to the drone numbered y in group h Conduct certification and negotiation;
[0065] When x-(j-1)×n / z>2 r-1 When y=x-2 r-1 ; x-(j-1)×n / z≤2 r-1 When y=2 k +x-2 r-1 , r represents the number of rounds;
[0066] Step S3: Each group randomly selects a drone to perform kn=log2z rounds of inter-group authentication and negotiation to obtain a common inter-group session key;
[0067] The drone selected by group j in each round of inter-group certification Send the authentication information to the selected drone in the group Conduct certification and negotiation;
[0068] When j>2 r-1 When l = j-2 r-1 , j≤2 r-1 hour, r represents the number of rounds;
[0069] Step S4: Based on the intra-group temporary reply key, the inter-group session key is transferred within the group to complete the drone cluster identity authentication and key negotiation.
[0070] Specifically, in the initialization phase, each independent UAV completes parameter initialization with the help of the ground station / control station, and then enters the identity authentication phase, which can be divided into three sub-phases: intra-group authentication and negotiation, inter-group authentication and negotiation, and intra-group key transfer.
[0071] In this embodiment, in the initialization phase, the total number of drones in the drone cluster is recorded as n, and the number of UAVs is i For example, i is the drone number. The ground station will determine the parameters p, G, and N of the elliptic curve at this stage and generate a public key set. sid and private key d i And pass the above parameters to the UAV through a secure communication channel iThe specific meanings of the parameters are shown in Table 1.
[0072] Table 1: Parameters and their meanings
[0073]
[0074] Intra-group authentication and negotiation
[0075] In this stage, the UAV cluster needs to be divided into z groups according to the number of nodes n. For example, when the number of nodes is 8, it is divided into 4 groups. The groups need to be grouped in the order of number i. For example, UAV1 and UAV2 are divided into the first group, which is recorded as and When the number is 32, it is divided into 16 groups, and when the number is 128, it is divided into 32 groups.
[0076] After grouping, each group has n / z drones, and all groups start identity authentication and key negotiation at the same time, which requires a total of In each round, we take the hth group as an example. Need to Send to When x-(j-1)×n / z>2 r-1 When y=x-2 r-1 , x-(j-1)×n / z≤2 r-1 When y=2 k +x-2 r-1 , r represents the rth round. After k rounds of authentication are completed, the public intra-group temporary session key of each group is obtained.
[0077] Inter-group authentication and negotiation
[0078] In this stage, each group randomly selects a drone for inter-group authentication and negotiation. For example, the drone selected by group j is recorded as The drones selected in group l are denoted as The drones need to perform kn=log2z rounds of authentication and negotiation. Message M needs to be (x,y) Send to When j>2 r-1 When l = j-2 r-1 , j≤2 r-1 hour, r represents the rth round. After completing kn rounds of authentication, the public inter-group session key is obtained.
[0079] Intra-group key delivery
[0080] In this step, for example, the jth group is connected to the drone through authentication and negotiation between groups. Explain, drone The inter-group session key is encrypted and decrypted using the intra-group temporary session key and then passed to other drones in the jth group. After key transfer is completed in each group, each drone in the drone cluster obtains the same negotiated key, thus completing the drone cluster identity authentication and key negotiation.
[0081] The scheme of this embodiment uses the design of group Latin square to effectively reduce the communication cost. In the traditional scheme, the number of communications required for n drones to authenticate and negotiate the key is usually O(n 2 ), based on block design and Latin square design, the communication cost is optimized to and O(n×log2n), and the communication cost of the solution in this embodiment is further reduced after the group Latin square optimization, as shown in Table 2 and Figure 2 As shown, Figure 2 The corresponding comparison method in Compared with method 2, which corresponds to O(n=log2n), only 48 communications are required for 16 drones, which is more than 20% lower than the other two methods. When the number of nodes reaches 521, it is reduced by nearly 80% and 50% respectively. As the value of n increases, the effectiveness of the cluster identity authentication scheme proposed in the embodiment of the present invention is proved.
[0082] Table 2
[0083]
[0084] Example 2
[0085] In order to further reduce the computational overhead, this embodiment improves the authentication process of the three sub-stages of intra-group authentication and negotiation, inter-group authentication and negotiation, and intra-group key transfer based on Example 1. Instead of adopting the traditional authentication method, the identity authentication of the cluster nodes is completed by using pre-shared secret information, message authentication code HMAC algorithm, symmetric encryption and other algorithms instead of digital certificates.
[0086] Specifically, the following steps are used to perform intra-group authentication and negotiation.
[0087] Step 1: In the first round of authentication, each drone generates a temporary random number. For example, generate a random number rnad x Post-calculation rnad x ·G gets After the first round, the updated Proceed to the next steps.
[0088] Then calculate the temporary key temkey = P y ·d x , use this key to pair data Perform encryption operation to obtain ciphertext Calculate the message authentication code mac x =Hmac(sid, Id x ||T x ||c x ), then the message Where T x for Timestamp of sending message, sent to drone
[0089] Step 2, take over Messages sent Use the current time T at which the message was received n and m2 to determine whether these two parameters satisfy the inequality T n -m2<Δt, Δt is the valid time window. If it meets the requirement, the verification is passed. If it does not meet the requirement, it may be subjected to replay attack and the data packet will be discarded.
[0090] Step 3: Calculate MAC using sid x =Hmac(sid,m1||m2||m3), if MAC x If it is the same as m4, it passes the verification; otherwise, the data packet may have been tampered with and will be discarded.
[0091] Step 4: Based on the stored public key set Find the corresponding public key P x , calculate the temporary key temkey = P x ·d y According to the associative and commutative laws of elliptic curve scalar multiplication, P x ·d y =P y ·d x , so this step The obtained temkey is the same as the temkey obtained in step 1. Then perform decryption operation on m3 to obtain at last right according to The algorithm is updated to obtain new
[0092] After k rounds, the drones in the group have the same K j ,Right now Each group of drones uses teskey=K j sid is used as a temporary session key within the group.
[0093] Perform inter-group authentication and negotiation through the following steps.
[0094] Step 1, Calculate the temporary key jtemkey = P y ·d x , use this key to pair data K j Perform encryption operation to obtain ciphertext c x =enc(jtemkey, K j ), calculate the message authentication code mac x =Hmac(sid, ID x ‖T x ‖c x ), then the message M (x,y) ={ID x , T x , c x , mac x}, where T x for Timestamp of sending message, sent to drone
[0095] Step 2, take over Message sent M (x,y) ={m1, m2, m3, m4}. Use the current time T at which the message was received n and m2 to determine whether these two parameters satisfy the inequality T n -m2<Δt, Δt is the valid time window. If it meets the requirement, the verification is passed. If it does not meet the requirement, it may be subjected to replay attack and the data packet will be discarded.
[0096] Step 3: Calculate MAC using sid x =Hmax(sid,m1||m2||m3), if MAC x If it is the same as m4, it passes the verification; otherwise, the data packet may have been tampered with and will be discarded.
[0097] Step 4: Based on the stored public key set Find the corresponding public key P x , calculate the temporary key jtemkey = P x ·d y , then decrypt m3 to get K x =dec(jtemkey,m3), finally K l According to K l =K j +Kl The algorithm is updated to get the new K l .
[0098] After kn rounds, the drones in each group have the same K, that is, K j =K, Each drone uses sekey=K·sid as the session key.
[0099] Perform the following steps to perform intra-group authentication and negotiation:
[0100] Step 1: Group j participates in the authentication Use the intra-group temporary session key tsekey to encrypt the inter-group session key K to obtain the ciphertext cip j =enc(tsekey, K); calculate the message authentication code mac j =Hmac(sid, ID x ||T x ||cip j ), T x for The timestamp of sending the message; then the data is packaged into a message mes = {ID x , T x , cip j , mac j}Send to other drones in the group.
[0101] Step 2: Other drones in the group receive the drone After sending the message mes = {me1, me2, me3, me4}, use the current time T of receiving the message n and me2 to determine whether these two parameters satisfy the inequality T n -me2<Δt, Δt is the valid time window. If it meets the requirement, the verification is passed. If it does not meet the requirement, it may be subjected to replay attack and the data packet will be discarded.
[0102] Step 3: Other drones in the group use sid to calculate MAC j =Hmac(sid,me1||me2||me3), if MAC x If it is the same as me4, it passes the verification; otherwise, the data packet may be tampered with and will be discarded.
[0103] Step 4: Other drones in the group use the temporary session key in the group to decrypt me3 and obtain K=dec(tsekey,m3), and calculate sekey=K·sid as the cluster session key.
[0104] Compared with widely used identity authentication key negotiation methods such as DTLS and TLS, this embodiment completes the identity authentication of cluster nodes by using pre-shared secret information, message authentication code HMAC algorithm, symmetric encryption and other algorithms instead of digital certificates. The algorithms used, such as elliptic curve point addition, point multiplication, and message authentication code HMAC, have extremely low computational overhead, reducing the total computational overhead of the identity authentication key negotiation method.
[0105] Example 3
[0106] This embodiment provides a grouping method based on the first embodiment. The drone input n is input to obtain the optimal grouping number z. The method includes:
[0107] Step 1: Initialize best_z to None, indicating that the optimal number of groups has not yet been found;
[0108] Step 2: Initialize best_result to positive infinity to record the absolute value of the minimum number of groups;
[0109] Step 3: For each value h from 1 to n, check whether n is divisible by h;
[0110] Step 4: If it is divisible, calculate f_prime(h,n) using the following formula:
[0111]
[0112] Step 5: If the absolute value of f_prime(h,n) is smaller than the current best_result, update best_result with f_prime(h,n) as the new best_result, and update z with h as the new z;
[0113] Step 6: Repeat steps S13 to S14, and output the final z as the number of groups.
[0114] The method design of this embodiment also has extremely high scalability. In addition to being applicable to drone clusters, it can also meet the needs of group data security protection in other lightweight Internet of Things (IoT) devices and cloud computing. The protocol architecture is flexible and easy to integrate into different types of lightweight terminals, and parameters can be adjusted according to specific application scenarios to adapt to different performance requirements. Especially in resource-constrained large-scale node security protection environments, such as industrial Internet of Things, smart city infrastructure, large-scale agricultural monitoring systems, etc., this method can not only provide efficient identity authentication and key negotiation, but also ensure high security and low communication overhead. Therefore, the application of this protocol in the Internet of Things has extremely strong adaptability and broad application prospects.
[0115] The technical features of the above embodiments may be combined in any manner. To simplify the description, not all possible combinations of the technical features in the above embodiments are described. Only preferred embodiments of the present invention are presented. While the description is relatively specific and detailed, it should not be construed as limiting the scope of the present invention. As long as there are no contradictions in the combination of these technical features, they should be considered to be within the scope of this specification.
[0116] It should be noted that those skilled in the art may make various modifications and improvements without departing from the scope of the present invention, and these modifications and improvements fall within the scope of protection of the present invention. Therefore, the scope of protection of the patent for this invention shall be based on the appended claims.
Claims
1. A drone cluster identity authentication method based on group Latin squares, characterized by: The following steps are involved: Step S1: Divide the n drones in the drone cluster into z authentication groups, and initialize the parameters of each drone; Step S2: All authentication groups are performed simultaneously within the group Rounds of identity authentication and key negotiation to obtain a common temporary session key within the group; In each round of certification, the jth group of drones numbered x Authentication information Sent to the jth group of drones numbered y Conduct certification and negotiation; When x-(j-1)×n / z>2 r-1 When y=x-2 r-1 ; x-(j-1)×n / z≤2 r-1 When y=2 k +x-2 r-1 , r represents the number of rounds; Step S3: Each group randomly selects a drone to perform kn=log2z rounds of inter-group authentication and negotiation to obtain a common inter-group session key; The drone selected by group j in each round of inter-group certification Send the authentication information to the drone selected in group l Conduct certification and negotiation; When j>2 r-1 When l = j-2 r-1 , j≤2 r-1 hour, r represents the number of rounds; Step S4: Based on the intra-group temporary session key, the inter-group session key is transferred within the group to complete the drone cluster identity authentication and key negotiation.
2. The UAV cluster identity authentication method based on grouped Latin squares according to claim 1 is characterized by: The parameters initialized in step S1 include: G: base point (generator), a point on the elliptic curve; ID i :UAV numbered i i Identity serial number; sid: secret information of drone swarm; p: prime number, defining the finite field GF(p); N: order of base point; P i : Public key generated based on elliptic curve parameters, P i =d i G; d i : Private key generated based on elliptic curve parameters.
3. The UAV cluster identity authentication method based on grouped Latin squares according to claim 2 is characterized by: In step S2, the method for performing identity authentication within each round group includes: Step S211: In the first round of authentication, all drones in group j generate a temporary random number rand x , and calculate rand x ·G gets Step S212: Drone Calculate the temporary key temkey = P y ·d x , P y Represents the public key of drone y; use the temporary key temkey to Perform encryption operation to obtain ciphertext Calculate the message authentication code mac x =Hmac(sid, ID x ||T x ||c x );information Send to drone T x for Timestamp of the message being sent; Step S213: After receiving the message, use the current time T when the message was received n and m2 to determine whether these two parameters satisfy the inequality T n -m2<Δt, Δt is the effective time window, m2 represents If the second parameter in the , is satisfied, the verification is passed; if not, the current message is discarded and the authentication fails; Step S214: Calculate MAC using sid x =Hmac(sid,m1||m2||m3), if MAC x If the message is the same as m4, the verification is passed; otherwise, the current message is discarded and the authentication fails. m1, m3 and m4 are The first, third, and fourth parameters in .
4. The UAV cluster identity authentication method based on grouped Latin squares according to claim 3 is characterized by: In step S2, the method for performing key negotiation within the group includes: Step S221: Based on the stored public key set Found The corresponding public key P x ; Step S222: Calculate and obtain the temporary key temkey=P x ·d y ; Step S223: Decrypt m3 to obtain Step S224: right according to The algorithm is updated to obtain new Step S225: Perform After rounds of identity authentication and key negotiation, the drones in group j have the same K j ,Right now in The UAVs in group j use tsekey=K j sid is used as a temporary session key within the group.
5. The UAV cluster identity authentication method based on grouped Latin squares according to claim 2 is characterized by: In step S3, the method of performing identity authentication between groups in each round includes: Step S311: Calculate the temporary key jtemkey = P y ·d x ; For the temporary session key K of group j j Perform encryption operation to obtain ciphertext c x =enc(jtemkey, K j ); calculate the message authentication code mac x =Hmac(sid, ID x ||T x ||c x ); the message M (x,y) ={ID x , T x , c x , mac x }Send to drone Where T x for Timestamp of the message being sent; Step S312: take over Message sent M (x,y) ={m1, m2, m3, m4}, where m1, m2, m3, m4 are M (x,y) The first, second, third, and fourth parameters in ; Step S313: Use the current time T at which the message was received n and m2 to determine whether these two parameters satisfy the inequality T n -m2<Δt, Δt is the valid time window. If it meets the requirement, the verification is passed. If not, the current message is discarded and the authentication fails. Step S314: Calculate MAC using sid x =Hmac(sid,m1||m2||m3), if MAC x If it is the same as m4, the verification passes; otherwise, the current message is discarded and the authentication fails.
6. The UAV cluster identity authentication method based on grouped Latin squares according to claim 5 is characterized by: In step S3, the method for performing key negotiation between groups includes: Step S321: Based on the stored public key set Find the corresponding public key P x , calculate the temporary key jtemkey = P x ·d y ; Step S322: Decrypt m3 to obtain K j =dec(jtemkey,m3), finally K l According to K l =K j +K l The algorithm is updated to get the new K l ; Step S323: After kn rounds, the drones in each group have the same inter-group session key K, i.e.
7. The UAV cluster identity authentication method based on grouped Latin squares according to claim 2 is characterized by: Step S4 include: Step S41: The jth group participating in the authentication in step S3 Use the intra-group temporary session key tsekey to encrypt the inter-group session key K to obtain the ciphertext cip j =enc(tsekey, K); calculate the message authentication code mac j =Hmac(sid, ID x ||T x ||cip j ), T x for The timestamp of sending the message; then the data is packaged into a message mes = {ID x , T x , cip j , mac j }Send to other drones in the group; Step S42: Other drones in the group receive the drone After the message mes={me1, me2, me3, me4} is sent, me1, me2, me3, me4 are the first, second, third and fourth parameters of mes respectively, and the current time T of receiving the message is used. n and me2 to determine whether these two parameters satisfy the inequality T n -me2<Δt, Δt is the valid time window. If it meets the requirement, the verification is passed. If not, the current message is discarded and the authentication fails. Step S43: Other drones in the group use sid to calculate MAC j =Hmac(sid,me1||me2||me3), if MAC j If the message is the same as me4, the verification is passed; otherwise, the current message is discarded and the authentication fails. Step S44: Other drones in the group use the temporary session key in the group to perform a decryption operation on me3 to obtain K=dec(tsekey, me3), and calculate sekey=K·sid as the cluster session key.
8. The UAV cluster identity authentication method based on grouped Latin squares according to claim 1 is characterized by: In step S1, the following method is used for grouping. Input the number of drones n and obtain the optimal number of groups z: Step S11: Initialize best_z to None, indicating that the optimal number of groups has not yet been found; Step S12: Initialize best_result to positive infinity to record the absolute value of the minimum number of groups; Step S13: for each value h from 1 to n, check whether n is divisible by h; Step S14: If it is divisible, calculate f_prime(h,n) using the following formula: Step S15: If the absolute value of f_prime(h,n) is smaller than the current best_result, then f_prime(h,n) is used as the new best_result to update best_result, and h is used as the new z to update z; Step S16: Repeat steps S13 to S14, and output the final z as the number of groups.