Data transmission method, electronic device, storage medium and program product for unmanned vehicle
By using private and public key encryption technology in the unmanned vehicle and the client to verify information and generate shared keys, the problem of poor data transmission security in the unmanned vehicle is solved, and secure data transmission between the unmanned vehicle and the client is achieved.
Patent Information
- Application Number
- CN202510954733.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-11
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2045-07-11
AI Technical Summary
The data transmission between the unmanned vehicle and the client is at risk of being tampered with, resulting in poor data transmission security.
By storing private and public keys in the unmanned vehicle and the client, encryption and decryption technology is used to verify the client and unmanned vehicle information, and a shared key is generated to realize encryption and decryption of data transmission, ensuring the security of information.
It improves the security of data transmission between the unmanned vehicle and the client, ensuring that users can reliably control the unmanned vehicle and preventing data tampering.
Smart Images

Figure CN120455008B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a data transmission method, electronic equipment, storage medium and program product for an unmanned vehicle. Background Art
[0002] With the development of autonomous driving technology, the application of autonomous vehicles is becoming increasingly widespread. For example, autonomous logistics vehicles, autonomous street sweepers, and autonomous delivery vehicles are widely used in their respective fields. The popularity of autonomous vehicles has significantly increased user demand for near-field control of autonomous vehicles. Scenarios such as fault repair and remote charging all require efficient and reliable near-field control solutions.
[0003] In the existing technology, after the unmanned vehicle establishes a communication connection with the client, the unmanned vehicle can receive control instructions sent by the client and send unmanned vehicle data to the client based on the communication connection, that is, realize the user's near-field control of the unmanned vehicle.
[0004] However, based on the existing technology solution, the control instructions sent by the client and the unmanned vehicle data sent to the client are at risk of being tampered with, resulting in poor data transmission security. Summary of the Invention
[0005] The data transmission method, electronic device, storage medium and program product for an unmanned vehicle provided in the embodiments of the present application are used to solve the problem of poor data transmission security.
[0006] In the first aspect, an embodiment of the present application provides a data transmission method for an unmanned vehicle, which is applied to an unmanned vehicle, wherein a first vehicle private key and a first client public key are stored in the unmanned vehicle, including: receiving a communication connection request sent by any client, and establishing a communication connection with the client according to the communication connection request; receiving encrypted client information sent by the client through the communication connection; a second client private key and a second vehicle public key are stored in the client; the encrypted client information is generated by the client by encrypting the client information according to the second client private key; the encrypted client information is decrypted using the first client public key, and if the first client public key matches the second client private key, the client information is obtained; the client information is verified using preset client verification information; if the verification passes, the unmanned vehicle information of the unmanned vehicle is collected. information; encrypt the unmanned vehicle information according to the first vehicle private key to generate encrypted unmanned vehicle information; send the encrypted unmanned vehicle information to the client, so that the client decrypts the encrypted unmanned vehicle information according to the second vehicle public key. If the second vehicle public key matches the first vehicle private key, the unmanned vehicle information is obtained; use the preset unmanned vehicle verification information to verify the unmanned vehicle information; if the verification is successful, generate a connection success message; generate a first shared key according to the connection success message, the second client private key and the second vehicle public key; receive the connection success message sent by the client, and generate a second shared key according to the connection success message, the first vehicle private key and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client.
[0007] In a possible embodiment, the client information is verified using preset client verification information, including: obtaining the client identifier, user identifier, client information collection time and client location information of the client based on the client information; judging whether the terminal device on which the client is installed is within a preset electronic fence based on the client location information; if the terminal device is within the preset electronic fence, matching the client information collection time with multiple client verification information in the preset client verification information to obtain target client verification information; and verifying the client identifier and user identifier based on the target client verification information.
[0008] In a possible implementation, after verifying the client information using preset client verification information, the method further includes: generating client verification failure information if the verification fails; and sending the client verification failure information to the client so that the client outputs the client verification failure information.
[0009] In one possible implementation, after generating the second shared key based on the connection success information, the first vehicle private key, and the first client public key, the method further includes: receiving encrypted control instruction information sent by the client; the encrypted control instruction information is obtained by the client encrypting the control instruction information based on the first shared key; decrypting the encrypted control instruction information based on the second shared key to obtain the control instruction information; obtaining current position information and target parking position information of the unmanned vehicle based on the control instruction information; obtaining a driving path and a predicted driving duration of the unmanned vehicle based on the current position information and the target parking position information; determining at least one temporary parking location during driving according to the driving path of the unmanned vehicle; if the target parking location corresponding to the target parking location information cannot be reached within the predicted driving duration, determining a target temporary parking location from at least one temporary parking location based on the driving end position corresponding to the end of the predicted driving duration, so that the unmanned vehicle drives to the target temporary parking location; after driving to the target temporary parking location, disconnecting the communication connection with the client, and executing the steps of receiving a communication connection request sent by any client and establishing a communication connection with the client based on the communication connection request.
[0010] In the second aspect, an embodiment of the present application provides a data transmission method for an unmanned vehicle, which is applied to a client, wherein a second client private key and a second vehicle public key are stored in the client, including: sending a communication connection request to any unmanned vehicle, so that the unmanned vehicle establishes a communication connection with the client according to the communication connection request; a first vehicle private key and a first client public key are stored in the unmanned vehicle; client information is encrypting according to the second client private key to generate encrypted client information; the encrypted client information is sent to the unmanned vehicle through the communication connection, so that the unmanned vehicle uses the first client public key to decrypt the encrypted client information, and if the first client public key matches the second client private key, the client information is obtained; the client information is verified using preset client verification information; if the verification passes, the unmanned vehicle's unmanned information is collected. vehicle information; encrypt the unmanned vehicle information according to the first vehicle private key to generate encrypted unmanned vehicle information; receive the encrypted unmanned vehicle information sent by the unmanned vehicle; decrypt the encrypted unmanned vehicle information according to the second vehicle public key, and if the second vehicle public key matches the first vehicle private key, the unmanned vehicle collection information is obtained; use the preset unmanned vehicle verification information to verify the unmanned vehicle information; if the verification is successful, generate a connection success message; generate a first shared key according to the connection success message, the second client private key and the second vehicle public key; send the connection success message to the unmanned vehicle, so that the unmanned vehicle generates a second shared key according to the connection success message, the first vehicle private key and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client.
[0011] In a possible implementation, after verifying the unmanned vehicle information using the preset unmanned vehicle verification information, the method further includes: generating unmanned vehicle verification failure information if the verification fails; and outputting the unmanned vehicle verification failure information.
[0012] In a third aspect, an embodiment of the present application provides a data transmission device for an unmanned vehicle, which is applied to the unmanned vehicle. The unmanned vehicle stores a first vehicle private key and a first client public key, including:
[0013] A first receiving module is configured to receive a communication connection request sent by any client and establish a communication connection with the client according to the communication connection request;
[0014] A first processing module is configured to receive, via the communication connection, encrypted client information sent by the client; the client stores a second client private key and a second vehicle public key; the encrypted client information is generated by the client encrypting the client information using the second client private key; decrypting the encrypted client information using the first client public key, and obtaining the client information if the first client public key matches the second client private key; verifying the client information using preset client verification information; if the verification is successful, collecting the unmanned vehicle information of the unmanned vehicle; and encrypting the unmanned vehicle information using the first vehicle private key to generate encrypted unmanned vehicle information;
[0015] a first sending module, configured to send the encrypted unmanned vehicle information to the client, so that the client decrypts the encrypted unmanned vehicle information according to the second vehicle public key, obtains the unmanned vehicle information if the second vehicle public key matches the first vehicle private key, verifies the unmanned vehicle information using preset unmanned vehicle verification information, generates a connection success message if the verification succeeds, and generates a first shared key according to the connection success message, the second client private key, and the second vehicle public key;
[0016] The first receiving module is further used to receive the connection success information sent by the client, and generate a second shared key based on the connection success information, the first vehicle private key and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client.
[0017] In a possible embodiment, when the first processing module uses preset client verification information to verify the client information, it is specifically used to: obtain the client identification, user identification, client information collection time and client location information of the client based on the client information; determine whether the terminal device on which the client is installed is within a preset electronic fence based on the client location information; if the terminal device is within the preset electronic fence, match the client information collection time with multiple client verification information in the preset client verification information to obtain target client verification information; and verify the client identification and user identification based on the target client verification information.
[0018] In a possible implementation, after the client information is verified using the preset client verification information, the data transmission device of the unmanned vehicle is further used to: generate client verification failure information if the verification fails; and send the client verification failure information to the client so that the client outputs the client verification failure information.
[0019] In one possible embodiment, after generating the second shared key based on the connection success information, the first vehicle private key, and the first client public key, the data transmission device of the unmanned vehicle is further configured to: receive encrypted control instruction information sent by the client; the encrypted control instruction information is obtained by the client encrypting the control instruction information based on the first shared key; decrypt the encrypted control instruction information based on the second shared key to obtain the control instruction information; obtain the current position information and target parking position information of the unmanned vehicle based on the control instruction information; obtain the driving path and predicted driving duration of the unmanned vehicle based on the current position information and the target parking position information; determine at least one temporary parking position during driving according to the driving path of the unmanned vehicle; if the target parking position corresponding to the target parking position information cannot be reached within the predicted driving duration, determine a target temporary parking position from at least one temporary parking position based on the driving end position corresponding to the end of the predicted driving duration, so that the unmanned vehicle drives to the target temporary parking position; after driving to the target temporary parking position, disconnect the communication connection with the client and execute the steps of receiving a communication connection request sent by any client and establishing a communication connection with the client based on the communication connection request.
[0020] In a fourth aspect, an embodiment of the present application provides a data transmission device for an unmanned vehicle, which is applied to a client, wherein the client stores a second client private key and a second vehicle public key, and the device includes:
[0021] A second sending module is configured to send a communication connection request to any unmanned vehicle, so that the unmanned vehicle establishes a communication connection with the client according to the communication connection request; the unmanned vehicle stores a first vehicle private key and a first client public key;
[0022] A second processing module, configured to encrypt the client information according to the second client private key to generate encrypted client information;
[0023] The second sending module is further configured to send the encrypted client information to the unmanned vehicle via the communication connection, so that the unmanned vehicle decrypts the encrypted client information using the first client public key, and obtains the client information if the first client public key matches the second client private key; verifies the client information using preset client verification information; and collects the unmanned vehicle information of the unmanned vehicle if the verification passes; and encrypts the unmanned vehicle information using the first vehicle private key to generate encrypted unmanned vehicle information;
[0024] A second receiving module is used to receive the encrypted unmanned vehicle information sent by the unmanned vehicle;
[0025] The second processing module is further configured to decrypt the encrypted unmanned vehicle information according to the second vehicle public key, and obtain the unmanned vehicle collected information if the second vehicle public key matches the first vehicle private key; verify the unmanned vehicle information using preset unmanned vehicle verification information; generate a connection success message if the verification succeeds; and generate a first shared key according to the connection success message, the second client private key, and the second vehicle public key;
[0026] The second sending module is also used to send the connection success information to the unmanned vehicle, so that the unmanned vehicle generates a second shared key based on the connection success information, the first vehicle private key and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client.
[0027] In a possible implementation, after the unmanned vehicle information is verified using the preset unmanned vehicle verification information, the data transmission device of the unmanned vehicle is further used to: generate unmanned vehicle verification failure information if the verification fails; and output the unmanned vehicle verification failure information.
[0028] In a fifth aspect, an embodiment of the present application provides an electronic device, including: a memory, a processor;
[0029] The memory stores computer-executable instructions;
[0030] The processor executes the computer-executable instructions stored in the memory, so that the processor executes the above-mentioned first aspect and / or various possible implementations of the first aspect, or the second aspect and / or various possible implementations of the second aspect.
[0031] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the first aspect and / or various possible implementations of the first aspect, or the second aspect and / or various possible implementations of the second aspect.
[0032] In the seventh aspect, an embodiment of the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the first aspect and / or various possible implementation methods of the first aspect, or the second aspect and / or various possible implementation methods of the second aspect.
[0033] The data transmission method, electronic device, storage medium and program product of the unmanned vehicle provided in the embodiments of the present application are applied to the unmanned vehicle, and the unmanned vehicle stores a first vehicle private key and a first client public key; on the basis of establishing a communication connection, by receiving encrypted client information sent by the client; decrypting the encrypted client information to obtain client information; using preset client verification information to verify the client information; if the verification is successful, collecting the unmanned vehicle information of the unmanned vehicle; encrypting the unmanned vehicle information to generate encrypted unmanned vehicle information; sending the encrypted unmanned vehicle information to the client, so that the client decrypts the encrypted unmanned vehicle information to obtain unmanned vehicle information; using preset unmanned vehicle verification information to verify the unmanned vehicle information; if the verification is successful, generating a connection success message; generating a first shared key based on the connection success message, the second client private key and the second vehicle public key; receiving the connection success message sent by the client, and generating a second shared key based on the connection success message, the first vehicle private key and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client. By having the unmanned vehicle and the client perform encrypted information verification, it is confirmed that the user can control the unmanned vehicle through the client, and then a first shared key and a second shared key are generated to realize encrypted data transmission between the unmanned vehicle and the client, thereby improving the security of data transmission and solving the problem of poor data transmission security caused by existing technical solutions. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0035] Figure 1 A flowchart of a data transmission method for an unmanned vehicle provided in one embodiment of the present application;
[0036] Figure 2 A schematic diagram showing the relative positions of a terminal device and an unmanned vehicle provided in an embodiment of the present application;
[0037] Figure 3 A flowchart of a data transmission method for an unmanned vehicle provided in another embodiment of the present application;
[0038] Figure 4 A schematic diagram of the interaction between an unmanned vehicle and a client according to an unmanned vehicle-based data transmission method provided in one embodiment of the present application;
[0039] Figure 5 A schematic diagram of the structure of a data transmission device for an unmanned vehicle provided in one embodiment of the present application;
[0040] Figure 6 This is a schematic diagram of the structure of the electronic device provided in this application.
[0041] The above drawings illustrate specific embodiments of the present application, which will be described in more detail below. These drawings and the textual description are not intended to limit the scope of the present application in any way, but rather to illustrate the concepts of the present application to those skilled in the art by reference to specific embodiments. DETAILED DESCRIPTION
[0042] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. In the following description, when referring to the drawings, identical numerals in different figures represent identical or similar elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
[0043] In the technical solution of this application, the user personal information involved and the collection, storage, use, processing, transmission, provision and disclosure of data are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0044] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0045] With the development of unmanned driving technology, the application of unmanned vehicles is becoming more and more extensive, such as the widespread application of unmanned logistics vehicles, unmanned cleaning vehicles and unmanned express delivery vehicles in their corresponding fields. The popularity of unmanned vehicles has significantly increased users' demand for near-field control of unmanned vehicles. For example, scenarios such as fault repair and remote charging require efficient and reliable near-field control solutions. In the existing technology, after the unmanned vehicle establishes a communication connection with the client, the unmanned vehicle can receive control instructions sent by the client and send unmanned vehicle data to the client based on the communication connection, that is, realize the user's near-field control of the unmanned vehicle. However, based on the solution of the existing technology, the control instructions sent by the client received by the unmanned vehicle and the unmanned vehicle data sent to the client are at risk of being tampered with, and there is a problem of poor data transmission security.
[0046] The following specific embodiments describe in detail the technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.
[0047] Figure 1 A flowchart of a data transmission method for an unmanned vehicle provided in one embodiment of the present application is shown as follows: Figure 1 As shown, the data transmission method for the unmanned vehicle provided in this embodiment is performed by the unmanned vehicle, and the unmanned vehicle stores the first vehicle private key and the first client public key. Exemplarily, the data transmission method for the unmanned vehicle provided in this embodiment includes the following steps:
[0048] Step S101: receiving a communication connection request sent by any client, and establishing a communication connection with the client according to the communication connection request.
[0049] For example, the client is installed on any terminal device, such as a mobile phone, tablet, or computer. In the near-field control scenario, the communication method between the unmanned vehicle and the client includes wireless network and Bluetooth.
[0050] Specifically, for example, based on the wireless network of the unmanned vehicle, the unmanned vehicle parses the communication connection request sent by any client and obtains the password used to connect to the wireless network. If the password obtained by parsing is consistent with the verification code, a communication connection with the corresponding client can be established.
[0051] Step S102: receiving encrypted client information sent by the client through a communication connection; the client stores a second client private key and a second vehicle public key; the encrypted client information is generated by the client encrypting the client information according to the second client private key.
[0052] Exemplarily, based on the communication connection, the unmanned vehicle can receive encrypted client information sent by the client; the client stores a second client private key and a second vehicle public key; the encrypted client information is generated by the client by encrypting the client information according to the second client private key; the client information is information collected by the client in response to user operations; specifically, when the user logs in to the client, it is necessary to enter the user's account information to ensure the security of the login, such as entering the user account and password, or performing facial recognition; then, the client responds to the user's click operation on the "Control Unmanned Vehicle" control to obtain the user account, facial recognition information, client identification, client information collection time and client location information, that is, obtain the client information; then, the client encrypts the client information according to the second client private key to generate encrypted client information; further, the client sends the encrypted client information to the unmanned vehicle through the communication connection, that is, the unmanned vehicle receives the encrypted client information sent by the client through the communication connection.
[0053] Among them, the collection, storage, use, processing, transmission, provision and disclosure of facial recognition information corresponding to facial recognition have all been authorized by the user, comply with relevant laws and regulations, and do not violate public order and good morals.
[0054] Step S103: Decrypt the encrypted client information using the first client public key. If the first client public key matches the second client private key, the client information is obtained.
[0055] For example, after receiving the encrypted client information, the unmanned vehicle can decrypt the encrypted client information using the first client public key. If the first client public key matches the second client private key, the encrypted client information can be decrypted and the client information can be obtained, and then step S104 is executed.
[0056] If the first client public key does not match the second client private key, a first decryption failure message is generated and sent to the client, so that the client outputs the first decryption failure message to prompt the user that the first client public key does not match the second client private key, that is, the client is not authorized to control the unmanned vehicle.
[0057] Step S104: Verify the client information using preset client verification information.
[0058] Exemplarily, the unmanned vehicle verifies the decrypted client information by matching the preset client verification information with the client information. Specifically, for example, the client information includes a client identifier label_0, and the preset client verification information includes one or more preset client identifiers. The unmanned vehicle then determines whether there is a preset client identifier among the one or more preset client identifiers that matches the client identifier label_0. If so, verification succeeds; if not, verification fails.
[0059] In a possible implementation, the specific implementation steps of step S104 include:
[0060] Step S1041: Obtain the client identifier, user identifier, client information collection time, and client location information of the client according to the client information.
[0061] For example, when the client generates client information, it is generated based on the user account, facial recognition information, client identification, client information collection time and client location information; then the unmanned vehicle performs reverse information restoration based on the client information to obtain the client identification, user identification, client information collection time and client location information.
[0062] Step S1042: Determine whether the terminal device where the client is installed is within a preset electronic fence based on the client location information.
[0063] For example, Figure 2 A schematic diagram of the relative positions of a terminal device and an unmanned vehicle provided in an embodiment of the present application is shown in FIG. Figure 2 As shown, point A is the location of the unmanned vehicle, the circular area is the network coverage range of the wireless network of the unmanned vehicle, and the rectangular area is the preset electronic fence range. According to the corresponding client location information of the terminal device devi_1, point B is obtained as the location of the terminal device devi_1, and according to the corresponding client location information of the terminal device devi_2, point C is obtained as the location of the terminal device devi_2; since points B and C are both within the circular area, the client user_1 installed on the terminal device devi_1 and the client user_2 installed on the terminal device devi_2 can both establish a communication connection with the unmanned vehicle; based on the fact that point B is still within the rectangular area, that is, the terminal device devi_1 is within the preset electronic fence range, step S1043 and step S1044 are executed; based on the fact that point C is not within the rectangular area, that is, the terminal device devi_2 is not within the preset electronic fence range, step S1045 is executed.
[0064] Step S1043: If the terminal device is within the preset electronic fence, the client information collection time is matched with multiple client verification information in the preset client verification information to obtain the target client verification information.
[0065] Step S1044: verify the client identifier and the user identifier according to the target client verification information.
[0066] Exemplarily, the preset client verification information includes multiple client verification information, and each client verification information includes a timestamp identifier; on the basis of confirming that the terminal device is within the preset electronic fence range, the client information collection time is matched with the timestamp identifier corresponding to each client verification information, and the successfully matched client verification information can be determined as the target client verification information.
[0067] Furthermore, the client identifier and user identifier are verified according to the target client verification information; the target client verification information includes the target client identifier and the target user identifier. If the target client identifier matches the client identifier and the target user identifier matches the user identifier, the verification succeeds; otherwise, the verification fails.
[0068] In the steps of this embodiment, the target client verification information is determined based on the client information collection time, and then the client identifier and user identifier are verified based on the target client verification information. This ensures that near-field control of the unmanned vehicle can only be achieved when the user, client and time all meet the verification conditions, that is, the security of data transmission is ensured from three dimensions: personnel dimension, client (terminal device dimension) and time dimension.
[0069] Step S1045: If the terminal device is not within the preset electronic fence range, a prompt message indicating that the device is not within the preset range is generated and sent to the client, so that the client outputs the prompt message indicating that the device is not within the preset range.
[0070] Exemplarily, if the terminal device is not within the preset electronic fence, the unmanned vehicle sends a prompt message that the device is not within the preset range to the client, so that the client outputs the prompt message that the device is not within the preset range; the client prompts the user to move the terminal device to the preset electronic fence range, for example, the corresponding display interface of the client displays the moving path, and / or outputs voice navigation information through the audio output unit; after the user moves the terminal device to the preset electronic fence range, the user is prompted to click the "control unmanned vehicle" control again to make the unmanned vehicle re-execute step S102.
[0071] In the steps of this embodiment, the security of data transmission is further improved by determining whether the terminal device on which the client is installed is within a preset electronic fence.
[0072] Step S105: If the verification is successful, the unmanned vehicle information of the unmanned vehicle is collected.
[0073] For example, upon passing the verification, the unmanned vehicle information collected by the unmanned vehicle includes the unmanned vehicle identification and the time when the unmanned vehicle information was collected.
[0074] In another possible implementation, the method provided in the embodiment of the present application also includes: if the verification is passed, the client identifier, user identifier, and client information collection time of the client are obtained based on the client information; the target authority verification information is determined from the authority verification information based on the client information collection time; the client identifier and / or user identifier is verified based on the target authority verification information to obtain the control authority information of the unmanned vehicle; and the unmanned vehicle information of the unmanned vehicle is collected based on the control authority information.
[0075] Exemplarily, based on the client identifier, user identifier, and client information collection time, the target authority verification information is determined by the client information collection time; then, based on the target authority verification information, the client identifier and / or user identifier is verified to determine the control authority information of the unmanned vehicle; wherein the control authority information is used to indicate the level of authority for collecting unmanned vehicle information; then, based on the level of authority, the collection of unmanned vehicle information is achieved. Specifically, for example, if the collection authority level is level 1, the collected unmanned vehicle information is information info_1 and information info_2, and then, in subsequent steps, the verification of the unmanned vehicle information only requires verification of information info_1 and information info_2; for example, if the collection authority level is level 3, the collected unmanned vehicle information is information info_1, information info_2, information info_3, and information info_4, and then, in subsequent steps, the verification of the unmanned vehicle information requires verification of information info_1, information info_2, information info_3, and information info_4.
[0076] In the steps of this embodiment, on the basis of ensuring the reliability and security of the unmanned vehicle information verification, the amount of unmanned vehicle information that needs to be verified is dynamically adjusted by confirming different control authority information (collection authority levels), thereby improving the transmission efficiency of data transmission and the verification efficiency of verification information.
[0077] After step S104, the method provided in the embodiment of the present application further includes:
[0078] Step S10a: If the verification fails, a client verification failure message is generated.
[0079] Step S10b: Sending the client verification failure information to the client, so that the client outputs the client verification failure information.
[0080] Exemplarily, in the event of a verification failure, the unmanned vehicle generates a client verification failure message, and then sends the client verification failure message to the client, so that the client outputs the client verification failure message to prompt the user that the client has not been verified and cannot be used to control the unmanned vehicle; wherein the output method includes image display and / or audio output.
[0081] Step S106: Encrypt the unmanned vehicle information according to the first vehicle private key to generate encrypted unmanned vehicle information.
[0082] Step S107, the encrypted unmanned vehicle information is sent to the client, so that the client decrypts the encrypted unmanned vehicle information according to the second vehicle public key. If the second vehicle public key matches the first vehicle private key, the unmanned vehicle information is obtained; the unmanned vehicle information is verified using the preset unmanned vehicle verification information; if the verification is successful, a connection success message is generated; based on the connection success message, the second client private key and the second vehicle public key, a first shared key is generated.
[0083] For example, after encrypting the unmanned vehicle information to generate encrypted unmanned vehicle information, the encrypted unmanned vehicle information is sent to the client, which then decrypts the encrypted unmanned vehicle information using the second vehicle public key. If the second vehicle public key matches the first vehicle private key, the client can decrypt the encrypted unmanned vehicle information and obtain the unmanned vehicle information. The client then verifies the unmanned vehicle information using preset unmanned vehicle verification information. If the verification succeeds, a connection success message is generated. Based on the connection success message, the second client private key, and the second vehicle public key, the client uses the Elliptic Curve Diffie-Hellman Key Exchange algorithm (ECDH algorithm) to generate a first shared key.
[0084] Step S108: Receive the connection success information sent by the client, and generate a second shared key according to the connection success information, the first vehicle private key and the first client public key.
[0085] For example, upon receiving a successful connection message from the client, the unmanned vehicle processes the first vehicle private key and the first client public key using the ECDH algorithm in response to the successful connection message to generate a second shared key. The first and second shared keys are used to encrypt and decrypt data transmitted between the unmanned vehicle and the client.
[0086] In this embodiment, upon establishing a communication connection, encrypted client information sent by a client is received; the encrypted client information is decrypted to obtain client information; the client information is verified using preset client verification information; if the verification is successful, the unmanned vehicle information of the unmanned vehicle is collected; the unmanned vehicle information is encrypted to generate encrypted unmanned vehicle information; the encrypted unmanned vehicle information is sent to the client so that the client decrypts the encrypted unmanned vehicle information to obtain the unmanned vehicle information; the unmanned vehicle information is verified using preset unmanned vehicle verification information; if the verification is successful, a connection success message is generated; a first shared key is generated based on the connection success message, a second client private key, and a second vehicle public key; the connection success message sent by the client is received, and a second shared key is generated based on the connection success message, the first vehicle private key, and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client. By having the unmanned vehicle and the client perform encrypted information verification, it is confirmed that the user can control the unmanned vehicle through the client, and then the first shared key and the second shared key are generated to realize encrypted data transmission between the unmanned vehicle and the client, thereby improving the security of data transmission and solving the problem of poor data transmission security caused by existing technical solutions.
[0087] On this basis, the method provided in the embodiment of the present application further includes:
[0088] Step S109: receiving the encrypted control instruction information sent by the client; the encrypted control instruction information is obtained by encrypting the control instruction information by the client according to the first shared key.
[0089] Step S110: decrypt the encrypted control instruction information according to the second shared key to obtain the control instruction information.
[0090] For example, after generating a second shared key based on the successful connection information, the first vehicle's private key, and the first client's public key, the unmanned vehicle can encrypt and decrypt data transmitted between the unmanned vehicle and the client. Furthermore, after receiving the encrypted control command information sent by the client, the unmanned vehicle can decrypt the encrypted control command information using the second shared key to obtain the control command information; the encrypted control command information is the control command information encrypted by the client using the first shared key.
[0091] Step S112: Obtain the current position information and target parking position information of the unmanned vehicle according to the control instruction information.
[0092] For example, after decrypting and obtaining the control instruction information, the unmanned vehicle determines the task to be performed based on the control instruction information, and then obtains the current position of the unmanned vehicle and the task position of the task to be performed based on the task information of the task to be performed. The task position is the target parking position, that is, the current position information and the target parking position information of the unmanned vehicle are obtained.
[0093] Step S113: Obtain the predicted driving duration and the driving path of the unmanned vehicle based on the current location information and the target parking location information.
[0094] Exemplarily, the unmanned vehicle plans a driving path based on the current position information and the target parking position information to obtain the driving path of the unmanned vehicle; then, the driving time is predicted based on the driving path of the unmanned vehicle and the driving speed of the unmanned vehicle (for example, the maximum driving speed of the vehicle, the minimum driving speed of the vehicle, the average driving speed of the vehicle, and the speed limit of the road corresponding to the driving path) to obtain the predicted driving time.
[0095] Step S114: Determine at least one temporary parking location while the unmanned vehicle is traveling according to the driving path.
[0096] For example, while the unmanned vehicle is traveling according to its driving path, at least one temporary parking position is determined based on the current real-time position of the unmanned vehicle; the temporary parking position is used to ensure that the unmanned vehicle does not hinder the driving of other vehicles or pedestrians when parking.
[0097] In step S115, if the target parking position corresponding to the target parking position information cannot be reached within the predicted driving time, the target temporary parking position is determined from at least one temporary parking position based on the driving end position corresponding to the end of the predicted driving time, so that the unmanned vehicle can drive from the driving end position to the target temporary parking position.
[0098] Exemplarily, in the process of the unmanned vehicle driving according to the unmanned vehicle driving path, based on a preset time interval, it is determined whether it can reach the target parking position corresponding to the target parking position information within the predicted driving time. If the target parking position corresponding to the target parking position information cannot be reached within the predicted driving time, then based on the predicted driving time, it is predicted that the position that the unmanned vehicle can reach at the end of the predicted driving time, that is, the driving end position; and then, based on the driving end position, the target temporary parking position is determined from at least one temporary parking position, so that the unmanned vehicle can drive from the driving end position to the target temporary parking position, so that the unmanned vehicle does not hinder the driving of other vehicles and pedestrians when parking.
[0099] Step S116: After driving to the target temporary parking position, disconnect the communication connection with the client and execute step S101.
[0100] Exemplarily, after the unmanned vehicle drives to the target temporary parking position, the communication connection with the client is disconnected, and step S101 and subsequent steps are executed.
[0101] In the steps of the embodiment of the present application, the security of data transmission is improved by limiting the single communication duration between the unmanned vehicle and the client; at the same time, based on the driving path of the unmanned vehicle and the corresponding driving end position at the end of the predicted driving duration, the target temporary parking position is determined from at least one temporary parking position, so that the unmanned vehicle does not hinder the driving of other vehicles and pedestrians when parking, thereby ensuring the driving safety of the unmanned vehicle.
[0102] Figure 3 A flowchart of a data transmission method for an unmanned vehicle provided in another embodiment of the present application is shown as follows: Figure 3 As shown, the execution subject of the data transmission method of the unmanned vehicle provided in this embodiment is the client, and the client stores the second client private key and the second vehicle public key. The data transmission method of the unmanned vehicle provided in this embodiment includes the following steps:
[0103] Step S201: Send a communication connection request to any unmanned vehicle, so that the unmanned vehicle establishes a communication connection with the client according to the communication connection request; the unmanned vehicle stores a first vehicle private key and a first client public key.
[0104] For example, the client is installed on any terminal device, such as a mobile phone, tablet, or computer. In the near-field control scenario, the communication method between the unmanned vehicle and the client includes wireless network and Bluetooth.
[0105] For example, after the client sends a communication connection request to any unmanned vehicle via a wireless network and / or Bluetooth, the unmanned vehicle can establish a communication connection with the client according to the communication connection request to realize data transmission based on the communication connection.
[0106] Step S202: Encrypt the client information according to the second client private key to generate encrypted client information.
[0107] For example, when a user logs in to the client, he or she needs to enter the user's account information to ensure the security of the login, such as entering the user account and password, or performing facial recognition; then, the client responds to the user's click operation on the "Control Unmanned Vehicle" control to obtain the user account, facial recognition information, client identification, client information collection time and client location information, that is, obtain the client information; then, the client encrypts the client information according to the second client private key to generate encrypted client information.
[0108] Among them, the collection, storage, use, processing, transmission, provision and disclosure of facial recognition information corresponding to facial recognition have all been authorized by the user, comply with relevant laws and regulations, and do not violate public order and good morals.
[0109] In step S203, the encrypted client information is sent to the unmanned vehicle through a communication connection, so that the unmanned vehicle uses the first client public key to decrypt the encrypted client information. If the first client public key matches the second client private key, the client information is obtained; the client information is verified using the preset client verification information; if the verification passes, the unmanned vehicle information of the unmanned vehicle is collected; the unmanned vehicle information is encrypting according to the first vehicle private key to generate encrypted unmanned vehicle information.
[0110] For example, after obtaining the encrypted client information, the client sends the encrypted client information to the unmanned vehicle through a communication connection, so that the unmanned vehicle generates encrypted unmanned vehicle information based on the encrypted client information; wherein, the implementation method of the unmanned vehicle generating the encrypted unmanned vehicle information based on the encrypted client information is the same as that of the present application. Figure 1 The implementation methods of steps S103 to S106 in the illustrated embodiment are the same and will not be described in detail here.
[0111] Step S204: receiving the encrypted unmanned vehicle information sent by the unmanned vehicle.
[0112] Step S205: decrypt the encrypted unmanned vehicle information according to the second vehicle public key. If the second vehicle public key matches the first vehicle private key, the unmanned vehicle collection information is obtained.
[0113] For example, after receiving the encrypted unmanned vehicle information sent by the unmanned vehicle, the client decrypts the encrypted unmanned vehicle information using the second vehicle public key. If the second vehicle public key matches the first vehicle private key, the client can complete the decryption of the encrypted unmanned vehicle information and obtain the unmanned vehicle information. If the second vehicle public key does not match the first vehicle private key, the client generates a first decryption failure message and outputs a second decryption failure message to prompt the user that the second vehicle public key does not match the first vehicle private key, indicating that the client is not authorized to control the unmanned vehicle, or that the unmanned vehicle is a counterfeit unmanned vehicle, and further data transmission between the client and the counterfeit unmanned vehicle will result in client data leakage.
[0114] Step S206: Verify the unmanned vehicle information using the preset unmanned vehicle verification information.
[0115] Step S207: If the verification is successful, a connection success message is generated; and a first shared key is generated according to the connection success message, the second client private key, and the second vehicle public key.
[0116] Exemplarily, the client uses preset unmanned vehicle verification information to verify the unmanned vehicle information; if the verification is successful, a connection success message is generated; the client uses the Elliptic Curve Diffie-Hellman Key Exchange algorithm (ECDH algorithm for short) to generate a first shared key based on the connection success message, the second client private key and the second vehicle public key.
[0117] After step S207, the method provided in the embodiment of the present application further includes:
[0118] Step S20a: If the verification fails, a message indicating that the unmanned vehicle has failed verification is generated;
[0119] Step S20b: Output the information that the unmanned vehicle verification failed.
[0120] Exemplarily, if the verification fails, the client generates unmanned vehicle verification failure information, and then outputs the unmanned vehicle verification failure information to prompt the user that the unmanned vehicle has not passed the verification and cannot be controlled; wherein the output method includes image display and / or audio output.
[0121] Step S208: Send the connection success information to the unmanned vehicle, so that the unmanned vehicle generates a second shared key based on the connection success information, the first vehicle private key and the first client public key.
[0122] For example, upon generating a successful connection message, the client sends the successful connection message to the unmanned vehicle, causing the unmanned vehicle to generate a second shared key based on the successful connection message, the first vehicle private key, and the first client public key. Specifically, in response to the successful connection message, the unmanned vehicle processes the first vehicle private key and the first client public key using the ECDH algorithm to generate the second shared key. The first shared key and the second shared key are used to encrypt and decrypt data transmitted between the unmanned vehicle and the client.
[0123] Figure 4 A schematic diagram of the interaction between an unmanned vehicle and a client based on an unmanned vehicle data transmission method provided in one embodiment of the present application, wherein the unmanned vehicle stores a first vehicle private key and a first client public key, and the client stores a second client private key and a second vehicle public key; Figure 4 As shown:
[0124] S301: Send a communication connection request to any unmanned vehicle.
[0125] S302: Receive a communication connection request sent by any client, and establish a communication connection with the client according to the communication connection request.
[0126] S303: Encrypt the client information according to the second client private key to generate encrypted client information.
[0127] S304, sending the encrypted client information to the unmanned vehicle through the communication connection.
[0128] S305: Receive encrypted client information sent by the client via the communication connection. Decrypt the encrypted client information using the first client public key. If the first client public key matches the second client private key, the client information is obtained. Verify the client information using preset client verification information. If verification succeeds, collect the unmanned vehicle information. Encrypt the unmanned vehicle information using the first vehicle private key to generate encrypted unmanned vehicle information.
[0129] S306, sending the encrypted unmanned vehicle information to the client.
[0130] S307: Receive the encrypted unmanned vehicle information sent by the unmanned vehicle.
[0131] S308: Decrypt the encrypted unmanned vehicle information using the second vehicle's public key. If the second vehicle's public key matches the first vehicle's private key, the unmanned vehicle collected information is obtained. The unmanned vehicle information is verified using the preset unmanned vehicle verification information. If verification succeeds, a connection success message is generated. A first shared key is generated based on the connection success message, the second client's private key, and the second vehicle's public key.
[0132] S309: Send the connection success information to the unmanned vehicle.
[0133] S310: Receive connection success information sent by the client, and generate a second shared key according to the connection success information, the first vehicle private key, and the first client public key.
[0134] Among them, the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client, that is, data encrypted transmission is realized.
[0135] The specific implementation of the interaction process between the unmanned vehicle and the client in this embodiment is similar to the following Figure 1-Figure 3 The implementation principles and technical effects of the steps in any of the method embodiments shown are similar and will not be repeated here.
[0136] Figure 5 A schematic diagram of the structure of a data transmission device for an unmanned vehicle provided in one embodiment of the present application is shown as follows: Figure 5 As shown, the data transmission device 3 of the unmanned vehicle provided in this embodiment is applied to the unmanned vehicle, and the unmanned vehicle stores a first vehicle private key and a first client public key, including:
[0137] The first receiving module 31 is used to receive a communication connection request sent by any client and establish a communication connection with the client according to the communication connection request;
[0138] The first processing module 32 is configured to receive encrypted client information sent by the client via a communication connection; the client stores a second client private key and a second vehicle public key; the encrypted client information is generated by the client encrypting the client information using the second client private key; the encrypted client information is decrypted using the first client public key; if the first client public key matches the second client private key, the client information is obtained; the client information is verified using preset client verification information; if the verification is successful, the unmanned vehicle information of the unmanned vehicle is collected; the unmanned vehicle information is encrypted using the first vehicle private key to generate encrypted unmanned vehicle information;
[0139] The first sending module 33 is configured to send the encrypted unmanned vehicle information to the client, so that the client decrypts the encrypted unmanned vehicle information according to the second vehicle public key. If the second vehicle public key matches the first vehicle private key, the unmanned vehicle information is obtained; the unmanned vehicle information is verified using the preset unmanned vehicle verification information; if the verification is successful, a connection success message is generated; and a first shared key is generated based on the connection success message, the second client private key, and the second vehicle public key.
[0140] The first receiving module 31 is also used to receive the connection success information sent by the client, and generate a second shared key according to the connection success information, the first vehicle private key and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client.
[0141] In a possible embodiment, when the first processing module 32 uses the preset client verification information to verify the client information, it is specifically used to: obtain the client identification, user identification, client information collection time and client location information of the client based on the client information; determine whether the terminal device on which the client is installed is within the preset electronic fence based on the client location information; if the terminal device is within the preset electronic fence, match the client information collection time with multiple client verification information in the preset client verification information to obtain the target client verification information; and verify the client identification and user identification based on the target client verification information.
[0142] In one possible implementation, after verifying the client information using the preset client verification information, the data transmission device 3 of the unmanned vehicle is also used to: generate client verification failure information if the verification fails; and send the client verification failure information to the client so that the client outputs the client verification failure information.
[0143] In a possible embodiment, after generating a second shared key based on the connection success information, the first vehicle private key and the first client public key, the data transmission device 3 of the unmanned vehicle is also used to: receive encrypted control instruction information sent by the client; the encrypted control instruction information is obtained by the client encrypting the control instruction information according to the first shared key; decrypting the encrypted control instruction information according to the second shared key to obtain the control instruction information; obtaining the current position information and target parking position information of the unmanned vehicle according to the control instruction information; obtaining the driving path and predicted driving time of the unmanned vehicle according to the current position information and the target parking position information; determining at least one temporary parking position in the process of driving according to the driving path of the unmanned vehicle; if the target parking position corresponding to the target parking position information cannot be reached within the predicted driving time, determining the target temporary parking position from at least one temporary parking position according to the driving end position corresponding to the end of the predicted driving time, so that the unmanned vehicle drives to the target temporary parking position; after driving to the target temporary parking position, disconnecting the communication connection with the client, and executing the steps of receiving a communication connection request sent by any client, and establishing a communication connection with the client according to the communication connection request.
[0144] The first receiving module 31, the first processing module 32 and the first sending module 33 are connected in sequence. The data transmission device 3 of the unmanned vehicle provided in this embodiment can be executed as follows: Figure 1-Figure 2 The technical solution of the method embodiment shown has similar implementation principles and technical effects, which will not be repeated here.
[0145] Another embodiment of the present application provides a data transmission device for an unmanned vehicle, which is applied to a client, wherein the client stores a second client private key and a second vehicle public key, including:
[0146] A second sending module is configured to send a communication connection request to any unmanned vehicle, so that the unmanned vehicle establishes a communication connection with the client according to the communication connection request; the unmanned vehicle stores a first vehicle private key and a first client public key;
[0147] A second processing module, configured to encrypt the client information according to the second client private key to generate encrypted client information;
[0148] The second sending module is further configured to send the encrypted client information to the unmanned vehicle via a communication connection, so that the unmanned vehicle decrypts the encrypted client information using the first client public key. If the first client public key matches the second client private key, the client information is obtained; the client information is verified using preset client verification information; if the verification is successful, the unmanned vehicle information is collected; and the unmanned vehicle information is encrypting the unmanned vehicle information using the first vehicle private key to generate encrypted unmanned vehicle information.
[0149] The second receiving module is used to receive the encrypted unmanned vehicle information sent by the unmanned vehicle;
[0150] The second processing module is further configured to decrypt the encrypted unmanned vehicle information based on the second vehicle public key, and obtain the unmanned vehicle collected information if the second vehicle public key matches the first vehicle private key; verify the unmanned vehicle information using preset unmanned vehicle verification information; generate a connection success message if the verification succeeds; and generate a first shared key based on the connection success message, the second client private key, and the second vehicle public key;
[0151] The second sending module is also used to send the connection success information to the unmanned vehicle, so that the unmanned vehicle generates a second shared key based on the connection success information, the first vehicle private key and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client.
[0152] In one possible implementation, after verifying the unmanned vehicle information using preset unmanned vehicle verification information, the data transmission device of the unmanned vehicle is also used to: generate unmanned vehicle verification failure information if the verification fails; and output the unmanned vehicle verification failure information.
[0153] The second sending module, the second processing module and the second receiving module are connected in sequence. The data transmission device for the unmanned vehicle provided in this embodiment can be executed as follows Figure 3 The technical solution of the method embodiment shown has similar implementation principles and technical effects, which will not be repeated here.
[0154] Figure 6 This is a schematic diagram of the structure of the electronic device provided in this application. Figure 6 As shown, the electronic device 50 provided in this embodiment includes: at least one processor 501 and a memory 502. Optionally, the device 50 further includes a communication component 503. The processor 501, the memory 502 and the communication component 503 are connected via a bus 504.
[0155] In a specific implementation process, at least one processor 501 executes the computer-executable instructions stored in the memory 502, so that the at least one processor 501 performs the above method.
[0156] The specific implementation process of the processor 501 can be found in the above method embodiment. Its implementation principle and technical effects are similar and will not be repeated here in this embodiment.
[0157] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASICs), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the present invention may be directly executed by a hardware processor or by a combination of hardware and software modules within the processor.
[0158] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage.
[0159] A bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Buses can be categorized as address buses, data buses, and control buses. For ease of illustration, the buses in the drawings of this application are not limited to just one bus or just one type of bus.
[0160] The present application also provides a computer program product, including a computer program, which implements the above method when executed by a processor.
[0161] The present application also provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, the above method is implemented.
[0162] The readable storage medium may be implemented by any type of volatile or non-volatile memory device, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium may be any available medium that can be accessed by a general-purpose or special-purpose computer.
[0163] An exemplary readable storage medium is coupled to a processor so that the processor can read information from the readable storage medium and write information to the readable storage medium. Of course, the readable storage medium can also be an integral part of the processor. The processor and the readable storage medium can be located in an application specific integrated circuit (ASIC). Of course, the processor and the readable storage medium can also exist in the device as discrete components.
[0164] The division of units is merely a logical functional division; actual implementations may employ alternative divisions, such as combining or integrating multiple units or components into another system, or omitting or disabling certain features. Furthermore, any direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection between devices or units, either through an interface, electrical, mechanical, or other means.
[0165] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0166] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0167] If a function is implemented as 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 invention, or the portion that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the various embodiments of the method of the present invention. The aforementioned storage medium includes various media that can store program code, such as USB flash drives, mobile hard drives, read-only memories (ROMs), random access memories (RAMs), magnetic disks, or optical disks.
[0168] Those skilled in the art will appreciate that all or part of the steps in the above-described method embodiments can be implemented using hardware associated with program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0169] Finally, it should be noted that those skilled in the art will readily identify other embodiments of the present invention after considering the specification and practicing the invention disclosed herein. The present invention is intended to cover any variations, uses, or adaptations of the present invention that follow the general principles of the present invention and include common knowledge or customary techniques in the art not disclosed herein. The present invention is not limited to the precise structure described above and illustrated in the accompanying drawings, and various modifications and variations may be made without departing from the scope thereof. The scope of the present invention is limited solely by the appended claims.
Claims
1. A data transmission method for an unmanned vehicle, characterized in that: Applied to an unmanned vehicle, wherein a first vehicle private key and a first client public key are stored in the unmanned vehicle, the method includes: Receive a communication connection request sent by any client, and establish a communication connection with the client according to the communication connection request; Receiving, via the communication connection, encrypted client information sent by the client; the client storing a second client private key and a second vehicle public key; the encrypted client information being generated by the client encrypting the client information according to the second client private key; Decrypting the encrypted client information using the first client public key, and obtaining the client information if the first client public key matches the second client private key; Verifying the client information using preset client verification information; If the verification is successful, the unmanned vehicle information of the unmanned vehicle is collected; Encrypting the unmanned vehicle information according to the first vehicle private key to generate encrypted unmanned vehicle information; Sending the encrypted unmanned vehicle information to the client, so that the client decrypts the encrypted unmanned vehicle information according to the second vehicle public key. If the second vehicle public key matches the first vehicle private key, the unmanned vehicle information is obtained; verifying the unmanned vehicle information using preset unmanned vehicle verification information; generating a connection success message if the verification succeeds; generating a first shared key according to the connection success message, the second client private key, and the second vehicle public key; Receiving the connection success information sent by the client, and generating a second shared key according to the connection success information, the first vehicle private key, and the first client public key; The first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client; The verifying the client information by using preset client verification information includes: According to the client information, obtaining the client identifier, user identifier, client information collection time and client location information of the client; Determining whether the terminal device on which the client is installed is within a preset electronic fence according to the client location information; If the terminal device is within the preset electronic fence, the client information collection time is matched with multiple client verification information in the preset client verification information to obtain target client verification information; The client identifier and the user identifier are verified according to the target client verification information.
2. The method according to claim 1, characterized in that After verifying the client information using the preset client verification information, the method further includes: If the verification fails, a client verification failure message is generated; The client verification failure information is sent to the client, so that the client outputs the client verification failure information.
3. The method according to any one of claims 1-2, characterized in that After generating a second shared key according to the connection success information, the first vehicle private key, and the first client public key, the method further includes: receiving encrypted control instruction information sent by the client; the encrypted control instruction information is obtained by the client encrypting the control instruction information according to the first shared key; decrypting the encrypted control instruction information according to the second shared key to obtain the control instruction information; Obtaining the current position information and target parking position information of the unmanned vehicle according to the control instruction information; Obtaining a driving path and a predicted driving duration of the unmanned vehicle based on the current location information and the target parking location information; Determining at least one temporary parking location during driving according to the unmanned vehicle driving path; If the target parking position corresponding to the target parking position information cannot be reached within the predicted driving time, determining a target temporary parking position from at least one temporary parking position based on the driving end position corresponding to the end of the predicted driving time, so that the unmanned vehicle drives to the target temporary parking position; After driving to the target temporary parking position, the communication connection with the client is disconnected, and the steps of receiving a communication connection request sent by any client and establishing a communication connection with the client according to the communication connection request are performed.
4. A data transmission method for an unmanned vehicle, characterized in that: Applied to a client, the client storing a second client private key and a second vehicle public key, the method includes: Sending a communication connection request to any unmanned vehicle, so that the unmanned vehicle establishes a communication connection with the client according to the communication connection request; the unmanned vehicle stores a first vehicle private key and a first client public key; Encrypting the client information according to the second client private key to generate encrypted client information; The encrypted client information is sent to the unmanned vehicle via the communication connection, so that the unmanned vehicle decrypts the encrypted client information using the first client public key. If the first client public key matches the second client private key, the client information is obtained. The client information is verified using preset client verification information. If the verification is successful, the unmanned vehicle information of the unmanned vehicle is collected. The unmanned vehicle information is encrypted using the first vehicle private key to generate encrypted unmanned vehicle information. Receiving the encrypted unmanned vehicle information sent by the unmanned vehicle; Decrypting the encrypted unmanned vehicle information according to the second vehicle public key, and if the second vehicle public key matches the first vehicle private key, obtaining the unmanned vehicle collected information; Verifying the unmanned vehicle information using preset unmanned vehicle verification information; If the verification is successful, a connection success message is generated; a first shared key is generated based on the connection success message, the second client private key and the second vehicle public key; Sending the connection success information to the unmanned vehicle, so that the unmanned vehicle generates a second shared key according to the connection success information, the first vehicle private key, and the first client public key; The first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client.
5. The method according to claim 4, characterized in that After verifying the unmanned vehicle information using the preset unmanned vehicle verification information, the method further includes: If the verification fails, a message indicating that the unmanned vehicle has failed verification is generated; Output the information that the unmanned vehicle verification fails.
6. A data transmission device for an unmanned vehicle, characterized in that: Applied to an unmanned vehicle, wherein a first vehicle private key and a first client public key are stored in the unmanned vehicle, the device includes: A first receiving module is configured to receive a communication connection request sent by any client and establish a communication connection with the client according to the communication connection request; A first processing module is configured to receive, via the communication connection, encrypted client information sent by the client; the client stores a second client private key and a second vehicle public key; the encrypted client information is generated by the client encrypting the client information using the second client private key; decrypting the encrypted client information using the first client public key, and obtaining the client information if the first client public key matches the second client private key; verifying the client information using preset client verification information; if the verification is successful, collecting the unmanned vehicle information of the unmanned vehicle; and encrypting the unmanned vehicle information using the first vehicle private key to generate encrypted unmanned vehicle information; a first sending module, configured to send the encrypted unmanned vehicle information to the client, so that the client decrypts the encrypted unmanned vehicle information according to the second vehicle public key, obtains the unmanned vehicle information if the second vehicle public key matches the first vehicle private key, verifies the unmanned vehicle information using preset unmanned vehicle verification information, generates a connection success message if the verification succeeds, and generates a first shared key according to the connection success message, the second client private key, and the second vehicle public key; The first receiving module is further configured to receive the connection success information sent by the client, and generate a second shared key based on the connection success information, the first vehicle private key, and the first client public key; the first shared key and the second shared key are used for encryption and decryption of data transmission between the unmanned vehicle and the client; When the first processing module uses the preset client verification information to verify the client information, it is specifically used to: obtain the client identification, user identification, client information collection time and client location information of the client based on the client information; determine whether the terminal device on which the client is installed is within the preset electronic fence based on the client location information; if the terminal device is within the preset electronic fence, match the client information collection time with multiple client verification information in the preset client verification information to obtain target client verification information; and verify the client identification and user identification based on the target client verification information.
7. An electronic device, characterized in that: include: a processor, and a memory communicatively connected to the processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the method according to any one of claims 1 to 3, or the method according to any one of claims 4 to 5.
8. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 3, or the method according to any one of claims 4 to 5 when executed by a processor.
9. A computer program product, characterized in that The invention comprises a computer program, which implements the method according to any one of claims 1 to 3 or the method according to any one of claims 4 to 5 when the computer program is executed by a processor.
Citation Information
Patent Citations
Network connection method and device, network equipment and storage medium
CN112565199A
Business processing method and device, equipment and storage medium
CN114218598A