Group Key Agreement Method for Area Perception in Unmanned Systems
Through the quad-tree division and hash function to convert the position coordinates into hierarchical coded bit strings, combined with dual server groups and secret sharing technology, the problem of excessive overhead of multi-level group division, location privacy leakage and computing communication in unmanned systems is solved, and safe and efficient group key negotiation and communication is achieved.
Patent Information
- Application Number
- CN202310680837.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-08
- Publication Date
- 2025-07-29
- Estimated Expiration
- 2043-06-08
AI Technical Summary
The existing unmanned system group key negotiation method fails to support multi-level group division, which has problems such as location privacy leakage, excessive computing and communication overhead, and insecure group keys.
The hierarchical encoding and hash function based on quad-tree division is used to convert the position coordinates into a hierarchical encoding bit string collection, and the region matching and group key negotiation are used to use dual-server group and secret sharing technology to protect location privacy through privacy interception technology, and the group key is updated at each period.
Multi-level group division is realized, location privacy is protected, computing and communication overhead is reduced, group communication is improved, and communication security and efficiency is ensured.
Smart Images

Figure CN116567622B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of network technology, and further relates to a group key negotiation method for area perception, which can be used for group communication of unmanned systems. Background Art
[0002] An unmanned system refers to an unmanned control system with certain autonomous capabilities and autonomy, which includes platforms such as unmanned aerial vehicles (UAVs), driverless cars, unmanned underwater vehicles, and unmanned surface ships. Among them, a UAV system refers to a system composed of a UAV and its related control stations, the required command and control data links, and any other components approved by the model and design regulations, and it plays an important role in military missions, environmental monitoring, aerial photography, mining exploration and other fields. Privacy intersection refers to two or more participating parties jointly calculating the intersection of the sets they each hold, and the protocol only outputs the intersection of the sets of each participating party without disclosing the set elements outside the intersection. Group key negotiation refers to all participating parties within a group respectively providing their own contribution values to jointly establish a session key, which is a key technology to ensure the security of multicast communication. The group key negotiation protocol needs to achieve forward secrecy and backward secrecy. Among them, forward secrecy requires that even if a passive attacker can obtain the group keys used in the past, it cannot obtain the group keys used currently and in the future; backward secrecy requires that even if a passive attacker can obtain the group keys used currently and in the future, it cannot obtain the group keys used in the past. The forward secrecy and backward secrecy requirements of the group key negotiation protocol require updating the group key after group members leave or join the group.
[0003] Due to the complexity of the tasks undertaken by unmanned systems, it is often necessary to divide them into multi-level regions with different scales, and the location-based group division will bring the problem of location privacy leakage. Taking the existing UAV system group key negotiation method as an example, it fails to support the UAV group division based on multi-level regions in terms of group division methods; in terms of location verification, it verifies the location of UAVs through location cryptography and cannot protect the privacy of UAV locations; in terms of group key generation, it uses machine learning to generate group keys according to the locations of UAVs, which has a large computational overhead, and some other UAV group key negotiation methods either independently generate group keys by ground stations, with weak security, or do not support the dynamic update of group keys and are not applicable to UAV systems with highly mobile group members. Therefore, the group key negotiation method for UAV systems faces problems such as multi-level group division, location privacy protection, and insecure group keys.
[0004] A patent document with the application number 201811076889.6 discloses an identity-based UAV key management and networking authentication system and method. The implementation steps are as follows: First, select a cryptographic algorithm and initialize parameters; Second, when a UAV node joins the network or updates its authentication key pair, the UAV generates an authentication key pair; Third, after the UAV node joins the network, use the authentication key pair to perform networking authentication on other UAV nodes in the UAV network; Fourth, the UAV updates its authentication key pair. The disadvantage of this method is that since it does not verify the location of the UAV and does not involve the division of multi-level groups, it cannot achieve location-based UAV group division and is not applicable to complex scenarios where UAVs need to cooperate in multiple regions with different scales.
[0005] A patent document with the application number 202111048010.9 discloses a method, system, device, and terminal for establishing a blockchain for UAVs for flight missions. It uses the blockchain to realize the task planning of the UAV swarm, group key management, and the establishment of end-to-end communication within the group by the ground control station. When a UAV joins or leaves the swarm, the ground control station stores the UAV information and the updated group key in the blockchain by calling the smart contract on the blockchain. The UAV swarm obtains the updated group key and group member information by listening to the results of the smart contract. When the members of the UAV swarm perform end-to-end communication, they determine the trust relationship with the communication party by querying the UAV information stored on the blockchain, negotiate the session key, and establish end-to-end secure communication. The disadvantage of this method is that when a UAV joins or leaves the group, the ground control station independently generates the group key. Compared with the contributory group key negotiation protocol, this method has lower security, and it does not achieve location-based multi-level group division and is not applicable to complex scenarios where UAVs need to cooperate in multiple regions with different scales.
[0006] A patent document with the application number 202210816177.3 discloses a method for UAV identity authentication and key negotiation based on location cryptography. The implementation steps are as follows: First, UAV identity registration; Second, the ground station and the UAV complete mutual identity authentication, authentication of the UAV's geographical location security, and negotiation of the symmetric key between the two parties; Third, update the challenge-response pair. The disadvantage of this method is that in the process of using location cryptography to achieve UAV location authentication, the privacy of the UAV location data cannot be protected.
[0007] The patent document with the application number 202111442295.4 discloses a method for extracting drone swarm keys and security authentication based on GPS signals. The implementation steps are as follows: First, the swarm receives GPS signal data to obtain similar sequences, and uses machine learning algorithms to extract similar data features as authentication features; Second, a fuzzy extractor is used to process the feature data obtained in the first step, so that all drones in the swarm obtain exactly the same information; Third, the swarms encrypt messages through session keys and re-extract keys according to GPS signals every once in a while to achieve key update. The disadvantage of this method is that using machine learning algorithms to extract keys from GPS signals has a large computational overhead.
[0008] Benjamin Semal et al. proposed a method for authenticating group key management of drones in their published paper "A Certificateless Group Authenticated Key Agreement Protocol for Secure Communication in Untrusted UAV Networks" (2018 IEEE / AIAA 37th Digital Avionics Systems Conference (DASC), London, UK, 2018). The implementation steps are as follows: First, system initialization, that is, the key generation center generates relevant public parameters and generates partial private keys for users according to their temporary identities, and users generate public and private keys according to the random numbers they choose and the partial private keys generated by the key generation center; Second, group key negotiation, that is, each user generates a group key through two rounds of interaction. The disadvantage of this method is that it does not consider the group key update when group members join and leave, so it cannot guarantee the forward secrecy and backward secrecy of the group key. Summary of the Invention
[0009] The object of the present invention is to propose a method for group key negotiation for area awareness in an unmanned system to solve the problems of the existing technology that do not support multi-level group division, location privacy leakage, excessive overhead, and insecure group keys.
[0010] To achieve the above object, the implementation steps of the present invention include the following:
[0011] (1) Construct an unmanned system consisting of multiple unmanned devices, a network of remote control stations, and a dual-server group. Among them, the network of remote control stations includes multiple remote control stations, and the dual-server group includes two servers. Each unmanned device is controlled by one of the remote control stations, and each remote control station controls one or more unmanned devices. A secure channel is established between each remote control station and the two servers respectively, and an open channel is formed between each remote control station and the unmanned devices it controls;
[0012] (2) Each unmanned device uses a method that combines hierarchical coding based on quadtree partitioning and a hash function to convert its own position coordinates into a set of hierarchical coding bit strings L with hierarchical region attributes. i ;
[0013] (3) Each unmanned device uses a dual-server-assisted private intersection technology based on secret sharing to calculate the matching results of the regions of pairwise unmanned devices according to the set of hierarchical coding bit strings L. i Calculate the matching results of the regions of pairwise unmanned devices:
[0014] (3a) Each unmanned device generates a hash table and a permuted inverse hash table based on the elements in the set of hierarchical coding bit strings L. i Generate secret sharing shares of the hash table and the permuted inverse hash table, and send them to the dual-server group; (3b) The dual-server group uses the secret sharing shares of the hash table and the permuted inverse hash table to calculate the output share and the verification share and return the output share and the verification share to each unmanned device through the remote control station;
[0015] (3c) Each unmanned device calculates the matching results of the regions of pairwise unmanned devices according to the output share and the verification share ;
[0016] (4) Each unmanned device calculates the member list of each hierarchical region according to the matching results;
[0017] (5) Each unmanned device generates a multi-signature s i for the member list, and sends the multi-signature s i to the remote control station. The remote control station verifies the consistency of the member list according to the multi-signature s i of the unmanned device;
[0018] If the verification passes, execute step (6);
[0019] Otherwise, the remote control station rejects the member list of this region, and the protocol for this region terminates during the current period;
[0020] (6) The remote control station and the unmanned devices in each regional member list jointly negotiate the group key corresponding to each region;
[0021] (7) In each time period, repeat steps (2) to (5) to obtain the member list of each region in the current time period, and update the group key of each region according to the member list of each region in the current time period and the member list of each region in the previous time period.
[0022] Compared with the prior art, the present invention has the following advantages:
[0023] 1) Since the present invention uses hierarchical coding based on quadtree partitioning, converts the position coordinates into hierarchical coding, and uses the method of concatenating hash functions to convert each hierarchical coding into a set of hierarchical coding bit strings with multi-level attributes, it overcomes the problem in the prior art that does not support multi-level group partitioning, enabling the present invention to divide unmanned aerial vehicles into multi-level groups with different scales and meet the requirements of unmanned devices for collaborative work in regions with different scales;
[0024] 2) Since the present invention uses privacy intersection technology to calculate the region matching result, that is, the unmanned device converts the set of hierarchical coding bit strings into a hash table and a permuted inverse hash table and sends them to the dual-server group; the dual-server group calculates the output share and verification share and returns the result to the unmanned device, and the unmanned device calculates the region matching result through the output share and verification share, so that in the present invention, the unmanned device can only calculate the lowest-level common region where its position coordinates are located, without leaking the region smaller than the lowest-level common region and the specific position coordinates to other unmanned devices, overcoming the defect in the prior art that location privacy is leaked to other unmanned devices due to using location cryptography to verify the location, and improving the privacy of location data;
[0025] 3) Since the present invention uses secret sharing technology for region matching, the position data of the unmanned device will not be leaked to the dual-server group, overcoming the defect in the prior art that location privacy is leaked to other untrusted roles in the system and being able to protect the privacy of location data;
[0026] 4) Since the present invention uses secret sharing technology to calculate the region matching result, the process of generating secret sharing shares by the unmanned device in the present invention has extremely small computational overhead, overcoming the problem in the prior art that the computational overhead is too large due to using machine learning algorithms and improving the operating efficiency of the system;
[0027] 5) Since the present invention uses a dual-server group for area matching, it enables the present invention to avoid direct interaction between unmanned devices, thereby avoiding excessive communication overhead of unmanned devices, overcoming the problem of excessive communication overhead caused by the use of machine learning algorithms in the prior art, and improving the operating efficiency of the system;
[0028] 6) Since the present invention uses a group key negotiation technology, the unmanned devices cooperate to generate a group key, overcoming the problem of insecure group keys caused by the independent designation of group keys by remote control stations in the prior art, and improving the security of group communication in the unmanned system;
[0029] 7) Since the present invention updates the group key based on changes in the member list in each period, it can achieve forward secrecy and backward secrecy of the group key, overcoming the problem of insecure group keys caused by the lack of support for dynamic update of group keys in the prior art, and ensuring the security of group communication in the case of frequent changes in group members. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 is the overall implementation flowchart of the present invention;
[0031] Figure 2 is the schematic diagram of the unmanned system structure constructed in the present invention;
[0032] Figure 3 is the implementation sub-flowchart of group key negotiation in the present invention;
[0033] Figure 4 is the implementation sub-flowchart of group key update in the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0034] The embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
[0035] Refer to Figure 1 , the implementation steps of the present invention are as follows:
[0036] Step 1, construct an unmanned system.
[0037] Construct an unmanned system including multiple unmanned devices, a remote control station network and a dual-server group. Among them, the remote control station network includes multiple remote control stations, the dual-server group includes two servers, each unmanned device is controlled by one of the remote control stations, each remote control station controls one or more unmanned devices, a secure channel is established between each remote control station and the two servers respectively, and an open channel is formed between each remote control station and the unmanned devices it controls.
[0038] Refer to Figure 2, the unmanned system constructed in this example includes six unmanned devices, three remote control stations, and two servers. Among them, each remote control station controls two unmanned devices, and a secure channel is established between each remote control station and each server. An open channel is formed between each remote control station and each unmanned device it controls. There are a total of 6 secure channels and 6 open channels.
[0039] Step 2, each unmanned device converts its own position coordinates into a set of hierarchical encoded bit strings.
[0040] 2.1) Each unmanned device, based on the quadtree partitioning technique, partitions the area {X min , X max , Y min , Y max} for N iterations of partitioning, and denotes the p-th sub-region as A p . Each unmanned device generates its j-th layer of encoding based on the positional relationship between its position coordinates (x i , y i ) and the sub-region obtained from the j-th partitioning.
[0041]
[0042] Among them, X lb is the lower limit of the smallest interval where x i is located after the (j - 1)-th partitioning, X ub is the upper limit of the smallest interval where x i is located after the (j - 1)-th partitioning, X c is the midpoint of the smallest interval where x i is located after the (j - 1)-th partitioning; Y lb is the lower limit of the smallest interval where y i is located after the (j - 1)-th partitioning, Y ub is the upper limit of the smallest interval where y i is located after the (j - 1)-th partitioning, Y c is the midpoint of the smallest interval where y i is located after the (j - 1)-th partitioning; In this embodiment, it is set but not limited to the area {X min , X max , Y min , Y max} = {-180, 180, -90, 90}, the number of area partitioning times N = 3, and each unmanned device generates three encodings according to its own position coordinates respectively. For example, if the position coordinates of the first unmanned device are (-80, -40), then its first-layer encoding is the second-layer encoding is and the third-layer encoding is
[0043] 2.2) Connect the codes generated after each division of the area in sequence to obtain the hierarchical code at the position (x i , y i ).
[0044] 2.3) Each unmanned device converts the hierarchical code hc i obtained in step 2.2) into a set of hierarchical code bit strings L i :
[0045]
[0046] where represents the hierarchical code bit string of the first-layer area where the position (x i , y i ) is located, h(·) represents a collision-resistant hash function jointly selected by the unmanned devices, and IV is the initial vector jointly owned by the unmanned devices. is the code of the first layer of the i-th unmanned device; represents the hierarchical code bit string of the j-th layer area where the position coordinates (x i , y i ) are located, is the code of the j-th layer of the i-th unmanned device. In this embodiment, the collision-resistant hash function h(·) used but not limited to is the SHA-512 function, and it uses a pseudorandom number generator to generate the initial vector IV;
[0047] 2.4) Let represent the hierarchical code bit string of the p-th layer area in the set of hierarchical code bit strings L i , and let represent the hierarchical code bit string of the q-th layer area in the set of hierarchical code bit strings L i , p ∈ [1, N], q ∈ [1, N], p ≠ q;
[0048] 2.5) Determine whether the elements in the set of hierarchical code bit strings L i satisfy mutual exclusivity:
[0049] If for all p and q, there is then the elements in the set of hierarchical code bit strings L i satisfy mutual exclusivity, and step 3 is executed;
[0050] Otherwise, the elements in the set of hierarchical code bit strings L i do not satisfy mutual exclusivity, and each unmanned device in the system replaces the initial vector IV and returns to step 2.3).
[0051] In this embodiment, the unmanned device updates the initial vector IV through a pseudo-random number generator.
[0052] Step 3, each unmanned device generates a hash table and a permuted inverse hash table in the two-server assisted private set intersection technology based on secret sharing.
[0053] 3.1) Each unmanned device calculates the value at each position in its hash table χ according to the elements in the hierarchical coding bit string set L i to generate its hash table χ i where: represents the value at the k-th position in the hash table χ i of the i-th unmanned device, represents the element corresponding to the j-th layer in the hierarchical coding bit string set L i , H(·) is a hash function commonly selected by the unmanned devices, represents the element corresponding to the j-th layer in the hierarchical coding bit string set L i , represents the hash function value of the element corresponding to the j-th layer in the hierarchical coding bit string set L i , the length of the hash table χ i is b = |χ i |. In the embodiment of the present invention, the output length of the hash function H(·) is 100 bits, and the length b of the hash table χ i is 2 100 bits;
[0054] 3.2) Each unmanned device performs bit reversal on the values of its hash table to obtain the inverse hash table where the value at the k-th position in the inverse hash table of the i-th unmanned device is: The length of the inverse hash table is In the embodiment of the present invention, the length b of the inverse hash table is 2 100 bits;
[0055] 3.3) All unmanned devices select a common permutation function that can only be obtained by all unmanned devices:
[0056] PF(·):{0,1} b →{0,1} b ;
[0057] 3.4) Each unmanned device performs a permutation operation on its inverse hash table using the permutation function PF(·) to obtain the permuted inverse hash table That is, the result after the permutation operation Cover the values in the inverted hash table obtained in step 3.2). among them.
[0058] Step 4, each unmanned device generates secret sharing shares of the hash table and the permuted inverted hash table.
[0059] This step generates secret sharing shares based on the hash table and the permuted inverted hash table in the two-server-assisted private set intersection technology based on secret sharing, and is implemented as follows:
[0060] 4.1) For each position value in its own hash table by each unmanned device randomly select an integer value as the first additive secret sharing share, and calculate the second additive secret sharing share according to each position value in the hash table where
[0061]
[0062] represents subtraction modulo the integer δ, where δ > 2;
[0063] 4.2) For each position value in its own permuted inverted hash table by each unmanned device randomly select a value as the first additive secret sharing share, and calculate the second additive secret sharing share according to each position value in the permuted inverted hash table where
[0064]
[0065] Step 5, each unmanned device sends the secret sharing shares of the hash table and the permuted inverted hash table to the two-server group.
[0066] This step sends the shares of the hash table and the permuted inverted hash table to the two-server group in the two-server-assisted private set intersection technology based on secret sharing, and is implemented as follows:
[0067] 5.1) Each unmanned device generates a set of signature public and private key pairs (pk i , sk i ), saves its signature private key pk i , and sends its signature verification public key pk i to the remote control station. The existing signature protocols that can be used by the unmanned device include RSA, DSA, and Schnorr public key cryptography protocols. In this embodiment, the RSA signature protocol is used but not limited to it. The signature public and private key pairs (pk i , sk i ) is generated by using the key generation algorithm in RSA;
[0068] 5.2) Each unmanned device uses its own signature private key sk i , and signs the results of steps 4.1) and 4.2) to obtain sig i :
[0069]
[0070] 5.3) Each unmanned device sends the results of steps 4.1), 4.2) and the signature in step 5.2) to the remote control station;
[0071] 5.4) The remote control station uses the signature verification public key pk of each unmanned device respectively for the received messages i to verify the signature sig i :
[0072] If Verify(sig i , pk i ) = 1, then receive and execute step 6;
[0073] Otherwise, the remote control station rejects the reception and the i-th unmanned device returns to step 5.3);
[0074] 5.5) The remote control station sends to the first server through the secure channel between it and the first server, and sends to the second server through the secure channel between it and the second server.
[0075] Step 6, the dual-server group calculates the output share and verification share in the dual-server assisted private intersection technology based on secret sharing according to the hash table and the secret sharing shares after permutation and inverse hash table.
[0076] 6.1) The two servers jointly generate an additive secret sharing share of the number 2, where the first server randomly generates its share A(2) 1 , and sends it to the second server. The second server calculates its own share A(2) 2 :
[0077]
[0078] where, represents subtraction modulo the integer δ, δ > 2;
[0079] 6.2) The first server in the dual-server group calculates its own output share according to the result obtained in step 6.1) and verification shares
[0080]
[0081]
[0082] wherein is the secret sharing share of the k-th value in the i-th hash table of unmanned devices held by the first server, is the secret sharing share of the k-th value in the j-th hash table of unmanned devices held by the first server, is the secret sharing share of the k-th value in the permuted inverse hash table of the i-th unmanned device held by the first server, is the secret sharing share of the k-th value in the permuted inverse hash table of the j-th unmanned device held by the first server, represents addition modulo the integer δ, m is the number of unmanned devices, g1 is a generator of the cyclic group One generator of, η' is the modulus, which satisfies η' = α·η, α is a prime number commonly selected by all unmanned devices, η is a prime number modulus commonly selected by all unmanned devices and only available to all unmanned devices. In this embodiment, the number of unmanned devices m = 6, the generator g1 = 3, the modulus δ = 5, η = 11, α = 13, η' = 143;
[0083] 6.3) The second server in the dual-server group calculates its own output share according to the result obtained in step 6.1) and verification shares
[0084]
[0085]
[0086] wherein is the secret sharing share of the k-th value in the i-th hash table of unmanned devices held by the second server, is the secret sharing share of the k-th value in the j-th hash table of unmanned devices held by the second server, is the secret sharing share of the k-th value in the permuted inverse hash table of the i-th unmanned device held by the second server, is the secret sharing share of the k-th value in the permuted inverse hash table of the j-th unmanned device held by the second server.
[0087] Step 7, the dual-server group returns the output shares and verification shares in the privacy intersection technology based on dual-server assistance to the unmanned devices.
[0088] 7.1) The first server sends its output share and verification share to the remote control station through the secure channel between it and the remote control station;
[0089] 7.2) The second server sends its output share and verification share to the remote control station through the secure channel between it and the remote control station;
[0090] 7.3) The remote control station generates a set of signature public and private key pairs (pk G , sk G ), saves the signature private key sk G , and sends the signature verification public key pk G to each unmanned device. The existing signature algorithms available to the remote control station are RSA, DSA, and Schnorr public key cryptography algorithms. In the embodiments of the present invention, but not limited to, the RSA signature algorithm is used, and its signature public and private key pairs (pk G , sk G ) are generated using the key generation algorithm in RSA;
[0091] 7.4) The remote control station uses its own signature private key sk G to generate a signature for the received messages in steps 7.1) and 7.2)
[0092]
[0093] 7.5) The remote control station sends the above and signature to the i-th unmanned device and the j-th unmanned device;
[0094] 7.6) The i-th unmanned device and the j-th unmanned device each use the signature verification public key pk G of the remote control station to verify the signature :
[0095] If both the i-th unmanned device and the j-th unmanned device pass the verification, that is, both can calculate then receive the corresponding shares and execute step 8;
[0096] Otherwise, the i-th unmanned device and the j-th unmanned device reject the reception of the corresponding and return to step 7.5).
[0097] Step 8, each unmanned device calculates the area matching result according to the output share and the verification share.
[0098] The area matching result calculated in this step is the intersection calculated by the unmanned device in the dual-server-assisted private intersection technology based on secret sharing, and the implementation is as follows:
[0099] 8.1) Each unmanned device performs an inverse permutation on the received verification share and i.e.,
[0100]
[0101]
[0102] where PF -1 is the inverse function of the permutation function PF(·) in step (3c), that is, for any vector there is is the result of the inverse permutation of,[[]]END]] is the result of the inverse permutation of;
[0103] 8.2) Each unmanned device calculates the reconstruction result r1 of the output share and the reconstruction result r2 of the verification share after inverse permutation according to the results obtained in step 8.1):
[0104]
[0105]
[0106] 8.3) Each unmanned device calculates the decision value of the intersection element according to the results of step 8.2):
[0107] R = r1 × r2 mod η;
[0108] 8.4) Each unmanned device initializes the intersection I ij = L i ∩ L j as an empty set, that is where I ij represents the intersection of the hierarchical coding bit string set L i of the i-th unmanned device and the hierarchical coding bit string set L j of the j-th unmanned device;
[0109] 8.5) Each unmanned device calculates the intersection I ij ,
[0110] If r1 = 1 and R = 1, then the hierarchical coding bit string set L i corresponding to the value at position k in the hash table χ j of the i-th unmanned device and the hash table χ i of the j-th unmanned device and Lj The elements in ij are added to the intersection I, and this intersection is the area matching result between the i-th unmanned device and the j-th unmanned device:
[0111] Otherwise, for the hash table χ of the i-th unmanned device i and the hash table χ of the j-th unmanned device j for the set of hierarchical coding bit strings L corresponding to the values at position k i and L j no operation is performed on the elements, and step 6 is returned.
[0112] Step 9, each unmanned device calculates the membership list of each hierarchical area according to the matching result I ij .
[0113] 9.1) Each unmanned device creates a membership list ML i for each hierarchical area where its position coordinates (x i , y p ) are located, and initializes it as an empty list, where ML p represents the membership list of the p-th sub-area A p ;
[0114] 9.2) Each unmanned device traverses the hierarchical coding bit strings in the matching result with each other unmanned device, determines the corresponding area, first adds the number j of the unmanned device to the membership list ML p of its corresponding sub-area A p , and then adds the number i of the i-th unmanned device itself to the membership list ML p of its corresponding sub-area A p , that is:
[0115] ML p ←ML p +j
[0116] ML p ←ML p +i.
[0117] Step 10, each unmanned device generates a multi-signature for the membership list.
[0118] Each unmanned device uses the multi-signature algorithm to generate a multi-signature s p for the number A of the p-th sub-area and the membership list ML p of the p-th sub-area, which is expressed as follows: i s i
[0119] i =Sign((A p ,ML p ),ski )
[0120] Among them, sk i represents the multi-signature private key of the i-th unmanned device.
[0121] The algorithm for generating the multi-signature s i includes the Musig, SSMS, and MS-BN algorithms. In this embodiment, the Musig algorithm is used but not limited to generating the multi-signature s i .
[0122] Step 11: The remote control station verifies the consistency of the member list according to the multi-signature s i of the unmanned device.
[0123] 11.1) The remote control station aggregates the signatures s i respectively to obtain the aggregated result as of the signatures. In this embodiment, the aggregated result as of the signatures = ∑s i ;
[0124] 11.2) The remote control station verifies the multi-signature according to the result obtained in step 11.1):
[0125] If Verify(as) = 1, the verification passes, and step 12 is executed;
[0126] Otherwise, the multi-signature cannot pass the verification, and the remote control station rejects the initiation of the group key negotiation for area A p , and the protocol of all unmanned devices in area A p terminates.
[0127] Step 12: The remote control station and the unmanned devices in each area member list jointly negotiate the group key corresponding to each area.
[0128] Referring to Figure 3 , the implementation of this step is as follows:
[0129] 12.1) The remote control station selects a random number r Gi for each unmanned device in the area member list as the private key for the session key negotiation of the remote control station. Through the private key r Gi for the session key negotiation of the remote control station, calculate the public key for the session key negotiation of the remote control station. Use the signature private key sk G of the remote control station to generate the signature for the public key for the session key negotiation of the remote control station and the signature ssk Gi and send the public key A generator, in this embodiment, the generator g2 = 5, random number r Gi is 512 bits in length;
[0130] 12.2) Area A p Each unmanned device in selects a random number r i as the private key for session key negotiation of the unmanned device. Through the private key r i of the session key negotiation of the unmanned device, calculate the public key for session key negotiation of the unmanned device Use the signature private key sk i of the unmanned device to generate the public key for session key negotiation of the unmanned device signature and send the public key for session key negotiation and the signature ssk i to the remote control station;
[0131] 12.3) The remote control station uses the signature verification public key pk p of each unmanned device in Area A i to verify the signature ssk of the public key for session key negotiation of the unmanned device i as follows:
[0132] If the signature verification passes, that is, Verify(ssk i , pk i ) = 1, then the remote control station calculates the session key according to the results obtained in steps 12.1) and 12.2)
[0133] where z is a large prime number. In this embodiment, the length of the large prime number z is set to 2048 bits.
[0134] Otherwise, return to step 12.1);
[0135] 12.4) Each unmanned device in Area A p uses the signature verification public key pk G of the remote control station to verify the signature ssk of the public key for session key negotiation of the remote control station Gi as follows:
[0136] If Verify(ssk Gi , pk G ) = 1, then each unmanned device in Area A p calculates the session key according to the results obtained in steps 12.1) and 12.2)
[0137] Otherwise, return to step 12.1);
[0138] 12.5) The remote control station creates an empty binary tree as the key tree T of the group of unmanned devices in Area A p and creates the leaf nodes in the key tree T p , and creates the key tree T p where each leaf node corresponds to an unmanned device in Area A p , and then creates the other nodes in the key tree T p according to the leaf nodes;
[0139] 12.6) The remote control station uses the session key calculated in step 12.3 as the node private key of the leaf node corresponding to the i-th unmanned device in the key tree T p , and uses this node private key to obtain the node public key of each leaf node
[0140] 12.7) Let the node private keys of the two child nodes of a non-leaf node in the key tree T p be and respectively. The remote control station obtains the node private key and of this non-leaf node through the node private keys of these two child nodes and obtains the node public key of this non-leaf node In this way, the node public keys and node private keys of each non-leaf node in the key tree T p are obtained from bottom to top, and the node private key of the root node is used as the group key GK of the unmanned devices in Area A p ; p ;
[0141] 12.8) The remote control station uses the session key calculated in step 12.3 to encrypt the position index l of the leaf node corresponding to the unmanned device in Area A p in the key tree T p and the set of node public keys copath on the common path of this leaf node set i , and generates the ciphertext of the key tree parameters: i where the position index l is the number of the leaf node corresponding to the unmanned device in the key tree T i , and the set of common paths is the path composed of the sibling nodes of all nodes on the path from a node to the root node; p ;
[0142] 12.9) Each unmanned device in Area A p uses the session key calculated in step 12.4 to decrypt the ciphertext pc of the key tree parameters i, obtain the position index l of the leaf node in the key tree T of the unmanned device p in the middle i and the set of node public keys copath on the common path of the leaf node set i ;
[0143] 12.10) Area A p Each unmanned device within obtains its session key and the result obtained in step 12.9), and calculates the node private keys on the path from the leaf node to the root node of the key tree T from bottom to top p in the middle. The node private key of the root node is the group key GK of area A p p .
[0144] Step 13, at each time period, the remote control station and the unmanned device obtain the member list of each area.
[0145] At each time period, repeat steps 2 to 11. The remote control station and the unmanned device obtain the member list of each area in the current time period. In the embodiment of the present invention, the length of each time period is set to 60 minutes.
[0146] Step 14, at each time period, the remote control station and the unmanned device jointly update the group key.
[0147] Referring to Figure 4 , the implementation of this step is as follows:
[0148] 14.1) The remote control station compares the member list of each area in the current time period with the member list of the previous time period, and respectively finds out the unmanned devices newly joined to area A in the current time period p , the unmanned devices leaving area A in the current time period p and the unmanned devices that have not left area A in the current time period p ;
[0149] 14.2) The remote control station and each unmanned device newly joined to area A in the current time period jointly calculate the session key according to the method of steps 12.1) to 12.4) p where j represents the number of the unmanned device newly joined to area A p ;
[0150] 14.3) The remote control station creates the leaf nodes corresponding to each unmanned device newly joined to area A in the key tree T of area A in the previous time period p , and obtains the newly joined unmanned devices in the key tree T through the session key calculated in step 14.2) p in the middle p of each newly joined area A pNode public key of the middle leaf node
[0151] 14.4) The remote control station deletes the session key of each unmanned device in the member list that left area A during the current period p and the path from the middle leaf node to the root node of the key tree T of this unmanned device, where k represents the number of the unmanned device that left area A ; p The path from the middle leaf node to the root node of the key tree T of this unmanned device, where k represents the number of the unmanned device that left area A p ;
[0152] 14.5) The remote control station calculates the node private key and node public key of each node in the key tree T of the current period according to the result of step 14.4), where the node private key of the root node is the group key GK' of the unmanned devices within area A during the current period p ; p The remote control station calculates the node private key and node public key of each node in the key tree T of the current period according to the result of step 14.4), where the node private key of the root node is the group key GK' of the unmanned devices within area A during the current period p ;
[0153] 14.6) The remote control station creates a set U of updated node public keys corresponding to each area key tree T p and initializes it to an empty set: p ;
[0154] 14.7) Compare the node public key of each node calculated in step 14.5) with the node public key of each node in the key tree T of area A during the previous period p to find the nodes whose node public keys have changed, and add the position index l p of these nodes and the node public key npk i of the current period to the set U of updated node public keys i : p ;
[0155] U p ←U p +<l i ,npk i >;
[0156] 14.8) The remote control station encrypts the position index l of the middle leaf node in the key tree T of the current period of the unmanned devices newly added to area A during the current period p and the set copath p of node public keys on the common path with this set of leaf nodes using the session key calculated in step 14.2 j to obtain the ciphertext of the key tree parameters j and sends this ciphertext c of the key tree parameters to the j-th unmanned device newly added to the group; j ;
[0157] 14.9) The remote control station generates Add instructions and Remove instructions, and uses the session key of the unmanned device that has not left area A during the current period p to encrypt the Add instruction, the position index l of the leaf node of the j-th unmanned device newly added to area A p in the key tree, the Remove instruction, the index l of the leaf node of the k-th unmanned device leaving area A j in the key tree, p and the set U of node public key updates k to obtain the ciphertext uc of the key tree parameter update p : i And send the ciphertext uc of the key tree parameter update i to the i-th unmanned device that has not left area A during the current period p ;
[0158] 14.10) Each unmanned device newly added to area A p decrypts the key tree parameter ciphertext c in step 14.8) j to obtain its position index l of the leaf node in the key tree T p during the current period j and the set copath of node public keys on the common path with this leaf node set j ;
[0159] 14.11) Each unmanned device newly added to area A p calculates the node public keys and node private keys on the path from the leaf node to the root node of the key tree T p from bottom to top according to the result of step 14.10). The node private key of the root node is the group key GK' p of area A during the current period P ;
[0160] 14.12) The unmanned device that has not left area A during the current period p decrypts the ciphertext uc of the key tree parameter update in step 14.9) i to obtain the Add instruction, the position index l of the leaf node of the j-th unmanned device newly added to area A p in the key tree, the Remove instruction, the index l of the leaf node of the k-th unmanned device leaving area A j in the key tree, p and the set U of node public key updates k ; p
[0161] 14.13) The unmanned device that has not left area A during the current period pThe unmanned device calculates the key tree T from bottom to top according to the result of step 14.12) p The node private keys on the path from the leaf node to the root node, and the node private key of the root node is the current time period area A p The new group key GK' P .
[0162] The above description is only a specific example of the present invention and does not constitute any limitation to the present invention. It can be used in all unmanned systems such as unmanned aerial vehicles, driverless cars, unmanned underwater vehicles, and unmanned surface vessels. Obviously, for professionals in this field, after understanding the content and principle of the present invention, various formal and detailed corrections and changes may be made without departing from the principle and structure of the present invention. However, these corrections and changes based on the idea of the present invention are within the scope of protection of the claims of the present invention.
Claims
1. A region-aware group key negotiation method in an unmanned system, characterized in that: It includes the following steps: (1) Construct an unmanned system consisting of multiple unmanned devices, a remote control station network, and a dual-server group. Among them, the remote control station network includes multiple remote control stations, the dual-server group includes two servers. Each unmanned device is controlled by one of the remote control stations, and each remote control station controls one or more unmanned devices. A secure channel is established between each remote control station and the two servers respectively, and an open channel is formed between each remote control station and the unmanned devices it controls; (2) Each unmanned device uses a method that concatenates the hierarchical encoding based on quadtree partitioning and a hash function to convert its own position coordinates into a set of hierarchical encoding bit strings L with hierarchical region attributes i ; (3) Each unmanned device uses a dual-server assisted privacy intersection technique based on secret sharing to generate the hierarchical encoding bit string set L i Calculate the matching results of each pair of unmanned device areas: (3a) Each unmanned device generates a hash table and a permuted reverse hash table according to the elements in the hierarchical encoding bit string set L i generates secret sharing shares of the hash table and the permuted reverse hash table, and sends them to the dual-server group; (3b) The dual-server group calculates the output share using the secret sharing shares of the hash table and the permuted inverse hash table and the verification share and returns the output share and the verification share to each unmanned device via the remote control station; (3c) Each unmanned device calculates the matching result of the pairwise unmanned device areas according to the output share and the verification share ; (4) Each unmanned device calculates the member list of each hierarchical area according to the matching result; (5) Each unmanned device generates a multi-signature s for the member list i , and sends the multi-signature s i to the remote control station. The remote control station verifies the consistency of the member list based on the multi-signature s of the unmanned device i ; If the verification passes, execute step (6); Otherwise, the remote control station refuses to receive the member list of this area, and the protocol of this area terminates during the current period; (6) The remote control station and the unmanned devices in each area member list jointly negotiate the group key corresponding to each area; (7) In each period, repeat steps (2) to (5) to obtain the member list of each area in the current period, and update the group key of each area according to the member list of each area in the current period and the member list of each area in the previous period.
2. The method according to claim 1, characterized in that In step (2), each unmanned device uses a method of concatenating hierarchical coding based on quadtree partitioning and a hash function to convert its own position coordinates into a set of hierarchical coding bit strings L with hierarchical region attributes i , which is implemented as follows: (2a) Each unmanned device divides the area {X min ,X max ,Y min ,Y max} through N iterations of division, and denotes the p-th sub-region as A p . Each unmanned device generates its code at the j-th layer based on the positional relationship between its position coordinates (x i ,y i ) and the sub-region obtained from the j-th division Among them, X lb is the lower limit of the smallest interval where x i is located after the (j - 1)-th division, X ub is the upper limit of the smallest interval where x i is located after the (j - 1)-th division, X c is the midpoint of the interval of the smallest interval where x i is located after the (j - 1)-th division; Y lb is the lower limit of the smallest interval where y i is located after the (j - 1)-th division, Y ub is the upper limit of the smallest interval where y i is located after the (j - 1)-th division, Y c is the midpoint of the interval of the smallest interval where y i is located after the (j - 1)-th division; (2b) Connect the codes generated after each division of the region in sequence to obtain the hierarchical code at the position (x i , y i ) (2c) Each unmanned device converts the hierarchical code hc generated in step (2b) i into a set of hierarchical code bit strings L i : in, Indicates position (x i ,y i ), h(·) represents a collision-resistant hash function selected by the unmanned devices, IV is the initialization vector shared by the unmanned devices, is the first layer code of the i-th unmanned device; Indicates position (x i ,y i ) where the hierarchical coding bit string of the j-th layer region is located, is the code of the jth layer of the i-th unmanned device; (2d) Let represent the hierarchical coding bit string set L i of the p-th layer region in Let i represent the hierarchical coding bit string of the q-th layer region in the hierarchical coding bit string set L, where p ∈ [1, N], q ∈ [1, N], and p ≠ q; (2e) Determine the hierarchical coding bit string set L i Do the elements in satisfy mutual difference? If for all p and q, then the elements in the set L of hierarchical encoded bit strings i satisfy the property of mutual exclusivity, and step (3) is executed; Otherwise, the set of hierarchical coded bit strings L i The elements in do not satisfy the mutual difference, each unmanned device in the system replaces the initial vector IV and returns to step (2c).
3. The method according to claim 1, wherein In step (3a), each unmanned device is based on the hierarchical coding bit string set L i The elements in the hash table and the permuted inverse hash table are generated as follows: (3a1) Each unmanned device calculates the value at each position in its hash table χ according to the elements in the set L of hierarchical coding bit strings i so as to generate its hash table χ i where: represents the value at the k-th position in the hash table χ i of the i-th unmanned device, represents the element corresponding to the j-th layer in the set L of hierarchical coding bit strings, H(·) is a hash function commonly selected by unmanned devices, i represents the element corresponding to the j-th layer in the set L of hierarchical coding bit strings and i is the hash function value of the element corresponding to the j-th layer in the set L of hierarchical coding bit strings. The length of the hash table χ is b = |χ i |; i i (3a2) Each unmanned device processes the values in its hash table to perform bit reversal, obtaining a reversed hash table where the value at the k-th position in the reversed hash table of the i-th unmanned device is: The reversed hash table has a length of (3a3) All unmanned devices select a common permutation function that can only be obtained by all unmanned devices: PF(·): {0, 1} b → {0, 1} b ; (3a4) Each unmanned device uses the permutation function PF(·) to reverse its hash table Perform a permutation operation to obtain a permuted inverted hash table That is, the result after the permutation operation Overwrite the inverted hash table obtained in step (3a2) The value in .
4. The method according to claim 1, wherein In step (3a), generate the secret sharing shares of the hash table and the permuted inverse hash table, and send them to the dual-server group, and the implementation is as follows: (3a5)Each unmanned device randomly selects an integer value for each position value in its own hash table as the first additive secret sharing share, and calculates the second additive secret sharing share according to each position value in the hash table Among them, represents subtraction modulo an integer δ, where δ > 2; (3a6) Each unmanned device has a permuted reverse hash table for each position value Randomly select a value As the first addition secret share, and according to the permuted reverse hash table value of each position Calculate the second additive secret share (3a7) Each unmanned device generates a set of public-private key pairs (pk i , sk i ) for signature, saves its signature private key pk i , and sends its signature verification public key pk i to the remote control station; (3a8) Each unmanned device uses its own signature private key sk i to generate a signature sig for the results of steps (3a5) and (3a6) i : (3a9) Each unmanned device sends the results of steps (3a5)(3a6) and the signature of step (3a8) to the remote control station; (3a10) The remote control station uses the signature verification public key pk of each unmanned device to verify the received message i Signature sig i To verify: If Verify(sig i ,pk i )=1, then receive Execute step (3b7); Otherwise, the remote control station refuses to receive The i-th unmanned device returns to step (3a9); (3a11) The remote control station sends to the first server via the secure channel between it and the first server, and sends to the second server via the secure channel between it and the second server.
5. The method according to claim 1, characterized in that In the step (3b), the dual server group calculates the output share using the secret sharing shares of the hash table and the permuted inverse hash table and the verification share The implementation is as follows: (3b1) The two servers jointly generate a secret share of the number 2, where the first server randomly generates its share A(2) 1 , and sends it to the second server, which calculates its own share A(2) 2 : where, represents the subtraction modulo the integer δ, and δ > 2; The first server in the dual-server group calculates its output share based on the result obtained in step (3b1). and verification share in, is the secret share of the kth value in the hash table of the i-th unmanned device held by the first server, is the secret share of the kth value in the hash table of the jth unmanned device held by the first server, is the secret share of the kth value in the permuted reverse hash table of the i-th unmanned device held by the first server, is the secret share of the kth value in the permuted inverse hash table of the jth unmanned device held by the first server, represents the addition of the modulo integer δ, m is the number of unmanned devices, and g1 is the cyclic group A generator of , η' is a modulus that satisfies η' = α·η, α is a prime number selected by all unmanned devices, and η is a prime modulus selected by all unmanned devices and available only to all unmanned devices; (3b3) The second server in the two-server group calculates its own output share based on the result obtained in step (3b1) and verification shares Among them, is the secret sharing share of the k-th value in the i-th unmanned device hash table held by the second server, is the secret sharing share of the k-th value in the j-th unmanned device hash table held by the second server, is the secret sharing share of the k-th value in the permuted inverse hash table of the i-th unmanned device held by the second server, is the secret sharing share of the k-th value in the permuted inverse hash table of the j-th unmanned device held by the second server.
6. The method according to claim 1, characterized in that, In the said step (3b), the output share and the verification share are returned to each unmanned device through the remote control station, achieving the following: (3b4) The first server will output its share and verification shares Sending to the remote control station via a secure channel between the remote control station and the remote control station; (3b5) The second server sends its output share and verification share to the remote control station via the secure channel between it and the remote control station; (3b6) The remote control station generates a public-private key pair (pk G ,sk G ) and save the signature private key sk G , the signature verification public key pk G Sent to each unmanned device; (3b7) The remote control station uses its own signature private key sk G Generate the signature of the message received in steps (3b4) and (3b5): (3b8) The remote control station will receive the above and signature Send to the i-th unmanned device and the j-th unmanned device; (3b9) The i-th unmanned device and the j-th unmanned device each use the signature verification public key pk of the remote control station G to verify the signature as follows: If both the i-th unmanned device and the j-th unmanned device pass the verification, that is, both can calculate then receive the corresponding share Execute step (3c); Otherwise, the i-th unmanned device and the j-th unmanned device refuse to receive the corresponding Return to step (3b8).
7. The method according to claim 1, wherein In step (3c), each unmanned device calculates the matching result of the pairwise unmanned device areas according to the output share and the verification share as follows: (3c1) Each unmanned device performs an inverse permutation on the received verification shares and i.e., Among them, PF -1 It is the inverse function of the permutation function PF(·), that is, for any vector have yes The inverse permutation result of yes The inverse permutation result of ; (3c2)Each unmanned device calculates the reconstruction result r1 of the output share and the reconstruction result r2 of the verified share after inverse permutation respectively according to the output share and the verified share : (3c3) Each unmanned device calculates the decision value of the intersection element according to the result of step (3c2); R = r1 × r2 mod η (3c4) Each unmanned device initializes the intersection I ij =L i L j is an empty set, that is Among them I ij Represents the hierarchical coding bit string set L of the i-th unmanned equipment i and the jth unmanned equipment L j The intersection of (3c5) Each unmanned device calculates the intersection I based on the results obtained in step (3c2) and step (3c3) ij , If r1=1 and R=1, then the hash table χ of the i-th unmanned device i and the hash table χ of the jth unmanned device j The set of hierarchical coding bit strings L corresponding to the value at position k in i and L j Add the elements in the intersection I ij In , the intersection is the regional matching result of the i-th unmanned device and the j-th unmanned device; Otherwise, the hash table χ of the i-th unmanned device i and the hash table χ of the jth unmanned device j The set of hierarchical coding bit strings L corresponding to the value at position k in i and L j The elements in are not operated on and the process returns to step (3b).
8. The method according to claim 1, characterized in that: In step (4), calculating the member list of each hierarchical area according to the matching result is implemented as follows: (4a) Each unmanned device has its own position coordinates (x i ,y i ) establishes a member list ML for each level area p , and initialize it to an empty list, where ML p represents the pth sub-region A p List of members; (4b) Each unmanned device traverses the hierarchical encoding bit string of each other unmanned device in the matching result, determines the area it corresponds to, and first adds the number j of the unmanned device to its corresponding sub-area A p Member list of ML p Then add the number i of the i-th unmanned device to its corresponding sub-area A p Member List ML p ,Right now: ML p ←ML p +j ML p ←ML p +i。 9. The method according to claim 1, characterized in that, In step (5), each unmanned device generates a multi-signature s for the member list i , which is expressed as follows: s i = Sign((A p , ML p ), sk i ) Among them, A p represents the p-th sub-region, ML p represents the member list of the p-th sub-region, sk i Represents the multi-signature private key of the i-th unmanned device.
10. The method according to claim 1, characterized in that, In step (5), the remote control station verifies the consistency of the member list according to the multi-signature s of the unmanned device i as follows: (5a) The remote control station signs s i Perform aggregation and obtain the signed aggregation result as; (5b) The remote control station verifies the multi-signature according to the result obtained in step (5a): If Verify(as) = 1, the verification passes, and execute step (6); Otherwise, the multi-signature cannot pass the verification, and the remote control station refuses to initiate the group key negotiation in Area A p in Area A p and the protocols of all unmanned devices in Area A are terminated.
11. The method according to claim 1, characterized in that: In step (6), the remote control station and the unmanned devices in each area member list jointly negotiate the group key corresponding to each area, and the implementation is as follows: (6a) The remote control station selects a random number r for each unmanned device in the member list of each area Gi As the remote control station's session key negotiation private key, the remote control station's session key negotiation private key r Gi Calculate the remote control station session key negotiation public key Use the remote control station's signature private key sk G Generate the remote control station session key negotiation public key Signature And the public key and signature ssk Gi Sent to the i-th unmanned device, where g2 is the cyclic group A generator of ; (6b) Area A p Each unmanned device in i selects a random number r as the private key for session key negotiation of the unmanned device. Through the private key r for session key negotiation of the unmanned device i calculate the public key for session key negotiation of the unmanned device Use the signature private key sk of the unmanned device i to generate the public key for session key negotiation of the unmanned device signature and send the public key for session key negotiation and the signature ssk i to the remote control station; (6c) Remote Control Station Use Area A p The signature verification public key pk of each unmanned device in i Negotiate public key for unmanned device session key Signature ssk i Verify: If the signature verification is successful, Verify(ssk i ,pk i )=1, the remote control station calculates the session key based on the results obtained in steps (6a) and (6b) Where z is a large prime number; otherwise, return to step (6a); (6d) Area A p Each unmanned device in it uses the signature verification public key pk of the remote control station G to verify the signature ssk of the remote control station session key negotiation public key Gi : If Verify(ssk Gi , pk G ) = 1, then each unmanned device in Area A p calculates the session key according to the results obtained in steps (6a) and (6b) Otherwise, return to step (6a); (6e) The remote control station creates an empty binary tree as the key tree T of the unmanned device group in area A p and creates the leaf nodes in the key tree T p , and creates the key tree T p The leaf nodes in each correspond to an unmanned device in area A p and then creates the other nodes in the key tree T p based on the leaf nodes; (6f) The remote control station uses the session key calculated in step (6c) As the key tree T p The node private key of the leaf node corresponding to the i-th unmanned device, and use the node private key to obtain the node public key of each leaf node (6g) Let the key tree be T p The node private keys of the two child nodes of a non-leaf node in and The remote control station uses the node private keys of these two child nodes and to obtain the node private key of this non-leaf node and obtain the node public key of this non-leaf node Obtain the key tree T from bottom to top in this way p The node public keys and node private keys of each non-leaf node in, and use the node private key of the root node as the group key GK of the unmanned devices in area A p ; p ; (6h) The remote control station uses the session key calculated in step (6c) Encrypted Area A p Unmanned equipment in the key tree T p The corresponding leaf node position index l i The public key set of nodes on the same path as the leaf node set copath i , generate key tree parameter ciphertext Among them, the position index l i Is the unmanned device in the key tree T p The number of the leaf node corresponding to the set, the total path is the path composed of the sibling nodes of all nodes on the path from a node to the root node; (6i) Region A p Each unmanned device in the Decryption key tree parameter ciphertext pc i , get the unmanned device in the key tree T p The position index l of the leaf node i The public key set of nodes on the same path as the leaf node set copath i ; (6j) Region A p Each unmanned device in the And the result obtained in step (6i), calculate the key tree T from bottom to top p The node private key on the path from the leaf node to the root node, the node private key of the root node is region A p The group key GK p .
12. The method according to claim 1, characterized in that In step (7), updating the group key of each area according to the member list of each area in the current period and the member list of each area in the previous period is implemented as follows: (7a) The remote control station compares the member list of each area in the current period with that in the previous period, and respectively finds out the unmanned devices newly added to Area A in the current period, the unmanned devices leaving Area A in the current period, and the unmanned devices not leaving Area A in the current period; p p p (7b) The remote control station and each unmanned device newly added to area A during the current period p jointly calculate a session key where j represents the number of the unmanned device newly added to area A p ; (7c) Remote control station in area A p The key tree T of the previous period p Create each new region A p The leaf node corresponding to the unmanned device and using the session key calculated in step (7b) Calculate the key of each newly added unmanned device in the key tree T p Node public key of the leaf node (7d) The remote control station deletes its connection with the user leaving area A during the current period. p The session key of each unattended device in the member list during the previous period And the unmanned device in the key tree T p The path from the leaf node to the root node, where k represents the path out of area A p The number of the unmanned equipment; (7e) The remote control station calculates the node private key and node public key of each node in the current period key tree T according to the result of step (7d), where the node private key of the root node is the group key GK' of the unmanned devices in area A during the current period p ; p The node private key and node public key of each node in p the current period key tree T, where the node private key of the root node is the group key GK' of the unmanned devices in area A during the current period (7f) The remote control station creates a key tree T for each region p The corresponding node public key update set U p , and initialize it to an empty set: (7g) Compare the node public key of each node calculated in step (7e) with the node public keys of each node in the key tree T of area A in the previous time period p to find the nodes whose node public keys have changed, and use the position index l p of these nodes and the node public key npk i in the current time period to i join the node public key update set U p : U p ←U p + <l i ,npk i > (7h) The remote control station uses the session key calculated in step (7b) Newly added area A for the current period p The key tree T of the unmanned device in the current period p The position index l of the leaf node j The public key set of nodes on the same path as the leaf node set copath j Encrypt to obtain the key tree parameter ciphertext And the key tree parameter ciphertext c j Sent to the jth unmanned device that newly joins the group; (7i) The remote control station generates Add and Remove instructions and uses the same instructions as those for the current period that have not left area A. p Session keys for unmanned devices For Add command, newly added area A p The position index of the leaf node of the jth unmanned device in the key tree is l j , Remove command, leave area A p The index of the leaf node of the kth unmanned device in the key tree is l k And the node public key update set U p Encrypt and get the key tree parameter update ciphertext uc i : And update the key tree parameter ciphertext uc i Sent to those who have not left area A during the current period p The i-th unmanned device; (7j) Newly added area A p Decrypt the ciphertext c of the key tree parameter in each decryption step (7h) of the unmanned device j to obtain its key tree T at the current time period p The position index l of the leaf node in j The set of node public keys copath on the common path with the set of leaf nodes j ; (7k) Newly added area A p Each unmanned device calculates the key tree T from bottom to top based on the result of step (7j) p The node public key and node private key on the path from the leaf node to the root node. The node private key of the root node is region A. p The group key GK' in the current period P ; (71) The current period has not left area A p The key tree parameter update ciphertext uc in the unmanned device decryption step (7i) i , get Add instruction, newly added area A p The position index of the leaf node of the jth unmanned device in the key tree is l j , Remove command, leave area A p The index of the leaf node of the kth unmanned device in the key tree is l k And the node public key update set U p ; (7m) The current period has not left area A p The unmanned device calculates the key tree T from bottom to top according to the result of step (71) p The node private key on the path from the leaf node to the root node, the node private key of the root node is the current period area A p New group key GK' P .
Citation Information
Patent Citations
An identity-based unmanned aerial vehicle (UAV) key management and networking authentication system and method
CN109218018B
Methods, systems, equipment, and terminals for establishing blockchain for unmanned aerial vehicles (UAVs) in flight missions.
CN113949432B
Unmanned aerial vehicle group key extraction and security authentication method based on GPS signal
CN114153227A
A drone identity authentication and key negotiation method based on location password
CN115150828B
Identification analysis system implementation method based on block chain trust mechanism
CN113055363A