Flexible and intelligent group key agreement method in uav ad hoc network
By employing a bivariate multinomial secret sharing and threshold decision model in UAV self-organizing networks, the problem of group key negotiation relying on a central server in UANET is solved, enabling flexible key updates and efficient negotiation, and adapting to dynamic network environments.
Patent Information
- Application Number
- CN202411568902.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-05
- Publication Date
- 2025-10-24
- Estimated Expiration
- 2044-11-05
AI Technical Summary
The existing group key negotiation protocol in the Unmanned Aerial Network (UANET) relies on a central server, which is not suitable for decentralized networks. Furthermore, the limited range of threshold changes makes it difficult to change the group key, thus failing to meet the continuous update requirements of dynamic networks.
A secret sharing method based on bivariate multinomials is adopted. A new threshold is generated through a trained threshold decision model, and the threshold and secret share are updated alternately. The group key is flexibly updated by combining a hash algorithm, and the threshold selection is guided by a trained model in the UAV self-organizing network.
It enables flexible, secure, and efficient updates of group keys in UAV self-organizing networks, adapting to dynamic network environments and ensuring key freshness and robust negotiation.
Smart Images

Figure CN119629624B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the technical field of unmanned aerial vehicles, and particularly relates to a flexible and intelligent group key agreement method under an unmanned aerial vehicle self-organizing network. BACKGROUND
[0002] At present, a large number of researches have been carried out on group key agreement. In traditional group key agreement protocols, all participants usually need to participate in the group key agreement process at the same time, which is often impractical in actual application, especially in UANET with unstable communication links. In recent years, some researchers have proposed group key agreement protocols that can overcome this shortcoming. Some works focus on asynchronous group key agreement, in which one member initially computes the group key and then distributes key material to help other responders compute the group key. However, this requires the help of a central server to intelligently relay user messages to ensure low communication complexity. However, these protocols always rely on a central server to deliver messages, which is not suitable for decentralized UANET. Some other works are based on threshold secret sharing, however, these solutions cannot be directly applied to group key agreement in UANET. On the one hand, the threshold in these schemes varies within a limited range and is predetermined, which is not suitable for dynamic UANET. On the other hand, in these schemes, group members cannot update their local secret shares according to the latest threshold, and the final recovered secret remains unchanged. This makes it difficult to change the group key, which does not meet the needs of continuous group key update in UANET.
[0003] That is, although there have been some works that propose threshold group key agreement schemes using secret sharing, the threshold in these schemes varies within a limited range and is predetermined, and group members cannot update their secret shares and secrets, resulting in difficulty in changing the group key, which is not suitable for UANET with dynamic link conditions and members. SUMMARY
[0004] In order to solve the above-mentioned problems existing in the prior art, the present application provides a flexible and intelligent group key agreement method under an unmanned aerial vehicle self-organizing network.
[0005] The technical problem to be solved by the present application is solved by the following technical scheme:
[0006] The present application provides a flexible and intelligent group key agreement method under an unmanned aerial vehicle self-organizing network, applied to an i-th unmanned aerial vehicle in an unmanned aerial vehicle self-organizing network containing n unmanned aerial vehicles, i is valued from 1 to n; the i-th unmanned aerial vehicle has a public key, a private key and a secret share, the secret share is a single variable polynomial determined based on two thresholds and is updated as the thresholds are updated, the two thresholds are updated alternately when performing consecutive group key updates, and the method comprises:
[0007] In the current group key update, a trained threshold decision model is used to generate a new threshold value for the to-be-updated threshold value, which is the threshold value that is not updated in the last group key update;
[0008] Based on the secret share updated by itself in the last group key update, the new threshold value, and the number of the jth drone, first and second values of itself and the jth drone are generated, and the first and second values of the jth drone are encrypted and sent to the jth drone, and the first and second values sent by the jth drone are received; the value of j is 1 to n and j is not equal to i; wherein the secret shares updated by the n drones in the last group key update together constitute a last shared bivariate polynomial of the drone ad hoc network, and the two degrees of the last shared bivariate polynomial are the to-be-updated threshold value in the last group key update and the updated threshold value in the last group key update;
[0009] According to the first and second values of itself and the updated threshold value in the last group key update, the secret share updated by itself in the current group key update is determined;
[0010] According to the private key of itself and the secret share updated by itself in the current group key update, the secret data of itself is determined and encrypted and sent to the jth drone, and the secret data sent by the jth drone is received;
[0011] When the number of received secret data exceeds the value of the new threshold value minus 1, the current group key is calculated according to the received secret data by using a hash algorithm, and the current group key update is completed.
[0012] Compared with the prior art, the beneficial effects of the present application are:
[0013] Through the method of the present application, the flexibility of the threshold value can be realized by switching the dimensions of the bivariate polynomial, and the freshness of each group key can be ensured by updating the secret share, and a trained network model can be used to guide the drone ad hoc network to reasonably select the threshold value in the group key negotiation process, so that the group key can be updated, and the negotiation of the group key is more efficient, secure and robust.
[0014] The present application will be further described in detail below with reference to the accompanying drawings and specific embodiments. BRIEF DESCRIPTION OF DRAWINGS
[0015] Figure 1This is a flow chart of a flexible and intelligent group key negotiation method in a drone self-organizing network provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0016] The present invention will be further described in detail below with reference to specific examples, but the embodiments of the present invention are not limited thereto.
[0017] The embodiment of the present invention provides a flexible and intelligent group key negotiation method in a UAV self-organizing network, which is applied to each UAV in a UAV self-organizing network. For example, the UAV self-organizing network is a UANET composed of n UAVs, U = {u1, u2, ..., u n}, each drone has a fixed identifier, for example, u i We assume that the entire UANET is a connected network. Two adjacent drones u i and u j A communication link can be established within a suitable distance ij , and mark each other as neighbor nodes. Each drone can transmit messages to any other drone in the UANET through a multi-hop communication link. The network topology of UANET can be viewed as an undirected graph in, Represents the vertex set of each drone ui, ε={e1,e2,...,e m} represents the edge set of communication links between adjacent drones. The following will take the application of this method to the i-th drone ui (i ranges from 1 to n) in the drone self-organizing network as an example to describe the present invention in detail.
[0018] Here, the i-th drone has a public key, a private key, and a secret share. The secret share is a univariate polynomial determined by two thresholds and is updated as the thresholds are updated. These two thresholds are updated alternately during successive group key updates. The i-th drone has an initial secret share. The initial secret share, public key, and private key are all generated for the i-th drone by the ground control station (GCS). The i-th drone's initial secret share is generated by the GCS based on the initial bivariate polynomial for sharing in the drone self-organizing network, a preset secret value s, and an index i. The two variables of the initial bivariate polynomial for sharing are x and y, and the two degrees are the initial threshold u and the initial threshold v, respectively. The variable corresponding to threshold u is x, and the variable corresponding to threshold v is y.
[0019] When initializing the UAV self-organizing network, GCS generates a large prime number q and an elliptic curve E(F) with a base point P according to the preset security parameter 1λ. p). Then, the GCS randomly selects a secure hash function H: wherein, is a finite field of order q, {0, 1} * represents an arbitrary length bit string composed of 0 and 1, * The asterisk represents an arbitrary length. For the i-th UAV u i , the GCS randomly selects an integer and calculates x i · P, and distributes x i as the private key of the UAV u i, while publishing the public key x i · P of the UAV u i to all the UAVs in the group. In addition, the GCS randomly selects an integer as a secret, and generates an initial shared bivariate polynomial of the UAV self-organizing network with an initial threshold u and an initial threshold v of degrees, respectively wherein, a ij ∈ GF(p) and a 0,0 = s, GF(p) is a finite field. Then, according to F(x, y), the GCS divides the secret s into n secret shares, and distributes the n secret shares to the n UAVs in the UAV self-organizing network respectively as the initial secret share of each of the n UAVs, wherein the initial secret share of the UAV u i is represented as {sh i = f i (y) = F(i, y)}, specifically, when calculating the secret share of the UAV u i, the GCS substitutes the number i of the UAV u i as the value of the variable x into F(x, y), and then a univariate polynomial with y as the variable is obtained, which is the initial secret share of the UAV u i.
[0020] Figure 1 is a flowchart of a flexible and intelligent group key agreement method of a UAV self-organizing network provided by an embodiment of the present application. The method is applied to the i-th UAV as described above, as shown in the figure, the method comprises the following steps. Figure 1
[0021] S101, when updating the current group key, a trained threshold decision model is used to generate a new threshold value of a to-be-updated threshold value. The to-be-updated threshold value is a threshold value that is not updated when updating the group key last time.
[0022] It should be noted that the new threshold value generated by the trained threshold decision model can be any integer.
[0023] S102, based on the secret share updated after the last time of updating the group key, the new threshold value and the number of the jth unmanned aerial vehicle, generate the first and second values of the unmanned aerial vehicle and the jth unmanned aerial vehicle, and send the first and second values of the jth unmanned aerial vehicle to the jth unmanned aerial vehicle after encryption, and receive the first and second values sent by the jth unmanned aerial vehicle; the value of j is 1 to n and j is not equal to i; wherein the secret shares of the n unmanned aerial vehicles updated after the last time of updating the group key together constitute the last time of updating the group key for sharing of the unmanned aerial vehicle self-organizing network. The two degrees of the last time of updating the group key for sharing of the double variable polynomial are the threshold value not updated at the last time of updating the group key and the threshold value updated at the last time of updating the group key.
[0024] It should be noted that the jth unmanned aerial vehicle is the unmanned aerial vehicle u j , each unmanned aerial vehicle in the unmanned aerial vehicle self-organizing network except the unmanned aerial vehicle ui.
[0025] S103, determining the secret share updated after the current time of updating the group key according to the first and second values of the unmanned aerial vehicle and the threshold value updated at the last time of updating the group key.
[0026] S104, determining the secret data of the unmanned aerial vehicle according to the private key of the unmanned aerial vehicle and the secret share updated after the current time of updating the group key, and sending the secret data to the jth unmanned aerial vehicle after encryption, and receiving the secret data sent by the jth unmanned aerial vehicle.
[0027] S105, when the number of received secret data exceeds the value of new threshold value minus 1, calculating the current group key according to the received secret data by using the hash algorithm, and completing the current group key update.
[0028] In some embodiments, the above S101 can be realized by the following steps:
[0029] S1011, when the current group key update is performed, obtaining the current network connectivity state matrix of the unmanned aerial vehicle self-organizing network; the network connectivity state matrix is used to represent the communication link connection state between the unmanned aerial vehicles.
[0030] For example, when the group key update is needed at the t1 moment, the unmanned aerial vehicle i can obtain the network connectivity state matrix of the unmanned aerial vehicle self-organizing network at the t1 moment, and obtain a network connectivity state matrix M.
[0031] S1012, converting the current network connectivity state matrix into a gray scale image.
[0032] Here, the network connectivity matrix M is a matrix containing multiple elements, and each element is composed of a floating-point number in the range [0,1]. In order to map these values to the pixel range (0 to 255) of the grayscale image, for the element m at the (i,j) position in the network connectivity matrix M, ij ,calculate The calculated value is used as the pixel value of the (i, j) position in the converted grayscale image Image. Since the matrix M is a single channel, the obtained Image is a grayscale image.
[0033] S1013. Input the converted grayscale image into a trained threshold decision model, and the trained threshold decision model outputs an optimal threshold corresponding to the grayscale image, and the optimal threshold is used as the new threshold to be updated; wherein, the trained threshold decision model is obtained by training a convolutional neural network CNN using a data set, and the data set is obtained by collecting data from a drone self-organizing network used for data collection, and the data set contains multiple different network connectivity state matrices, and each network connectivity state matrix has a threshold as a label; the threshold corresponding to each network connectivity state matrix is the maximum threshold among the multiple thresholds corresponding to the network connectivity state matrix, and the key negotiation success rate of the drone self-organizing network used for data collection at each threshold among the multiple thresholds is greater than the preset success rate.
[0034] Currently, there are several datasets on drone scenarios, but these datasets mainly focus on tasks such as target recognition and tracking, trajectory prediction, etc., and are not specifically aimed at group key negotiation and threshold selection problems. Therefore, we constructed a dataset D through a large number of tests. Each sample in dataset D is i' ={M i' ,Label} is composed of a network connection state matrix M i' And a label Label (i.e. the optimal threshold for group key negotiation). Specifically, the NS3 platform can be used for data acquisition. Given a UAV self-organizing network with a group size of n, the topology is randomly set and the adjacent UAVs ui and u j Set a random packet loss rate between to generate a UANET instance and its corresponding network connection state matrix M i' In practical applications, many studies have explored how to obtain the topology of UANET and the connection probability between drones, so the present invention will not go into details here. Then, the method proposed in the present invention is run in this UANET configuration, and the success rate of group key negotiation ssuc under different thresholds t is recorded, where It should be noted that when The success rate of group key agreement is the highest when the threshold is the largest, because this requires each group member to receive the least number of messages from other members. However, reducing the threshold will compromise the security of group key agreement, so a trade-off between security and efficiency is needed. To simplify this process, the present application sets a preset success rate value for the success rate of group key agreement, requiring ssuc> 90%. This means that the present application selects the largest threshold among all thresholds that meet the success rate requirement as the label of the network connection state matrix. Of course, this preset success rate value can be adjusted as needed, and when the preset success rate value changes, the label of the connection state matrix will also change.
[0035] After obtaining the above data set, it is necessary to convert each network connection state matrix in the data set into a grayscale image using the above conversion principle, and the label of the network connection state matrix is used as the label of the converted grayscale image. After that, the converted grayscale image with the label is used to train the convolutional neural network CNN. In the specific training process, the loss is calculated by forward propagation, and then the model parameters are adjusted by backward propagation. The loss function uses cross-entropy loss (CEL), which is the standard loss function for multi-classification tasks. After several training rounds, the model can accurately associate grayscale images with thresholds.
[0036] During the training or testing process, the convolutional neural network CNN first extracts the features of the link connectivity matrix of the current UANET from the input grayscale image through the convolutional layer and the pooling layer. Each convolution kernel slides over the image, calculates the weighted sum with the local pixel region, and then performs a nonlinear transformation through an activation function (such as ReLU). The specific convolution process is represented as: where σ is the activation function, m is the size of the convolution kernel, w j1 is the j1th weight of the convolution kernel, b is the bias, x i1+j1 is the (i1+j1)th element of the input grayscale image, h i1is the output of the convolution operation. Typically, a CNN consists of multiple convolutional layers. As the network depth increases, CNNs are able to capture not only simple, straightforward features (such as the connectivity between adjacent drones in a UANET) but also complex features of the input data (such as the overall link connectivity status of a UANET). Following the convolutional layer, the pooling layer is used to reduce the spatial dimensionality of the feature map, further compressing the features extracted by the convolutional layer while retaining key features. The resulting output is a number of feature maps, completing feature extraction. After feature extraction, the output feature maps are multidimensional. To be input to the fully connected layer, these multidimensional feature maps must first be flattened into a one-dimensional vector. This flattened vector is then passed to multiple, sequentially connected layers. Each fully connected layer multiplies each feature in the input vector by a set of weights and adds a bias term to perform a linear transformation. After processing through multiple fully connected layers, nonlinearity is introduced by adding activation functions (such as ReLU), allowing the model to fit more complex nonlinear relationships. After processing through multiple fully connected layers and activation functions, the resulting vector represents the resulting feature combination, which is ultimately used for decision making (i.e., threshold selection). After that, the obtained vector is input into the output layer, which makes a specific decision based on the input vector and outputs an optimal threshold corresponding to the input grayscale image.
[0037] In some embodiments, the above S102 is implemented by the following steps:
[0038] S1021. Use its own number i and the number j of the j-th drone as two values of the variable, and substitute them into its own updated secret share when the group key was last updated, to obtain the first value of the j-th drone and its own first value.
[0039] For example, when the current group key is updated for the first time, the bivariate polynomial used for sharing last time is F(x,y), and the secret share of drone ui after it is updated when the group key is last updated is the initial secret share of drone ui f i (y), and the threshold to be updated is the initial threshold v, the threshold updated when the group key was last updated is the initial threshold u, and the new threshold is a new threshold v', then the drone ui will use its own number i as the value of the variable y to enter f i (y), we can get the polynomial f i point f on (y) i (i), the f i (i) is the first value of the drone ui, and the drone ui inserts the number j as the value of the variable y into f i (y), we can get the polynomial f i point f on (y) i (j), the f i(j) is the second value of the jth UAV. j the first value.
[0040] Exemplarily, when the current time is the second group key update, the last shared bivariate polynomial is the shared bivariate polynomial of the UAV ad hoc network after the first group key update, the last updated secret share of the UAV ui is the secret share of the UAV ui after the first group key update, the threshold to be updated is the initial threshold u, the threshold updated last time is the first updated threshold v', the new threshold is a new threshold u', and the calculation of the first value and the second value is the same as the subsequent calculation.
[0041] S1022, randomly generate a first univariate polynomial, and the degree of the first univariate polynomial is the new threshold.
[0042] Exemplarily, when the current time is the first group key update, the first univariate polynomial is the polynomial g i (y) with y as the variable and i as the value of the variable x with the degree of v'.
[0043] Exemplarily, when the current time is the second group key update, the first univariate polynomial is the polynomial g i (x) with x as the variable and i as the value of the variable y with the degree of u'.
[0044] S1023, take the number i of the UAV itself and the number j of the jth UAV as two values of variables respectively, and substitute them into the first univariate polynomial to obtain the second value of the jth UAV and the second value of the UAV itself.
[0045] Exemplarily, when the current time is the first group key update, the UAV ui substitutes the number i of the UAV itself as the value of the variable y into g i (y), and then the point g i (i) on the polynomial g i (y) can be obtained, and the g i (i) is the second value of the UAV ui, and the UAV ui substitutes the number j as the value of the variable y into g i (y), and then the point g i (j) on the polynomial g i (y) can be obtained, and the g i (j) is the second value of the jth UAV. j
[0046] When the current time is the second group key update, the calculation of the second data is the same.
[0047] S1024, encrypt the first value and the second value of the jth UAV using the private key and the public key of the UAV ui, and send the encrypted first value and the second value to the jth UAV, and receive the first value and the second value sent by the jth UAV.
[0048] Specifically, an encryption function MBE() in the multi-message multi-recipient encryption algorithm can be called to encrypt the first value and the second value of the UAV ui using the private key and the public key of the UAV ui and generate a broadcast message, and the broadcast message is broadcast to the UAV ad hoc network, so that the UAV ui j calculates the first value and the second value. j After receiving the broadcast message, the UAV ui decrypts the broadcast message to obtain the first value and the second value calculated by the UAV ui j .
[0049] In some embodiments, the above S103 is implemented by the following steps:
[0050] S1031, constructing a second univariate polynomial by Lagrange interpolation according to the first value calculated by the UAV ui itself and the first value received from the jth UAV.
[0051] For example, when the current time is the first group key update, the second univariate polynomial is a univariate polynomial F(x, i) calculated by substituting the number i as the variable y into F(x, y), F(x, i) = f i (x).
[0052] For example, when the current time is the second group key update, the second univariate polynomial is a univariate polynomial calculated by substituting the number i as the variable x into the double-variable polynomial shared by the UAV ad hoc network after the first group key update.
[0053] S1032, summing the second value calculated by the UAV ui itself and the second value received from the jth UAV to obtain a sum value, and randomly generating a third univariate polynomial, wherein the degree of the third univariate polynomial is the threshold value updated when the last group key update, and the variable in the third univariate polynomial is the same as the second univariate polynomial, and the value calculated by the third univariate polynomial when the value of the variable is 0 is the sum value.
[0054] For example, when the current time is the first group key update, the third univariate polynomial is a polynomial g i (x) with the degree u and x as the variable and i as the value of the variable y; in addition, the UAV ui sums the second value calculated by the UAV ui itself g i (i) and the second value received from the jth UAV g jThe second value g of the received drone ui j (i) the expression of the summation value obtained after the joint summation is: And,
[0055] For example, when the current time is the second group key update, the third univariate polynomial is a polynomial with degree u' and variable y and variable x value i.
[0056] S1033, add the second univariate polynomial and the third univariate polynomial to obtain the secret share of the drone ui after updating the group key at the current time; wherein the third univariate polynomial of the n drones collectively constitutes a new bivariate polynomial; the new bivariate polynomial and the bivariate polynomial used for sharing last time collectively constitute the bivariate polynomial used for sharing at the current time.
[0057] For example, when the current time is the first group key update, the secret share of the drone ui after updating the group key at the current time is f i '(x), and f i '(x) = f i '(x) + g i '(x), the new bivariate polynomial is represented as G(x, y), and g i '(x) = G(x, i), the bivariate polynomial used for sharing at the current time is represented as F'(x, y), and F'(x, y) = F(x, y) + G(x, y), the two degrees of F'(x, y) are the initial threshold u and the new threshold v' respectively.
[0058] For example, when the current time is the second group key update, the new bivariate polynomial is represented as G'(x, y), the bivariate polynomial used for sharing at the current time is represented as F''(x, y), and F''(x, y) = F'(x, y) + G'(x, y), the two degrees of F''(x, y) are the new threshold u' and the threshold v' respectively.
[0059] In some embodiments, the above S104 is realized by the following steps:
[0060] S1041, substitute 0 as the variable into the secret share of the drone ui after updating the group key at the current time to obtain a share value, and use the private key and the share value of the drone ui as the secret data of the drone ui.
[0061] For example, when the secret share of the drone ui after updating the group key at the current time is f i '(x), then substitute 0 as the value of the variable x into f i '(x) to calculate the share value fi '(0), then, the private key x i and the share value f i '(0) of the UAV ui are taken as the secret data (x i ,f i '(0)) of the UAV ui.
[0062] S1042, the secret data of the UAV ui is encrypted by the private key and the public key of the UAV ui, and then is sent to the jth UAV, and the secret data sent by the jth UAV is received.
[0063] Specifically, the encryption function MBE() in the multi-message multi-receiver encryption algorithm can be called to encrypt the secret data (x i ,f i '(0)) of the UAV ui by the private key and the public key of the UAV ui, and to generate a broadcast message, and the broadcast message is broadcast to the UAV self-organizing network, and meanwhile, the secret data (x j ,f j '(0)) sent by the UAV u j is received.
[0064] In some embodiments, the above S105 is implemented by the following steps:
[0065] S1051, when the number of received secret data exceeds the value of the new threshold minus 1, a first summation value is determined according to the received share value and the share value of the UAV ui.
[0066] S1052, when the number of received secret data exceeds the value of the new threshold minus 1, a second summation value is determined according to the received private key and the private key of the UAV ui.
[0067] S1053, the product between the first summation value and the second summation value is hashed by a hash function to obtain the group key of the current time, and the group key updating of the current time is completed; wherein the hash function is generated by the ground control station.
[0068] For example, when the current time is the first group key updating, the group key of the current time is calculated by the following formula when the secret data received by the UAV ui exceeds v'-1:
[0069]
[0070] wherein, GK is the group key of the current time, H(.) is the hash function, f i '(0) is the share value of the UAV ui, x i is the private key of the UAV ui, x j is the private key of the UAV u j . is the first summation value described above, is the second summation value described above. Obviously, in the above process, a threshold of the group key agreement is changed from v to v', and each drone can also update its own secret share locally, and v' is an arbitrary integer, so the present application can flexibly change the threshold, and in addition, by simultaneously updating the shared secret and the secret share of each drone, the present application realizes continuous group key agreement.
[0071] The present application improves the existing bivariate polynomial secret sharing, thereby allowing flexible threshold adjustment, and designs a secret and share updating algorithm, thereby dynamically updating the key contribution of the drone group members and the group key. On this basis, the present application also designs a variable threshold group key agreement method. In addition, the present application also uses supervised learning to enable the drone to explore the mapping relationship between the UANET link condition and the optimal threshold through offline training, thereby realizing intelligent threshold selection. Through the method of the present application, the dimension switching of the bivariate polynomial can be used to realize the flexible change of the threshold, and the freshness of each group key can be ensured through the update of the secret share, and a trained network model can also be used to guide the drone ad hoc network to reasonably select the threshold in the group key agreement process, thereby making the group key updateable and making the group key agreement more efficient, secure and robust.
[0072] It should be noted that the terms "first", "second" are only used for descriptive purposes and should not be construed as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Therefore, the features defined with "first", "second" can explicitly or implicitly include one or more features. In the description of the present application, the meaning of "a plurality of" is two or more, unless otherwise specifically limited.
[0073] In the description of the present application, the description of the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" means that the specific features or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In the description of the present application, the illustrative description of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features or characteristics described can be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art can combine and combine different embodiments or examples described in the present application.
[0074] In the description, the word "comprising" does not exclude other components or steps, and "one" or "a" does not exclude a plurality. Some measures are described in mutually different embodiments, but this does not mean that these measures cannot be combined to produce good results.
[0075] The above description is further detailed in connection with specific preferred embodiments of the present application, and it is not to be construed that the specific implementation of the present application is limited to these descriptions. For those skilled in the art to which the present application belongs, without departing from the concept of the present application, a number of simple deductions or substitutions can be made, and all of them should be considered as falling within the protection scope of the present application.
Claims
1. A flexible and intelligent group key agreement method for unmanned aerial vehicle ad hoc networks, characterized in that, An application for the ith unmanned aerial vehicle in an unmanned aerial vehicle self-organizing network comprising n unmanned aerial vehicles, i is valued at 1 to n;The ith unmanned aerial vehicle has a public key, a private key and a secret share, the secret share is a single variable polynomial determined based on two thresholds, and is updated as the threshold is updated, the two thresholds are updated alternately when performing continuous group key update, the method comprises: When performing the current group key update, a trained threshold decision model is used to generate a new threshold value of a to-be-updated threshold value;The to-be-updated threshold value is the threshold value that is not updated when updating the group key last time; Based on the secret share updated by itself last time when updating the group key, the new threshold value and the number of the jth unmanned aerial vehicle, generate the first and second values of itself and the jth unmanned aerial vehicle, and encrypt and send the first and second values of the jth unmanned aerial vehicle to the jth unmanned aerial vehicle, receive the first and second values sent by the jth unmanned aerial vehicle;J is valued at 1 to n and j is not equal to i;Wherein, the secret shares of the n unmanned aerial vehicles updated last time when updating the group key together constitute a double variable polynomial last time for sharing in the unmanned aerial vehicle self-organizing network, the two degrees of the double variable polynomial last time for sharing are the threshold value not updated last time when updating the group key and the threshold value updated last time when updating the group key; Determine the secret share updated by itself after the current group key update according to the first and second values of itself and the threshold value updated last time when updating the group key; Determine the secret data of itself according to the private key of itself and the secret share updated by itself after the current group key update, and encrypt and send it to the jth unmanned aerial vehicle, and receive the secret data sent by the jth unmanned aerial vehicle; When the number of received secret data exceeds the value of the new threshold minus 1, calculate the current group key according to the received secret data using a hash algorithm, and complete the current group key update. 2.The flexible and intelligent group key agreement method for UAV ad hoc networks of claim 1, wherein, When performing the current group key update, a trained threshold decision model is used to generate a new threshold value of a to-be-updated threshold value, comprising: When performing the current group key update, obtain the current network connectivity state matrix of the unmanned aerial vehicle self-organizing network;The network connectivity state matrix is used to represent the communication link connection state between unmanned aerial vehicles; Convert the current network connectivity state matrix into a gray scale image; Input the converted gray scale image into the trained threshold decision model, the trained threshold decision model outputs a best threshold value corresponding to the gray scale image, and the best threshold value is used as the new threshold value of the to-be-updated threshold value. The trained threshold decision model is obtained by training a convolutional neural network using a data set, the data set is obtained by data collection on a UAV ad hoc network for data collection, the data set contains a plurality of different network connectivity state matrices, each network connectivity state matrix has a threshold as a label; the threshold corresponding to each network connectivity state matrix is the maximum threshold in the plurality of thresholds corresponding to the network connectivity state matrix, and the key negotiation success rate of the UAV ad hoc network for data collection is greater than the preset success rate under each threshold in the plurality of thresholds. 3.The flexible and intelligent group key agreement method for UAV ad hoc networks of claim 1, wherein, The i-th UAV has an initial secret share, and the initial secret share, the public key and the private key are generated by the ground control station for the i-th UAV; the initial secret share of the i-th UAV is generated by the ground control station according to an initial double-variable polynomial for sharing of the UAV ad hoc network, a preset secret value s and a number i; the two variables of the initial double-variable polynomial for sharing are x and y, and the two degrees are an initial threshold u and an initial threshold v, respectively, the variable corresponding to the threshold u is x, and the variable corresponding to the threshold v is y.
4. The method of claim 3, wherein, The first and second values of the j-th UAV are generated based on the secret share updated after the last time the group key is updated, the new threshold and the number of the j-th UAV, and the first and second values of the j-th UAV are encrypted and sent to the j-th UAV, and the first and second values sent by the j-th UAV are received, including: The number i of the self and the number j of the j-th UAV are taken as two values of variables, respectively, and are substituted into the secret share updated after the last time the group key is updated, to obtain the first value of the j-th UAV and the first value of the self; A first single-variable polynomial is randomly generated, and the degree of the first single-variable polynomial is the new threshold; The number i of the self and the number j of the j-th UAV are taken as two values of variables, respectively, and are substituted into the first single-variable polynomial, to obtain the second value of the j-th UAV and the second value of the self; The first and second values of the j-th UAV are encrypted using the private key and the public key of the self, and are sent to the j-th UAV, and the first and second values sent by the j-th UAV are received.
5. The method of claim 4, wherein, In the current time is the first group key update, the last shared bivariate polynomial is the initial shared bivariate polynomial, denoted as F(x, y), the last updated group key of the ith UAV is the initial secret share of the ith UAV, the threshold to be updated is the initial threshold v, the threshold updated at the last group key update is the initial threshold u, the new threshold is a new threshold v', and the initial secret share of the ith UAV is a univariate polynomial F(i, y) calculated by substituting the number i into F(x, y) as the variable x, F(i, y) is denoted as f i (y), the first univariate polynomial is a polynomial of v' times with y as the variable and i as the value of the variable x, the first univariate polynomial is denoted as g i (y).
6. The method of claim 3, wherein the method further comprises: The secret share updated after the current time the group key is updated is determined according to the first and second values of the self, and the threshold updated last time the group key is updated, including: A second single-variable polynomial is constructed by Lagrange interpolation according to the first value of the self calculated by the self, and the first value received from the j-th UAV. co-summing the second numerical value of itself calculated by itself and the second numerical value received from the jth UAV to obtain a sum value, and randomly generating a third single-variable polynomial, wherein the degree of the third single-variable polynomial is the threshold value updated when the group key is updated last time, and the variable in the third single-variable polynomial is the same as that in the second single-variable polynomial, and the numerical value calculated by the third single-variable polynomial when the value of the variable is 0 is the sum value; adding the second single-variable polynomial and the third single-variable polynomial to obtain the updated secret share of the current time when the group key is updated; wherein the third single-variable polynomials of the n UAVs jointly constitute a new double-variable polynomial; and the new double-variable polynomial and the double-variable polynomial used for sharing last time jointly constitute the double-variable polynomial used for sharing this time.
7. The method of claim 6, wherein, In the current time, the last shared bivariate polynomial is the initial shared bivariate polynomial F(x, y), the last updated group key of the ith UAV is the initial secret share of the ith UAV, the last threshold value is the initial threshold value u, the new threshold value is a new threshold value v', and the initial secret share of the ith UAV is a univariate polynomial F(i, y) calculated by substituting the number i into F(x, y) as a variable x, F(i, y) is represented as f i (y), the second univariate polynomial is a univariate polynomial F(x, i) calculated by substituting the number i into F(x, y) as a variable y, F(x, i) is represented as f i (x), the third univariate polynomial is a polynomial of degree u with x as a variable and i as a value of a variable y, the third univariate polynomial is represented as g i (x), g i (x) is represented as G(x, j), the new bivariate polynomial is represented as G(x, y), the current shared bivariate polynomial is represented as F'(x, y), and F'(x, y) = F(x, y) + G(x, y), the two degrees of F'(x, y) are the initial threshold value u and the new threshold value v' respectively. 8.The method of claim 3, wherein, The method for determining the secret data of the jth UAV and sending the secret data of the jth UAV after encryption, and receiving the secret data sent by the jth UAV according to the private key of the jth UAV and the updated secret share of the jth UAV at the current time when the group key is updated, comprises the following steps: substituting 0 as the variable into the updated secret share of the jth UAV at the current time when the group key is updated to obtain a share value, and taking the private key of the jth UAV and the share value as the secret data of the jth UAV; encrypting the secret data of the jth UAV by using the private key and the public key of the jth UAV, and receiving the secret data sent by the jth UAV. 9.The method of claim 3, wherein, The secret data of each UAV contains the private key of the UAV and the share value of the UAV, and the share value of the UAV is determined according to the updated secret share of the UAV at the current time when the group key is updated; When the number of received secret data exceeds the value of the new threshold minus 1, the current group key is calculated according to the received secret data by using a hash algorithm to complete the current group key update, comprising the following steps: When the number of received secret data exceeds the value of the new threshold minus 1, a first sum value is determined according to the received share value and the share value of the jth UAV; When the number of received secret data exceeds the value of the new threshold minus 1, a second sum value is determined according to the received private key and the private key of the jth UAV; Hash calculating the product between the first sum value and the second sum value by using a hash function to obtain the current group key and complete the current group key update; wherein the hash function is generated by the ground control station.
10. The method of claim 9, wherein, When the current group key update is the first group key update, the last shared bivariate polynomial is the initial shared bivariate polynomial, denoted as F(x, y), the last updated group key of the ith UAV is the initial secret share of the ith UAV, the threshold to be updated is the initial threshold v, the threshold updated last time is the initial threshold u, the new threshold is a new threshold v', and the initial secret share of the ith UAV is a univariate polynomial F(i, y) calculated by substituting the number i into F(x, y) as a variable x, the expression of the current group key is: wherein, GK is the current group key, H(.) is the hash function, f i '(0) is the share value of the ith UAV, x i is the private key of the ith UAV, x j is the private key of the jth UAV.
Citation Information
Patent Citations
Safe communication method and system of military unmanned aerial vehicle group key-free management center
CN111278008A
Identity authentication method in self-organizing network of unmanned aerial vehicle
CN118283617A