Unmanned aerial vehicle communication method and system, nonvolatile storage medium and electronic equipment
By using encryption keys in the UAV communication system to encrypt the data and using digital signature verification, the security risks faced by the UAV communication system during data transmission are solved, and efficient and reliable data transmission is achieved. .
Patent Information
- Application Number
- CN202411524074.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-29
- Publication Date
- 2025-02-11
AI Technical Summary
UAV communication systems face security risks during data transmission, including the risk of data intercepting, tampering or forging.
The data is encrypted by generating the encryption key corresponding to the transmitted data, and encrypting the key using advanced encryption standards to ensure the security of the data during transmission. The specific steps include: the drone obtains the transmitted data and generates encryption keys, encrypts the data through these keys, generates the encrypted data and sends it to the communication base station, and the decryption object is used to decrypt the data and adds a digital signature, and the communication base station Verify the digital signature by decrypting the results to ensure the integrity of the data.
Through encryption processing and digital signature verification, the security of the UAV communication system during data transmission is significantly improved, the risk of data intercept, tampering or forgery is reduced, and the integrity and reliability of the data are ensured.
Smart Images

Figure CN119418562A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of drone communication technology, and more specifically, to a drone communication method and system, a non-volatile storage medium, and an electronic device. Background Art
[0002] Unmanned aircraft, also known as "drones", are unmanned aircraft that are controlled by radio remote control equipment and self-contained program control devices. Drones are actually a general term for unmanned aerial vehicles, which can be divided into several categories from a technical perspective: unmanned helicopters, unmanned fixed-wing aircraft, unmanned multi-rotor aircraft, unmanned airships, and unmanned paragliders.
[0003] Related drone communication systems face security risks during data transmission, including the risk of data being intercepted, tampered with or forged.
[0004] To address the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention
[0005] The embodiments of the present application provide a drone communication method and system, a non-volatile storage medium, and an electronic device to at least solve the technical problem that the drone communication system faces security risks during data transmission.
[0006] According to one aspect of an embodiment of the present application, a drone communication method is provided, including: a drone obtains transmission data; generates a first encryption key and a first decryption key corresponding to the transmission data, encrypts the transmission data by using the first encryption key to obtain first encrypted data; generates a second encryption key based on the Advanced Encryption Standard and a second decryption key corresponding to the second encryption key, encrypts the first encryption key by using the second encryption key to obtain second encrypted data, sends the second encrypted data to a communication base station, and sends the second decryption key to a decryption object; sends the first encrypted data to a decryption object, wherein the decryption object is used to add a digital signature to the first encrypted data to obtain a digital certificate, and sends the digital certificate and the second decryption key to the communication base station, the second decryption key is used to decrypt the second encrypted data, and decrypts the digital certificate by the decryption result to obtain the transmission data.
[0007] Optionally, the transmission data is encrypted using a first encryption key to obtain first encrypted data, including: using a preset error correction code to perform data segmentation on the transmission data to obtain multiple data blocks; filling each data block with redundant symbols to obtain multiple filled data blocks; encrypting each filled data block using the first encryption key to obtain first encrypted data, wherein the first encrypted data includes multiple first encrypted data blocks.
[0008] Optionally, sending the second encrypted data to the communication base station includes: dividing the first encryption key into multiple key blocks; encrypting each key block with the second encryption key to obtain second encrypted data, wherein the second encrypted data includes multiple second encrypted data blocks; and sending the second encrypted data to the communication base station.
[0009] Optionally, sending the first encrypted data to a decryption object includes: sending a first decryption key and multiple first encrypted data blocks to the decryption object, wherein the decryption object is used to detect whether each first encrypted data block is complete, and when each first encrypted data block is complete, encrypting each first encrypted data block with the first decryption key to obtain a digital certificate, and storing the digital certificate; wherein the decryption object is also used to receive a target request sent by a communication base station, wherein the target request is used to request to read a second decryption key and a digital certificate; the communication base station is used to receive the second decryption key and digital certificate sent by the decryption object in response to the target request; decrypting multiple second encrypted data blocks according to the second decryption key to obtain multiple key blocks; merging multiple key blocks into a first encryption key, and determining the first decryption key corresponding to the first encryption key; decrypting the digital certificate with the first decryption key to obtain multiple first encrypted data blocks; decrypting each first encrypted data block to obtain multiple padding data blocks, and determining the transmission data based on the multiple padding data blocks.
[0010] Optionally, after sending the first decryption key and multiple first encrypted data blocks to the decryption object, the method also includes: receiving a target message sent by the decryption object, wherein the target message is generated by the decryption object when not every first encrypted data block is complete, and the target message is used to instruct the drone to regenerate the first encryption key and the first decryption key corresponding to the transmitted data.
[0011] Optionally, sending the second encrypted data to the communication base station includes: the UAV sends test data to the communication base station through multiple communication channels, and obtains the communication channel spectrum during the test data transmission process; adjusts the communication channel spectrum to obtain multiple first communication channel spectra; based on the multiple first communication channel spectra, sends test data to the communication base station, and obtains a test result based on each first communication channel spectrum to obtain multiple test results; among the multiple test results, determines a target test result with the smallest packet loss rate, and determines a target communication channel spectrum corresponding to the target test result; based on the target communication channel spectrum, sends the second encrypted data to the communication base station.
[0012] According to another aspect of the embodiment of the present application, a drone communication system is also provided, including: a drone used to obtain transmission data, generate a first encryption key and a first decryption key corresponding to the transmission data, encrypt the transmission data by using the first encryption key to obtain first encrypted data; generate a second encryption key based on the Advanced Encryption Standard and a second decryption key corresponding to the second encryption key, encrypt the first encryption key by using the second encryption key to obtain second encrypted data, send the second encrypted data to a communication base station, and send the second decryption key to a decryption object; the decryption object is used to receive the first encrypted data, add a digital signature to the first encrypted data, obtain a digital certificate, and send the digital certificate and the second decryption key to the communication base station; the communication base station is used to decrypt the second encrypted data according to the second decryption key, and decrypt the digital certificate by the decryption result to obtain the transmission data.
[0013] Optionally, the drone is also used to perform the following steps: using a preset error correction code to perform data segmentation processing on the transmission data to obtain multiple data blocks; performing redundant symbol filling processing on each data block to obtain multiple filled data blocks; encrypting each filled data block using a first encryption key to obtain first encrypted data, wherein the first encrypted data includes multiple first encrypted data blocks.
[0014] Optionally, the drone is also used to perform the following steps: split the first encryption key into multiple key blocks; encrypt each key block with the second encryption key to obtain second encrypted data, wherein the second encrypted data includes multiple second encrypted data blocks; and send the second encrypted data to the communication base station.
[0015] Optionally, the drone is also used to send the first decryption key and multiple first encrypted data blocks to the decryption object; the decryption object is also used to perform the following steps: detect whether each first encrypted data block is complete, and when each first encrypted data block is complete, encrypt each first encrypted data block with the first decryption key to obtain a digital certificate, and store the digital certificate; receive a target request sent by the communication base station, wherein the target request is used to request to read the second decryption key and the digital certificate; the communication base station is also used to perform the following steps: receive the second decryption key and digital certificate sent by the decryption object in response to the target request; decrypt multiple second encrypted data blocks according to the second decryption key to obtain multiple key blocks; merge the multiple key blocks into a first encryption key, and determine the first decryption key corresponding to the first encryption key; decrypt the digital certificate with the first decryption key to obtain multiple first encrypted data blocks; decrypt each first encrypted data block to obtain multiple padding data blocks, and determine the transmission data based on the multiple padding data blocks.
[0016] Optionally, the communication base station is also used to perform the following steps: operate the filling polynomial according to the filling polynomial based on which the redundant symbol filling processing is performed on each data block to obtain the redundant symbol to be verified; compare the redundant symbol to be verified with the redundant symbol, if the redundant symbol to be verified is inconsistent with the redundant symbol, it is determined that there is an abnormality in the transmitted data, and the filled data block is corrected by the redundant symbol to obtain the corrected data.
[0017] According to another aspect of an embodiment of the present application, a non-volatile storage medium is also provided, the storage medium includes a stored program, wherein when the program is running, the device where the storage medium is located is controlled to execute the above drone communication method.
[0018] According to another aspect of the embodiments of the present application, there is also provided an electronic device, including: a memory and a processor, the processor being used to run a program stored in the memory, wherein the above drone communication method is executed when the program is running.
[0019] According to another aspect of the embodiments of the present application, a computer program is also provided, wherein the above drone communication method is implemented when the computer program is executed by a processor.
[0020] According to another aspect of the embodiment of the present application, a computer program product is also provided, the computer program product comprising a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the above-mentioned drone communication method is implemented.
[0021] In an embodiment of the present application, a drone is used to obtain transmission data; a first encryption key and a first decryption key corresponding to the transmission data are generated, and the transmission data is encrypted by the first encryption key to obtain first encrypted data; a second encryption key based on the advanced encryption standard and a second decryption key corresponding to the second encryption key are generated, and the first encryption key is encrypted by the second encryption key to obtain second encrypted data, and the second encrypted data is sent to a communication base station, and the second decryption key is sent to a decryption object; the first encrypted data is sent to a decryption object, wherein the decryption object is used to add a digital signature to the first encrypted data to obtain a digital certificate, and the digital certificate and the second decryption key are sent to the communication base station, the second decryption key is used to decrypt the second encrypted data, and the digital certificate is decrypted by the decryption result to obtain the transmission data, thereby achieving the purpose of improving the security of the drone during data transmission, thereby achieving the technical effect of reducing the security risks faced by the drone communication system during data transmission, and thus solving the technical problem of the security risks faced by the drone communication system during data transmission. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0023] Figure 1 is a flow chart of a UAV communication method according to an embodiment of the present application;
[0024] Figure 2 is a structural diagram of a drone communication system according to an embodiment of the present application;
[0025] Figure 3 It is a hardware structure block diagram of a computer terminal of a drone communication method according to an embodiment of the present application. DETAILED DESCRIPTION
[0026] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.
[0027] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0028] According to an embodiment of the present application, a method embodiment of a drone communication method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0029] Figure 1 is a flow chart of a UAV communication method according to an embodiment of the present application, such as Figure 1 As shown, the method comprises the following steps:
[0030] Step S102: The drone obtains transmission data.
[0031] In this step, the drone collects the data to be transmitted through its onboard sensors, communication equipment or other data acquisition devices. For example, this can be a real-time video stream during the flight of the drone, environmental monitoring data, location information or other important data. After the data is acquired, the drone will prepare the data for subsequent encryption and transmission.
[0032] Step S104: Generate a first encryption key and a first decryption key corresponding to the transmission data, and encrypt the transmission data using the first encryption key to obtain first encrypted data.
[0033] The drone generates a pair of encryption keys based on the transmission data, namely, a first encryption key and a first decryption key. For example, the encryption key and the decryption key follow the principle of public key infrastructure, where the first encryption key is used to encrypt data and the first decryption key is used to decrypt data. The drone encrypts the transmission data using the first encryption key to generate first encrypted data, ensuring that the data is not accessed by unauthorized third parties during transmission.
[0034] Step S106, generate a second encryption key based on the Advanced Encryption Standard and a second decryption key corresponding to the second encryption key, use the second encryption key to encrypt the first encryption key to obtain second encrypted data, send the second encrypted data to the communication base station, and send the second decryption key to the decryption object.
[0035] The drone generates an AES encryption key (second encryption key) and a corresponding decryption key (second decryption key). AES is a symmetric encryption algorithm, which means that the same key is used for encryption and decryption. The drone encrypts the first encryption key using the second encryption key to generate second encrypted data. The second encrypted data is then sent to the communication base station via a pre-selected, interference-optimized communication channel, and the second decryption key is sent to the decryption object to facilitate verification and decryption during the decryption process.
[0036] Step S108, sending the first encrypted data to a decryption object, wherein the decryption object is used to add a digital signature to the first encrypted data to obtain a digital certificate, and the digital certificate and the second decryption key are sent to the communication base station, the second decryption key is used to decrypt the second encrypted data, and the digital certificate is decrypted using the decryption result to obtain the transmission data.
[0037] The drone sends the first encrypted data to the decryption object. The decryption object uses its private key to digitally sign the first encrypted data and generate a digital certificate, which contains the signature of the encrypted data and the identity information of the decryption object. Subsequently, the decryption object sends the digital certificate and the second decryption key to the communication base station. After receiving the second encrypted data, the communication base station uses the second decryption key to decrypt it and obtain the first encryption key. Then, the base station uses the first encryption key to extract the first decryption key from the certificate repository, and uses the first decryption key to decrypt the first encrypted data, and finally restores the transmitted data, completing the double encryption and security verification of the entire communication process.
[0038] Through the above steps, this application ensures the security and integrity of the data when the drone is transmitting data. First, through the authentication mechanism of the public key infrastructure, identity authentication and non-repudiation support are provided for data transmission. Secondly, through the AES encryption standard, an efficient and secure encryption method is provided for data transmission. Even if the data is intercepted during transmission, it cannot be easily decrypted. Finally, through digital signatures and anti-interference mechanisms, the reliability of data transmission is further enhanced to ensure that the data is not tampered with, while ensuring the stable transmission of encryption keys, thereby realizing a reliable communication system and method dedicated to drones.
[0039] The following Figure 1 The steps shown are exemplary and explanatory.
[0040] According to some optional embodiments of the present application, encrypting the transmission data by using the first encryption key to obtain the first encrypted data can be achieved by the following method: performing data segmentation processing on the transmission data using a preset error correction code to obtain multiple data blocks; performing redundant symbol filling processing on each data block to obtain multiple filled data blocks; encrypting each filled data block by using the first encryption key to obtain the first encrypted data, wherein the first encrypted data includes multiple first encrypted data blocks.
[0041] Specifically, the drone first divides the complete data to be transmitted into multiple smaller data blocks according to the preset error correction code encoding scheme. Reed-Solomon code is a commonly used linear block code that is particularly suitable for detecting and correcting errors caused by burst errors, which makes it an effective means of data segmentation and protecting the integrity of transmitted data. Through data segmentation, even if some data blocks are lost or damaged during transmission, data recovery can be performed through other data blocks and redundant information.
[0042] Next, the drone fills each data block with redundant symbols, that is, adding a certain number of redundant symbols at the end of each data block. These redundant symbols are calculated based on the data block on a finite field. By filling with redundant symbols, even if there are errors in the data block, the error detection and correction can be performed by calculating and comparing the redundant symbols, thereby ensuring the integrity of the data block.
[0043] After completing the filling of the data block and redundant symbols, the drone uses the first encryption key to encrypt each filled data block to generate an encrypted data block, namely the first encrypted data block. All first encrypted data blocks are combined into first encrypted data, which are then sent to the decryption object through the communication channel. Each block of the first encrypted data contains an encrypted version of the data block and redundant symbols, which not only increases the security of the data, but also provides a basis for subsequent error correction.
[0044] According to other optional embodiments of the present application, sending the second encrypted data to the communication base station can be achieved by the following method: dividing the first encryption key into multiple key blocks; encrypting each key block with the second encryption key to obtain second encrypted data, wherein the second encrypted data includes multiple second encrypted data blocks; and sending the second encrypted data to the communication base station.
[0045] Specifically, the drone first splits the first encryption key used to encrypt the transmitted data into multiple key blocks of equal or different sizes. The purpose of the split is to further enhance the complexity and security of data transmission. Even if a key block is intercepted or damaged during transmission, the receiver can still recover the complete key through other key blocks and redundant information to decrypt the data.
[0046] Next, the drone uses the pre-generated second encryption key to encrypt each of the segmented key blocks to generate second encrypted data blocks. These encrypted key blocks (second encrypted data blocks) will be sent to the communication base station through different communication channels or spectrums to increase the anti-interference of data transmission. The second encrypted data consists of multiple second encrypted data blocks, each of which contains part of the encrypted information of the first encryption key.
[0047] Finally, the drone combines all the second encrypted data blocks into the second encrypted data and sends it to the communication base station through a pre-optimized communication channel with strong anti-interference capability. After receiving the second encrypted data, the communication base station will use the second decryption key stored in the certificate repository to decrypt each second encrypted data block, restore the complete information of the first encryption key, and then be able to decrypt the transmitted data.
[0048] In some optional embodiments of the present application, sending the first encrypted data to the decryption object can be achieved by the following method: sending the first decryption key and multiple first encrypted data blocks to the decryption object, wherein the decryption object is used to detect whether each first encrypted data block is complete, and when each first encrypted data block is complete, encrypting each first encrypted data block by the first decryption key to obtain a digital certificate, and storing the digital certificate; wherein the decryption object is also used to receive a target request sent by a communication base station, wherein the target request is used to request to read a second decryption key and a digital certificate; the communication base station is used to receive the second decryption key and digital certificate sent by the decryption object in response to the target request; decrypting multiple second encrypted data blocks according to the second decryption key to obtain multiple key blocks; merging multiple key blocks into a first encryption key, and determining the first decryption key corresponding to the first encryption key; decrypting the digital certificate by the first decryption key to obtain multiple first encrypted data blocks; decrypting each first encrypted data block to obtain multiple padding data blocks, and determining the transmission data based on the multiple padding data blocks.
[0049] Specifically, first, the decryption object performs an integrity check on each first encrypted data block received. This is usually done by checking the digital signature of the data block or using a preset checksum. The integrity check ensures that the data has not been tampered with or damaged during transmission. If all first encrypted data blocks are intact, the decryption object will continue the decryption process; otherwise, the drone may need to resend the data or implement an error correction mechanism.
[0050] After confirming that each data block is complete, the decryption object uses the first decryption key to decrypt each first encrypted data block and recover the padding data block. It then uses the redundant symbols in the padding data block for error detection and correction to ensure the accuracy of the data. Once the data block is correctly decrypted and verified, the decryption object will generate a digital certificate, which includes the signature of the transmitted data and the identity information of the decryption object, as well as other key parameters for verifying the integrity of the data. The generated digital certificate is then securely stored until the communication base station requests to read it.
[0051] The decryption object waits for a request from the communication base station, which specifies the intention to read the second decryption key and digital certificate. This request is a key step in the decryption process of the communication base station, ensuring the two-way security of communication and the controllability of data. The decryption object responds to the target request and sends the second decryption key and digital certificate to the communication base station. After receiving these critical data, the base station will prepare for the final decryption and verification of the transmitted data.
[0052] The communication base station uses the received second decryption key to decrypt the second encrypted data block previously obtained from the drone and recover multiple key blocks. This step ensures the confidentiality of the first encryption key. Even if the second encrypted data block is intercepted during transmission, the first encryption key cannot be easily recovered. The communication base station recombines all the decrypted key blocks to recover the complete first encryption key. Based on the one-to-one correspondence between the first encryption key and the first decryption key, the base station can determine the correct first decryption key for the next step of data decryption. The communication base station uses the first decryption key to decrypt the digital certificate and recover the first encrypted data block. The decryption process also utilizes a preset error correction code mechanism to ensure that even if there are a small number of errors in the data block, they can be corrected through redundant information to restore the original transmission data block.
[0053] Finally, the communication base station decrypts each first encrypted data block to obtain the padded data block, and further determines the original transmission data through de-padding and error correction. This process ensures the integrity and accuracy of the transmitted data, and can effectively prevent data loss and errors even under harsh communication conditions.
[0054] As some optional embodiments of the present application, after sending the first decryption key and the plurality of first encrypted data blocks to the decryption object, the following steps may also be performed:
[0055] Receive a target message sent by the decryption object, wherein the target message is generated by the decryption object when not every first encrypted data block is complete, and the target message is used to instruct the drone to regenerate the first encryption key and the first decryption key corresponding to the transmission data.
[0056] After receiving the first encrypted data blocks and the first decryption key sent by the drone, the decryption object first uses the decryption key to try to decrypt the data block and check the integrity of the data block. This can be achieved by verifying the digital signature, checksum, or using a preset error correction code mechanism (such as Reed-Solomon code) of the data block. If the integrity of any data block is found to be damaged during the decryption process, the decryption object will not be able to recover the complete transmission data, and further measures will need to be taken.
[0057] If the decryption object determines that not all of the first encrypted data blocks are intact, a target message is generated. The target message contains information indicating that the drone needs to regenerate the first encryption key and the first decryption key corresponding to the transmitted data. This step is a security measure based on unexpected situations that may occur during data transmission, such as packet loss, errors, or potential security threats. The decryption object sends the target message to the drone through a secure communication channel. The transmission of the target message needs to ensure its transmission security, which can be done in an encrypted manner to prevent it from being intercepted or tampered with by a third party during the transmission process.
[0058] After receiving the target message, the drone immediately regenerates a pair of encryption keys, namely a new first encryption key and a first decryption key, according to the instruction. The generation process can be based on a random number generator or a specific key generation algorithm to ensure the security and uniqueness of the key.
[0059] The drone uses the newly generated first encryption key to re-encrypt the transmission data to generate a new first encrypted data block. This step ensures that even if part of the data is intercepted during the previous transmission process, the new encrypted data will not be affected by the intercepted data. The drone then sends the new encrypted data block and the new first decryption key to the decryption object and repeats the encryption and transmission process. The decryption object will check the integrity of the data block again until it confirms that all data blocks are intact, and then continue the subsequent decryption and authentication process.
[0060] By dynamically adjusting encryption keys and encrypted data blocks, based on the feedback information of the decrypted object, it ensures that the drone can take effective measures to restore the integrity and security of the data when facing incomplete data transmission. Especially in complex communication environments, such as when there is interference, signal attenuation or potential security threats, this mechanism can significantly enhance the robustness and security of the drone communication system, ensuring continuous and reliable data communication between the drone and the ground control station or the target communication base station.
[0061] In some optional embodiments of the present application, sending the second encrypted data to the communication base station can be achieved by the following method: the drone sends test data to the communication base station through multiple communication channels, and obtains the communication channel spectrum during the test data transmission process; adjusts the communication channel spectrum to obtain multiple first communication channel spectra; based on the multiple first communication channel spectra, sends test data to the communication base station, and obtains the test results based on each first communication channel spectrum to obtain multiple test results; among the multiple test results, determines the target test result with the smallest packet loss rate, and determines the target communication channel spectrum corresponding to the target test result; based on the target communication channel spectrum, sends the second encrypted data to the communication base station.
[0062] Specifically, the drone first selects multiple preset communication channels and sends test data packets to the communication base station. These test data packets usually contain some known data to evaluate the performance and interference of the channel. By sending test data using multiple channels at the same time, the working status of different channels can be fully evaluated.
[0063] In the process of sending test data, the drone monitors the spectrum usage of each channel in real time, and records possible interference signals and channel quality parameters in the communication environment, such as signal strength, signal-to-noise ratio, etc. Spectrum information is crucial for subsequent channel selection and optimization.
[0064] Based on the acquired spectrum information, the drone dynamically adjusts the spectrum of each communication channel to reduce interference and improve data transmission performance. After adjustment, multiple first communication channel spectra are obtained, each of which is optimized based on the current communication environment. The drone sends test data to the communication base station again, but this time it uses the adjusted multiple first communication channel spectra for transmission. After receiving the test data, the communication base station will feedback the test results based on indicators such as the number of received data packets and data packet integrity. The drone will compare and analyze the collected test results.
[0065] The drone analyzes all collected test results and determines the test result with the smallest packet loss rate (i.e., the ratio of data packet loss) as the target test result. This indicates that the channel has the best data transmission performance in the current environment. Subsequently, the drone confirms the target communication channel spectrum corresponding to the target test result as the preferred spectrum for subsequent data transmission. Finally, the drone sends the second encrypted data previously encrypted by the second encryption key to the communication base station based on the determined target communication channel spectrum. Since the spectrum has been optimized, it can minimize interference and packet loss during data transmission, thereby ensuring stable transmission and integrity of the data.
[0066] Figure 2 is a structural diagram of a UAV 21 communication system according to an embodiment of the present application, such as Figure 2 As shown, the system includes: a drone 21, a decryption object 22 and a communication base station, wherein:
[0067] The drone 21 is used to obtain transmission data, generate a first encryption key and a first decryption key corresponding to the transmission data, encrypt the transmission data using the first encryption key to obtain first encrypted data; generate a second encryption key based on the advanced encryption standard and a second decryption key corresponding to the second encryption key, encrypt the first encryption key using the second encryption key to obtain second encrypted data, send the second encrypted data to the communication base station 23, and send the second decryption key to the decryption object 22.
[0068] The decryption object 22 is used to receive the first encrypted data, add a digital signature to the first encrypted data, obtain a digital certificate, and send the digital certificate and the second decryption key to the communication base station 23.
[0069] The communication base station 23 is used to decrypt the second encrypted data according to the second decryption key, and decrypt the digital certificate according to the decryption result to obtain the transmission data.
[0070] As other optional embodiments of the present application, the drone is also used to perform the following steps: using a preset error correction code to perform data segmentation processing on the transmission data to obtain multiple data blocks; performing redundant symbol filling processing on each data block to obtain multiple filled data blocks; encrypting each filled data block using a first encryption key to obtain first encrypted data, wherein the first encrypted data includes multiple first encrypted data blocks.
[0071] In some optional embodiments, the drone is also used to perform the following steps: splitting the first encryption key into multiple key blocks; encrypting each key block with the second encryption key to obtain second encrypted data, wherein the second encrypted data includes multiple second encrypted data blocks; and sending the second encrypted data to the communication base station.
[0072] According to some preferred embodiments of the present application, the drone is also used to send a first decryption key and multiple first encrypted data blocks to a decryption object; the decryption object is also used to perform the following steps: detect whether each first encrypted data block is complete, and when each first encrypted data block is complete, encrypt each first encrypted data block with the first decryption key to obtain a digital certificate, and store the digital certificate; receive a target request sent by a communication base station, wherein the target request is used to request to read a second decryption key and a digital certificate; the communication base station is also used to perform the following steps: receive a second decryption key and a digital certificate sent by the decryption object in response to the target request; decrypt multiple second encrypted data blocks according to the second decryption key to obtain multiple key blocks; merge multiple key blocks into a first encryption key, and determine the first decryption key corresponding to the first encryption key; decrypt the digital certificate with the first decryption key to obtain multiple first encrypted data blocks; decrypt each first encrypted data block to obtain multiple padding data blocks, and determine the transmission data based on the multiple padding data blocks.
[0073] In some preferred embodiments, the communication base station is also used to perform the following steps: operating the filling polynomial according to the filling polynomial based on which the redundant symbol filling processing is performed on each data block to obtain the redundant symbol to be verified; comparing the redundant symbol to be verified with the redundant symbol, if the redundant symbol to be verified is inconsistent with the redundant symbol, it is determined that there is an abnormality in the transmitted data, and the filled data block is corrected by the redundant symbol to obtain the corrected data.
[0074] Specifically, first, the communication base station uses the AES decryption key stored in the certificate repository to decrypt the encrypted data block and restore the original padding data block. Each padding data block actually contains a part of the data and redundant symbols, which are used for error detection and correction. The padding data block can be regarded as a padding polynomial, where the data and redundant symbols are the coefficients of the polynomial.
[0075] After decryption, the communication base station uses the Reed-Solomon coding principle to calculate the padding polynomial according to the structure of the padding data block. This calculation process is usually performed on a finite field to recalculate a set of redundant symbols to be verified. The calculation of the redundant symbols to be verified is based on the data part of the received padding data block and is generated by a similar error correction coding algorithm.
[0076] The communication base station compares the redundant symbols to be verified obtained through calculation with the redundant symbols originally contained in the padding data block. If the two are consistent, it means that the data block has not been damaged or tampered with during the transmission process and the data block remains intact.
[0077] If the redundant symbol to be verified is inconsistent with the redundant symbol in the padding data block, the communication base station will determine that there is an abnormality in the transmission of the data block and the data may be damaged or tampered with. At this time, the base station will use the redundant symbols in the padding data block to correct the data block. The characteristics of Reed-Solomon code allow the base station to recover lost or damaged data through the remaining redundant symbols to ensure the integrity and accuracy of the entire data block.
[0078] Through the above steps, the communication base station can correct the abnormal data block and restore the complete and undamaged data block. The base station combines the corrected data block with the unaffected data block to obtain the corrected transmission data, ensuring that the final received data is consistent with the original data sent by the drone.
[0079] The above method combines the error detection and correction capabilities of Reed-Solomon coding and the security of AES encryption, providing a double layer of protection for data transmission between drones and communication base stations: one layer is encryption security, and the other layer is data integrity protection. Even in harsh communication environments, this mechanism can ensure the security and accuracy of data, significantly improving the reliability and robustness of drone communication systems, and is particularly suitable for mission scenarios that require high data integrity and security, such as remote monitoring, disaster response, etc. By dynamically adjusting encryption keys and using advanced error correction technology, the technical solution of the present invention provides drones with a stable data transmission channel in a complex and changeable communication environment, ensuring the continuity of mission execution and the secure transmission of data.
[0080] It should be noted that Figure 2 The preferred implementation of the illustrated embodiment can be found in Figure 1 The relevant description of the illustrated embodiment will not be repeated here.
[0081] Figure 3 The hardware structure block diagram of a computer terminal for implementing the UAV communication method is shown in FIG. Figure 3 As shown, the computer terminal 30 may include one or more (302a, 302b, ..., 302n are used to illustrate) processors 302 (the processor 302 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 304 for storing data, and a transmission module 306 for communication functions. In addition, it may also include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of the BUS bus), a network interface, a power supply and / or a camera. It can be understood by those skilled in the art that Figure 3 The structure shown is only for illustration and does not limit the structure of the above electronic device. Figure 3 More or fewer components as shown, or with Figure 3 Different configurations shown.
[0082] It should be noted that the one or more processors 302 and / or other data processing circuits described above may generally be referred to herein as "data processing circuits". The data processing circuits may be embodied in whole or in part as software, hardware, firmware, or any other combination thereof. In addition, the data processing circuit may be a single independent processing module, or may be incorporated in whole or in part into any of the other components in the computer terminal 30. As described in the embodiments of the present application, the data processing circuit acts as a processor control (e.g., selection of a variable resistor terminal path connected to an interface).
[0083] The memory 304 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the drone communication method in the embodiment of the present application. The processor 302 executes various functional applications and data processing by running the software programs and modules stored in the memory 304, that is, the above-mentioned drone communication method is realized. The memory 304 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 304 may further include a memory remotely arranged relative to the processor 302, and these remote memories may be connected to the computer terminal 30 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0084] The transmission module 306 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the computer terminal 30. In one example, the transmission module 306 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission module 306 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0085] The display may be, for example, a touch screen liquid crystal display (LCD) that enables a user to interact with a user interface of the computer terminal 30 .
[0086] It should be noted that, in some optional embodiments, the above Figure 3 The computer terminal shown may include hardware elements (including circuits), software elements (including computer code stored on a computer-readable medium), or a combination of hardware elements and software elements. It should be noted that Figure 3 This is merely one example of a particular embodiment and is intended to illustrate the types of components that may be present in the computer terminal described above.
[0087] It should be noted that Figure 3 The computer terminal shown is used to execute Figure 1 The drone communication method shown in the figure, therefore the relevant explanations and instructions in the execution method of the above command are also applicable to the electronic device and will not be repeated here.
[0088] An embodiment of the present application also provides a non-volatile storage medium, which includes a stored program, wherein when the program is running, the device where the storage medium is located is controlled to execute the above drone communication method.
[0089] A program for a non-volatile storage medium to perform the following functions: a drone acquires transmission data; generates a first encryption key and a first decryption key corresponding to the transmission data, encrypts the transmission data using the first encryption key to obtain first encrypted data; generates a second encryption key based on an advanced encryption standard and a second decryption key corresponding to the second encryption key, encrypts the first encryption key using the second encryption key to obtain second encrypted data, sends the second encrypted data to a communication base station, and sends the second decryption key to a decryption object; sends the first encrypted data to a decryption object, wherein the decryption object is used to add a digital signature to the first encrypted data to obtain a digital certificate, and sends the digital certificate and the second decryption key to the communication base station, the second decryption key is used to decrypt the second encrypted data, and the digital certificate is decrypted using the decryption result to obtain the transmission data.
[0090] An embodiment of the present application also provides an electronic device, including: a memory and a processor, the processor being used to run a program stored in the memory, wherein the above drone communication method is executed when the program is running.
[0091] The processor is used to run a program that performs the following functions: the drone obtains transmission data; generates a first encryption key and a first decryption key corresponding to the transmission data, encrypts the transmission data using the first encryption key to obtain first encrypted data; generates a second encryption key based on the Advanced Encryption Standard and a second decryption key corresponding to the second encryption key, encrypts the first encryption key using the second encryption key to obtain second encrypted data, sends the second encrypted data to a communication base station, and sends the second decryption key to a decryption object; sends the first encrypted data to a decryption object, wherein the decryption object is used to add a digital signature to the first encrypted data to obtain a digital certificate, and sends the digital certificate and the second decryption key to the communication base station, the second decryption key is used to decrypt the second encrypted data, and decrypts the digital certificate using the decryption result to obtain the transmission data.
[0092] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.
[0093] In the above embodiments of the present application, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.
[0094] In the above-mentioned embodiments of the present application, the collected information is information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with relevant laws, regulations and standards, take necessary protection measures, do not violate public order and good morals, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0095] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.
[0096] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0097] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0098] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the relevant technology or all or part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk, etc. Various media that can store program codes.
[0099] The above is only a preferred implementation of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.
Claims
1. A drone communication method, characterized in that: include: The drone acquires the transmission data; Generate a first encryption key and a first decryption key corresponding to the transmission data, and encrypt the transmission data using the first encryption key to obtain first encrypted data; Generate a second encryption key based on the Advanced Encryption Standard and a second decryption key corresponding to the second encryption key, encrypt the first encryption key using the second encryption key to obtain second encrypted data, send the second encrypted data to a communication base station, and send the second decryption key to a decryption object; The first encrypted data is sent to the decryption object, wherein the decryption object is used to add a digital signature to the first encrypted data to obtain a digital certificate, and the digital certificate and the second decryption key are sent to the communication base station, the second decryption key is used to decrypt the second encrypted data, and the digital certificate is decrypted according to the decryption result to obtain the transmission data.
2. The method according to claim 1, characterized in that The transmission data is encrypted by using the first encryption key to obtain first encrypted data, including: Using a preset error correction code to perform data segmentation processing on the transmission data to obtain multiple data blocks; Performing redundant symbol filling processing on each of the data blocks to obtain a plurality of filled data blocks; Each of the padding data blocks is encrypted using the first encryption key to obtain the first encrypted data, wherein the first encrypted data includes a plurality of first encrypted data blocks.
3. The method according to claim 2, characterized in that Sending the second encrypted data to a communication base station includes: dividing the first encryption key into a plurality of key blocks; Encrypt each of the key blocks using the second encryption key to obtain the second encrypted data, wherein the second encrypted data includes a plurality of second encrypted data blocks; The second encrypted data is sent to the communication base station.
4. The method according to claim 3, characterized in that Sending the first encrypted data to the decryption object includes: Sending the first decryption key and the plurality of the first encrypted data blocks to a decryption object, wherein the decryption object is used to detect whether each of the first encrypted data blocks is complete, and when each of the first encrypted data blocks is complete, encrypting each of the first encrypted data blocks using the first decryption key to obtain a digital certificate, and storing the digital certificate; The decryption object is further used to receive a target request sent by the communication base station, wherein the target request is used to request to read the second decryption key and the digital certificate; The communication base station is used to receive the second decryption key and the digital certificate sent by the decryption object in response to the target request; decrypt multiple second encrypted data blocks according to the second decryption key to obtain multiple key blocks; merge the multiple key blocks into the first encryption key, and determine the first decryption key corresponding to the first encryption key; decrypt the digital certificate by using the first decryption key to obtain multiple first encrypted data blocks; decrypt each of the first encrypted data blocks to obtain multiple padding data blocks, and determine the transmission data based on the multiple padding data blocks.
5. The method according to claim 4, characterized in that After sending the first decryption key and the first encrypted data blocks to the decryption object, the method further includes: Receive a target message sent by the decryption object, wherein the target message is generated by the decryption object when not every first encrypted data block is complete, and the target message is used to instruct the drone to regenerate the first encryption key and the first decryption key corresponding to the transmission data.
6. The method according to claim 1, characterized in that Sending the second encrypted data to a communication base station includes: The UAV sends test data to the communication base station through multiple communication channels, and obtains the communication channel spectrum during the test data transmission process; Adjusting the communication channel spectrum to obtain a plurality of first communication channel spectrums; Based on the multiple first communication channel spectrums, test data is sent to the communication base station, and a test result based on each of the first communication channel spectrums is obtained to obtain multiple test results; Determine a target test result with the smallest packet loss rate among the multiple test results, and determine a target communication channel spectrum corresponding to the target test result; Based on the target communication channel spectrum, the second encrypted data is sent to the communication base station.
7. A UAV communication system, characterized in that: include: UAV, decryption object and communication base station, among which, The drone is used to obtain transmission data, generate a first encryption key and a first decryption key corresponding to the transmission data, encrypt the transmission data using the first encryption key to obtain first encrypted data; generate a second encryption key based on the Advanced Encryption Standard and a second decryption key corresponding to the second encryption key, encrypt the first encryption key using the second encryption key to obtain second encrypted data, send the second encrypted data to a communication base station, and send the second decryption key to the decryption object; The decryption object is used to receive the first encrypted data, add a digital signature to the first encrypted data, obtain a digital certificate, and send the digital certificate and the second decryption key to the communication base station; The communication base station is used to decrypt the second encrypted data according to the second decryption key, and decrypt the digital certificate according to the decryption result to obtain the transmission data.
8. The system according to claim 7, characterized in that The drone is also used to execute the following steps: using a preset error correction code to perform data segmentation processing on the transmission data to obtain multiple data blocks; performing redundant symbol filling processing on each of the data blocks to obtain multiple filled data blocks; encrypting each of the filled data blocks using the first encryption key to obtain the first encrypted data, wherein the first encrypted data includes multiple first encrypted data blocks.
9. The system according to claim 8, characterized in that The drone is also used to perform the following steps: dividing the first encryption key into multiple key blocks; encrypting each of the key blocks using the second encryption key to obtain the second encrypted data, wherein the second encrypted data includes multiple second encrypted data blocks; and sending the second encrypted data to the communication base station.
10. The system according to claim 9, characterized in that The drone is also used to send the first decryption key and the first encrypted data blocks to a decryption object; The decryption object is further used to perform the following steps: detecting whether each of the first encrypted data blocks is complete, and if each of the first encrypted data blocks is complete, encrypting each of the first encrypted data blocks using the first decryption key to obtain a digital certificate, and storing the digital certificate; receiving a target request sent by the communication base station, wherein the target request is used to request reading the second decryption key and the digital certificate; The communication base station is also used to perform the following steps: receiving the second decryption key and the digital certificate sent by the decryption object in response to the target request; decrypting multiple second encrypted data blocks according to the second decryption key to obtain multiple key blocks; merging multiple key blocks into the first encryption key, and determining the first decryption key corresponding to the first encryption key; decrypting the digital certificate by using the first decryption key to obtain multiple first encrypted data blocks; decrypting each of the first encrypted data blocks to obtain multiple padding data blocks, and determining the transmission data based on the multiple padding data blocks.
11. The system according to claim 8, characterized in that The communication base station is also used to perform the following steps: operating the filling polynomial according to the filling polynomial based on which the redundant symbol filling processing is performed on each of the data blocks to obtain the redundant symbol to be verified; comparing the redundant symbol to be verified with the redundant symbol, if the redundant symbol to be verified is inconsistent with the redundant symbol, determining that there is an abnormality in the transmitted data, and correcting the filled data block through the redundant symbol to obtain corrected data.
12. A non-volatile storage medium, characterized in that: The non-volatile storage medium includes a stored program, wherein when the program is running, the device where the non-volatile storage medium is located is controlled to execute the drone communication method described in any one of claims 1 to 6.
13. An electronic device, characterized in that: include: A memory and a processor, wherein the processor is used to run a program stored in the memory, wherein the program executes the drone communication method described in any one of claims 1 to 6 when running.
14. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the drone communication method described in any one of claims 1 to 6 is implemented.