Method, device and computer-readable storage medium for vehicle-ground safety communication
By using the DES encryption algorithm of Huffman coded in vehicle-to-site communication, the security problems caused by plain text transmission in vehicle-to-site communication are solved, and the secure transmission of information is achieved.
Patent Information
- Application Number
- CN202111364594.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-17
- Publication Date
- 2025-09-02
- Estimated Expiration
- 2041-11-17
AI Technical Summary
The existing messaging communication between vehicles and places is transmitted in plain text, which poses a risk of data leakage, resulting in insufficient communication security.
The DES encryption algorithm of Huffman encoding is used to encrypt the positioning information on the vehicle end and decrypt it on the ground. 16 sub-keys are generated through the 64bit key generated by negotiation, and the sub-key order is randomly changed. The data unit is encrypted and decrypted using Huffman encoding to ensure the security of information transmission.
Convert plain text information into cipher text information to transmission improves the security of vehicle-local communication and reduces the risk of data leakage.
Smart Images

Figure CN114051208B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communications, and in particular to a method, device, and computer-readable storage medium for vehicle-ground safety communications. Background Art
[0002] With the global expansion of the Beidou satellite navigation system, the application areas of message communication are continuously expanding. The system for message communication between vehicles and the ground includes Beidou satellites, controllers, on-board Beidou terminals, ground-based Beidou terminals, and a ground receiving center. The on-board Beidou terminal receives plaintext information from the Beidou satellite containing the train's current location. The processor then generates a message containing the plaintext information and returns it to the on-board Beidou terminal. The on-board Beidou terminal then transmits the plaintext message to the ground-based Beidou terminal, which then transmits the message to the ground receiving center. The ground receiving center further verifies the validity of the message and receives valid messages, thus achieving Beidou communication between vehicles and the ground.
[0003] The existing message communication and data transmission between vehicles and the ground are all transmitted in plain text through the Beidou protocol, which will pose a risk of data leakage, thereby greatly reducing the security of communication between vehicles and the ground.
[0004] It can be seen that how to improve the security of communication between vehicles and the ground is an urgent problem to be solved by those skilled in the art. Summary of the Invention
[0005] The purpose of this application is to provide a method, device and computer-readable storage medium for secure vehicle-ground communication, so as to improve the security of vehicle-ground communication.
[0006] To solve the above technical problems, the present application provides a method for vehicle-ground secure communication, which is applied to a vehicle-mounted terminal. The method includes:
[0007] Obtaining positioning information of the train's current position transmitted by the Beidou satellite, wherein the positioning information is plain text information;
[0008] Encrypting the positioning information into encrypted information by using a DES encryption algorithm that introduces Huffman coding;
[0009] generating message information including the encrypted information;
[0010] The message information is sent to the ground terminal so that the ground terminal receives and decrypts the message information.
[0011] Preferably, encrypting the positioning information into encrypted information by using a DES encryption algorithm that introduces Huffman coding includes:
[0012] Divide the positioning information into multiple data units in units of 64 bits;
[0013] Generate 16 subkeys based on the 64-bit key generated by negotiation between the vehicle-mounted terminal and the ground terminal;
[0014] Changing the order of the 16 subkeys by randomly generated Huffman coding to obtain 16 new subkeys corresponding to each data unit;
[0015] encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain encrypted information of each data unit;
[0016] Combining the encryption information of each data unit in order from low to high bits to obtain encryption information after encrypting the positioning information;
[0017] The step of changing the order of the 16 subkeys by randomly generating Huffman codes to obtain the 16 new subkeys corresponding to the data units specifically includes the following steps:
[0018] Obtain first data from each of the data units through an initial transposition table;
[0019] Performing an XOR operation on the first data and the 64-bit key to obtain second data;
[0020] Selecting the number of Huffman tree leaf nodes and randomly configuring the weight of each leaf node to generate a random Huffman code;
[0021] Decoding the second data using the random Huffman code to obtain a sequence set;
[0022] Obtain the value corresponding to each element and the position number corresponding to each element in the first 16 elements of the sequence set;
[0023] Sequentially use the value corresponding to each element as a first position number, and use the position number corresponding to each element as a second position number, wherein the first position number and the second position number are both position numbers of the 16 subkeys;
[0024] Sequentially swap the position of the subkey corresponding to the first position number with the position of the subkey corresponding to the second position number to obtain 16 new subkeys;
[0025] The step of encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain the encrypted information of each data unit specifically includes the following steps:
[0026] Dividing the first data into a first part and a second part, each occupying 32 bits;
[0027] Iterate the first part and the second part 16 times in sequence to finally obtain a first data block;
[0028] Reversing the first data block to obtain a second data block;
[0029] Passing the second data block through an IP inverse permutation table to obtain encryption information of the data unit;
[0030] The iterative process includes the following steps:
[0031] The second part of 32 bits is extended through the permutation table to obtain the second part of 48 bits;
[0032] Performing an XOR operation on the second portion of the 48 bits and the first new subkey of the 16 new subkeys to obtain an XORed 48-bit data;
[0033] Compressing the XORed 48-bit data through an S-box to obtain 32-bit data, and outputting the 32-bit data according to an S-box output conversion table;
[0034] XORing the 32-bit data with the 32-bit first part to obtain a new 32-bit second part;
[0035] The 32-bit second part is used as the new 32-bit first part.
[0036] In order to solve the above technical problems, the present application also provides a method for vehicle-ground secure communication, which is applied to the ground side and includes:
[0037] Receiving message information containing encrypted information sent by the vehicle-mounted terminal, wherein the encrypted information is obtained by encrypting the positioning information of the current position of the train transmitted by the Beidou satellite by the vehicle-mounted terminal using the DES encryption algorithm introduced with Huffman coding, and the positioning information is plain text information;
[0038] The message information is decrypted using the inverse process of the DES encryption algorithm introduced with Huffman coding to obtain the positioning information.
[0039] Preferably, the specific steps of encrypting the encrypted information using the DES encryption algorithm with Huffman coding are as follows:
[0040] Divide the positioning information into multiple data units in units of 64 bits;
[0041] Generate 16 subkeys based on the 64-bit key generated by negotiation between the vehicle-mounted terminal and the ground terminal;
[0042] Changing the order of the 16 subkeys by randomly generated Huffman coding to obtain 16 new subkeys corresponding to each data unit;
[0043] encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain encrypted information of each data unit;
[0044] Combining the encryption information of each data unit in order from low to high bits to obtain encryption information after encrypting the positioning information;
[0045] The step of changing the order of the 16 subkeys by randomly generating Huffman codes to obtain the 16 new subkeys corresponding to the data units specifically includes the following steps:
[0046] Obtain first data from each of the data units through an initial transposition table;
[0047] Performing an XOR operation on the first data and the 64-bit key to obtain second data;
[0048] Selecting the number of Huffman tree leaf nodes and randomly configuring the weight of each leaf node to generate a random Huffman code;
[0049] Decoding the second data using the random Huffman code to obtain a sequence set;
[0050] Obtain the value corresponding to each element and the position number corresponding to each element in the first 16 elements of the sequence set;
[0051] Sequentially use the value corresponding to each element as a first position number, and use the position number corresponding to each element as a second position number, wherein the first position number and the second position number are both position numbers of the 16 subkeys;
[0052] Sequentially swap the position of the subkey corresponding to the first position number with the position of the subkey corresponding to the second position number to obtain 16 new subkeys;
[0053] The step of encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain the encrypted information of each data unit specifically includes the following steps:
[0054] Dividing the first data into a first part and a second part, each occupying 32 bits;
[0055] Iterate the first part and the second part 16 times in sequence to finally obtain a first data block;
[0056] Reversing the first data block to obtain a second data block;
[0057] Passing the second data block through an IP inverse permutation table to obtain encryption information of the data unit;
[0058] The iterative process includes the following steps:
[0059] The second part of 32 bits is extended through the permutation table to obtain the second part of 48 bits;
[0060] Performing an XOR operation on the second portion of the 48 bits and the first new subkey of the 16 new subkeys to obtain an XORed 48-bit data;
[0061] Compressing the XORed 48-bit data through an S-box to obtain 32-bit data, and outputting the 32-bit data according to an S-box output conversion table;
[0062] XORing the 32-bit data with the 32-bit first part to obtain a new 32-bit second part;
[0063] The 32-bit second part is used as the new 32-bit first part.
[0064] Preferably, before decrypting the message information by using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information, the method further includes:
[0065] Determining whether the message information is valid message information;
[0066] If the message information is valid message information, the process proceeds to the step of decrypting the message information using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information;
[0067] If the message information is invalid, the step of receiving the message information containing encrypted information sent by the vehicle-mounted terminal is entered again.
[0068] Preferably, after decrypting the message information by using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information, the method further includes:
[0069] The positioning information is displayed and / or stored.
[0070] In order to solve the above technical problems, the present application also provides a vehicle-ground safety communication device, which is applied to a vehicle-mounted terminal and includes:
[0071] An acquisition module is used to obtain the positioning information of the current position of the train transmitted by the Beidou satellite, wherein the positioning information is plain text information;
[0072] An encryption module, used for encrypting the positioning information into encrypted information by using a DES encryption algorithm that introduces Huffman coding;
[0073] A generating module, configured to generate message information containing the encrypted information;
[0074] The sending module is used to send the message information to the ground terminal so that the ground terminal receives and decrypts the message information.
[0075] In order to solve the above technical problems, the present application also provides a vehicle-ground safety communication device, which is applied to the ground side and includes:
[0076] A receiving module, configured to receive message information containing encrypted information sent by the vehicle-mounted terminal, wherein the encrypted information is obtained by encrypting the train's current position information transmitted by the Beidou satellite by the vehicle-mounted terminal using the DES encryption algorithm with Huffman coding, and the positioning information is plain text information;
[0077] The obtaining module is used to decrypt the message information by adopting the inverse process of the DES encryption algorithm introduced with Huffman coding to obtain the positioning information.
[0078] In order to solve the above technical problems, the present application also provides a vehicle-ground safety communication device, comprising:
[0079] memory for storing computer programs;
[0080] A processor is configured to implement the steps of the above-mentioned vehicle-ground safety communication method when executing the computer program.
[0081] In order to solve the above technical problems, the present application also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the above-mentioned vehicle-ground safety communication method are implemented.
[0082] The method for secure vehicle-to-ground communication provided in this application is applied to the vehicle-mounted end. First, the positioning information of the current position of the train is obtained from the Beidou satellite; then the positioning information is encrypted into encrypted information using the DES encryption algorithm that introduces Huffman coding and a message containing the encrypted information is generated; finally, the message is sent to the ground end so that the ground end can receive and decrypt the message. In this method, the positioning information of the train sent by the Beidou satellite is plain text information, and the positioning information is encrypted into encrypted information through the encryption algorithm. The generated message containing the encrypted information is cipher text information, and the message information received by the ground receiving end is also cipher text information. It can be seen that this method converts information from plain text transmission to cipher text transmission, thereby improving the security of vehicle-to-ground communication.
[0083] In addition, the method for secure vehicle-to-ground communication provided in this application is applied to the ground side. First, a message containing encrypted information is received from the vehicle-mounted side. The encrypted information is obtained by encrypting the train's current position transmitted from the Beidou satellite using the DES encryption algorithm with Huffman coding, and the positioning information is plaintext information. The message is then decrypted using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information. This method converts information from plaintext transmission to ciphertext transmission, and has the same beneficial effects as the vehicle-to-ground communication method applied to the vehicle-mounted side mentioned above.
[0084] In addition, the present application also provides a device for vehicle-to-ground safety communication, which is respectively applied to the vehicle-mounted end and the ground end, a device for vehicle-to-ground safety communication, and a computer-readable storage medium, which have the same beneficial effects as the above-mentioned vehicle-to-ground safety communication method. BRIEF DESCRIPTION OF THE DRAWINGS
[0085] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0086] Figure 1 This is the application scenario diagram of Beidou communication;
[0087] Figure 2 A flow chart of a vehicle-to-ground safety communication method applied to a vehicle-mounted terminal provided in this embodiment;
[0088] Figure 3 A flowchart for encrypting positioning information into encrypted information by introducing the DES encryption algorithm with Huffman coding;
[0089] Figure 4 A flow chart of a vehicle-to-ground safety communication method applied to a ground terminal provided in this embodiment;
[0090] Figure 5 A structural diagram of a vehicle-to-ground safety communication device applied to a vehicle-mounted terminal provided in one embodiment of the present application;
[0091] Figure 6 A structural diagram of a vehicle-to-ground safety communication device applied to a ground terminal according to an embodiment of the present application;
[0092] Figure 7 A structural diagram of a vehicle-to-ground safety communication device provided in another embodiment of the present application;
[0093] Figure 8 Flowchart of vehicle-ground safety communication provided in an embodiment of the present application. DETAILED DESCRIPTION
[0094] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0095] The core of this application is to provide a method, device and computer-readable storage medium for secure vehicle-ground communication, which are used to improve the security of communication between the vehicle and the ground.
[0096] With the global expansion of the Beidou satellite navigation system, the application areas of Beidou message communication are continuously expanding. Beidou message communication includes Beidou short message communication and Beidou short message communication. The vehicle-ground safety communication device used for Beidou message communication mainly consists of Beidou satellite 1, vehicle-mounted terminal 2, and ground terminal 3. Figure 1 This is the application scenario diagram of Beidou communication. Figure 1 As shown in FIG, the vehicle-mounted terminal 2 includes a vehicle-mounted Beidou terminal 4 and a processor 5, and the ground-mounted terminal 3 includes a ground-mounted Beidou terminal 6 and a ground-mounted receiving center 7. The vehicle-mounted Beidou terminal 4 is serially connected to the processor 5, and the ground-mounted Beidou terminal 6 is serially connected to the ground-mounted receiving center 7. It should be noted that when conducting secure vehicle-to-ground communication, the vehicle-mounted terminal 2 and the ground-mounted receiving center 7 need to be initialized separately. The vehicle-mounted Beidou terminal 4 is initialized to receive Beidou positioning information and send communication requests, while the ground-mounted receiving center 7 receives communication information. The vehicle-mounted terminal 2 and the ground-mounted receiving center 7 negotiate to generate a 64-bit key K.
[0097] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below with reference to the accompanying drawings and specific implementation methods. Figure 2 This embodiment provides a flow chart of a vehicle-ground safety communication method applied to a vehicle-mounted terminal, the method comprising:
[0098] S10: Obtain the positioning information of the current position of the train transmitted by the Beidou satellite, where the positioning information is plain text information.
[0099] The ground client of the Beidou satellite positioning system is essentially a passive device that does not transmit any signals. It determines its location solely by receiving Beidou satellite signals. The signals continuously emitted by Beidou satellites are actually their own position information in space. By multiplying the signal transmission speed (i.e., the speed of light) by the transmission time between the satellite and the ground, the distance between the Beidou satellite and the client can be calculated. In other words, the client receives two raw data from the satellite: the satellite's position and the distance from the client. Theoretically, obtaining a single ground position (x, y, z) requires signals from at least three satellites. After a certain conversion process, the three-dimensional spatial coordinates x, y, and z can be converted into longitude, latitude, and altitude data. Furthermore, Beidou satellites typically carry highly precise atomic clocks, enabling them to provide time synchronization. When Beidou satellites are used for communication between the train and the ground, the onboard Beidou terminal receives the train's current position information transmitted by the Beidou satellites through passive positioning. This positioning information primarily includes parameters such as time, longitude, latitude, speed, and heading. These parameters are pseudo-random codes composed of binary symbols of 1 and 0 that are continuously generated by Beidou satellites during normal operation. The train's current location information, transmitted by the Beidou satellites, is directly displayed in plain text, without any concealment.
[0100] S11: Encrypt the positioning information into encrypted information by using the DES encryption algorithm that introduces Huffman coding.
[0101] In step S10, the vehicle-mounted Beidou terminal obtains positioning information in plain text. When the vehicle and the ground communicate, since the Beidou communication process is transmitted in the form of messages, the processor needs to formulate message information containing positioning information, and then the vehicle-mounted Beidou terminal transmits the message information to the ground Beidou terminal on the ground side, and then the ground Beidou terminal transmits the message to the ground receiving center on the ground side. It can be seen that since data transmission is transmitted in plain text through the Beidou protocol, there is a risk of data leakage. In order to reduce the occurrence of data leakage, the positioning information embodied in plain text is encrypted and transmitted as encrypted information during data transmission.
[0102] Encrypting plaintext information into ciphertext information is usually achieved through a processor. The processor used in this application is an Advanced RISC Machines (ARM) board for data processing. The data processing ARM board encrypts plaintext information into ciphertext information by using an encryption algorithm. Encryption algorithms include symmetric encryption algorithms and asymmetric encryption algorithms. Symmetric encryption algorithms use the same encryption and decryption keys, while asymmetric encryption algorithms use different encryption and decryption keys. Common symmetric encryption algorithms include the Data Encryption Standard (DES) algorithm, the Triple Data Encryption Algorithm (TDEA) algorithm, the Advanced Encryption Standard (AES) algorithm in cryptography, and the common asymmetric encryption algorithm includes the Digital Signature Algorithm (DSA) algorithm. In implementation, since the DES encryption algorithm is a symmetric encryption algorithm, it has the advantages of fast encryption and decryption speed, simple algorithm, and suitability for encrypting large amounts of data, and the key of the DES encryption algorithm only uses 56 bits out of 64 bits, which has high security. Therefore, this application encrypts the positioning information based on the DES encryption algorithm.
[0103] The DES encryption algorithm uses a 56-bit key and an additional 8-bit parity bit (the eighth bit of each group serves as the parity bit), resulting in a maximum block size of 64 bits. This is an iterative block cipher employing a technique called Feistel, in which the encrypted text block is divided into two halves. A cyclic function is applied to one half using a subkey, and the output is then XORed with the other half. The two halves are then swapped, and this process continues, but not swapped for the final round. The DES encryption algorithm uses 16 rounds, employing four basic operations: XOR, permutation, substitution, and shift. When encrypting data using the DES algorithm, 16 subkeys are generated from a 64-bit key. For secure vehicle-to-ground communications, the original 64-bit key is negotiated between the vehicle and the ground receiving center. It should be noted that positioning information is typically larger than 64 bits, and the DES algorithm can only process 64 bits of data at a time. Therefore, when encrypting positioning information, the information is divided into multiple 64-bit data units, with the final data unit being padded with zeros if it contains less than 64 bits. Each data unit is encrypted using the DES encryption algorithm. However, the DES encryption algorithm also has disadvantages. For example, when the key remains unchanged, the order in which the subkeys are used remains unchanged, which provides attackers with an opportunity to launch an exhaustive attack. Therefore, this application introduces Huffman coding to change the order of the subkeys and improve communication security.
[0104] Huffman coding is a type of variable word length coding. This method constructs codewords with the shortest average length of different-length prefixes based entirely on the probability of character occurrence, and is sometimes referred to as optimal coding. When using Huffman coding, the number of leaf nodes in the Huffman tree and the weight of each leaf node are known, and the Huffman code can be generated. When using the DES encryption algorithm that introduces Huffman coding, a certain number of leaf nodes is selected, the weights of each leaf node are randomly assigned, and the Huffman code is randomly generated. The subkey sequence in the DES encryption algorithm is then changed based on the randomly generated Huffman code. In this application, the number of leaf nodes is selected to be 4, and then the weights of each leaf node are randomly assigned to randomly generate the Huffman code. For example, if the Huffman tree has 4 leaf nodes, a, b, c, and d, and the randomly assigned weights are 7, 5, 2, and 4, then the generated Huffman code represents 0 for a, 10 for b, 110 for c, and 111 for d. Huffman coding is used to decode the data, resulting in a decimal sequence set. Since only the order of the original 16 subkeys is being changed, the first 16 elements of the sequence set are selected as valid elements. The positional numbers and values of each of these elements are obtained and used as the positional numbers of the original 16 subkeys. Starting from the first element, the atomic keys corresponding to the positional numbers and the atomic keys corresponding to the values of each element are swapped sequentially, thereby changing the order of the atomic keys. Finally, the location information is encrypted into encrypted information using the DES encryption algorithm that incorporates Huffman coding.
[0105] S12: Generate message information containing encryption information.
[0106] In the Beidou system, Beidou messages are typically used for communication. Beidou messages directly rely on Beidou satellite communications, so they are unrestricted by surrounding infrastructure and can be communicated anytime, anywhere, as long as there is a Beidou satellite signal. Therefore, the encrypted information obtained in step S11 needs to be included in the message protocol. Based on the Beidou message communication protocol, the data processing ARM board formulates the transmission message protocol content containing the ciphertext information, thereby generating message information containing the encrypted information. The message information consists of five parts: "Command," "Length," "User Address," "Message Content," and "Checksum." "Command" is the keyword for this message protocol and occupies 5 bytes; "Length" is the second part of this message and occupies 2 bytes; "User Address" is the sender's address of this message and occupies 3 bytes; "Message Content" is the fourth part of this message and includes a 1-byte message category, a 3-byte recipient address, a 2-byte message length, and a maximum of 1680 bits of message content; and "Checksum" is the fifth part of this message and occupies 1 byte.
[0107] S13: Send the message information to the ground terminal so that the ground terminal receives and decrypts the message information.
[0108] In step S12, the data processing ARM board generates a message containing encrypted information and transmits it to the vehicle-mounted Beidou terminal. The vehicle-mounted Beidou terminal then transmits the encrypted message to the ground-based Beidou terminal, thus achieving encrypted transmission of the Beidou message. The ground-based Beidou terminal transmits the message to the ground receiving center via a serial port. The ground receiving center verifies the validity of the message and performs different operations based on the validity of the message. If the message begins with "$TXXX", it is valid; otherwise, it is invalid. For invalid messages, the system waits for the next set of messages. Valid messages are decrypted using the inverse operation of the DES encryption algorithm with Huffman coding, thus completing secure communication between the vehicle and the ground.
[0109] The method for secure vehicle-to-ground communication provided in this embodiment is applied to the vehicle-mounted terminal. First, positioning information of the train's current position is obtained from the Beidou satellite. This positioning information is then encrypted using the DES encryption algorithm that incorporates Huffman coding, generating a message containing the encrypted information. Finally, the message is sent to the ground terminal for reception and decryption. In this method, the train's positioning information transmitted by the Beidou satellite is plaintext. This information is encrypted using the encryption algorithm, resulting in a ciphertext message containing the encrypted information. The message received by the ground receiving terminal is also ciphertext. This method converts information transmitted from plaintext to ciphertext, improving the security of vehicle-to-ground communication.
[0110] On the basis of the above embodiment, the positioning information is encrypted into encrypted information by introducing the DES encryption algorithm of Huffman coding, including the following: Figure 3 The steps in the flowchart shown are, Figure 3 The flowchart for encrypting the positioning information into encrypted information by introducing the DES encryption algorithm with Huffman coding is as follows:
[0111] S14: Divide the positioning information into multiple data units in 64-bit units.
[0112] Positioning information mainly includes parameters such as time, longitude, latitude, speed, and heading, which are expressed in binary. The bit number of positioning information is usually greater than 64 bits, and the DES encryption algorithm can only process 64 bits of data at a time. Therefore, when encrypting the positioning information, the positioning information needs to be divided into multiple data units in units of 64 bits. The last data unit that is less than 64 bits is padded with 0, and then each data unit is encrypted using the DES encryption algorithm. In practice, there is no restriction on the order in which the data units of the positioning information are divided. As a preferred embodiment, the positioning information is divided from left to right in units of 64 bits. The number of units in the divided data units is related to the positioning information. The longer the positioning information is, the more units there are in the divided data units.
[0113] S15: Generate 16 subkeys based on the 64-bit key generated by negotiation between the vehicle terminal and the ground terminal.
[0114] Since data encryption and transmission are performed between the vehicle-mounted terminal and the ground terminal, the data is encrypted using a key on the vehicle-mounted terminal, and then decrypted on the ground terminal. It should be noted that encryption and decryption may or may not use the same set of keys, and there is no limitation on whether the keys used for encryption and decryption are the same. In this application, the DES encryption algorithm in the symmetric encryption algorithm is used, and encryption and decryption use the same set of keys. Therefore, the vehicle-mounted terminal and the ground terminal need to negotiate to generate keys, and use the same set of keys when encrypting and decrypting data. In the DES encryption algorithm, both plaintext and key are composed of 64-bit binary bits, of which the key actually has 56 bits in total, of which the 8th, 16th, 24th, 32nd, 40th, 48th, 56th, and 64th bits are parity bits. The 64-bit key is converted into a 56-bit key K0 through the abbreviated permutation table P0. Table 1 is the abbreviated permutation table P0. As can be seen from Table 1, after the abbreviated permutation table, the 57th bit of the original 64-bit key becomes the 1st bit, the 49th bit becomes the 2nd bit, the 41st bit becomes the 3rd bit, ... the 4th bit becomes the 56th bit, and finally a new 56-bit key K0 is generated.
[0115] Table 1 Abbreviation substitution table P0
[0116] 57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 55 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 29 21 13 5 28 20 12 4
[0117] The key K0 is divided into two parts, C0D0 and C0D0, each with 28 bits.
[0118] Shift C0D0 left 16 times to create 16 blocks C n D n (1≤n≤16), C n D n The definition is the same as C0D0, and each pair of Cn D n Both the left and right parts are 28 bits, each pair of C n D n There are 56 digits in total. Each pair of C n D n Both are from the previous pair of C n-1 D n-1 As shown in Table 2, the C obtained in the first, second, ninth and sixteenth rounds is n D n They are respectively composed of the previous pair of C n-1 D n-1 Circularly shifted left one position, the remaining rounds of C n D n Both are from the previous pair of C n-1 D n-1 Circularly shift left two bits.
[0119] Table 2 Cyclic shift table
[0120] Number of rounds 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Number of digits 1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1
[0121] Since the plain text and the key are XORed when the plain text is encrypted using a key, it is necessary to ensure that the bits of the plain text and the key are the same when XORed. Therefore, the 56-bit C n D n First, the 56 bits are reduced to 48 bits. Table 3 is the selection transposition table P1. Each pair of C n D n , select the transposition table P1 to perform the transposition and obtain the 48-bit key K n , and finally get 16 48-bit subkeys. For example, after C1D1 selects the transposition table P1, it gets the subkey K1, and after C2D2 selects the transposition table P1, it gets the subkey K2, and so on, and finally get K 15 .
[0122] Table 3 Select transposition table P1
[0123] 14 17 11 24 1 5 2 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32
[0124] S16: The order of the 16 subkeys is changed through randomly generated Huffman codes to obtain 16 new subkeys corresponding to each data unit.
[0125] In the above step S15, 16 48-bit subkeys K0 to K 15The 16 subkeys can be used to encrypt the positioning information directly. However, when the positioning information is encrypted with subkeys in a fixed order, it is easy for attackers to take advantage of it. Therefore, the order of the 16 subkeys can be changed by introducing Huffman coding, and finally a new 16 subkeys with a different order from the original 16 subkeys are obtained for each data unit. For example, the original subkey order is from K0 to K1. 15 After using Huffman coding to change the order of the subkeys, the order of the new 16 subkeys may become K3, K5, K0, K 14 , K 12 , K 10 , K7, K6, K 11 , K9, K8, K2, K4, K1, K 13 , K 15 .
[0126] The order of the 16 new subkeys depends on the Huffman code and the data in each data unit. For example, if the selected Huffman tree has four leaf nodes (a, b, c, and d), and the randomly assigned weights of the leaf nodes are 7, 5, 2, and 4, the resulting Huffman code will have 0 representing a, 10 representing b, 110 representing c, and 111 representing d. If the randomly assigned weights of the leaf nodes are 2, 3, 4, and 5, the resulting Huffman code will have 110 representing a, 111 representing b, 10 representing c, and 0 representing d. Different leaf node weights result in different Huffman codes, and thus different sets of sequences when decoding the same data unit. The order of the 16 new subkeys is also related to this set of sequences. Therefore, different Huffman codes result in different orders of the 16 new subkeys. Once the Huffman code is determined, different sets of sequences are also generated when decoding different data units, and therefore, the order of the 16 new subkeys will also vary for different data units. By introducing Huffman coding, the order of the 16 subkeys can be changed, thereby improving the security of data transmission. The specific implementation process of step 16 is shown below.
[0127] In practice, the steps for obtaining 16 new subkeys for each data unit are the same. Step S16 of obtaining 16 new subkeys corresponding to each data unit by changing the order of the 16 subkeys through randomly generated Huffman coding specifically includes the following steps:
[0128] (1) Obtaining first data from each data unit through an initial transposition table;
[0129] To improve data security, the order of data within a data unit can be changed using an initial transposition table (IP). This example uses the first data unit as an example. First, the 64-bit first data unit is transformed using the initial transposition table (IP) to obtain the 64-bit first data unit. Table 4 shows the initial transposition table (IP). As shown in Table 4, the IP conversion rule converts the 58th bit of the first data unit to the 1st bit of the first data unit. Similarly, the conversion is repeated for all 64 bits of data.
[0130] Table 4 Initial transposition table IP
[0131] 58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8 57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7
[0132] (2) performing an XOR operation on the first data and the 64-bit key to obtain the second data;
[0133] In practice, the first data can be used directly to complete the following steps. However, to improve the security of the encrypted data, preferably, the 64-bit first data is first XORed with the 64-bit key to obtain the second data, and then the second data is used to perform the following steps.
[0134] (3) Select the number of Huffman tree leaf nodes and randomly configure the weight of each leaf node to generate random Huffman code;
[0135] Since Huffman coding is used to change the order of the subkeys, it is necessary to generate a Huffman code first. The Huffman code is related to the number of leaf nodes of the Huffman tree and the weight of the leaf nodes. The number of leaf nodes of the Huffman tree is different, and the weight of each leaf node is different, and the generated Huffman code will also be different. In practice, the number of leaf nodes of the Huffman tree is not limited. The number of leaf nodes of the Huffman tree selected in this application is 4, and then the weight of each leaf node is randomly configured to generate a random Huffman code. If the Huffman tree has 4 leaf nodes a, b, c, d, and the randomly configured weights are 7, 5, 2, and 4, then in the generated Huffman code, 0 represents a, 10 represents b, 110 represents c, and 111 represents d.
[0136] (4) decoding the second data using random Huffman coding to obtain a sequence set;
[0137] Assuming that the generated second data is data C, the generated random Huffman code is used to decode the data C to obtain a coded sequence set {C0, C1, C2...C n}, and the elements in the sequence are expressed in decimal. Taking the above Huffman tree with four leaf nodes a, b, c, and d and randomly configured weights of 7, 5, 2, and 4 as an example, the first data unit is transformed through the initial transposition table IP to obtain the 64-bit first data, and then the first data is XORed with the 64-bit key to obtain the second data. Assuming that the second data obtained is 1010100011100111010111010111001101010010111011011110100010110111, then decoding the second data using Huffman coding results in bbbaadaadabdabdaacbbabdacdbbaabcd, and the obtained coding sequence set is {2, 2, 2, 0, 0, 7, 0, 0, 7, 0, 2, 7, 0, 2, 7, 0, 0, 6, 2, 2, 0, 2, 7, 0, 6, 7, 2, 2, 0, 0, 2, 6, 7}.
[0138] (5) Obtain the value corresponding to each element in the first 16 elements of the sequence set and the position number corresponding to each element;
[0139] Since the number of subkeys is 16, the first 16 elements of the sequence set are considered to be valid sequences, that is, only the first 16 elements need to be obtained in the implementation. Get the values corresponding to each element in the first 16 elements of the sequence set, namely C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C 10 , C 11 , C 12 , C 13 , C 14 , C 15 , the position numbers corresponding to the first 16 elements are the subscripts of C, so the corresponding position numbers are 0, 1, 2, ... 15. For the example listed above, the values corresponding to the first 16 elements are 2, 2, 2, 0, 0, 7, 0, 0, 7, 0, 2, 7, 0, 2, 7, 0, and the position numbers corresponding to the first 16 elements are 0, 2, 3, ... 15.
[0140] (6) The value corresponding to each element is used as the first position sequence number, and the position sequence number corresponding to each element is used as the second position sequence number, where the first position sequence number and the second position sequence number are both the position sequence numbers of the 16 subkeys;
[0141] Starting from C0 to C 15 , if C iThe value of (i ranges from 0 to 15) is j, and the value corresponding to each element is used as the first position number, recorded as i, and the position number corresponding to each element is used as the second position number, recorded as j. Since the first position number and the second position number are both the position numbers of the 16 subkeys, the corresponding subkeys in the original 16 subkeys can be recorded as Key i and Key j .
[0142] (7) The position of the subkey corresponding to the first position number is swapped with the position of the subkey corresponding to the second position number in sequence to obtain 16 new subkeys.
[0143] Sequentially swap the position of the subkey corresponding to the first position number with the position of the subkey corresponding to the second position number, that is, Key i With Key j Exchange positions. Each round only exchanges the positions of two subkeys, and the next round must be performed after the previous round of subkey position exchange is completed. Therefore, the calculation and exchange start from C0 until C 15 So far, a new subkey sequence is obtained. For the example listed above, the final key sequence is 2, 2, 2, 0, 0, 0, 7, 7, 7, 0, 2, 7, 0, 2, 0, 2.
[0144] S17: Using the 16 new subkeys corresponding to each data unit, each data unit is encrypted to obtain encryption information of each data unit.
[0145] Because the DES encryption algorithm can only encrypt 64 bits of data at a time, the location information is divided into multiple 64-bit data units in step S14. Therefore, to encrypt the location information, each data unit must be encrypted separately using the DES encryption algorithm. To improve data transmission security, each data unit is encrypted using the 16 new subkeys generated in step S15, ultimately obtaining the encrypted information for each data unit. In practice, the order in which the data units are encrypted is not limited. Preferably, the data units are encrypted sequentially in the order in which they are received. The specific implementation of step S17 is described below.
[0146] In practice, step S17 of encrypting each data unit using 16 new subkeys to obtain encrypted information of each data unit specifically includes the following steps:
[0147] (1) Divide the first data into a first part and a second part, each occupying 32 bits;
[0148] The first data is divided into a first part and a second part, each occupying 32 bits, which are respectively recorded as L0R0.
[0149] (2) iterating the first part and the second part 16 times in sequence to finally obtain the first data block;
[0150] Perform 16 iterations. For 1≤n≤16, use a function f. Function f has two input data blocks, a 32-bit input data block and a 48-bit input data block, and outputs a 32-bit data block. Define + to represent exclusive OR XOR. For n from 1 to 16, calculate:
[0151] L n =R n-1
[0152] R n =L n-1 +f(R n-1 , K n )
[0153] As can be seen from the above formula, during the iteration process, the original second part becomes the new first part. The original second part and the new subkey are combined to obtain the function f. The original first part and the function f are XORed together to obtain the new second part. The specific iterative process for obtaining the function f is shown below.
[0154] (3) Reversing the first data block to obtain a second data block;
[0155] The following iterative process is used to perform 16 rounds of iterations in sequence to obtain the first data block, and then the first data block is reversed to obtain the second data block, such as the final data block L 16 R 16 , reverse the order of the two data blocks and get R 16 L 16 .
[0156] The iterative process includes the following steps:
[0157] (a) The 32-bit second part is extended through the permutation table to obtain the 48-bit second part;
[0158] Because the function f is generated by applying the original second part to the new subkey, the new subkey is 48 bits, while the original second part is 32 bits. Therefore, an extended permutation table is needed to expand the 32-bit second part to 48 bits. Table 5 shows the extended permutation table. The conversion rule is to convert the 32nd bit of the second part to the 1st bit of the new data. Similarly, the conversion of the 48-bit data is completed.
[0159] Table 5 Extended substitution table
[0160] 32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 13 12 13 14 15 16 17 16 17 18 19 20 21 20 21 22 23 24 25 24 25 26 27 28 29 28 29 30 31 32 1
[0161] (b) performing an XOR operation on the second 48-bit portion and the first of the 16 new subkeys to obtain an XORed 48-bit data;
[0162] After the above-mentioned extended permutation table, the second part is expanded to 48 bits. The 48-bit second part is XORed with the first new subkey among the 16 new subkeys to obtain 48 bits of data.
[0163] (c) compressing the XORed 48-bit data through an S-box to obtain 32-bit data, and outputting the 32-bit data according to the S-box output conversion table;
[0164] The 48-bit data after XOR is divided into 8 groups, each with 6 bits. Each group is replaced by the corresponding S-box replacement table. Each S-box is a table with 4 rows and 16 columns. Table 6 is an 8-box replacement table.
[0165] Table 6 8 S boxes replace Table S box 1
[0166] 14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13
[0167] S Box 2
[0168] 15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10 3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5 0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15 13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9
[0169] S Box 3
[0170] 10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8 13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1 13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7 1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12
[0171] S Box 4
[0172] 7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15 13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 19 10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4 3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14
[0173] S Box 5
[0174] 2 12 4 1 7 10 11 6 5 8 3 15 13 0 14 9 14 11 2 12 4 7 13 1 5 0 15 13 3 9 8 6 4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14 11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3
[0175] S Box 6
[0176] 12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11 10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8 9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6 4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13
[0177] S Box 7
[0178] 4 11 2 14 15 0 8 13 3 12 9 7 5 10 6 1 13 0 11 7 4 9 1 10 14 3 5 12 2 15 8 6 1 4 11 13 12 3 7 14 10 15 6 8 0 5 9 2 6 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12
[0179] S Box 8
[0180]
[0181]
[0182] The S-box replacement rule is to combine the first and last bits of each group into the row number, and the middle four bits into the column number. The row and column numbers are used to find the corresponding S-box data, and this data is converted into binary, achieving the conversion of each 6-bit group into 4-bit after S-box replacement. For example, the 48-bit data after XOR is divided into 8 groups, each with 6 bits. The first group's data is 111111, and the first and last data are 11 respectively. After conversion to decimal, the row number is 3, and the middle four bits are 1111. After conversion to decimal, the column number is 15. In S-box 1, the third row and the 15th column are found, and the corresponding data is 13. The binary bit corresponding to 13 is 1101. This means that each 6-bit group is converted into 4 bits through S-box compression. Each group is subjected to S-box compression in turn, ultimately obtaining 32-bit data. The S-box output is then transformed. Table 7 shows the S-box output conversion table. The conversion table converts the 32-bit input data into 32-bit output data. The conversion rule is to convert the 16th bit of the original data into the 1st bit of the new data. Similarly, the conversion of 32-bit data is completed in sequence, and the final value of the f function is generated after the substitution.
[0183] Table 7 S-box output conversion table
[0184] 16 7 20 21 29 12 28 17 1 15 23 26 5 18 31 10 2 8 24 14 32 27 3 9 19 13 30 6 22 11 4 25
[0185] (d) performing an XOR operation on the 32-bit data and the 32-bit first part to obtain a new 32-bit second part;
[0186] (e) The 32-bit second part is used as the new 32-bit first part.
[0187] The 32-bit data is XORed with the 32-bit first part to obtain a new 32-bit second part; the 32-bit second part is used as the new 32-bit first part, and after the first round of iteration, the data block L1R1 is obtained. According to the above iterative steps, after 16 rounds of iteration, the first data block L is obtained. 16 R 16 .
[0188] (4) Passing the second data block through the IP inverse permutation table to obtain the encryption information of the data unit;
[0189] Such as R 16 L 16 Perform a final IP inverse permutation. Table 8 shows the IP inverse permutation table. The permutation rule is to convert the 40th bit of the original data to the 1st bit of the new data. Similarly, the 64-bit data is converted sequentially, ultimately obtaining the encrypted information after using the DES encryption algorithm with Huffman coding.
[0190] Table 8 IP reverse substitution table
[0191] 40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 31 38 6 46 14 54 22 62 30 37 5 45 13 53 21 61 29 36 4 44 12 52 20 60 28 35 3 43 11 51 19 59 27 34 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25
[0192] S18: The encryption information of each data unit is combined in order from low to high bits to obtain encryption information after encrypting the positioning information.
[0193] Each data unit is encrypted using the steps in the above embodiment to obtain encrypted information for each unit. Since the positioning information is initially divided into multiple data units, the order of the units represents the order of the content in the positioning information. Therefore, after obtaining the encrypted information for each data unit, the units are combined in ascending order to obtain the encrypted information for the encrypted positioning information. This results in positioning information arranged according to a certain pattern, such as parameters representing the same category being clustered in the same section. For example, parameters representing time in the positioning information are clustered in one section, while parameters representing longitude and latitude are clustered in another section.
[0194] This embodiment encrypts the location information into encrypted information using the DES encryption algorithm with Huffman coding. The data is then decoded using a randomly generated Huffman code, and the first 16 elements are selected as a valid sequence. The order of the atomic keys is then swapped based on the relationship between the value of each element and its corresponding position number. This method effectively prevents attackers from exploiting the fixed sequence of 16 subkeys. By changing the order of the subkeys using the DES encryption algorithm with Huffman coding, the security of data transmission is improved.
[0195] Based on the above embodiment, this embodiment further provides a method for vehicle-ground safety communication applied to the ground side. Figure 4 This embodiment provides a flow chart of a vehicle-to-ground safety communication method applied to a ground terminal, the method comprising:
[0196] S19: Receive the message information containing encrypted information sent by the vehicle-mounted terminal, wherein the encrypted information is the positioning information of the current position of the train transmitted from the Beidou satellite by the vehicle-mounted terminal using the DES encryption algorithm introduced with Huffman coding, and the positioning information is plain text information.
[0197] The ground side includes a ground-based Beidou terminal and a ground receiving center. The vehicle-mounted Beidou terminal communicates with the ground-based Beidou terminal via Beidou satellites, using messages. To ensure data security, the train's current location information transmitted by the Beidou satellites is encrypted before Beidou satellite communication begins. Therefore, the ground-based Beidou terminal receives the encrypted message sent by the vehicle-mounted Beidou terminal. The data encryption uses the DES encryption algorithm with Huffman coding.
[0198] S20: Decrypt the message information using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information.
[0199] In step S19, the ground-based BeiDou terminal receives a message containing encrypted information. Encrypted information cannot be used directly, so the message needs to be decrypted. The DES encryption algorithm with Huffman coding is a symmetric encryption algorithm, so the same key is used for encryption and decryption. Therefore, the message is decrypted using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information.
[0200] The specific decryption process is as follows: the ground receiving center receives the message information transmitted from the ground Beidou terminal, extracts the encrypted information from the message information, and then divides the encrypted information into several units in 64-bit units. It uses the inverse process of the DES encryption algorithm with Huffman coding to decrypt the information, and uses the reverse order of the new sub-key sequence obtained in step S16 as the order of the decryption sub-key. Each divided data unit is restored from ciphertext to plaintext, and finally the plaintext of each data unit is combined together to obtain complete positioning information in plaintext.
[0201] It should be noted that during implementation, message decryption may fail. Therefore, before decrypting the message, the message can be validated. If it is valid, the message is decrypted. If not, the message containing the encrypted information is received from the vehicle terminal.
[0202] The method for secure vehicle-to-ground communication on the ground side provided in this embodiment first receives a message containing encrypted information from the vehicle side. The encrypted information is obtained by encrypting the train's current position transmitted from the Beidou satellite using the DES encryption algorithm with Huffman coding, while the positioning information is plaintext. The message is then decrypted using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information. This method converts information from plaintext transmission to ciphertext transmission, achieving the same beneficial effects as the vehicle-to-ground communication method mentioned above.
[0203] In practice, the specific steps of using the DES encryption algorithm with Huffman coding to encrypt information are as follows:
[0204] Divide the positioning information into multiple data units in 64-bit units;
[0205] Based on the 64-bit key generated by negotiation between the vehicle terminal and the ground terminal, 16 sub-keys are generated;
[0206] By changing the order of the 16 subkeys through randomly generated Huffman codes, 16 new subkeys corresponding to each data unit are obtained.
[0207] Each data unit is encrypted using the 16 new subkeys corresponding to each data unit to obtain the encrypted information of each data unit;
[0208] Combining the encrypted information of each data unit in order from low to high bits to obtain encrypted information after encrypting the positioning information;
[0209] The steps of changing the order of the 16 subkeys by randomly generating Huffman codes to obtain the 16 new subkeys corresponding to each data unit are as follows:
[0210] Obtain first data from each data unit through an initial transposition table;
[0211] Performing an XOR operation on the first data and the 64-bit key to obtain the second data;
[0212] Select the number of Huffman leaf nodes and randomly configure the weight of each leaf node to generate random Huffman code;
[0213] Decoding the second data using random Huffman coding to obtain a sequence set;
[0214] Get the value corresponding to each element in the first 16 elements of the sequence set and the corresponding position number of each element;
[0215] The value corresponding to each element is used as the first position serial number, and the position serial number corresponding to each element is used as the second position serial number, where the first position serial number and the second position serial number are both the position serial numbers of the 16 subkeys;
[0216] Sequentially swap the position of the subkey corresponding to the first position number with the position of the subkey corresponding to the second position number to obtain 16 new subkeys;
[0217] The steps of encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain the encrypted information of each data unit specifically include the following:
[0218] Divide the first data into a first part and a second part, each occupying 32 bits;
[0219] Iterate the first part and the second part 16 times in sequence to finally obtain the first data block;
[0220] Reversing the first data block to obtain a second data block;
[0221] Pass the second data block through the IP inverse permutation table to obtain the encryption information of the data unit;
[0222] The iterative process includes the following steps:
[0223] The second part of 32 bits is extended through the permutation table to obtain the second part of 48 bits;
[0224] Perform an XOR operation on the second part of the 48 bits and the first new subkey among the 16 new subkeys to obtain the XORed 48-bit data;
[0225] The 48-bit data after XOR is compressed by the S-box to obtain 32-bit data, and the 32-bit data is output according to the S-box output conversion table;
[0226] XOR the 32-bit data with the 32-bit first part to get a new 32-bit second part;
[0227] The 32-bit second part is used as the new 32-bit first part.
[0228] The specific steps for encrypting information using the DES encryption algorithm with Huffman coding, as provided in this embodiment, are the same as those for encrypting information using the DES encryption algorithm with Huffman coding, as applied to the vehicle-mounted terminal. These steps have been described in detail in the embodiment for the vehicle-mounted terminal and will not be repeated here. Furthermore, these steps achieve the same beneficial effects as those for encrypting information using the DES encryption algorithm with Huffman coding, as applied to the vehicle-mounted terminal.
[0229] Based on the above embodiment, in order to improve data transmission efficiency, after receiving the message information, the ground terminal only decrypts the valid message information, does not decrypt the invalid message information, and directly waits for the next set of message information. Therefore, before decrypting the message information using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information, it also includes:
[0230] Determine whether the message information is valid message information;
[0231] If the message information is valid, the process proceeds to the step of decrypting the message information using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information;
[0232] If the message information is invalid, the process re-enters the step of receiving the message information containing the encrypted information sent by the vehicle-mounted terminal.
[0233] The ground receiving center is connected to the ground-based Beidou receiving terminal via serial communication. The ground-based Beidou terminal receives messages from the vehicle-mounted terminal and transmits them to the ground receiving center via serial communication. The ground receiving center verifies the validity of the messages: according to the Beidou communication protocol, if the message begins with "$TXXX", it is valid; otherwise, it is invalid. For valid messages, the system proceeds to decrypt the message using the inverse process of the DES encryption algorithm with Huffman coding to obtain positioning information. For invalid messages, to ensure that the ground terminal receives valid messages, it waits for the next set of messages and re-enters the step of receiving the encrypted message sent by the vehicle-mounted terminal.
[0234] This embodiment provides a method for determining whether the message is valid before decrypting it using the inverse process of the DES encryption algorithm with Huffman coding to obtain positioning information. Through this validity check, only valid messages are decrypted, while invalid messages are not decrypted. This method can effectively improve data transmission efficiency.
[0235] In practice, after the ground receiving center obtains the positioning information in plain text, in order to facilitate viewing of the data, the data is usually displayed or stored on a display or memory after receiving the positioning information. The data can also be displayed and stored. Therefore, after decrypting the message information using the inverse process of the DES encryption algorithm that introduces Huffman coding to obtain the positioning information, the following is also included:
[0236] Display and / or store positioning information.
[0237] After receiving the positioning information, the ground receiving center stores the positioning information in a memory, usually in a database; and the ground receiving center includes a display that can display the received positioning information for easy monitoring.
[0238] This embodiment provides a method for decrypting the message using the inverse process of the DES encryption algorithm with Huffman coding to obtain the location information, further comprising: displaying and / or storing the location information. After receiving the location information, this embodiment displays or stores the location information. Displaying the location information allows monitoring of the location information, while storing the location information allows viewing of the location information.
[0239] In the above embodiments, the vehicle-to-ground safety communication method is described in detail. This application also provides corresponding embodiments of a vehicle-to-ground safety communication device. It should be noted that this application describes the embodiments of the device portion from two perspectives: one is based on the functional module perspective, and the other is based on the hardware perspective. The device based on the functional module perspective includes a vehicle-to-ground safety communication device applied to the vehicle end and a vehicle-to-ground safety communication device applied to the ground end.
[0240] Figure 5 This is a structural diagram of a vehicle-to-ground safety communication device for a vehicle-mounted terminal provided in one embodiment of the present application. This embodiment, based on the perspective of functional modules, includes:
[0241] The acquisition module 10 is used to obtain the positioning information of the current position of the train transmitted by the Beidou satellite, wherein the positioning information is plain text information;
[0242] The encryption module 11 is used to encrypt the positioning information into encrypted information by using the DES encryption algorithm that introduces Huffman coding;
[0243] A generating module 12, configured to generate message information containing encrypted information;
[0244] The sending module 13 is used to send message information to the ground terminal so that the ground terminal receives and decrypts the message information.
[0245] Since the embodiments of the apparatus part correspond to the embodiments of the method part, please refer to the description of the embodiments of the method part for the embodiments of the apparatus part, and they will not be repeated here.
[0246] The vehicle-to-ground security communication device provided in this embodiment, applied to the vehicle-mounted terminal, first obtains positioning information through the acquisition module, then encrypts the positioning information into encrypted information through the encryption module using the DES encryption algorithm that introduces Huffman coding, then generates message information containing the encrypted information through the generation module, and finally sends the message information to the ground terminal through the sending module so that the ground terminal can receive and decrypt the message information. In this device, the positioning information of the train sent by the Beidou satellite is plaintext information. The positioning information is encrypted into encrypted information through the encryption algorithm, and the generated message information containing the encrypted information is ciphertext information. The message information received by the ground receiving terminal is also ciphertext information. Therefore, this device converts information from plaintext transmission to ciphertext transmission, thereby improving the security of vehicle-to-ground communication.
[0247] Figure 6 This is a structural diagram of a vehicle-to-ground safety communication device applied to the ground side according to one embodiment of the present application. This embodiment is based on the perspective of functional modules and includes:
[0248] The receiving module 14 is used to receive message information containing encrypted information sent by the vehicle-mounted terminal, wherein the encrypted information is obtained by encrypting the train's current position information transmitted by the Beidou satellite by the vehicle-mounted terminal using the DES encryption algorithm with the introduction of Huffman coding, and the positioning information is plain text information;
[0249] The obtaining module 15 is used to decrypt the message information by adopting the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information.
[0250] Since the embodiments of the apparatus part correspond to the embodiments of the method part, please refer to the description of the embodiments of the method part for the embodiments of the apparatus part, and they will not be repeated here.
[0251] The ground-based secure vehicle-to-ground communication device provided in this embodiment first receives a message containing encrypted information from the vehicle via a receiving module. Then, the acquisition module decrypts the message using the inverse process of the DES encryption algorithm with Huffman coding to obtain positioning information. In this device, the train's positioning information transmitted by the Beidou satellite is plaintext. This information is encrypted into encrypted information using an encryption algorithm. The resulting message containing the encrypted information is ciphertext, and the message received by the ground receiving end is also ciphertext. This device converts information from plaintext to ciphertext, improving the security of vehicle-to-ground communication.
[0252] Figure 7 This is a structural diagram of a vehicle-ground safety communication device provided in another embodiment of the present application. This embodiment is based on the hardware perspective, such as Figure 7 As shown, the vehicle-ground safety communication device includes:
[0253] Memory 20, for storing computer programs;
[0254] The processor 21 is configured to implement the steps of the vehicle-ground safety communication method mentioned in the above embodiment when executing a computer program.
[0255] The vehicle-ground safety communication device provided in this embodiment may include but is not limited to a smart phone, a tablet computer, a laptop computer, or a desktop computer.
[0256] Among them, the processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 21 can be implemented in at least one hardware form of digital signal processing (DSP), field-programmable gate array (FPGA), and programmable logic array (PLA). The processor 21 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a central processing unit (CPU); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 21 may be integrated with a graphics processing unit (GPU), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 21 may also include an artificial intelligence (AI) processor, which is used to process computing operations related to machine learning.
[0257] The memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include high-speed random access memory, and non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In this embodiment, the memory 20 is at least used to store the following computer program 201, wherein, after the computer program is loaded and executed by the processor 21, it can implement the relevant steps of the vehicle-ground safety communication method disclosed in any of the aforementioned embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, etc., and the storage method may be temporary storage or permanent storage. Among them, the operating system 202 may include Windows, Unix, Linux, etc. The data 203 may include but is not limited to the data involved in the above-mentioned vehicle-ground safety communication method, etc.
[0258] In some embodiments, the vehicle-ground safety communication device may further include a display screen 22 , an input / output interface 23 , a communication interface 24 , a power supply 25 , and a communication bus 26 .
[0259] Those skilled in the art will understand that Figure 7 The structure shown in the figure does not constitute a limitation to the vehicle-ground safety communication device, and may include more or fewer components than shown in the figure.
[0260] The vehicle-ground safety communication device provided in an embodiment of the present application includes a memory and a processor. When the processor executes the program stored in the memory, it can implement the following method: a vehicle-ground safety communication method, with the same effect as above.
[0261] Finally, the present application also provides an embodiment corresponding to a computer-readable storage medium. The computer-readable storage medium stores a computer program, which, when executed by a processor, implements the steps described in the above method embodiment (which may be a method corresponding to a vehicle-mounted terminal, a method corresponding to a ground terminal, or a method corresponding to both a vehicle-mounted terminal and a ground terminal).
[0262] It is understandable that if the method in the above embodiment 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 prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium and executes all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0263] The computer-readable storage medium provided in this application includes the above-mentioned vehicle-ground safety communication method, and the effect is the same as above.
[0264] In order to enable those skilled in the art to better understand the technical solution of this application, Figure 8 Further details of the above application are given below. Figure 8 This is a flowchart of vehicle-ground safety communication provided in an embodiment of the present application. The flowchart includes:
[0265] S21: Initialize the vehicle-mounted terminal and the ground receiving center and negotiate to generate a key;
[0266] S22: The vehicle-mounted Beidou terminal obtains positioning information;
[0267] S23: Grouping and encrypting the positioning information to generate encrypted information;
[0268] S24: Generate message information containing encrypted information;
[0269] S25: The vehicle-mounted Beidou terminal sends message information;
[0270] S26: The ground Beidou terminal receives the message information;
[0271] S27: The ground receiving center checks the validity of the message information; if it is a valid message information, it enters step S29; if it is an invalid message, it enters step S28 to wait for the next set of message information and re-enters step S26.
[0272] S28: Wait until the next set of message information;
[0273] S29: The ground receiving center extracts the encrypted information and decrypts it;
[0274] S30: Display or store the positioning information.
[0275] The above describes the flowchart of the vehicle-ground safety communication provided by the embodiment of the present application, which has the same beneficial effects as the above-mentioned vehicle-ground safety communication method.
[0276] The above is a detailed introduction to a method, device and computer-readable storage medium for vehicle-ground safety communication provided by the present application. The various embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the various embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part description. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of this application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the scope of protection of the claims of this application.
[0277] It should also be noted that, in this specification, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus comprising the element.
Claims
1. A method for vehicle-ground safety communication, characterized in that: Applied to the vehicle-mounted terminal, the method includes: Obtaining positioning information of the train's current position transmitted by the Beidou satellite, wherein the positioning information is plain text information; Encrypting the positioning information into encrypted information by using a DES encryption algorithm that introduces Huffman coding; generating message information including the encrypted information; Sending the message information to the ground terminal so that the ground terminal receives and decrypts the message information; The step of encrypting the positioning information into encrypted information by using a DES encryption algorithm that introduces Huffman coding includes: Divide the positioning information into multiple data units in units of 64 bits; Generate 16 subkeys based on the 64-bit key generated by negotiation between the vehicle-mounted terminal and the ground terminal; Changing the order of the 16 subkeys by randomly generated Huffman coding to obtain 16 new subkeys corresponding to each data unit; encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain encrypted information of each data unit; Combining the encryption information of each data unit in order from low to high bits to obtain encryption information after encrypting the positioning information; The step of encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain the encrypted information of each data unit specifically includes the following steps: Divide the first data into a first part and a second part, each occupying 32 bits; wherein the first data is data obtained by applying the initial transposition table to each of the data units; Iterate the first part and the second part 16 times in sequence to finally obtain a first data block; Reversing the first data block to obtain a second data block; Passing the second data block through an IP inverse permutation table to obtain encryption information of the data unit; The iterative process includes the following steps: The second part of 32 bits is extended through the permutation table to obtain the second part of 48 bits; Performing an XOR operation on the second portion of the 48 bits and the first new subkey of the 16 new subkeys to obtain an XORed 48-bit data; Compressing the XORed 48-bit data through an S-box to obtain 32-bit data, and outputting the 32-bit data according to an S-box output conversion table; XORing the 32-bit data with the 32-bit first part to obtain a new 32-bit second part; The second part of the 32 bits is used as the new first part of the 32 bits; The step of changing the order of the 16 subkeys by randomly generating Huffman codes to obtain the 16 new subkeys corresponding to the data units specifically includes the following steps: Obtain first data from each of the data units through an initial transposition table; Performing an XOR operation on the first data and the 64-bit key to obtain second data; Selecting the number of Huffman tree leaf nodes and randomly configuring the weight of each leaf node to generate a random Huffman code; Decoding the second data using the random Huffman code to obtain a sequence set; Obtain the value corresponding to each element and the position number corresponding to each element in the first 16 elements of the sequence set; Sequentially use the value corresponding to each element as a first position number, and use the position number corresponding to each element as a second position number, wherein the first position number and the second position number are both position numbers of the 16 subkeys; The position of the subkey corresponding to the first position number is exchanged with the position of the subkey corresponding to the second position number in sequence to obtain 16 new subkeys.
2. A method for vehicle-ground safety communication, characterized in that: Applied to the ground side, the method includes: Receiving message information containing encrypted information sent by the vehicle-mounted terminal, wherein the encrypted information is obtained by encrypting the positioning information of the current position of the train transmitted by the Beidou satellite by the vehicle-mounted terminal using the DES encryption algorithm introduced with Huffman coding, and the positioning information is plain text information; Decrypting the message information using the inverse process of the DES encryption algorithm introduced with Huffman coding to obtain the positioning information; The specific steps of encrypting the encrypted information using the DES encryption algorithm with Huffman coding are as follows: Divide the positioning information into multiple data units in units of 64 bits; Generate 16 subkeys based on the 64-bit key generated by negotiation between the vehicle-mounted terminal and the ground terminal; Changing the order of the 16 subkeys by randomly generated Huffman coding to obtain 16 new subkeys corresponding to each data unit; encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain encrypted information of each data unit; Combining the encryption information of each data unit in order from low to high bits to obtain encryption information after encrypting the positioning information; The step of encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain the encrypted information of each data unit specifically includes the following steps: Divide the first data into a first part and a second part, each occupying 32 bits; wherein the first data is data obtained by applying the initial transposition table to each of the data units; Iterate the first part and the second part 16 times in sequence to finally obtain a first data block; Reversing the first data block to obtain a second data block; Passing the second data block through an IP inverse permutation table to obtain encryption information of the data unit; The iterative process includes the following steps: The second part of 32 bits is extended through the permutation table to obtain the second part of 48 bits; Performing an XOR operation on the second portion of the 48 bits and the first new subkey of the 16 new subkeys to obtain an XORed 48-bit data; Compressing the XORed 48-bit data through an S-box to obtain 32-bit data, and outputting the 32-bit data according to an S-box output conversion table; XORing the 32-bit data with the 32-bit first part to obtain a new 32-bit second part; The second part of the 32 bits is used as the new first part of the 32 bits; The step of changing the order of the 16 subkeys by randomly generating Huffman codes to obtain the 16 new subkeys corresponding to the data units specifically includes the following steps: Obtain first data from each of the data units through an initial transposition table; Performing an XOR operation on the first data and the 64-bit key to obtain second data; Selecting the number of Huffman tree leaf nodes and randomly configuring the weight of each leaf node to generate a random Huffman code; Decoding the second data using the random Huffman code to obtain a sequence set; Obtain the value corresponding to each element and the position number corresponding to each element in the first 16 elements of the sequence set; Sequentially use the value corresponding to each element as a first position number, and use the position number corresponding to each element as a second position number, wherein the first position number and the second position number are both position numbers of the 16 subkeys; The position of the subkey corresponding to the first position number is exchanged with the position of the subkey corresponding to the second position number in sequence to obtain 16 new subkeys.
3. The vehicle-ground safety communication method according to claim 2, characterized in that: Before decrypting the message information by using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information, the method further includes: Determining whether the message information is valid message information; If the message information is valid message information, the process proceeds to the step of decrypting the message information using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information; If the message information is invalid, the step of receiving the message information containing encrypted information sent by the vehicle-mounted terminal is entered again.
4. The vehicle-ground safety communication method according to claim 3, characterized in that: After decrypting the message information by using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information, the method further includes: The positioning information is displayed and / or stored.
5. A vehicle-ground safety communication device, characterized in that: Applied to vehicle terminals, including: An acquisition module is used to obtain the positioning information of the current position of the train transmitted by the Beidou satellite, wherein the positioning information is plain text information; An encryption module, used for encrypting the positioning information into encrypted information by using a DES encryption algorithm that introduces Huffman coding; A generating module, configured to generate message information containing the encrypted information; A sending module, configured to send the message information to a ground terminal so that the ground terminal receives and decrypts the message information; The encryption module is specifically configured to divide the positioning information into multiple data units in 64-bit units; Generate 16 subkeys based on the 64-bit key generated by negotiation between the vehicle-mounted terminal and the ground terminal; Changing the order of the 16 subkeys by randomly generated Huffman coding to obtain 16 new subkeys corresponding to each data unit; encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain encrypted information of each data unit; Combining the encryption information of each data unit in order from low to high bits to obtain encryption information after encrypting the positioning information; The steps of encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain the encrypted information of each data unit specifically include the following steps: Divide the first data into a first part and a second part, each occupying 32 bits; wherein the first data is data obtained by applying the initial transposition table to each of the data units; Iterate the first part and the second part 16 times in sequence to finally obtain a first data block; Reversing the first data block to obtain a second data block; Passing the second data block through an IP inverse permutation table to obtain encryption information of the data unit; The iterative process includes the following steps: The second part of 32 bits is extended through the permutation table to obtain the second part of 48 bits; Performing an XOR operation on the second portion of the 48 bits and the first new subkey of the 16 new subkeys to obtain an XORed 48-bit data; Compressing the XORed 48-bit data through an S-box to obtain 32-bit data, and outputting the 32-bit data according to an S-box output conversion table; XORing the 32-bit data with the 32-bit first part to obtain a new 32-bit second part; The second part of the 32 bits is used as the new first part of the 32 bits; The step of changing the order of the 16 subkeys by randomly generating Huffman codes to obtain the 16 new subkeys corresponding to the data units specifically includes the following steps: Obtain first data from each of the data units through an initial transposition table; Performing an XOR operation on the first data and the 64-bit key to obtain second data; Selecting the number of Huffman tree leaf nodes and randomly configuring the weight of each leaf node to generate a random Huffman code; Decoding the second data using the random Huffman code to obtain a sequence set; Obtain the value corresponding to each element and the position number corresponding to each element in the first 16 elements of the sequence set; Sequentially use the value corresponding to each element as a first position number, and use the position number corresponding to each element as a second position number, wherein the first position number and the second position number are both position numbers of the 16 subkeys; The position of the subkey corresponding to the first position number is exchanged with the position of the subkey corresponding to the second position number in sequence to obtain 16 new subkeys.
6. A vehicle-ground safety communication device, characterized in that: Applied to the ground side, including: A receiving module, configured to receive message information containing encrypted information sent by the vehicle-mounted terminal, wherein the encrypted information is obtained by encrypting the train's current position information transmitted by the Beidou satellite by the vehicle-mounted terminal using the DES encryption algorithm with Huffman coding, and the positioning information is plain text information; An obtaining module, configured to decrypt the message information using the inverse process of the DES encryption algorithm with Huffman coding to obtain the positioning information; The specific steps of encrypting the encrypted information using the DES encryption algorithm with Huffman coding are as follows: Divide the positioning information into multiple data units in units of 64 bits; Generate 16 subkeys based on the 64-bit key generated by negotiation between the vehicle-mounted terminal and the ground terminal; Changing the order of the 16 subkeys by randomly generated Huffman coding to obtain 16 new subkeys corresponding to each data unit; encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain encrypted information of each data unit; Combining the encryption information of each data unit in order from low to high bits to obtain encryption information after encrypting the positioning information; The step of encrypting each data unit using the 16 new subkeys corresponding to each data unit to obtain the encrypted information of each data unit specifically includes the following steps: Divide the first data into a first part and a second part, each occupying 32 bits; wherein the first data is data obtained by applying the initial transposition table to each of the data units; Iterate the first part and the second part 16 times in sequence to finally obtain a first data block; Reversing the first data block to obtain a second data block; Passing the second data block through an IP inverse permutation table to obtain encryption information of the data unit; The iterative process includes the following steps: The second part of 32 bits is extended through the permutation table to obtain the second part of 48 bits; Performing an XOR operation on the second portion of the 48 bits and the first new subkey of the 16 new subkeys to obtain an XORed 48-bit data; Compressing the XORed 48-bit data through an S-box to obtain 32-bit data, and outputting the 32-bit data according to an S-box output conversion table; XORing the 32-bit data with the 32-bit first part to obtain a new 32-bit second part; The second part of the 32 bits is used as the new first part of the 32 bits; The step of changing the order of the 16 subkeys by randomly generating Huffman codes to obtain the 16 new subkeys corresponding to the data units specifically includes the following steps: Obtain first data from each of the data units through an initial transposition table; Performing an XOR operation on the first data and the 64-bit key to obtain second data; Selecting the number of Huffman tree leaf nodes and randomly configuring the weight of each leaf node to generate a random Huffman code; Decoding the second data using the random Huffman code to obtain a sequence set; Obtain the value corresponding to each element and the position number corresponding to each element in the first 16 elements of the sequence set; Sequentially use the value corresponding to each element as a first position number, and use the position number corresponding to each element as a second position number, wherein the first position number and the second position number are both position numbers of the 16 subkeys; The position of the subkey corresponding to the first position number is exchanged with the position of the subkey corresponding to the second position number in sequence to obtain 16 new subkeys.
7. A vehicle-ground safety communication device, characterized in that: include: memory for storing computer programs; A processor is configured to implement the steps of the vehicle-ground safety communication method according to any one of claims 1 to 4 when executing the computer program.
8. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the vehicle-ground safety communication method according to any one of claims 1 to 4 are implemented.
Citation Information
Patent Citations
Vehicle information encryption transmission system based on Beidou
CN105974452A
Data transmission method for grid mobile terminal based on improved DES encryption algorithm
CN108737070A
Beidou-based vehicle monitoring and voice scheduling system
CN111313962A