Vehicle control method and device, terminal and remote information processing equipment

The session key is determined through negotiation with the terminal and the vehicle's telematics equipment, and the encrypted remote vehicle control instructions are transmitted through different links, which solves the problem of insufficient security of vehicle remote control in the prior art and achieves higher security.

CN120185829APending Publication Date: 2025-06-20HUAWEI TECH CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202311749851.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-18
Publication Date
2025-06-20

AI Technical Summary

Technical Problem

The existing remote control method of vehicles has security problems, and attackers can tamper with remote vehicle control instructions by attacking the cloud.

Method used

The terminal negotiates with the vehicle's telematics equipment to determine the session key, and transmits encrypted remote vehicle control instructions through different links to ensure that the key is obtained through negotiation, and the attacker cannot obtain the key even if he attacks the cloud.

Benefits of technology

It effectively ensures the security of remote control of the vehicle and prevents attackers from tampering with vehicle control instructions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120185829A_ABST
    Figure CN120185829A_ABST
Patent Text Reader

Abstract

The invention discloses a vehicle control method and device, a terminal and remote information processing equipment. The method may include: a terminal negotiating with a telematics device of a vehicle through a first link to determine a session key; encrypting the remote vehicle control instruction with the session key; the encrypted remote vehicle control instructions are sent to the telematics device over a second link, the second link being different from the first link. The first link is used when the terminal and the remote information processing equipment negotiate the session key, and then the encrypted remote vehicle control instruction is transmitted through the second link, that is, the key of the application is obtained through negotiation, the key cannot be obtained even if the cloud is attacked, and the link used for negotiating the key is different from the transmission link, so that the security of the terminal is improved. Even if the cloud is attacked under the condition that the instruction is transmitted through the cloud, an attacker cannot tamper the vehicle control instruction, so that the safety of the vehicle control method is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of vehicles, and particularly to a vehicle control method and device, a terminal, and a telematics device. Background Art

[0002] With the intelligence of vehicles, in addition to operating inside the vehicle to control the vehicle, the driver can also remotely control the vehicle through a terminal (such as a mobile phone).

[0003] In related technologies, a vehicle control method remotely implemented through a terminal is provided. The method includes: the terminal obtains a key provided by the cloud; the terminal sends an encrypted remote vehicle control instruction to the vehicle's telematics device (such as a telematics box (T-BOX)) through the cloud; after receiving the remote vehicle control instruction, the telematics device controls the vehicle according to the remote vehicle control instruction.

[0004] In the above solution, an attacker can tamper with the remote vehicle control instruction by attacking the cloud, making the above vehicle control method insecure. Summary of the Invention

[0005] This application provides a vehicle control method and device, a terminal, and a telematics device, which can ensure the security of remote vehicle control.

[0006] In a first aspect, this application provides a vehicle control method, which is executed by a terminal. The method includes:

[0007] The terminal negotiates and determines a session key with the vehicle's telematics device through a first link; the terminal encrypts the remote vehicle control instruction using the session key; the terminal sends the encrypted remote vehicle control instruction to the telematics device through a second link, and the second link is different from the first link.

[0008] In this implementation, the terminal uses the first link when negotiating the session key with the telematics device, and then transmits the encrypted remote vehicle control instruction through the second link. That is to say, the key in this application is obtained through negotiation. Even if the cloud is attacked, the key cannot be obtained. Moreover, the link used for negotiating the key is different from the transmission link. Even if the cloud is attacked when transmitting the instruction through the cloud, the attacker cannot tamper with the vehicle control instruction, thus ensuring the security of the vehicle control method.

[0009] Exemplarily, the terminal may be a mobile terminal, such as a mobile phone, a tablet computer, a smart watch, or other intelligent wearable devices.

[0010] Exemplarily, the telematics device may be a T-BOX.

[0011] Exemplarily, the first link includes the link between the terminal and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device; or, the first link includes the link between the terminal and the telematics device.

[0012] Exemplarily, the in-vehicle device can be an intelligent cockpit device (such as an intelligent cockpit domain controller), or other intelligent interaction devices in the vehicle that can provide human-machine interaction and are connected to the telematics device.

[0013] Exemplarily, the second link includes the link between the terminal and the cloud, and the link between the cloud and the telematics device; or, the second link includes the link between the terminal and the telematics device.

[0014] In some examples, direct communication between the telematics device and the terminal is not possible. Therefore, it is necessary to rely on a third party that the telematics device trusts and can communicate with both the terminal and the telematics device simultaneously to assist in key negotiation, such as the in-vehicle device. This method can ensure the security of key negotiation.

[0015] Taking the first link including the link between the terminal and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device, and the second link including the link between the terminal and the cloud, and the link between the cloud and the telematics device as an example, this application gives an exemplary description of the vehicle control method:

[0016] In this case, the terminal can first establish a binding relationship with the telematics device and then negotiate a key. When the terminal establishes a binding relationship with the telematics device, it negotiates a session key with the telematics device. The security of the session key obtained by binding first and then negotiating can be ensured; when transmitting remote vehicle control instructions through the cloud subsequently, the negotiated session key is used for encryption. In this way, even if the cloud is attacked, the attacker cannot tamper with the vehicle control instructions, thus ensuring the security of the vehicle control method.

[0017] Taking the in-vehicle device as an example below, the binding process between the terminal and the telematics device is described:

[0018] The terminal determines the symmetric key between itself and the in-vehicle device of the vehicle; the terminal encrypts the binding request using the symmetric key; the terminal sends the encrypted binding request to the in-vehicle device so that the in-vehicle device decrypts the encrypted binding request and sends it to the telematics device; the terminal receives the encrypted and forwarded binding response from the in-vehicle device, and the binding response is fed back to the in-vehicle device by the telematics device; the terminal decrypts the encrypted binding response using the symmetric key to complete the binding.

[0019] In this implementation, the in-vehicle device and the telematics device are connected via the in-vehicle network, such as in-vehicle Ethernet or in-vehicle bus. Therefore, the security of the line between the in-vehicle device and the telematics device can be guaranteed. The in-vehicle device and the terminal are connected via a network outside the vehicle, so the security cannot be guaranteed. Therefore, in the implementation of this application, the information transmitted between the terminal and the telematics device is encrypted using a symmetric key to improve security. Through the above network and information transmission methods, the security of the binding process between the terminal and the telematics device is ensured.

[0020] In the above binding process, the in-vehicle device is responsible for encrypting, decrypting, and forwarding the information transmitted between the terminal and the telematics device. The information from the terminal to the telematics device is first decrypted and then forwarded, and the information from the telematics device to the terminal is first encrypted and then forwarded.

[0021] In a possible implementation of this application, the terminal determines the symmetric key with the in-vehicle device of the vehicle, including:

[0022] The terminal obtains the same secret factor as the in-vehicle device; the terminal determines the symmetric key based on the secret factor.

[0023] In this implementation, by obtaining the same secret factor as the in-vehicle device, and then the terminal determines the symmetric key according to the secret factor, thus providing a basis for the encryption of subsequent information transmission.

[0024] In one example, the secret factor includes at least one of an encryption password, a random salt value, an iteration count, and a vehicle unique identification code.

[0025] For example, the secret factor includes an encryption password, a random salt value, an iteration count, and a vehicle unique identification code.

[0026] In other examples, the secret factor can also be composed of other parameters, and this application does not limit this.

[0027] Among them, the terminal and the in-vehicle device can be connected based on Bluetooth or Wireless Fidelity (WIFI) network. After the connection between the terminal and the in-vehicle device is completed, the in-vehicle device sends the above secret factor to the terminal.

[0028] In one example, the encryption password in the secret factor can be the encryption password used when the terminal and the in-vehicle device implement Bluetooth connection or WIFI connection.

[0029] In another example, the encryption password in the secret factor can be a separately set encryption password, which is input through the in-vehicle large screen or the terminal after the connection between the terminal and the in-vehicle device is completed.

[0030] After the terminal receives the secret factor, the terminal calculates the symmetric key in the same way as the in-vehicle device. This way can be a mature key algorithm in related technologies or a key algorithm designed based on the encryption requirements of this application. This application does not limit this.

[0031] The above key algorithm can be stored in the terminal and the in-vehicle device in advance, or can be determined through negotiation after the terminal and the in-vehicle device are connected. This application does not limit this.

[0032] Correspondingly, in addition to the terminal determining the symmetric key based on the secret factor, the in-vehicle device also determines the symmetric key based on the secret factor. Since the determination methods are the same, the keys determined by the two are the same. This method neither directly transmits the key to avoid the exposure risk nor ensures the consistency of the key.

[0033] In other possible implementation manners of this application, the content of the secret factor transmitted between the terminal and the in-vehicle device may include more or fewer parameters, or the secret factor is transmitted from the terminal to the in-vehicle device, etc. This application does not impose too many restrictions on these implementation details.

[0034] In a possible implementation manner of this application, the terminal encrypts the remote vehicle control instruction using the session key, including:

[0035] The terminal encrypts the remote vehicle control instruction and the first count value using the session key, so that the remote information processing device verifies the legality of the remote vehicle control instruction based on the first count value, and the first count value is the count value of the remote vehicle control instruction.

[0036] In this implementation manner, when encrypting the remote vehicle control instruction, the first count value is encrypted together, and then the encrypted remote vehicle control instruction and the first count value are sent together, so that when the remote information processing device receives the remote vehicle control instruction, it performs a legality check based on the first count value received together. Among them, the first count value gradually increases as the number of instructions sent by the terminal to the remote information processing device increases. Therefore, it is possible to determine whether it is a normal instruction or a replay attack by verifying the first count value, thereby increasing the security.

[0037] In one example, the remote vehicle control instruction and the first count value are encrypted as a whole; in another example, the remote vehicle control instruction and the first count value are encrypted separately. That is, the remote vehicle control instruction and the first count value can either be used as a single message or data packet, or be divided into different messages and data packets, but when divided, it is necessary to ensure that the two can be related or corresponding to each other.

[0038] In another possible implementation manner of this application, the terminal does not carry the first count value when encrypting the remote vehicle control instruction, which can reduce the size of the message for transmitting the instruction and reduce the bandwidth requirement.

[0039] In addition to transmitting remote vehicle control instructions, vehicle status information can also be transmitted between the terminal and the telematics device.

[0040] In a possible implementation manner of the present application, the method further includes:

[0041] The terminal receives the encrypted vehicle status information and the second count value sent by the telematics device through the second link, where the second count value is the count value of the vehicle status information; the terminal decrypts the encrypted vehicle status information and the second count value by using the session key to obtain the vehicle status information and the second count value; the terminal verifies the legality of the vehicle status information based on the second count value.

[0042] In this implementation manner, the second count value is encrypted together when encrypting the vehicle status information, and then the encrypted vehicle status information and the second count value are sent together, so that when the terminal receives the vehicle status information, the terminal performs a legality check based on the second count value received together. Among them, the second count value gradually increases as the number of vehicle status information sent by the telematics device to the terminal increases, so it is possible to determine whether it is normal information or a replay attack by verifying the second count value, thereby increasing security.

[0043] In one example, the vehicle status information and the second count value are encrypted as a whole; in another example, the vehicle status information and the second count value are encrypted separately. That is, the vehicle status information and the second count value can either be used as a single message or data packet, or be divided into different messages and data packets, but when divided, it is necessary to ensure that the two can be associated or corresponding to each other.

[0044] In another possible implementation manner of the present application, the telematics device does not carry the second count value when encrypting the vehicle status information, which can reduce the message size of the transmitted information and the bandwidth requirement.

[0045] In a possible implementation manner of the present application, after the terminal and the telematics device negotiate and determine the session key, the same session key is always used for information encryption. In this way, the processing amount for the terminal and the telematics device to determine the required key is relatively small.

[0046] In another possible implementation manner of the present application, after the terminal and the telematics device negotiate and determine the session key, the used session key is updated periodically, thereby further increasing security.

[0047] In one example, the terminal updates the session key in the following manner: The terminal and the telematics device negotiate to periodically update the session key. That is, the terminal and the telematics device negotiate periodically, and then use the latest negotiated session key.

[0048] In another example, the terminal updates the session key in the following manner: The terminal and the telematics device negotiate to obtain multiple session keys; the terminal periodically updates the session key used based on the multiple session keys. That is, the terminal and the telematics device negotiate to obtain multiple session keys, then select the session key to be used from these multiple session keys, and periodically change the session key used. Of course, in this example, the terminal and the telematics device can still negotiate periodically. The difference from the first example is that multiple session keys are obtained each time of negotiation, and then the session key is changed between two negotiation periods.

[0049] The vehicle control method executed by the terminal is introduced above. Corresponding to it is the vehicle control method of the telematics device. Since the vehicle control methods on both sides are involved, the steps of the methods executed by each are also corresponding to each other. See the following second aspect:

[0050] Second aspect, the present application provides a vehicle control method. The vehicle includes a telematics device, and this method is executed by the telematics device of the vehicle. The method includes:

[0051] The telematics device negotiates with the terminal through a first link to determine a session key; the telematics device receives the encrypted remote vehicle control instruction sent by the terminal through a second link, and the second link is different from the first link; the telematics device decrypts the encrypted remote vehicle control instruction using the session key to obtain the remote vehicle control instruction; the telematics device controls the vehicle according to the remote vehicle control instruction.

[0052] Optionally, the first link includes the link between the terminal and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device;

[0053] Or, the first link includes the link between the terminal and the telematics device.

[0054] Optionally, in the case where the first link includes the link between the terminal and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device, the method further includes:

[0055] The telematics device receives the binding request sent by the terminal through the in-vehicle device of the vehicle; the telematics device sends a binding response to the in-vehicle device so that the in-vehicle device encrypts and forwards it to the terminal to complete the binding.

[0056] Optionally, the telematics device receives the encrypted remote vehicle control instruction sent by the terminal through a second link, including:

[0057] The telematics device receives the encrypted remote vehicle control instruction and a first count value sent by the terminal through the second link, where the first count value is the count value of the remote vehicle control instruction;

[0058] The method further includes:

[0059] The terminal verifies the legitimacy of the remote vehicle control instruction based on the first count value.

[0060] Optionally, the method further includes:

[0061] The telematics device encrypts the vehicle status information and a second count value using the session key, so that the terminal verifies the legitimacy of the vehicle status information based on the second count value, where the second count value is the count value of the vehicle status information; the terminal sends the encrypted vehicle status information and the second count value to the terminal through the second link.

[0062] Optionally, the second link includes the link between the terminal and the cloud, and the link between the cloud and the telematics device;

[0063] Alternatively, the second link includes the link between the terminal and the telematics device.

[0064] Optionally, the method further includes:

[0065] The telematics device and the terminal periodically update the session key through negotiation;

[0066] Or,

[0067] The telematics device and the terminal negotiate to obtain multiple session keys, and the method further includes: the telematics device periodically updates the used session key based on the multiple session keys.

[0068] In a third aspect, the present application provides a vehicle control device, and the device includes:

[0069] A key negotiation unit, configured to negotiate and determine a session key with the telematics device of the vehicle through a first link;

[0070] An encryption and decryption unit, configured to encrypt the remote vehicle control instruction using the session key;

[0071] A transmission unit, configured to send the encrypted remote vehicle control instruction to the telematics device through a second link, where the second link is different from the first link.

[0072] Optionally, the first link includes a link between the device and the in-vehicle device of the vehicle, and a link between the in-vehicle device and the telematics device;

[0073] Alternatively, the first link includes a link between the device and the telematics device.

[0074] Optionally, when the first link includes a link between the device and the in-vehicle device of the vehicle, and a link between the in-vehicle device and the telematics device, the device further includes: a binding unit for determining a symmetric key with the in-vehicle device of the vehicle;

[0075] An encryption and decryption unit is further configured to encrypt the binding request using the symmetric key;

[0076] A transmission unit is further configured to send the encrypted binding request to the in-vehicle device, so that the in-vehicle device decrypts the encrypted binding request and sends it to the telematics device; receive the encrypted and forwarded binding response sent by the in-vehicle device, and the binding response is fed back to the in-vehicle device by the telematics device;

[0077] The binding unit is further configured to decrypt the encrypted binding response using the symmetric key to complete the binding.

[0078] Optionally, the transmission unit is further configured to obtain the same secret factor as the in-vehicle device;

[0079] The binding unit is configured to determine the symmetric key based on the secret factor.

[0080] Optionally, the encryption and decryption unit is configured to encrypt the remote vehicle control instruction and the first count value using the session key, so that the telematics device verifies the legitimacy of the remote vehicle control instruction based on the first count value, and the first count value is the count value of the remote vehicle control instruction.

[0081] Optionally, the transmission unit is further configured to receive the encrypted vehicle status information and the second count value sent by the telematics device through the second link, and the second count value is the count value of the vehicle status information;

[0082] The encryption and decryption unit is further configured to decrypt the encrypted vehicle status information and the second count value using the session key to obtain the vehicle status information and the second count value; verify the legitimacy of the vehicle status information based on the second count value.

[0083] Optionally, the second link includes a link between the device and the cloud, and a link between the cloud and the telematics device;

[0084] Alternatively, the second link includes a link between the device and the telematics device.

[0085] Optionally, the key negotiation unit is further configured to periodically update the session key through negotiation with the telematics device;

[0086] Alternatively,

[0087] Negotiate with the telematics device to obtain multiple session keys, and the key negotiation unit is further configured to periodically update the used session key based on the multiple session keys.

[0088] In a fourth aspect, the present application provides a vehicle control device, which includes:

[0089] A key negotiation unit, configured to negotiate with the terminal through a first link to determine a session key;

[0090] A transmission unit, configured to receive an encrypted remote vehicle control instruction sent by the terminal through a second link, where the second link is different from the first link;

[0091] An encryption / decryption unit, configured to decrypt the encrypted remote vehicle control instruction using the session key to obtain the remote vehicle control instruction;

[0092] A control unit, configured to control the vehicle according to the remote vehicle control instruction.

[0093] Optionally, the first link includes a link between the terminal and the in-vehicle device of the vehicle, and a link between the in-vehicle device and the device;

[0094] Alternatively, the first link includes a link between the terminal and the device.

[0095] Optionally, in the case where the first link includes a link between the terminal and the in-vehicle device of the vehicle, and a link between the in-vehicle device and the device, the transmission unit is further configured to receive a binding request sent by the terminal through the in-vehicle device of the vehicle; send a binding response to the in-vehicle device, so that the in-vehicle device encrypts and forwards it to the terminal to complete the binding.

[0096] Optionally, the transmission unit is configured to receive an encrypted remote vehicle control instruction and a first count value sent by the terminal through the second link, where the first count value is the count value of the remote vehicle control instruction;

[0097] The encryption / decryption unit is configured to verify the legitimacy of the remote vehicle control instruction based on the first count value.

[0098] Optionally, the encryption / decryption unit is further configured to encrypt the vehicle status information and a second count value using the session key, so that the terminal verifies the legitimacy of the vehicle status information based on the second count value, where the second count value is the count value of the vehicle status information; the transmission unit is further configured to send the encrypted vehicle status information and the second count value to the terminal through the second link.

[0099] Optionally, the second link includes a link between the terminal and the cloud, and a link between the cloud and the device;

[0100] Alternatively, the second link includes a link between the terminal and the device.

[0101] Optionally, the key negotiation unit is further configured to periodically update the session key through negotiation with the terminal;

[0102] Or,

[0103] The key negotiation unit negotiates with the terminal to obtain multiple session keys, and is further configured to periodically update the used session key based on the multiple session keys.

[0104] In a fifth aspect, an electronic device is provided. The electronic device includes a processor and a memory. The memory is used to store software programs and modules.

[0105] In one example, the electronic device may be a terminal. Correspondingly, the processor implements the method in the first aspect or any possible implementation manner of the first aspect by running or executing the software program and / or module stored in the memory.

[0106] In another example, the electronic device may be a vehicle-mounted device. Correspondingly, the processor implements the method in the second aspect or any possible implementation manner of the second aspect by running or executing the software program and / or module stored in the memory.

[0107] Optionally, the processor is one or more, and the memory is one or more.

[0108] Optionally, the memory may be integrated with the processor, or the memory is separately provided from the processor.

[0109] In a specific implementation process, the memory may be a non-transitory memory, such as a read only memory (ROM), which may be integrated with the processor on the same chip, or may be separately provided on different chips. The present application does not limit the type of the memory and the setting manner of the memory and the processor.

[0110] In a sixth aspect, a computer program product is provided. The computer program product includes computer program code, and when the computer program code is run by a computer, the computer is caused to execute the method in the first aspect or any possible implementation manner of the first aspect, or execute the method in the second aspect or any possible implementation manner of the second aspect.

[0111] In a seventh aspect, the present application provides a computer-readable storage medium for storing program code executed by a processor. The program code includes methods for implementing the method in the first aspect or any possible implementation manner of the first aspect, or implementing the method in the second aspect or any possible implementation manner of the second aspect.

[0112] In an eighth aspect, a chip is provided, including a processor. The processor is configured to call and run instructions stored in a memory, such that a communication device installed with the chip executes the method in the first aspect or any possible implementation manner of the first aspect, or executes the method in the second aspect or any possible implementation manner of the second aspect.

[0113] In a ninth aspect, another chip is provided. The other chip includes an input interface, an output interface, a processor, and a memory. The input interface, the output interface, the processor, and the memory are connected through an internal connection path. The processor is configured to execute code in the memory. When the code is executed, the processor is configured to execute the method in the first aspect or any possible implementation manner of the first aspect, or execute the method in the second aspect or any possible implementation manner of the second aspect.

[0114] In a tenth aspect, a vehicle is provided, which includes a vehicle control device as described in the fourth aspect or any possible implementation manner of the fourth aspect.

[0115] In an eleventh aspect, a vehicle control system is provided, which includes a terminal as described in any of the preceding items and a vehicle-mounted device as described in any item. Description of the Drawings

[0116] Figure 1 is a schematic diagram of a system architecture provided by an embodiment of the present application;

[0117] Figure 2 is a flowchart of a vehicle control method provided by an embodiment of the present application;

[0118] Figure 3 is a flowchart of a vehicle control method provided by an embodiment of the present application;

[0119] Figure 4 is a flowchart of a vehicle control method provided by an embodiment of the present application;

[0120] Figure 5 is a vehicle control flowchart provided by an embodiment of the present application;

[0121] Figure 6 is a schematic diagram of modules of a vehicle-mounted device provided by an embodiment of the present application;

[0122] Figure 7 It is a schematic diagram of a module in the cloud provided by an embodiment of the present application;

[0123] Figure 8 It is a flowchart of a vehicle control method provided by an embodiment of the present application;

[0124] Figure 9 It is a block diagram of a vehicle control device provided by an embodiment of the present application;

[0125] Figure 10 It is a block diagram of a vehicle control device provided by an embodiment of the present application;

[0126] Figure 11 It is a schematic diagram of the structure of a device provided by an embodiment of the present application. Detailed implementation manners

[0127] To make the objectives, technical solutions, and advantages of the present application clearer, the following will further describe the embodiments of the present application in detail with reference to the accompanying drawings.

[0128] To facilitate the understanding of the technical solutions provided by the embodiments of the present application, first, in combination with Figure 1 and Figure 2 the system architecture of the present application will be introduced.

[0129] Figure 1 It is a schematic diagram of a system architecture provided by an embodiment of the present application. Refer to Figure 1 , the system architecture includes a terminal 10, a vehicle head unit device 11, a telematics device 12, and a cloud 13.

[0130] Among them, the vehicle head unit device 11 and the telematics device 12 belong to the same vehicle, and the vehicle head unit device 11 and the telematics device 12 are connected through an in-vehicle network. For example, the vehicle head unit device 11 and the telematics device 12 are connected through an in-vehicle Ethernet or an in-vehicle bus.

[0131] The vehicle head unit device 11 and the terminal 10 are connected through a network outside the vehicle. For example, the vehicle head unit device 11 and the terminal 10 can be connected based on a Bluetooth or a wireless high-fidelity (WIFI) network.

[0132] The terminal 10 and the telematics device 12 are also connected to the cloud 13, and the cloud 13 can be a vehicle cloud platform.

[0133] Exemplarily, the terminal 10 can be a mobile terminal, such as a mobile phone, a tablet computer, a smart watch, or other intelligent wearable devices.

[0134] Exemplarily, the in-vehicle device 11 can be an intelligent cockpit device (such as an intelligent cockpit domain controller), or other intelligent interaction devices in the vehicle that can provide human-machine interaction and are connected to the telematics device.

[0135] Exemplarily, the telematics device 12 can be a T-BOX.

[0136] In the embodiments of the present application, the above system architecture belongs to a vehicle. Here, in addition to vehicles running on the road, the vehicle can also include vehicles with flight functions and vehicles with navigation functions, and the shapes of these vehicles are not limited. For example, they can be other forms of vehicles such as aircraft or vessels. The present application does not limit the form of the vehicle.

[0137] Figure 2 It is a flowchart of a vehicle control method provided by an embodiment of the present application. This method is applied to the aforementioned terminal, that is, this method can be executed by Figure 1 the terminal in the system architecture shown. As Figure 2 shown, this method includes the following steps.

[0138] S11: The terminal negotiates with the telematics device of the vehicle through the first link to determine a session key.

[0139] Exemplarily, the first link includes the link between the terminal and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device; or, the first link includes the link between the terminal and the telematics device.

[0140] Among them, the first link between the terminal and the telematics device can be a direct link or an indirect link that does not pass through the in-vehicle device.

[0141] S12: The terminal encrypts the remote vehicle control instruction using the session key.

[0142] In the embodiments of the present application, the remote vehicle control instruction can be a vehicle start instruction, a vehicle air conditioner control instruction, a vehicle seat adjustment instruction, etc. The present application does not limit the type of the remote vehicle control instruction.

[0143] S13: The terminal sends the encrypted remote vehicle control instruction to the telematics device through the second link, and the second link is different from the first link.

[0144] Exemplarily, the second link includes the link between the terminal and the cloud, and the link between the cloud and the telematics device; or, the second link includes the link between the terminal and the telematics device.

[0145] Among them, the second link between the terminal and the telematics device can be a direct link or an indirect link that does not pass through the cloud.

[0146] Even if both the first link and the second link include the link between the terminal and the telematics device, the intermediate nodes may be different, or the protocols used by the two may be different. In these cases, the first link and the second link are still different links.

[0147] In the embodiments of the present application, the first link is used when the terminal negotiates a session key with the telematics device, and then the encrypted remote vehicle control instruction is transmitted through the second link. That is to say, the key of the present application is obtained through negotiation. Even if the cloud is attacked, the key cannot be obtained, and the link used for negotiating the key is different from the transmission link. Even if the cloud is attacked when transmitting the instruction through the cloud, the attacker cannot tamper with the vehicle control instruction, thus ensuring the security of the vehicle control method.

[0148] Figure 3 It is a flowchart of a vehicle control method provided by an embodiment of the present application. This method is applied to the aforementioned vehicle. This method can be executed by Figure 1 the telematics device in the system architecture shown. As Figure 3 shown, this method includes the following steps.

[0149] S21: The telematics device negotiates and determines a session key with the terminal through the first link.

[0150] S22: The telematics device receives the encrypted remote vehicle control instruction sent by the terminal through the second link, and the second link is different from the first link.

[0151] S23: The telematics device decrypts the encrypted remote vehicle control instruction using the session key to obtain the remote vehicle control instruction.

[0152] S24: The telematics device controls the vehicle according to the remote vehicle control instruction.

[0153] For example, if the remote vehicle control instruction is a vehicle start instruction, the telematics device starts the vehicle based on this remote vehicle control instruction.

[0154] For another example, if the remote vehicle control instruction is a vehicle air conditioner control instruction, the telematics device controls the operation of the air conditioner in the vehicle based on this remote vehicle control instruction.

[0155] For another example, if the remote vehicle control instruction is a vehicle seat adjustment instruction, the telematics device adjusts the seat state in the vehicle based on this remote vehicle control instruction.

[0156] In an embodiment of the present application, a first link is used when the telematics device negotiates a session key with the terminal, and then the encrypted remote vehicle control instruction is transmitted through a second link. That is to say, the key of the present application is obtained through negotiation. Even if the cloud is attacked, the key cannot be obtained. Moreover, the link used for negotiating the key is different from the transmission link. Even if the cloud is attacked when the instruction is transmitted through the cloud, the attacker cannot tamper with the vehicle control instruction, thus ensuring the security of the vehicle control method.

[0157] The following takes the first link including the link between the terminal and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device, and the second link including the link between the terminal and the cloud, and the link between the cloud and the telematics device as an example to exemplarily illustrate the vehicle control method. When the first link and the second link are other links, the process of the vehicle control method is the same, and only the details need to be adaptively adjusted according to the differences of the links. For example, the steps executed by the in-vehicle device and the cloud are removed, or the steps executed by the in-vehicle device or the cloud are transferred to other nodes on the link, etc.

[0158] Figure 4 It is a flowchart of a vehicle control method provided by an embodiment of the present application. This method is applied to the aforementioned vehicle. This method can be jointly executed by Figure 1 the terminal and the telematics device in the system architecture shown. As Figure 4 shown, this method includes the following steps.

[0159] S31: The terminal determines the symmetric key between the terminal and the in-vehicle device of the vehicle.

[0160] In a possible implementation manner of the present application, the terminal determines the symmetric key between the terminal and the in-vehicle device of the vehicle, including:

[0161] The terminal obtains the same secret factor as the in-vehicle device; the terminal determines the symmetric key based on the secret factor.

[0162] In this implementation manner, by obtaining the same secret factor as the in-vehicle device, and then the terminal determines the symmetric key according to the secret factor, thus providing a basis for the encryption of subsequent information transmission.

[0163] In one example, the secret factor includes at least one of an encryption password, a random salt value, an iteration number, and a vehicle unique identification code.

[0164] For example, the secret factor includes an encryption password, a random salt value, an iteration number, and a vehicle unique identification code.

[0165] In other examples, the secret factor can also be composed of other parameters, and the present application does not limit this.

[0166] Among them, the terminal and the in-vehicle device can be connected based on Bluetooth or Wireless Fidelity (WIFI) network. After the connection between the terminal and the in-vehicle device is completed, the in-vehicle device sends the above-mentioned secret factor to the terminal.

[0167] In one example, the encryption password in the secret factor can be the encryption password used when the terminal and the in-vehicle device implement Bluetooth connection or WIFI connection.

[0168] In another example, the encryption password in the secret factor can be a separately set encryption password, which is input through the in-vehicle large screen or the terminal after the connection between the terminal and the in-vehicle device is completed.

[0169] After the terminal receives the secret factor, the terminal calculates the symmetric key in the same way as the in-vehicle device. This way can be a mature key algorithm in the related art, or a key algorithm designed based on the encryption needs of this application. This application does not limit this.

[0170] The above key algorithm can be stored in the terminal and the in-vehicle device in advance, or can be negotiated and determined after the connection between the terminal and the in-vehicle device. This application does not limit this.

[0171] Correspondingly, in addition to the terminal determining the symmetric key based on the secret factor, the in-vehicle device also determines the symmetric key based on the secret factor. Since the determination methods are the same, the keys determined by the two are the same. This method not only does not directly transmit the key to avoid the exposure risk, but also ensures the consistency of the key.

[0172] In other possible implementation manners of this application, the content of the secret factor transmitted between the terminal and the in-vehicle device can include more or fewer parameters, or the secret factor is transmitted from the terminal to the in-vehicle device, etc. This application does not impose too many restrictions on these implementation details.

[0173] Figure 5 It is a vehicle control flow chart provided by an embodiment of this application. Refer to Figure 5 , taking the terminal 10 as a mobile phone, the in-vehicle device 11 as an intelligent cockpit, and the telematics device 12 as a T-BOX as an example. The terminal 10 includes a first application and a Bluetooth module. The in-vehicle device 11 includes a cockpit large screen, a communication proxy application, a Bluetooth module, and an Ethernet module. The telematics device 12 includes a second application and an Ethernet module. The above first application, communication proxy application, and second application are all responsible for implementing functions such as communication connection establishment, data encryption and decryption. The following combines Figure 5 the structure of to illustrate the detailed process of step S31:

[0174] S311. The Bluetooth module of the terminal is paired with the Bluetooth module of the in-vehicle device to establish a communication channel.

[0175] S312. The first application of the terminal and the communication proxy application of the in-vehicle device enter the device authentication and pairing interface. The cockpit large screen of the in-vehicle device provides a QR code, and the terminal scans the QR code to complete the authentication. Alternatively, the terminal and the in-vehicle device respectively obtain the preset password input by the user, and if the obtained preset passwords are the same, the authentication is completed.

[0176] Among them, the preset password can set the maximum number of trial errors. By restricting the number of password trial errors between the terminal and the in-vehicle device, potential attacks can be avoided.

[0177] Figure 5 Although S312 is carried out between the first application and the communication proxy application, it still needs to rely on the path established by the Bluetooth module. The transmission path of S312 is: First application - Bluetooth module in the terminal 10 - Bluetooth module in the in-vehicle device 11 - Communication proxy application.

[0178] S313. The terminal obtains the same secret factor as the in-vehicle device through the first application.

[0179] In one example, the terminal and the in-vehicle device respectively obtain the secret factor input by the user. In this case, the secret factor can be generated by the user input.

[0180] In another example, the terminal scans the QR code provided by the cockpit large screen of the in-vehicle device to obtain the secret factor shared by the in-vehicle device. In this case, the secret factor can be automatically generated by the in-vehicle device, or generated by the in-vehicle device in combination with the user input.

[0181] Among them, the secret factor includes an encrypted password (password, pwd), a random salt value (salt), the number of iterations (n), and the vehicle unique identification code (VIN).

[0182] Exemplarily, the number of iterations is related to the strength of the generated symmetric key. Usually, 1024 or 2048 can be selected, which can not only ensure the key strength but also not occupy too much computing power resources.

[0183] Figure 5 Although S313 is carried out between the first application and the communication proxy application, it still needs to rely on the path established by the Bluetooth module. The transmission path of S313 is: Transmitted along the path of the communication proxy application - Bluetooth module in the in-vehicle device 11 - Bluetooth module in the terminal 10 - First application.

[0184] S314. The terminal calculates the symmetric key based on the secret factor through the first application.

[0185] Exemplarily, the symmetric key UK (User Key) = PBKDF2(pwd||VIN, salt, n). Since the VIN is used in the calculation process of the symmetric key and the VIN is the unique vehicle identification code, the above key determination can also be considered as the initial binding between the terminal and the telematics device.

[0186] In the above process, the terminal and the in-vehicle device first establish a basic communication link using Bluetooth, and then complete the exchange of secret factors and key generation. This symmetric key can be used for subsequent identity authentication and data transmission protection between the terminal and the in-vehicle device; while the in-vehicle device and the telematics device in the vehicle belong to in-domain communication, and the communication link can use Ethernet communication, which belongs to trusted communication. Therefore, the terminal and the telematics device complete the establishment of a secure communication link through the in-vehicle device as a communication proxy, in order to complete the negotiation of the session key between the terminal and the in-vehicle device.

[0187] Figure 6 It is a schematic diagram of the modules of an in-vehicle device provided by an embodiment of the present application. Refer to Figure 6 , this module can be a module included in the communication proxy application in the in-vehicle device. The communication proxy application includes a device binding module, an identity authentication module, a communication connection and proxy module, a secret factor exchange module, and a data encryption and decryption module. Through the above modules, the trust problem between the user terminal and the telematics device can be solved, and the key negotiation between the terminal and the telematics device can be assisted.

[0188] S32: The terminal encrypts the binding request using the symmetric key.

[0189] After the secure channel between the terminal and the telematics device is established, the terminal can generate and encrypt the binding request under the condition of manual triggering by the user. The terminal can also automatically trigger the generation and encryption of the binding request.

[0190] Exemplarily, the binding request can include terminal information and telematics device information. For example, the terminal information is the user identification or terminal identification, and the telematics device information can be the aforementioned VIN.

[0191] S33: The terminal sends the encrypted binding request to the in-vehicle device so that the in-vehicle device decrypts the encrypted binding request and sends it to the telematics device; the telematics device receives the binding request sent by the terminal through the in-vehicle device of the vehicle.

[0192] After the secure channel is established, the information transmission process from the terminal to the telematics device is the same. Refer to Figure 5, the transmission path of information such as the binding request in S33 is: the first application - the Bluetooth module of terminal 10 - the Bluetooth module of in-vehicle device 11 - the communication proxy application - the Ethernet module of in-vehicle device 11 - the Ethernet module of telematics device 12 - the second application.

[0193] S34: The telematics device sends a binding response to the in-vehicle device so that the in-vehicle device encrypts and forwards it to the terminal; the terminal receives the binding response encrypted and forwarded by the in-vehicle device.

[0194] After the secure channel is established, the information transmission process from the telematics device to the terminal is the same. Refer to Figure 5 , the transmission path of information such as the binding response in S34 is: the second application - the Ethernet module of telematics device 12 - the Ethernet module of in-vehicle device 11 - the communication proxy application - the Bluetooth module of in-vehicle device 11 - the Bluetooth module of terminal 10 - the first application.

[0195] S35: The terminal decrypts the encrypted binding response using the symmetric key to complete the binding.

[0196] In this implementation, the in-vehicle device and the telematics device are connected through the vehicle internal network, for example, in-vehicle Ethernet or in-vehicle bus. Therefore, the security of the line between the in-vehicle device and the telematics device can be guaranteed. However, the in-vehicle device and the terminal are connected through a network outside the vehicle, so the security cannot be guaranteed. Therefore, in the implementation of this application, the information transmitted between the terminal and the telematics device is encrypted using the symmetric key to improve security. Through the above network and information transmission methods, the security of the binding process between the terminal and the telematics device is guaranteed.

[0197] In the embodiment of this application, the trust relationship between the terminal and the telematics device does not depend on the cloud, and the binding is completed in the near-field communication scenario. The cloud cannot change the device binding relationship.

[0198] S36: The terminal and the telematics device negotiate and determine a session key.

[0199] In the embodiment of this application, the terminal and the telematics device can use a mature key negotiation algorithm to negotiate keys, or the terminal and the telematics device can also use a custom key negotiation algorithm to negotiate keys.

[0200] Exemplarily, the terminal and the telematics device can use the elliptic curve Diffie Hellman key exchange (ECDH) algorithm to negotiate keys.

[0201] When performing key negotiation using the ECDH algorithm, the terminal and the remote information processing device use the certificate as the trust root between devices. The terminal sends the certificate, algorithm suite, and random number to the remote information processing device, and the remote information processing device sends the certificate, algorithm suite, and random number to the terminal. When the above certificate, algorithm suite, and random number are transmitted between the terminal and the in-vehicle device, symmetric key encryption is used.

[0202] After the certificate exchange, the terminal and the remote information processing device verify the legality of the peer certificate. Negotiation continues only if it is legal; otherwise, the negotiation stops.

[0203] After the certificate authentication is completed, the terminal and the remote information processing device extract the public key from the peer's certificate.

[0204] After the certificate authentication is completed, the terminal and the remote information processing device respectively generate temporary public keys and exchange them. During the exchange process, the public key or temporary public key extracted from the certificate is first used for encryption, and when passing through the link between the terminal and the in-vehicle device, symmetric key encryption is also required for two-layer encryption.

[0205] After the temporary public key exchange is completed, the terminal and the remote information use the temporary public key to negotiate and generate the same session key, also known as the Master Key.

[0206] Figure 5 Although S36 is performed between the first application and the second application, it still needs to rely on the paths established by the Bluetooth module and the Ethernet module. The transmission path of S36 is: First application - Bluetooth module of terminal 10 - Bluetooth module of in-vehicle device 11 - Communication proxy application - Ethernet module of in-vehicle device 11 - Ethernet module of remote information processing device 12 - Second application.

[0207] S37: The terminal encrypts the remote vehicle control instruction using the session key.

[0208] In a possible implementation manner of this application, the terminal encrypts the remote vehicle control instruction using the session key, including:

[0209] The terminal encrypts the remote vehicle control instruction and the first count value using the session key, so that the remote information processing device verifies the legality of the remote vehicle control instruction based on the first count value, and the first count value is the count value of the remote vehicle control instruction.

[0210] In this implementation mode, the first count value is encrypted together when encrypting the remote vehicle control instruction, and then the encrypted remote vehicle control instruction and the first count value are sent together, so that when the telematics device receives the remote vehicle control instruction, it performs a legality check based on the first count value received together. Wherein, the first count value gradually increases with the number of instructions sent by the terminal to the telematics device, so it is possible to determine whether it is a normal instruction or a replay attack by verifying the first count value, thereby increasing security.

[0211] Wherein, the value of the first count value shows an increasing trend, that is, each time the terminal sends a message, the carried first count value gradually increases, for example, it increases by 1 each time. For example, when the terminal sends the first remote vehicle control instruction, the first count value is 1, and when the terminal sends the second remote vehicle control instruction, the first count value is 2, and so on. After the telematics device receives and decrypts it, it determines whether the first count value decrypted this time is increased by 1 compared to the first count value obtained by the previous decryption. If so, it indicates legal, otherwise it indicates illegal.

[0212] In one example, the remote vehicle control instruction and the first count value are encrypted as a whole; in another example, the remote vehicle control instruction and the first count value are encrypted separately. That is, the remote vehicle control instruction and the first count value can either be used as a message or a data packet, or be divided into different messages and data packets, but when divided, it is necessary to ensure that the two can be associated or corresponding to each other.

[0213] In another possible implementation mode of the present application, the terminal does not carry the first count value when encrypting the remote vehicle control instruction, which can reduce the size of the message for transmitting the instruction and reduce the bandwidth requirement.

[0214] In the implementation mode of the present application, the user triggers the remote vehicle control instruction through the application in the terminal, that is, the terminal responds to the vehicle control operation of the user in the application and executes step S37. The terminal encrypts the remote vehicle control instruction by using the negotiated session to generate a ciphertext.

[0215] S38: The terminal sends the encrypted remote vehicle control instruction to the telematics device through the cloud; the telematics device receives the encrypted remote vehicle control instruction sent by the terminal through the cloud.

[0216] Figure 7 It is a schematic diagram of a module in the cloud provided by an embodiment of the present application. See Figure 7, the cloud includes a device management module and a data forwarding module. The device management module is used to obtain the binding relationship of the terminal remote information processing device, and determine the target device of the received information according to this binding relationship, such as the target remote information processing device or the target terminal. The data forwarding module is used to transparently forward the data to the target device. In this process, the cloud cannot decrypt and tamper with the message, avoiding the vulnerability of attacking the cloud to control the vehicle.

[0217] See Figure 5 , the transmission path of the encrypted remote vehicle control instruction is: terminal 10 - cloud 13 - remote information processing device 12.

[0218] S39: The remote information processing device decrypts the encrypted remote vehicle control instruction using the session key to obtain the remote vehicle control instruction.

[0219] When the remote vehicle control instruction carries the first count value, the remote information processing device uses the session key to decrypt and obtain the remote vehicle control instruction and the first count value, and verifies the legality through the first count value.

[0220] See Figure 5 , step S39 can be executed by the second application of the remote information processing device 12.

[0221] S310: The remote information processing device controls the vehicle according to the remote vehicle control instruction.

[0222] The remote information processing device issues the remote vehicle control instruction to the corresponding controller through the bus to achieve remote control of the vehicle and realize functions such as remote start, air conditioner control, and seat adjustment of the vehicle. Among them, the bus can be a controller area network (CAN) bus.

[0223] In a possible implementation manner of the present application, after the terminal and the remote information processing device negotiate and determine the session key, they always use the same session key for information encryption. In this way, the processing amount of determining the key to be used by the terminal and the remote information processing device is relatively small.

[0224] In another possible implementation manner of the present application, after the terminal and the remote information processing device negotiate and determine the session key, they will periodically update the used session key to further increase security.

[0225] In one example, the terminal updates the session key in the following manner: The terminal and the remote information processing device periodically update the session key through negotiation. That is, the terminal and the remote information processing device negotiate periodically, and then use the latest negotiated session key.

[0226] In another example, the terminal updates the session key in the following manner: The terminal negotiates with the telematics device to obtain multiple session keys; the terminal periodically updates the session key in use based on the multiple session keys. That is, the terminal and the telematics device negotiate to obtain multiple session keys, then select the session key in use from these multiple session keys, and periodically change the session key in use. Of course, in this example, the terminal and the telematics device can still negotiate periodically. The difference from the first example is that multiple session keys are obtained in each negotiation, and then the session key is changed between two negotiation periods.

[0227] In the implementation manner of the present application, the above negotiation period or key change period can both be set based on security requirements, computing power, and bandwidth conditions. The present application does not limit the period length of the foregoing implementation manner.

[0228] The vehicle control solution provided by the present application includes two stages. The first stage completes the key negotiation between the terminal and the telematics device, and the second stage completes the transmission of the vehicle remote control instruction.

[0229] In the first stage, since the terminal and the telematics device cannot communicate directly in the actual scenario, it is necessary to use the in-vehicle device as a springboard to complete the establishment of the channel between the terminal and the telematics device, and the information in the negotiation process is transmitted in this channel.

[0230] In this stage, the terminal and the telematics device use certificates to implement identity authentication, confirm the legality of the public key sent by the peer, and avoid spoofing attacks. The session key is saved on both sides of the terminal and the telematics device, and the password cannot be deduced backward from the session key. Even if the information in the terminal authentication database is stolen, the password owned by the application terminal cannot be restored, so it is impossible to spoof the application device to log in.

[0231] When negotiating keys, if temporary public keys are used for data encryption transmission, even if the long-term private keys based on certificates of the terminal or the telematics device are leaked, the clear text of the data in the negotiation process will not be leaked.

[0232] In the second stage, since the cloud only performs transparent forwarding of data, attackers cannot control the vehicle through the cloud, ensuring the security of vehicle remote control. The count value is used as a time-varying parameter to prevent replay attacks. In addition, by establishing a session key update mechanism, the security of the session key is further ensured.

[0233] In an embodiment of the present application, the terminal negotiates a session key with the telematics device. The security of the session key obtained through binding first and then negotiation can be guaranteed. When transmitting remote vehicle control instructions through the cloud subsequently, the negotiated session key is used for encryption. In this way, even if the cloud is attacked, the attacker cannot tamper with the vehicle control instructions, thus ensuring the security of the vehicle control method.

[0234] This solution realizes that the trust relationship between the terminal and the telematics device does not depend on the cloud, avoiding the vehicle being remotely controlled due to cloud vulnerabilities. It not only realizes identity authentication but also ensures that the data is protected by an encryption algorithm and will not be tampered with during transmission.

[0235] In an embodiment of the present application, in addition to transmitting remote vehicle control instructions, the terminal and the telematics device can also transmit vehicle status information. The following is an exemplary description in combination with Figure 8 For example.

[0236] Figure 8 is a flowchart of a vehicle control method provided by an embodiment of the present application. This method is applied to the aforementioned vehicle. This method can be jointly executed by the terminal and the telematics device in the system architecture shown in Figure 1 Since the key negotiation stage is the same as the method shown in Figure 4 Therefore Figure 8 This part is omitted as shown in Figure 8 As shown, this method includes the following steps.

[0237] S41: The telematics device encrypts the vehicle status information using the session key.

[0238] In an implementation manner of the present application, the telematics device can periodically execute S41, or trigger S41 based on an operation of the user on the terminal or the in-vehicle device.

[0239] S42: The telematics device sends the encrypted vehicle status information to the terminal through the cloud; the terminal receives the encrypted vehicle status information sent by the telematics device through the cloud.

[0240] In a possible implementation manner of the present application, the terminal receives the encrypted vehicle status information and a second count value sent by the telematics device through the cloud, and the second count value is the count value of the vehicle status information.

[0241] In one example, the vehicle status information and the second count value are encrypted as a whole; in another example, the vehicle status information and the second count value are encrypted separately. That is, the vehicle status information and the second count value can be either in a single message or data packet, or divided into different messages and data packets, but when divided, it is necessary to ensure that the two can be related or corresponding to each other.

[0242] In another possible implementation of the present application, the telematics device does not carry the second count value in the encrypted vehicle status information, which can reduce the message size of the transmitted information and the bandwidth requirement.

[0243] S43: The terminal decrypts the encrypted vehicle status information using the session key to obtain the vehicle status information.

[0244] When receiving the encrypted vehicle status information and the second count value, the terminal decrypts the encrypted vehicle status information and the second count value using the session key to obtain the vehicle status information and the second count value; the terminal verifies the legitimacy of the vehicle status information based on the second count value. If it is legitimate, the vehicle status information is saved; if it is not legitimate, the vehicle status information is discarded.

[0245] In this implementation, the second count value is encrypted together with the encrypted vehicle status information, and then the encrypted vehicle status information and the second count value are sent together, so that when the terminal receives the vehicle status information, the legitimacy check is performed based on the second count value received together. Among them, the second count value gradually increases with the number of vehicle status information sent by the telematics device to the terminal, so it is possible to determine whether it is normal information or a replay attack by verifying the second count value, thereby increasing the security.

[0246] Details of steps S41 to S43 can refer to steps S37 to S39.

[0247] Figure 9 It is a block diagram of a vehicle control device provided by an embodiment of the present application. The vehicle control device can be implemented as all or part of the terminal through software, hardware, or a combination of both. The vehicle control device may include: a key negotiation unit 501, an encryption / decryption unit 502, and a transmission unit 503.

[0248] Among them, the key negotiation unit 501 is used to negotiate and determine the session key with the telematics device of the vehicle through the first link;

[0249] The encryption / decryption unit 502 is used to encrypt the remote vehicle control instruction using the session key;

[0250] The transmission unit 503 is used to send the encrypted remote vehicle control instruction to the telematics device through the second link, and the second link is different from the first link.

[0251] Optionally, the first link includes the link between the device and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device;

[0252] Alternatively, the first link includes the link between the device and the telematics device.

[0253] Optionally, when the first link includes a link between the device and the in-vehicle device, and a link between the in-vehicle device and the telematics device, the device further includes: a binding unit 504, configured to determine a symmetric key with the in-vehicle device of the vehicle;

[0254] The encryption and decryption unit 502 is further configured to encrypt the binding request by using the symmetric key;

[0255] The transmission unit 503 is further configured to send the encrypted binding request to the in-vehicle device, so that the in-vehicle device decrypts the encrypted binding request and then sends it to the telematics device; receive the encrypted and forwarded binding response sent by the in-vehicle device, and the binding response is fed back to the in-vehicle device by the telematics device;

[0256] The binding unit 504 is further configured to decrypt the encrypted binding response by using the symmetric key to complete the binding.

[0257] Optionally, the transmission unit 503 is further configured to obtain a secret factor identical to that of the in-vehicle device;

[0258] The binding unit 504 is configured to determine the symmetric key based on the secret factor.

[0259] Optionally, the encryption and decryption unit 502 is configured to encrypt the remote vehicle control instruction and the first count value by using the session key, so that the telematics device verifies the legitimacy of the remote vehicle control instruction based on the first count value, and the first count value is the count value of the remote vehicle control instruction.

[0260] Optionally, the transmission unit 503 is further configured to receive, through the second link, the encrypted vehicle status information and the second count value sent by the telematics device, where the second count value is the count value of the vehicle status information;

[0261] The encryption and decryption unit 502 is further configured to decrypt the encrypted vehicle status information and the second count value by using the session key to obtain the vehicle status information and the second count value; verify the legitimacy of the vehicle status information based on the second count value.

[0262] Optionally, the second link includes a link between the device and the cloud, and a link between the cloud and the telematics device;

[0263] Alternatively, the second link includes a link between the device and the telematics device.

[0264] Optionally, the key negotiation unit 501 is further configured to periodically update the session key through negotiation with the telematics device;

[0265] Or,

[0266] The key negotiation unit 501 negotiates with the telematics device to obtain multiple session keys, and is further configured to periodically update the used session key based on the multiple session keys.

[0267] It should be noted that when the vehicle control device provided in the above embodiment performs vehicle control, only the division of the above functional units is used as an example for illustration. In practical applications, the above functions can be allocated to different functional units according to needs, that is, the internal structure of the device is divided into different functional units to complete all or part of the functions described above. In addition, the vehicle control device provided in the above embodiment and the vehicle control method embodiment belong to the same concept, and the specific implementation process is detailed in the method embodiment, which will not be repeated here.

[0268] Figure 10 It is a block diagram of a vehicle control device provided by an embodiment of the present application. The vehicle control device can be implemented as all or part of a telematics device through software, hardware, or a combination of both. The vehicle control device may include: a key negotiation unit 601, a transmission unit 602, an encryption / decryption unit 603, and a control unit 604.

[0269] Among them, the key negotiation unit 601 is configured to negotiate and determine a session key with the terminal through a first link;

[0270] The transmission unit 602 is configured to receive an encrypted remote vehicle control instruction sent by the terminal through a second link, and the second link is different from the first link;

[0271] The encryption / decryption unit 603 is configured to decrypt the encrypted remote vehicle control instruction using the session key to obtain the remote vehicle control instruction;

[0272] The control unit 604 is configured to control the vehicle according to the remote vehicle control instruction.

[0273] Optionally, the first link includes a link between the terminal and the in-vehicle device of the vehicle, and a link between the in-vehicle device and the device;

[0274] Alternatively, the first link includes a link between the terminal and the device.

[0275] Optionally, in the case where the first link includes a link between the terminal and the in-vehicle device of the vehicle, and a link between the in-vehicle device and the device, the transmission unit 602 is further configured to receive a binding request sent by the terminal through the in-vehicle device of the vehicle; send a binding response to the in-vehicle device so that the in-vehicle device encrypts and forwards it to the terminal to complete the binding.

[0276] Optionally, the transmission unit 602 is configured to receive an encrypted remote vehicle control instruction and a first count value sent by the terminal through the second link, and the first count value is the count value of the remote vehicle control instruction;

[0277] An encryption / decryption unit 603 is configured to verify the legality of a remote vehicle control instruction based on a first count value.

[0278] Optionally, the encryption / decryption unit 603 is further configured to encrypt vehicle status information and a second count value by using a session key, so that a terminal verifies the legality of the vehicle status information based on the second count value, where the second count value is the count value of the vehicle status information; a transmission unit 602 is further configured to send the encrypted vehicle status information and the second count value to the terminal through a second link.

[0279] Optionally, the second link includes a link between the terminal and the cloud, and a link between the cloud and the device;

[0280] Alternatively, the second link includes a link between the terminal and the device.

[0281] Optionally, a key negotiation unit 601 is further configured to periodically update the session key through negotiation with the terminal;

[0282] Or,

[0283] Multiple session keys are obtained through negotiation with the terminal, and the key negotiation unit 601 is further configured to periodically update the used session key based on the multiple session keys.

[0284] It should be noted that when the vehicle control device provided in the foregoing embodiment performs vehicle control, only the division of the foregoing functional units is used for illustration. In actual applications, the foregoing functions may be allocated to different functional units according to needs, that is, the internal structure of the device is divided into different functional units to complete all or part of the functions described above. In addition, the vehicle control device provided in the foregoing embodiment and the vehicle control method embodiment belong to the same concept. For the specific implementation process, refer to the method embodiment, which will not be elaborated here.

[0285] An embodiment of the present application further provides a vehicle. The vehicle may include an Figure 10 automatic parking control device as shown.

[0286] Optionally, the vehicle further includes other components or systems connected to the device, such as a central control screen, an instrument screen, a cockpit audio, a motor controller, a parking controller, etc.

[0287] Figure 11 The structural schematic diagram of a device 150 provided in an embodiment of the present application is shown. The device 150 may be a terminal or a telematics device, Figure 11 and the device 150 shown is configured to perform operations involved in any one of the Figures 2 to 8 vehicle control methods shown. The device 150 may be implemented by a general bus architecture.

[0288] As shown Figure 11 in FIG. 150, the device 150 includes at least one processor 151, a memory 153, and at least one communication interface 154.

[0289] The processor 151 is, for example, a general-purpose central processing unit (CPU), a digital signal processor (DSP), a network processor (NP), a data processing unit (DPU), a microprocessor, or one or more integrated circuits for implementing the solutions of this application. For example, the processor 151 includes an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The PLD is, for example, a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. It can implement or execute various logic blocks, modules, and circuits described in connection with the disclosed content of the embodiments of this application. The processor can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and so on.

[0290] Optionally, the device 150 further includes a bus. The bus is used to transfer information between the components of the device 150. The bus can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 11 only a thick line is shown in FIG. 150, but it does not mean that there is only one bus or one type of bus.

[0291] The memory 153 is, for example, a read-only memory (ROM) or other type of static storage device that can store static information and instructions, or a random access memory (RAM) or other type of dynamic storage device that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM), or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media, or other magnetic storage devices, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 153 is, for example, independent and connected to the processor 151 through a bus. The memory 153 can also be integrated with the processor 151.

[0292] The communication interface 154 uses any device such as a transceiver to communicate with other devices or communication networks, and the communication network can be an Ethernet, a radio access network (RAN), or a wireless local area network (WLAN), etc. The communication interface 154 can include a wired communication interface and can also include a wireless communication interface. Specifically, the communication interface 154 can be an Ethernet interface, a Fast Ethernet (FE) interface, a Gigabit Ethernet (GE) interface, an Asynchronous Transfer Mode (ATM) interface, a wireless local area network (WLAN) interface, a cellular network communication interface, or a combination thereof. The Ethernet interface can be an optical interface, an electrical interface, or a combination thereof. In the embodiments of the present application, the communication interface 154 can be used for the device 150 to communicate with other devices.

[0293] In a specific implementation, as an embodiment, the processor 151 can include one or more CPUs, such as Figure 11 the CPU0 and CPU1 shown therein. Each of these processors can be a single-CPU processor or a multi-CPU processor. Here, the processor can refer to one or more devices, circuits, and / or processing cores for processing data (such as computer program instructions).

[0294] In a specific implementation, as an example, device 150 may include multiple processors, such as Figure 11 the processors 151 and 155 shown in Figure 11 . Each of these processors may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). Here, the processor may refer to one or more devices, circuits, and / or processing cores for processing data (such as computer program instructions).

[0295] In a specific implementation, as an example, device 150 may further include an output device and an input device. The output device communicates with the processor 151 and can display information in various ways. For example, the output device may be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector, etc. The input device communicates with the processor 151 and can receive user input in various ways. For example, the input device may be a mouse, a keyboard, a touch screen device, or a sensing device, etc.

[0296] In some embodiments, the memory 153 is used to store the program code 1510 for executing the solution of this application, and the processor 151 can execute the program code 1510 stored in the memory 153. That is, device 150 can implement the method provided by the method embodiment by the processor 151 executing the program code 1510 in the memory 153. The program code 1510 may include one or more software modules. Optionally, the processor 151 itself may also store the program code or instructions for executing the solution of this application.

[0297] In a specific embodiment, the device 150 of the embodiment of this application may correspond to the controller in each of the above method embodiments. The processor 151 in the device 150 reads the instructions in the memory 153, so that Figure 11 the device 150 shown in Figure 11 can perform all or part of the operations executed by the controller.

[0298] Specifically, the processor 151 is used to negotiate and determine a session key with the vehicle's telematics device through a first link; encrypt the remote vehicle control instruction with the session key; and send the encrypted remote vehicle control instruction to the telematics device through a second link, where the second link is different from the first link.

[0299] Alternatively, the processor 151 is configured to negotiate with the terminal via the first link to determine a session key; receive the encrypted remote vehicle control instruction sent by the terminal via the second link, where the second link is different from the first link; decrypt the encrypted remote vehicle control instruction using the session key to obtain the remote vehicle control instruction; and control the vehicle according to the remote vehicle control instruction.

[0300] For other alternative embodiments, for the sake of brevity, they are not described herein again.

[0301] Among them, Figures 2 to 8 Each step of any of the vehicle control methods shown is completed by the integrated logic circuit of the hardware in the processor of the device 150 or the instructions in the form of software. The steps of the method disclosed in combination with the embodiments of the present application can be directly embodied as being executed and completed by the hardware processor, or executed and completed by the combination of the hardware and software modules in the processor. The software module can be located in a mature storage medium in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. This storage medium is located in the memory, and the processor reads the information in the memory and combines its hardware to complete the steps of the above method. To avoid repetition, it is not described in detail here.

[0302] The embodiment of the present application further provides a chip, including: an input interface, an output interface, a processor, and a memory. The input interface, the output interface, the processor, and the memory are connected through an internal connection path. The processor is configured to execute the code in the memory. When the code is executed, the processor is configured to execute any of the above vehicle control methods.

[0303] It should be understood that the above processor can be a CPU, or other general-purpose processors, DSPs, ASICs, FPGAs, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc. It is worth noting that the processor can be a processor supporting the ARM architecture.

[0304] Further, in an alternative embodiment, the above processor is one or more, and the memory is one or more. Optionally, the memory can be integrated with the processor, or the memory is separately provided from the processor. The above memory can include a read-only memory and a random access memory, and provide instructions and data to the processor. The memory can also include a non-volatile random access memory. For example, the memory can also store a reference block and a target block.

[0305] The memory may be a volatile memory, a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a ROM, PROM, EPROM, EEPROM, or flash memory. The volatile memory may be a RAM, which is used as an external cache. By way of example but not limitation, many forms of RAM are available. For example, SRAM, DRAM, SDRAM, DDR SDRAM, ESDRAM, SLDRAM, and DR RAM.

[0306] In an embodiment of the present application, a computer-readable storage medium is further provided. The computer-readable storage medium stores computer instructions. When the computer instructions stored in the computer-readable storage medium are executed by an electronic device, the electronic device is caused to execute the vehicle control method provided above.

[0307] In an embodiment of the present application, a computer program product containing instructions is further provided. When it runs on an electronic device, the electronic device is caused to execute the vehicle control method provided above.

[0308] In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the present application are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center to another website, computer, server, or data center by wire (such as coaxial cable, optical fiber, digital subscriber line) or wirelessly (such as infrared, wireless, microwave, etc.). The computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or data center that includes one or more integrated available media. The available medium may be a magnetic medium (such as a floppy disk, hard disk, magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid-state disk).

[0309] In an embodiment of the present application, a vehicle is further provided. The vehicle includes a range extender and an electronic device. The electronic device is connected to the range extender, and the electronic device is configured to implement the vehicle control method provided above.

[0310] Those of ordinary skill in the art can understand that all or part of the steps to implement the above embodiments can be completed by hardware or by a program instructing relevant hardware. The program can be stored in a computer-readable storage medium, and the above-mentioned storage medium can be a read-only memory, a magnetic disk, an optical disc, or the like.

[0311] The above are only optional embodiments of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the art within the technical scope disclosed in the present application should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

[0312] Unless otherwise defined, the technical terms or scientific terms used herein shall have the ordinary meaning as understood by those of ordinary skill in the art to which this application belongs. The "first", "second", "third" and similar terms used in the specification and claims of this patent application do not indicate any order, quantity or importance, but are only used to distinguish different components. Similarly, the terms such as "a" or "one" do not indicate a quantity limitation, but indicate the existence of at least one. The terms such as "including" or "comprising" mean that the elements or items appearing before "including" or "comprising" cover the elements or items listed after "including" or "comprising" and their equivalents, and do not exclude other elements or items.

[0313] The above is only one embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principle of the present application shall be included within the protection scope of the present application.

Claims

1. A vehicle control method, characterized in that, The method includes: The terminal negotiates with the telematics device of the vehicle through a first link to determine a session key; The terminal encrypts the remote vehicle control instruction using the session key; The terminal sends the encrypted remote vehicle control instruction to the telematics device through a second link, where the second link is different from the first link.

2. The method according to claim 1, characterized in that, The first link includes the link between the terminal and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device; Alternatively, the first link includes the link between the terminal and the telematics device.

3. The method according to claim 2, characterized in that, When the first link includes the link between the terminal and the in-vehicle device, and the link between the in-vehicle device and the telematics device, the method further includes: The terminal determines a symmetric key with the in-vehicle device; The terminal encrypts the binding request using the symmetric key; The terminal sends the encrypted binding request to the in-vehicle device, so that the in-vehicle device decrypts the encrypted binding request and then sends it to the telematics device; The terminal receives the encrypted and forwarded binding response from the in-vehicle device, where the binding response is fed back by the telematics device to the in-vehicle device; The terminal decrypts the encrypted binding response using the symmetric key to complete the binding.

4. The method according to claim 3, characterized in that, The terminal determines a symmetric key with the in-vehicle device, including: The terminal obtains the same secret factor as the in-vehicle device; The terminal determines the symmetric key based on the secret factor.

5. The method according to any one of claims 1 to 4, characterized in that, The second link includes the link between the terminal and the cloud, and the link between the cloud and the telematics device; Alternatively, the second link includes the link between the terminal and the telematics device.

6. The method according to any one of claims 1 to 5, characterized in that, The method further includes: The terminal and the telematics device periodically update the session key through negotiation; Or, The terminal and the telematics device negotiate to obtain multiple session keys, and the method further includes: The terminal periodically updates the used session key based on the multiple session keys.

7. A vehicle control method, characterized in that, The vehicle includes a telematics device, and the method includes: The telematics device negotiates with the terminal through a first link to determine a session key; The telematics device receives the encrypted remote vehicle control instruction sent by the terminal through a second link, where the second link is different from the first link; The telematics device decrypts the encrypted remote vehicle control instruction using the session key to obtain the remote vehicle control instruction; The telematics device controls the vehicle according to the remote vehicle control instruction.

8. The method according to claim 7, characterized in that, The first link includes the link between the terminal and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device; Alternatively, the first link includes the link between the terminal and the telematics device.

9. The method according to claim 8, characterized in that, When the first link includes the link between the terminal and the in-vehicle device, and the link between the in-vehicle device and the telematics device, the method further includes: The telematics device receives a binding request sent by the terminal through the in-vehicle device; The telematics device sends a binding response to the in-vehicle device, so that the in-vehicle device encrypts and forwards it to the terminal to complete the binding.

10. The method according to any one of claims 7 to 9, characterized in that, The second link includes the link between the terminal and the cloud, and the link between the cloud and the telematics device; Or, the second link includes the link between the terminal and the telematics device.

11. The method according to any one of claims 7 to 10, characterized in that, The method further includes: The telematics device and the terminal periodically update the session key through negotiation; Or, The telematics device and the terminal negotiate to obtain multiple session keys, and the method further includes: The telematics device periodically updates the used session key based on multiple session keys.

12. A vehicle control device, characterized in that, The device includes: A key negotiation unit, configured to negotiate and determine a session key with the telematics device of the vehicle through a first link; An encryption and decryption unit, configured to encrypt a remote vehicle control instruction using the session key; A transmission unit, configured to send the encrypted remote vehicle control instruction to the telematics device through a second link, where the second link is different from the first link.

13. The device according to claim 12, characterized in that, The first link includes the link between the device and the in-vehicle device of the vehicle, and the link between the in-vehicle device and the telematics device; Or, the first link includes the link between the device and the telematics device.

14. The device according to claim 13, characterized in that, When the first link includes the link between the device and the in-vehicle device, and the link between the in-vehicle device and the telematics device, the device further includes: a binding unit, configured to determine a symmetric key with the in-vehicle device; The encryption and decryption unit is further configured to encrypt the binding request using the symmetric key; The transmission unit is further configured to send the encrypted binding request to the in-vehicle device, so that the in-vehicle device decrypts the encrypted binding request and sends it to the telematics device; receive the encrypted and forwarded binding response by the in-vehicle device, where the binding response is fed back by the telematics device to the in-vehicle device; The binding unit is further configured to decrypt the encrypted binding response using the symmetric key to complete the binding.

15. The device according to claim 14, characterized in that, The transmission unit is further configured to obtain the same secret factor as the in-vehicle device; The binding unit is configured to determine the symmetric key based on the secret factor.

16. The device according to any one of claims 12 to 15, characterized in that, The second link includes the link between the device and the cloud, and the link between the cloud and the telematics device; Or, the second link includes the link between the device and the telematics device.

17. The device according to any one of claims 12 to 16, characterized in that, The key negotiation unit is further configured to periodically update the session key through negotiation with the telematics device; Or, Negotiate with the telematics device to obtain multiple session keys, and the key negotiation unit is further configured to periodically update the used session key based on the multiple session keys.

18. A vehicle control device, characterized in that, The device includes: A key negotiation unit, configured to negotiate and determine a session key with a terminal through a first link; A transmission unit, configured to receive an encrypted remote vehicle control instruction sent by the terminal through a second link, where the second link is different from the first link; An encryption / decryption unit, configured to decrypt the encrypted remote vehicle control instruction by using the session key to obtain the remote vehicle control instruction; A control unit, configured to control a vehicle according to the remote vehicle control instruction.

19. The device according to claim 18, characterized in that,The first link includes a link between the terminal and the in-vehicle device of the vehicle, and a link between the in-vehicle device and the device; Alternatively, the first link includes a link between the terminal and the device.

20. The device according to claim 19, characterized in that, In the case where the first link includes a link between the terminal and the in-vehicle device, and a link between the in-vehicle device and the device, the transmission unit is further configured to receive a binding request sent by the terminal through the in-vehicle device; Send a binding response to the in-vehicle device, so that the in-vehicle device encrypts and forwards it to the terminal to complete the binding.

21. The device according to any one of claims 18 to 20, characterized in that, The second link includes a link between the terminal and the cloud, and a link between the cloud and the device; Alternatively, the second link includes a link between the terminal and the device.

22. The device according to any one of claims 18 to 21, characterized in that, The key negotiation unit is further configured to periodically update the session key through negotiation with the terminal; Or, Negotiate with the terminal to obtain multiple session keys, and the key negotiation unit is further configured to periodically update the used session key based on the multiple session keys.

23. A terminal, characterized in that, The terminal includes a processor and a memory, where the memory is used to store a software program, and the processor runs or executes the software program stored in the memory, so that the terminal implements the method according to any one of claims 1 to 6.

24. A telematics device, characterized in that, The telematics device includes a processor and a memory, where the memory is used to store a software program, and the processor runs or executes the software program stored in the memory, so that the telematics device implements the method according to any one of claims 7 to 11.

25. A vehicle control system, characterized in that, The system includes the terminal according to claim 23 and the telematics device according to claim 24.

26. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store program code executed by a processor, and the program code includes instructions for implementing the method according to any one of claims 1 to 11.

27. A computer program product, characterized in that, Including program code, when the computer runs the computer program product, the computer is caused to execute the method according to any one of claims 1 to 11.

28. A vehicle, characterized in that, The vehicle includes the vehicle control device according to any one of claims 18 to 22.

Citation Information

Cited By

  • Vehicle control method and apparatus, terminal, and telematics device

    EP4800979A1

  • Vehicle control method and apparatus, terminal, and telematics device

    WO2025130464A1