Method and device for upgrading in-vehicle equipment
By using public key certificates and signature information verification, the problems of high upgrade costs and security risks of in-vehicle equipment are solved, and secure and efficient upgrade package transmission is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- YINWANG INTELLIGENT TECHNOLOGIES CO LTD
- Filing Date
- 2022-12-29
- Publication Date
- 2026-05-15
AI Technical Summary
Existing firmware or software upgrade methods for in-vehicle equipment are costly and time-consuming, and OTA upgrades pose security risks.
By verifying public key certificates and signature information between the server and electronic devices and vehicle control devices, the secure transmission of upgrade packages is ensured. This includes the generation of public key certificates and the use of authorization information, avoiding certificate chain verification and improving communication security.
It achieves both safety and efficiency in upgrading in-vehicle equipment, ensures the legality and integrity of upgrade packages, and reduces security risks.
Smart Images

Figure CN119968616B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of information and communication technology, and in particular to methods and devices for upgrading vehicle-mounted equipment. Background Technology
[0002] With the continuous development of computer and internet technologies, the functions of in-vehicle devices are becoming increasingly sophisticated. To continuously improve these functions, the firmware or software of these devices needs to be upgraded regularly. Typically, firmware or software upgrades are performed by recalling vehicles, a costly and time-consuming process.
[0003] To address this issue, an over-the-air (OTA) upgrade solution for in-vehicle devices has been proposed. For example, external devices in the vehicle request an upgrade package from a server and send the requested package to the in-vehicle device, allowing the device to upgrade its firmware or software. However, this method presents significant security vulnerabilities. Summary of the Invention
[0004] This application provides a method and apparatus for upgrading vehicle-mounted devices, which can ensure the security of vehicle-mounted device upgrades.
[0005] To achieve the above objectives, the embodiments of this application adopt the following technical solutions:
[0006] Firstly, a method for upgrading an in-vehicle device is provided. This method can be executed by a server; alternatively, it can be executed by a module applied in the server, such as a chip, chip system, or circuit; or it can be implemented by a logic module or software capable of implementing all or part of the server's functions, without limitation. For ease of description, the following explanation uses server execution as an example.
[0007] The method includes: receiving first signature information and first public key information from an electronic device, wherein the first signature information is obtained by signing a first upgrade request with the private key of the electronic device, the first upgrade request is used to request an upgrade package for at least one in-vehicle device, the first public key information is used to verify the identity of the electronic device, and the first public key information includes a public key certificate of the public key of the electronic device, or the first public key information includes the public key of the electronic device; and if the first signature information and the first public key information are successfully verified, sending the upgrade package to the electronic device.
[0008] Based on the method provided in the first aspect above, the server can verify the legitimacy of the electronic device through the first public key information, such as whether the electronic device has the permission to download the upgrade package, and verify whether the received information has been tampered with through the first signature information, so as to ensure the security of the vehicle equipment upgrade.
[0009] In one possible implementation, the method further includes: verifying the first signature information based on the public key of the electronic device.
[0010] Based on the above possible implementation methods, it is possible to verify whether the first signature information has been tampered with, thereby improving communication security.
[0011] In one possible implementation, the method further includes: receiving a public key from the electronic device of the vehicle control device; and sending the public key certificate to the vehicle control device, the public key certificate being generated based on the private key of the server.
[0012] Based on the above possible implementation methods, the server can generate a public key certificate for the public key of the electronic device, so that the server can verify the legitimacy of the electronic device based on the public key certificate.
[0013] In one possible implementation, the method further includes: verifying the public key certificate based on the server's public key.
[0014] Based on the above possible implementation methods, if the public key certificate is generated by the server using its own private key, the server can verify the public key certificate using its own public key.
[0015] In one possible implementation, the public key certificate is generated based on the private key of the vehicle control device, and the method further includes: verifying the public key certificate based on the public key of the vehicle control device.
[0016] Based on the above possible implementation methods, if the public key certificate is generated based on the private key of the vehicle control device, the server can verify the public key certificate based on the public key of the vehicle control device.
[0017] In one possible implementation, the method further includes: receiving the public key of the electronic device from the vehicle control device; and generating authorization information for the public key of the electronic device.
[0018] Based on the above possible implementation methods, the server can generate authorization information for the public key of the electronic device, so that the server can verify the legitimacy of the electronic device based on the authorization information.
[0019] In one possible implementation, the method further includes: verifying the public key of the electronic device based on the authorization information.
[0020] Based on the above possible implementation methods, the server does not need a public key certificate to verify the legitimacy of the electronic device, but verifies the legitimacy of the electronic device through the authorization information. The entire verification process does not require the use of a certificate chain, resulting in high verification efficiency.
[0021] In one possible implementation, the method further includes deleting the authorization information.
[0022] Based on the above possible implementation methods, the server can revoke the authorization of electronic devices.
[0023] In one possible implementation, the first upgrade request includes upgrade information for the at least one on-board device.
[0024] Based on the above possible implementation methods, the server can verify the compatibility of the upgrade package with at least one in-vehicle device according to the upgrade information. For example, if the version information of the latest released software stored on the server is the same as the version information in the upgrade information, the server determines that at least one in-vehicle device does not need to be upgraded; if the version information of the latest released software stored on the server is higher than the version information in the upgrade information, the server determines that at least one in-vehicle device needs to be upgraded.
[0025] In one possible implementation, the public key certificate includes at least one of the following: upgrade information for the at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
[0026] Based on the above possible implementations, if the public key certificate includes upgrade information for at least one in-vehicle device, it indicates that the authorization period for the public key certificate is short-term or a one-time authorization. Optionally, if the public key certificate includes upgrade information for at least one in-vehicle device, it also indicates that the public key certificate is used for upgrading in-vehicle devices and cannot be used for other services besides in-vehicle device upgrades. If the public key certificate includes the identifier of the in-vehicle control device, it indicates that the public key certificate was generated or authorized by the in-vehicle control device. If the public key certificate includes the identifier of the server, it indicates that the public key certificate was generated or authorized by the server. If the public key certificate includes the identifier of the electronic device, it indicates that the public key certificate is authorized to the electronic device.
[0027] Secondly, a method for upgrading in-vehicle equipment is provided. This method can be executed by an electronic device; or it can be executed by a module applied in the electronic device, such as a chip, chip system, or circuit; or it can be implemented by a logic module or software capable of realizing all or part of the functions of the electronic device, without limitation. For ease of description, the following explanation uses execution by an electronic device as an example.
[0028] The method includes: sending first signature information and first public key information to a server, wherein the first signature information is obtained by signing a first upgrade request with the private key of the electronic device, the first upgrade request being used to request an upgrade package for at least one in-vehicle device, the first public key information being used to verify the identity of the electronic device, the first public key information including a public key certificate of the public key of the electronic device, or the first public key information including the public key of the electronic device; receiving the upgrade package from the server; and sending the upgrade package to an in-vehicle control device.
[0029] Based on the method provided in the second aspect above, the electronic device can send first signature information and first public key information to the server, so that the server can verify the legitimacy of the electronic device through the first public key information, such as whether the electronic device has the right to download the upgrade package, and verify whether the received information has been tampered with through the first signature information, so as to ensure the security of the vehicle equipment upgrade.
[0030] In one possible implementation, the method further includes: receiving a public key certificate from the vehicle control device, the public key certificate being generated based on the private key of the vehicle control device, or the public key certificate being generated based on the private key of the server.
[0031] Based on the above possible implementation methods, electronic devices can obtain public key certificates so that they can subsequently request upgrade packages for at least one vehicle-mounted device from the server using the public key certificates.
[0032] In one possible implementation, the method further includes: obtaining the public key and private key of the electronic device; and sending the public key of the electronic device to the vehicle control device.
[0033] Based on the above possible implementation methods, after an electronic device obtains its own public key, it can send the public key to the vehicle control device so that the vehicle control device or server can generate a public key certificate for the public key.
[0034] In one possible implementation, the first upgrade request includes upgrade information for the at least one on-board device.
[0035] Based on the above possible implementation methods, the server can verify the compatibility of the upgrade package with at least one in-vehicle device according to the upgrade information. For example, if the version information of the latest released software stored on the server is the same as the version information in the upgrade information, the server determines that at least one in-vehicle device does not need to be upgraded; if the version information of the latest released software stored on the server is higher than the version information in the upgrade information, the server determines that at least one in-vehicle device needs to be upgraded.
[0036] In one possible implementation, the public key certificate includes at least one of the following: upgrade information for the at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
[0037] Based on the above possible implementations, if the public key certificate includes upgrade information for at least one in-vehicle device, it indicates that the authorization period for the public key certificate is short-term or a one-time authorization. Optionally, if the public key certificate includes upgrade information for at least one in-vehicle device, it also indicates that the public key certificate is used for upgrading in-vehicle devices and cannot be used for other services besides in-vehicle device upgrades. If the public key certificate includes the identifier of the in-vehicle control device, it indicates that the public key certificate was generated or authorized by the in-vehicle control device. If the public key certificate includes the identifier of the server, it indicates that the public key certificate was generated or authorized by the server. If the public key certificate includes the identifier of the electronic device, it indicates that the public key certificate is authorized to the electronic device.
[0038] In one possible implementation, the method further includes: receiving upgrade information for the at least one on-board device from the on-board control device.
[0039] Based on the above possible implementation methods, the electronic device can obtain upgrade information of at least one vehicle device from the vehicle control device, so that the electronic device can send the upgrade information to the server, and the server can verify the compatibility of the upgrade package with at least one vehicle device based on the upgrade information.
[0040] Thirdly, a method for upgrading in-vehicle equipment is provided. This method can be executed by an in-vehicle control device; or it can be executed by a module applied in the in-vehicle control device, such as a chip, chip system, or circuit; or it can be implemented by a logic module or software capable of realizing all or part of the functions of the in-vehicle control device, without limitation. For ease of description, the following explanation uses execution by an in-vehicle control device as an example.
[0041] The method includes: receiving a public key of an electronic device from an electronic device; sending a public key certificate of the public key of the electronic device to the electronic device, the public key certificate being generated based on the private key of the vehicle control device, or the public key certificate being generated based on the private key of a server.
[0042] Based on the method provided in the third aspect above, the vehicle control device can send the public key certificate of the electronic device's public key to the electronic device, so that the electronic device can request an upgrade package from the server based on the public key certificate.
[0043] In one possible implementation, the public key certificate is generated based on the server's private key, and the method further includes: sending the public key of the electronic device to the server; and receiving the public key certificate from the server.
[0044] Based on the above possible implementation methods, the vehicle control device can send the public key of the electronic device to the server so that the server can generate a public key certificate for the public key.
[0045] In one possible implementation, the public key certificate includes at least one of the following: upgrade information for at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
[0046] Based on the above possible implementations, if the public key certificate includes upgrade information for at least one in-vehicle device, it indicates that the authorization period for the public key certificate is short-term or a one-time authorization. Optionally, if the public key certificate includes upgrade information for at least one in-vehicle device, it also indicates that the public key certificate is used for upgrading in-vehicle devices and cannot be used for other services besides in-vehicle device upgrades. If the public key certificate includes the identifier of the in-vehicle control device, it indicates that the public key certificate was generated or authorized by the in-vehicle control device. If the public key certificate includes the identifier of the server, it indicates that the public key certificate was generated or authorized by the server. If the public key certificate includes the identifier of the electronic device, it indicates that the public key certificate is authorized to the electronic device.
[0047] In one possible implementation, the method further includes sending upgrade information of the at least one vehicle-mounted device to the electronic device.
[0048] Based on the above possible implementation methods, the vehicle control device can send upgrade information of at least one vehicle device to the electronic device, so that the electronic device can send the upgrade information to the server, and the server can verify the compatibility of the upgrade package with at least one vehicle device based on the upgrade information.
[0049] Fourthly, a method for upgrading in-vehicle equipment is provided. This method can be executed by an in-vehicle control device; or it can be executed by a module applied in the in-vehicle control device, such as a chip, chip system, or circuit; or it can be implemented by a logic module or software capable of realizing all or part of the functions of the in-vehicle control device, without limitation. For ease of description, the following explanation uses execution by an in-vehicle control device as an example.
[0050] The method includes: receiving the public key of the electronic device from the electronic device; and sending first indication information and the public key of the electronic device to a server, the first indication information being used to indicate authorization information for generating the public key of the electronic device.
[0051] Based on the method provided in the fourth aspect above, the vehicle control device can instruct the server to generate authorization information for the public key of the electronic device. Thus, when the electronic device requests an upgrade package from the server, the server does not need a public key certificate to verify the legitimacy of the electronic device; instead, it verifies the legitimacy of the electronic device through this authorization information. The entire verification process does not require the use of a certificate chain, resulting in high verification efficiency.
[0052] In one possible implementation, the method further includes sending upgrade information for at least one in-vehicle device to the electronic device.
[0053] Based on the above possible implementation methods, the vehicle control device can send upgrade information of at least one vehicle device to the electronic device, so that the electronic device can send the upgrade information to the server, and the server can verify the compatibility of the upgrade package with at least one vehicle device based on the upgrade information.
[0054] Fifthly, a method for upgrading in-vehicle equipment is provided. This method can be executed by a server; or by a module applied in the server, such as a chip, chip system, or circuit; or by a logic module or software capable of implementing all or part of the server's functions, without limitation. For ease of description, the following explanation uses server execution as an example.
[0055] The method includes: receiving second signature information from an electronic device, the second signature information being used to verify the identity of the electronic device, the second signature information being obtained by signing a first upgrade request with a proxy signature key, the proxy signature key being obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key, the first upgrade request being used to request an upgrade package for at least one vehicle device; and, if the second signature information is successfully verified, sending the upgrade package to the electronic device.
[0056] Based on the method provided in the fifth aspect above, the server can verify the legitimacy of the electronic device through the second signature information, such as whether the electronic device has the permission to download the upgrade package, and verify whether the received information has been tampered with, so as to ensure the security of the vehicle equipment upgrade.
[0057] In one possible implementation, the method further includes: verifying the second signature information based on the public key of the vehicle control device.
[0058] Based on the above possible implementation methods, the server can verify the second signature information according to the public key of the vehicle control device to verify the legitimacy of the electronic device and whether the received information has been tampered with.
[0059] In one possible implementation, the method further includes storing the authorization information in an authorization information cancellation list.
[0060] Based on the above possible implementation methods, the server can revoke the authorization of an electronic device by storing the authorization information in an authorization information cancellation list.
[0061] In one possible implementation, the first upgrade request includes upgrade information for the at least one on-board device.
[0062] Based on the above possible implementation methods, the server can verify the compatibility of the upgrade package with at least one in-vehicle device according to the upgrade information. For example, if the version information of the latest released software stored on the server is the same as the version information in the upgrade information, the server determines that at least one in-vehicle device does not need to be upgraded; if the version information of the latest released software stored on the server is higher than the version information in the upgrade information, the server determines that at least one in-vehicle device needs to be upgraded.
[0063] In one possible implementation, the authorization information includes at least one of the following: upgrade information for the at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
[0064] Based on the above possible implementations, if the authorization information includes upgrade information for at least one in-vehicle device, it indicates that the authorization period for the proxy signature key is short-term or a one-time authorization. Optionally, if the authorization information includes upgrade information for at least one in-vehicle device, it also indicates that the proxy signature key is used for upgrading the in-vehicle device and cannot be used for other services besides in-vehicle device upgrades. If the authorization information includes the identifier of the in-vehicle control device, it indicates that the proxy signature key is generated or authorized by the in-vehicle control device. If the authorization information includes the identifier of the server and the identifier of the electronic device, it indicates that the proxy signature key is used for verification between the server and the electronic device.
[0065] Sixthly, a method for upgrading an in-vehicle device is provided. This method can be executed by an electronic device; or it can be executed by a module applied in the electronic device, such as a chip, chip system, or circuit; or it can be implemented by a logic module or software capable of realizing all or part of the functions of the electronic device, without limitation. For ease of description, the following explanation uses execution by an electronic device as an example.
[0066] The method includes: sending a second signature information to a server, the second signature information being used to verify the identity of the electronic device, the second signature information being obtained by signing a first upgrade request with a proxy signature key, the proxy signature key being obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key, the first upgrade request being used to request an upgrade package for at least one vehicle device; receiving the upgrade package from the server; and sending the upgrade package to the vehicle control device.
[0067] Based on the method provided in the sixth aspect above, the electronic device can send second signature information to the server so that the server can verify the legitimacy of the electronic device through the second signature information, such as whether the electronic device has the right to download the upgrade package, and verify whether the received information has been tampered with, so as to ensure the security of the vehicle equipment upgrade.
[0068] In one possible implementation, the method further includes receiving the proxy signature key from the vehicle control device.
[0069] Based on the above possible implementation methods, electronic devices can obtain the proxy signature key from the vehicle control device.
[0070] In one possible implementation, the first upgrade request includes upgrade information for the at least one on-board device.
[0071] Based on the above possible implementation methods, electronic devices can send upgrade information for at least one in-vehicle device to the server, so that the server can verify the compatibility of the upgrade package with at least one in-vehicle device based on the upgrade information. For example, if the version information of the latest software released on the server is the same as the version information in the upgrade information, the server determines that at least one in-vehicle device does not need to be upgraded; if the version information of the latest software released on the server is higher than the version information in the upgrade information, the server determines that at least one in-vehicle device needs to be upgraded.
[0072] In one possible implementation, the authorization information includes at least one of the following: upgrade information for the at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
[0073] Based on the above possible implementations, if the authorization information includes upgrade information for at least one in-vehicle device, it indicates that the authorization period for the proxy signature key is short-term or a one-time authorization. Optionally, if the authorization information includes upgrade information for at least one in-vehicle device, it also indicates that the proxy signature key is used for upgrading the in-vehicle device and cannot be used for other services besides in-vehicle device upgrades. If the authorization information includes the identifier of the in-vehicle control device, it indicates that the proxy signature key is generated or authorized by the in-vehicle control device. If the authorization information includes the identifier of the server and the identifier of the electronic device, it indicates that the proxy signature key is used for verification between the server and the electronic device.
[0074] In one possible implementation, the method further includes: receiving upgrade information for the at least one on-board device from the on-board control device.
[0075] Based on the above possible implementation methods, the electronic device can obtain upgrade information of at least one vehicle device from the vehicle control device, so that the electronic device can send the upgrade information to the server, and the server can verify the compatibility of the upgrade package with at least one vehicle device based on the upgrade information.
[0076] Seventhly, a method for upgrading in-vehicle equipment is provided. This method can be executed by an in-vehicle control device; or it can be executed by a module applied in the in-vehicle control device, such as a chip, chip system, or circuit; or it can be implemented by a logic module or software capable of realizing all or part of the functions of the in-vehicle control device, without limitation. For ease of description, the following explanation uses execution by an in-vehicle control device as an example.
[0077] The method includes: obtaining a proxy signature key, which is obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key; and sending the proxy signature key to the electronic device.
[0078] Based on the method provided in the seventh aspect above, the vehicle control device can obtain the proxy signature key and send it to the electronic device so that the server can verify the legitimacy of the electronic device through the proxy signature key.
[0079] In one possible implementation, the authorization information includes at least one of the following: upgrade information for at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
[0080] Based on the above possible implementations, if the authorization information includes upgrade information for at least one in-vehicle device, it indicates that the authorization period for the proxy signature key is short-term or a one-time authorization. Optionally, if the authorization information includes upgrade information for at least one in-vehicle device, it also indicates that the proxy signature key is used for upgrading the in-vehicle device and cannot be used for other services besides in-vehicle device upgrades. If the authorization information includes the identifier of the in-vehicle control device, it indicates that the proxy signature key is generated or authorized by the in-vehicle control device. If the authorization information includes the identifier of the server and the identifier of the electronic device, it indicates that the proxy signature key is used for verification between the server and the electronic device.
[0081] In one possible implementation, the method further includes sending upgrade information for the at least one vehicle-mounted device to the electronic device.
[0082] Based on the above possible implementation methods, the vehicle control device can send upgrade information of at least one vehicle device to the electronic device, so that the electronic device can send the upgrade information to the server, and the server can verify the compatibility of the upgrade package with at least one vehicle device based on the upgrade information.
[0083] Eighthly, a communication device is provided for implementing the above-described method. This communication device can be a server as described in the first aspect, or an apparatus containing the server, or a module of the server in the first aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the server's functions; or, the communication device can be a server as described in the fifth aspect, or an apparatus containing the server, or a module of the server in the fifth aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the server's functions; or, the communication device can be an in-vehicle control device as described in the seventh aspect, or an apparatus containing the in-vehicle control device, or a module of the in-vehicle control device in the seventh aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the in-vehicle control device's functions. The communication device includes modules, units, or means corresponding to the above-described method, which can be implemented in hardware, software, or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the above-described functions.
[0084] In conjunction with the eighth aspect above, in one possible implementation, the communication device may include a processing module and a transceiver module. The processing module can be used to implement the processing functions in the first, fifth, and seventh aspects and any possible implementations thereof. The processing module may be, for example, a processor. The transceiver module, also referred to as a transceiver unit, is used to implement the sending and / or receiving functions in the first, fifth, and seventh aspects and any possible implementations thereof. The transceiver module may consist of a transceiver circuit, a transceiver, a transceiver unit, or a communication interface.
[0085] In conjunction with the eighth aspect above, in one possible implementation, the transceiver module includes a sending module and a receiving module, which are used to implement the sending and receiving functions in the first aspect, the fifth aspect, the seventh aspect, and any possible implementation thereof.
[0086] Ninthly, a communication device is provided for implementing the above-described method. This communication device may be the electronic device described in the second aspect, or a device comprising the aforementioned electronic device, or a module within the electronic device described in the second aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the functions of the electronic device. The communication device includes modules, units, or means corresponding to the implementation of the above-described method. These modules, units, or means may be implemented in hardware, in software, or by hardware executing corresponding software implementations. The hardware or software includes one or more modules or units corresponding to the above-described functions.
[0087] In conjunction with the ninth aspect above, in one possible implementation, the communication device may include a transceiver module. This transceiver module, also referred to as a transceiver unit, is used to implement the transmission and / or reception functions in the second aspect above and any possible implementation thereof. The transceiver module may consist of a transceiver circuit, a transceiver, a transceiver unit, or a communication interface.
[0088] In conjunction with the ninth aspect above, in one possible implementation, the transceiver module includes a sending module and a receiving module, which are used to implement the sending and receiving functions in the second aspect above and any possible implementation thereof.
[0089] In conjunction with the ninth aspect described above, in one possible implementation, the communication device may further include a processing module. This processing module can be used to implement the processing functions described in the second aspect and any of its possible implementations. The processing module may, for example, be a processor.
[0090] In a tenth aspect, a communication device is provided for implementing the above-described method. This communication device can be the vehicle control device of the third aspect above, or an apparatus containing the vehicle control device, or a module in the vehicle control device of the third aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the functions of the vehicle control device; or, the communication device can be the vehicle control device of the fourth aspect above, or an apparatus containing the vehicle control device, or a module in the vehicle control device of the fourth aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the functions of the vehicle control device; or, the communication device can be the electronic device of the sixth aspect above, or an apparatus containing the electronic device, or a module in the electronic device of the sixth aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the functions of the vehicle control device. The communication device includes modules, units, or means corresponding to the above-described method, which can be implemented in hardware, software, or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the above-described functions.
[0091] In conjunction with the tenth aspect above, in one possible implementation, the communication device may include a transceiver module. This transceiver module, also referred to as a transceiver unit, is used to implement the transmission and / or reception functions in the third, fourth, and sixth aspects above, and any possible implementations thereof. The transceiver module may consist of transceiver circuitry, a transceiver, a transceiver unit, or a communication interface.
[0092] In conjunction with the tenth aspect above, in one possible implementation, the transceiver module includes a sending module and a receiving module, which are used to implement the sending and receiving functions in the third, fourth, and sixth aspects above and any possible implementations thereof.
[0093] Eleventhly, a communication device is provided, comprising: a processor; the processor is configured to be coupled to a memory, and after reading instructions from the memory, execute the method described in any of the preceding aspects according to the instructions. The communication device may be a server as described in the first aspect, or an apparatus containing the server, or a module of a server as described in the first aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the server functions; or, the communication device may be an electronic device as described in the second aspect, or an apparatus containing the electronic device, or a module of an electronic device as described in the second aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the electronic device functions; or, the communication device may be an in-vehicle control device as described in the third aspect, or an apparatus containing the in-vehicle control device, or a module of an in-vehicle control device as described in the third aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the in-vehicle control device functions; or, the communication device may be an in-vehicle control device as described in the fourth aspect, or an apparatus containing the in-vehicle control device, or a vehicle control device as described in the fourth aspect. The communication device can be a module in the vehicle control device, such as a chip, chip system, or circuit, or a logic module or software implementation capable of realizing some or all of the functions of the vehicle control device; or, the communication device can be a server as described in the fifth aspect above, or an apparatus containing the server, or a module in the server as described in the fifth aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of realizing some or all of the server functions; or, the communication device can be an electronic device as described in the sixth aspect above, or an apparatus containing the electronic device, or a module in the electronic device as described in the sixth aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of realizing some or all of the functions of the electronic device; or, the communication device can be a vehicle control device as described in the seventh aspect above, or an apparatus containing the vehicle control device, or a module in the vehicle control device as described in the seventh aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of realizing some or all of the functions of the vehicle control device.
[0094] In conjunction with the eleventh aspect above, in one possible implementation, the communication device further includes a memory for storing necessary program instructions and data.
[0095] In conjunction with the eleventh aspect above, in one possible implementation, the communication device is a chip or a chip system. Optionally, when the communication device is a chip system, it can be composed of chips or may include chips and other discrete components.
[0096] In a twelfth aspect, a communication device is provided, comprising: a processor and an interface circuit; the interface circuit is configured to receive a computer program or instructions and transmit them to the processor; the processor is configured to execute the computer program or instructions to cause the communication device to perform the method described in any of the preceding aspects. The communication device may be a server as described in the first aspect, or an apparatus containing the server, or a module of a server as described in the first aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the server functions; or, the communication device may be an electronic device as described in the second aspect, or an apparatus containing the electronic device, or a module of an electronic device as described in the second aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the electronic device functions; or, the communication device may be a vehicle control device as described in the third aspect, or an apparatus containing the vehicle control device, or a module of a vehicle control device as described in the third aspect, such as a chip, chip system, or circuit, or a logic module or software implementation capable of implementing some or all of the vehicle control device functions; or, the communication device may be a vehicle control device as described in the fourth aspect, or an apparatus containing the vehicle control device, or a vehicle control device as described in the fourth aspect. The communication device can be a module in the vehicle control device, such as a chip, chip system, or circuit, or a logic module or software implementation capable of realizing some or all of the functions of the vehicle control device; or, the communication device can be a server as described in the fifth aspect above, or an apparatus containing the server, or a module in the server as described in the fifth aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of realizing some or all of the server functions; or, the communication device can be an electronic device as described in the sixth aspect above, or an apparatus containing the electronic device, or a module in the electronic device as described in the sixth aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of realizing some or all of the functions of the electronic device; or, the communication device can be a vehicle control device as described in the seventh aspect above, or an apparatus containing the vehicle control device, or a module in the vehicle control device as described in the seventh aspect above, such as a chip, chip system, or circuit, or a logic module or software implementation capable of realizing some or all of the functions of the vehicle control device.
[0097] In conjunction with the twelfth aspect above, in one possible implementation, the communication device is a chip or a chip system. Optionally, when the communication device is a chip system, it can be composed of chips or may include chips and other discrete components.
[0098] In a thirteenth aspect, a computer-readable storage medium is provided that stores instructions which, when executed on a computer, enable the computer to perform the methods described in any of the preceding aspects.
[0099] In a fourteenth aspect, a computer program product containing instructions is provided that, when run on a computer, enables the computer to perform the methods described in any of the preceding aspects.
[0100] In a fifteenth aspect, a vehicle is provided, the vehicle including an on-board control device for performing the method described in the third aspect, or an on-board control device for performing the method described in the fourth aspect, or an on-board control device for performing the method described in the seventh aspect.
[0101] In a sixteenth aspect, an upgrade system is provided, comprising a server for performing the method described in the first aspect, an electronic device for performing the method described in the second aspect, and an in-vehicle control device for performing the method described in the third aspect.
[0102] In a seventeenth aspect, an upgrade system is provided, comprising a server for performing the method described in the first aspect, an electronic device for performing the method described in the second aspect, and an in-vehicle control device for performing the method described in the fourth aspect.
[0103] In an eighteenth aspect, an upgrade system is provided, comprising a server for performing the method described in the fifth aspect, an electronic device for performing the method described in the sixth aspect, and an in-vehicle control device for performing the method described in the seventh aspect.
[0104] The technical effects of any possible implementation of aspects eight through eighteen can be found in the technical effects of any one of aspects one through two above, or different possible implementations of any one of aspects, and will not be repeated here.
[0105] Understandably, provided that the solutions do not contradict each other, the solutions in the above aspects can be combined. Attached Figure Description
[0106] Figure 1A This is a schematic diagram of the upgrade system architecture provided in the embodiments of this application;
[0107] Figure 1B This is a schematic diagram of the network architecture provided in the embodiments of this application;
[0108] Figure 2 This is a schematic diagram of the hardware structure of the communication device provided in the embodiments of this application;
[0109] Figure 3 A schematic flowchart of the method for upgrading vehicle-mounted equipment provided in this application embodiment;
[0110] Figure 4 A flowchart illustrating the method for upgrading in-vehicle equipment provided in this application embodiment. Figure 2 ;
[0111] Figure 5 A flowchart illustrating the method for upgrading in-vehicle equipment provided in this application embodiment. Figure 3 ;
[0112] Figure 6 A flowchart illustrating the method for upgrading in-vehicle equipment provided in this application embodiment. Figure 4 ;
[0113] Figure 7 A flowchart illustrating the method for upgrading in-vehicle equipment provided in this application embodiment. Figure 5 ;
[0114] Figure 8 A schematic diagram of the structure of the communication device provided in this application embodiment;
[0115] Figure 9 Schematic diagram of the communication device provided in the embodiments of this application Figure 2 ;
[0116] Figure 10 Schematic diagram of the communication device provided in the embodiments of this application Figure 3 . Detailed Implementation
[0117] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0118] The method provided in the embodiments of this application can be used in various upgrade systems. The following examples illustrate this. Figure 1A Taking the upgrade system 10 shown as an example, the method provided in the embodiments of this application will be described. Figure 1A This is merely an illustrative diagram and does not constitute a limitation on the applicable scenarios of the technical solutions provided in this application.
[0119] like Figure 1A The diagram shown is a schematic representation of the architecture of the upgrade system 10 provided in this embodiment of the application. Figure 1A In the upgrade system 10, the upgrade system 10 may include a server 101, an electronic device 102 that can communicate with the server 101, and an in-vehicle control device 103 that can communicate with both the server 101 and the electronic device 102.
[0120] The server 101 and the electronic device 102 can communicate via cellular networks or Wi-Fi systems. The server 101 and the vehicle control device 103 can also communicate via cellular networks or Wi-Fi systems. The electronic device 102 and the vehicle control device 103 can communicate via cellular networks, Wi-Fi systems, near-field communication (NFC), Bluetooth, or data cables. In this embodiment, the cellular network can include any one or more networks related to the 3rd Generation Partnership Project (3GPP), such as 4th generation (4G), 5th generation (5G), or future evolved networks.
[0121] The server in this application embodiment, such as server 101, is a device with communication and computing capabilities. For example, the server is a computer, computing device, or cloud server, etc.
[0122] The electronic device in this application embodiment, such as electronic device 102, is a device with communication and computing capabilities. For example, the electronic device may be a terminal, a charging pile, or a universal serial bus (USB) card. The terminal may also be called a terminal device, which can be user equipment (UE). The UE includes handheld devices, wearable devices, or computing devices with wireless communication capabilities. For example, the UE may be a mobile phone, a tablet computer, or a computer with wireless transceiver capabilities. The terminal device may also be a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, or a wireless terminal in industrial control, etc.
[0123] The vehicle control device in this application embodiment, such as vehicle control device 103, is any in-vehicle device with communication and computing capabilities. For example, the vehicle control device is an OTA controller, a telematics box (T-Box), a gateway, a multiple domain controller (MDC), a vehicle control unit (VCU), or an electronic control unit (ECU), etc.
[0124] exist Figure 1AIn this configuration, server 101 and vehicle control device 103 are mutually trusted devices, as are vehicle control device 103 and electronic device 102. In other words, server 101 and vehicle control device 103 have established a trust relationship, and vehicle control device 103 and electronic device 102 have established a trust relationship. Thus, electronic device 102 can request at least one vehicle device upgrade package from server 101 using the authentication credentials provided by vehicle control device 103 (such as the first public key information or proxy signature key described below). After verifying the validity of the authentication credentials, server 101 sends the upgrade package to electronic device 102, enabling electronic device 102 to send the upgrade package to vehicle control device 103 at an appropriate time, thus ensuring the security of the vehicle device upgrade.
[0125] Optionally, the electronic device 102 may also assist in storing software or firmware information of the in-vehicle device, such as at least one of the following: the current version information of the software / firmware, the size of the software / firmware, or the developer information of the software / firmware.
[0126] Optionally, the electronic device 102 can also switch the security mechanism between the server 101 and the vehicle control device 103. For example, the server 101 sends information encrypted with a first algorithm to the electronic device 102. After receiving the information, the electronic device 102 decrypts it to obtain the first information and sends information encrypted with a second algorithm to the vehicle control device 103. It is understood that after receiving the information encrypted with the first algorithm, the electronic device 102 can also detect the information through a security module (such as installed security software) within the electronic device 102 to improve communication security.
[0127] Optionally, the electronic device 102 may also use a secret sharing method to jointly store the vehicle's communication keys with the vehicle control device 103 to improve vehicle communication security.
[0128] Figure 1A The upgrade system 10 shown is for illustrative purposes only and is not intended to limit the technical solutions of this application. Those skilled in the art should understand that in specific implementations, the upgrade system 10 may also include other devices, and the number of servers, vehicle control devices, or electronic devices can be determined according to specific needs without limitation.
[0129] In one possible implementation, Figure 1A The upgrade system 10 shown can be applied to Figure 1B In the network architecture shown.
[0130] like Figure 1B The diagram shows a network architecture provided in an embodiment of this application. Figure 1B The network architecture includes: a server, electronic devices communicating with the server, and a vehicle communicating with both the server and the electronic devices. The vehicle includes a T-BOX, an onboard control device communicating with the T-BOX, and upgradeable equipment communicating with the onboard control device.
[0131] Understandable. Figure 1A Server 101 in Figure 1B The corresponding device is a server. Figure 1A Electronic device 102 in Figure 1B The corresponding device is an electronic device. Figure 1A The vehicle control equipment 103 in Figure 1B The corresponding equipment is the vehicle-mounted control equipment.
[0132] exist Figure 1B In this system, electronic devices can request upgrade packages for at least one device to be upgraded from a server and send the requested upgrade packages to the in-vehicle control device. The server receives information from the electronic device requesting upgrade packages for at least one device to be upgraded, verifies the identity of the electronic device, and, if the electronic device is legitimate, sends the requested upgrade package to the electronic device. The in-vehicle control device receives upgrade packages for at least one device to be upgraded from the electronic device and sends the upgrade packages to the corresponding device to be upgraded. The T-Box forwards information received from external devices to in-vehicle devices and forwards information from in-vehicle devices to external devices. For example, the T-Box forwards information between the server and the in-vehicle control device. It should be understood that the server and the in-vehicle control device can also communicate directly, without restriction, instead of through the T-Box.
[0133] exist Figure 1B In this context, the device to be upgraded can be any in-vehicle device awaiting upgrade, such as any device with a human-machine interface (HMI), battery management system (BMS), or ECU.
[0134] exist Figure 1B In the traditional system, the vehicle control equipment is deployed independently within the vehicle. However, in specific applications, the vehicle control equipment may not be deployed independently within the vehicle, but rather as a functional module of one or more vehicle devices. In other words, the functionality of the vehicle control equipment can be deployed on any one or more devices within the vehicle. For example, the functionality of the vehicle control equipment can be deployed on a T-BOX, a gateway, or a device to be upgraded, without restriction.
[0135] In the embodiments of this application, "multiple" can be understood as two or more. This will be uniformly explained here and will not be repeated later.
[0136] Understandable. Figure 1B The network architecture shown is for illustrative purposes only and is not intended to limit the technical solutions of this application. Those skilled in the art should understand that in specific implementations, this network architecture may also include other devices, and the number of servers, vehicle control devices, electronic devices, devices to be upgraded, or vehicles can be determined according to specific needs without limitation.
[0137] Optionally, embodiments of this application Figure 1A or Figure 1B The various devices in the process (such as servers, electronic devices, or vehicle control devices) can also be referred to as communication devices. They can be general-purpose devices or special-purpose devices. This application does not specifically limit them in this regard.
[0138] Optionally, embodiments of this application Figure 1A or Figure 1B The functions of various devices (such as servers, electronic devices, or vehicle control devices) can be implemented by one device, multiple devices working together, or one or more functional modules within a single device. This application does not specifically limit these functions. It is understood that the aforementioned functions can be components within hardware devices, software functions running on dedicated hardware, a combination of hardware and software, or virtualization functions instantiated on a platform (e.g., a cloud platform).
[0139] In specific implementation, the embodiments of this application Figure 1A or Figure 1B Various devices within the system (such as servers, electronic devices, or vehicle control equipment) can be adopted. Figure 2 The shown composition structure, or including Figure 2 The components shown. Figure 2 The diagram shows a hardware structure of a communication device applicable to embodiments of this application. The communication device 20 includes at least one processor 201 and at least one communication interface 204, used to implement the methods provided in embodiments of this application. The communication device 20 may also include a communication line 202 and a memory 203.
[0140] The processor 201 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of the program of the present application.
[0141] Communication line 202 may include a path for transmitting information between the aforementioned components, such as a bus.
[0142] Communication interface 204 is used for communicating with other devices or communication networks. Communication interface 204 can be any transceiver-like device, such as an Ethernet interface, a radio access network (RAN) interface, a wireless local area network (WLAN) interface, a transceiver, pins, a bus, or transceiver circuits, etc.
[0143] The memory 203 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or it may be 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 compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto. The memory may exist independently and be coupled to the processor 201 via communication line 202. The memory 203 may also be integrated with the processor 201. The memory provided in the embodiments of this application may generally be non-volatile.
[0144] The memory 203 stores computer execution instructions involved in the implementation of the scheme provided in the embodiments of this application, and the processor 201 controls the execution. The processor 201 executes the computer execution instructions stored in the memory 203 to implement the method provided in the embodiments of this application. Alternatively, in the embodiments of this application, the processor 201 may execute the processing-related functions in the method provided in the following embodiments of this application, and the communication interface 204 may be responsible for communicating with other devices or communication networks. The embodiments of this application do not specifically limit this aspect.
[0145] Optionally, the computer execution instructions in the embodiments of this application may also be referred to as application code, and the embodiments of this application do not specifically limit this.
[0146] The coupling in the embodiments of this application is an indirect coupling or communication connection between devices, units, or modules, which can be electrical, mechanical, or other forms, and is used for information interaction between devices, units, or modules.
[0147] As one embodiment, processor 201 may include one or more CPUs, for example Figure 2 CPU0 and CPU1 in the CPU.
[0148] As one embodiment, the communication device 20 may include multiple processors, such as Figure 2 Processors 201 and 207 are described herein. Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. A processor here may refer to one or more devices, circuits, and / or processing cores used to process data (e.g., computer program instructions).
[0149] As one embodiment, the communication device 20 may further include an output device 205 and / or an input device 206. The output device 205 is coupled to the processor 201 and can display information in various ways. For example, the output device 205 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 206 is coupled to the processor 201 and can receive user input in various ways. For example, the input device 206 may be a mouse, keyboard, touchscreen device, or sensing device, etc.
[0150] Understandable. Figure 2 The structural composition shown herein does not constitute a limitation on the communication device, except... Figure 2 In addition to the components shown, the communication device may include more or fewer components than illustrated, or combine certain components, or have different component arrangements.
[0151] The following will combine Figures 3 to 7 The methods provided in the embodiments of this application will be described below. The devices in the following embodiments may include... Figure 2 The components shown are not described in detail.
[0152] Understandable. Figures 3 to 7 The method illustrated uses servers, electronic devices, and vehicle control devices as examples of the entities executing the interaction, but this application does not limit the entities executing the interaction. For example, Figures 3 to 7The server in the method shown can also be a chip, chip system, or processor that supports the server in implementing the method, or it can be a logic module or software that can implement all or part of the server functions. Figures 3 to 7 The electronic device used in the method shown can also be a chip, chip system, or processor that supports the implementation of the method in the electronic device, or it can be a logic module or software that can implement all or part of the functions of the electronic device. Figures 3 to 7 The vehicle control device of the method shown can also be a chip, chip system, or processor that supports the implementation of the method in the vehicle control device, or it can be a logic module or software that can implement all or part of the functions of the vehicle control device.
[0153] It is understood that the message names between devices or the names of parameters in the messages in the following embodiments of this application are just examples, and other names may be used in the specific implementation. This application does not specifically limit these names.
[0154] It is understood that in the embodiments of this application, " / " can indicate that the objects before and after are in an "or" relationship. For example, A / B can mean A or B. "And / or" can be used to describe three relationships between the related objects. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, and B exists alone. Here, A and B can be singular or plural. In addition, expressions such as "at least one of A, B, and C" or "at least one of A, B, or C" are generally used to indicate any of the following: A exists alone; B exists alone; C exists alone; A and B exist simultaneously; A and C exist simultaneously; B and C exist simultaneously; A, B, and C exist simultaneously. The above examples use three elements, A, B, and C, to illustrate the optional items of this project. When there are more elements in the expression, the meaning of the expression can be obtained according to the aforementioned rules.
[0155] To facilitate the description of the technical solutions in the embodiments of this application, the terms "first" and "second" may be used to distinguish technical features with the same or similar functions. The terms "first" and "second" do not limit the number or execution order, nor are they necessarily different. In the embodiments of this application, the words "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" or "for example" should not be construed as being more preferred or advantageous than other embodiments or design schemes. The use of "exemplary" or "for example" is intended to present related concepts in a concrete manner for ease of understanding.
[0156] It is understood that the term "embodiment" used throughout the specification means that a specific feature, structure, or characteristic related to an embodiment is included in at least one embodiment of this application. Therefore, various embodiments throughout the specification do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It is understood that in the various embodiments of this application, the sequence number of each process does not imply the order of execution; the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0157] It is understood that in this application, "when," "if," and "if" all refer to the corresponding processing that will be carried out under certain objective circumstances, and are not limited to a specific time, nor do they require that there must be a judgment action when implemented, nor do they imply any other limitations.
[0158] It is understood that some optional features in the embodiments of this application can be implemented independently in certain scenarios without relying on other features, such as the current solution on which they are based, to solve the corresponding technical problems and achieve the corresponding effects. Alternatively, they can be combined with other features as needed in certain scenarios. Correspondingly, the apparatus given in the embodiments of this application can also implement these features or functions, which will not be elaborated here.
[0159] It is understood that the same step or step with the same function or technical feature in the embodiments of this application can be referenced and learned from each other in different embodiments.
[0160] It is understood that in the embodiments of this application, the server, and / or, electronic device, and / or, vehicle control device may perform some or all of the steps in the embodiments of this application. These steps are merely examples, and the embodiments of this application may also perform other steps or variations thereof. Furthermore, the steps may be performed in different orders as presented in the embodiments of this application, and it is not necessary to perform all the steps in the embodiments of this application.
[0161] like Figure 3 As shown in the figure, an upgrade method for an in-vehicle device is provided in an embodiment of this application. The method may include the following steps:
[0162] S301: The electronic device sends the first signature information and the first public key information to the server. Correspondingly, the server receives the first signature information and the first public key information from the electronic device.
[0163] In this embodiment of the application, the electronic device may be Figure 1A Electronic device 102 in the middle, the server can be Figure 1A Server 101; or electronic devices may be Figure 1BThe electronic devices in the system, the server can be Figure 1B The server in the middle.
[0164] The first signature information and the first public key information are described below.
[0165] In this embodiment, the first signature information is obtained by signing the first upgrade request with the private key of the electronic device. The first upgrade request is used to request an upgrade package for at least one in-vehicle device. The at least one in-vehicle device may be... Figure 1B The equipment in the middle that needs to be upgraded.
[0166] As an example, the first upgrade request includes at least one flag bit, which corresponds one-to-one with at least one in-vehicle device, and any one of the at least one flag bits is used to request the upgrade package of the in-vehicle device corresponding to that flag bit.
[0167] As another example, the first upgrade request includes identification information for each of the at least one in-vehicle devices.
[0168] Optionally, the first upgrade request may also include upgrade information for at least one in-vehicle device. For example, the upgrade information for at least one in-vehicle device may include at least one of the following: the name of the software currently installed on the at least one in-vehicle device, the version information of the software, the name of the at least one in-vehicle device, the information of the software developer, or the identifier of the vehicle in which the at least one in-vehicle device is located.
[0169] Optionally, the upgrade information can be obtained by the electronic device from the vehicle control device. For example, prior to S301, the vehicle control device sends the upgrade information to the electronic device. Accordingly, the electronic device receives the upgrade information.
[0170] Understandably, the upgrade information for at least one in-vehicle device enables the server to determine whether at least one in-vehicle device needs an upgrade, or to verify the compatibility of the upgrade package with at least one in-vehicle device. For example, if the version information of the latest software release stored on the server is the same as the version information in the upgrade information, the server determines that at least one in-vehicle device does not need an upgrade; if the version information of the latest software release stored on the server is higher than the version information in the upgrade information, the server determines that at least one in-vehicle device needs an upgrade.
[0171] Optionally, the server stores the aforementioned upgrade information. In this case, the first upgrade request may not include the upgrade information. After receiving the first signature information, the server can search for the upgrade information locally to determine whether at least one vehicle-mounted device needs an upgrade.
[0172] In this embodiment, the first public key information is used to verify the identity of the electronic device, or in other words, to verify whether the electronic device is legitimate. For example, the first public key information includes a public key certificate of the electronic device's public key, or the first public key information includes the electronic device's public key. Thus, the server can verify the identity of the electronic device, or verify whether the electronic device is legitimate, based on the public key certificate or the electronic device's public key.
[0173] The public key certificate may include at least one of the following: upgrade information for at least one in-vehicle device, an identifier for the in-vehicle control device, an identifier for the server, an identifier for the electronic device, and authorization period or authorization purpose information. The authorization period may be long-term, short-term, or one-time. One-time authorization means the public key certificate can be verified only once. Alternatively, the authorization period may include one month, two months, six months, or one year. Understandably, long-term authorization allows the public key certificate to be used for a longer period without frequent public key certificate generation. Short-term or one-time authorization, while requiring frequent public key certificate generation, offers higher security. Furthermore, one-time authorization does not require revocation.
[0174] Optionally, the public key certificate may also include tags, such as digital signatures, that protect the integrity and authenticity of all or part of the above information.
[0175] Understandably, if the public key certificate does not include an authorization period, it can implicitly indicate the authorization period. For example, if the public key certificate includes upgrade information for at least one in-vehicle device, it indicates that the authorization period for the public key certificate is short-term or a one-time authorization. Optionally, if the public key certificate includes upgrade information for at least one in-vehicle device, it indicates that the public key certificate is used for upgrading in-vehicle devices and cannot be used for other services besides in-vehicle device upgrades.
[0176] One possible design is that the public key certificate includes at least one field, in which the aforementioned information can be included. For example, the public key certificate includes at least one of an Issuer field, a Validity field, or an Extended key usage field. The Issuer field may include information related to the authorizing party, such as the identifier of the in-vehicle control device or the server. The Validity field may include the authorization period, etc. The Extended key usage field may include information other than the authorizing party information and the authorization period, such as the identifier of the electronic device, upgrade information for at least one in-vehicle device, and authorization purpose information.
[0177] Understandably, if a server wants to revoke authorization for an electronic device within the authorization period, it can use a conventional public key certificate revocation mechanism, such as adding the public key certificate to the certificate revocation list.
[0178] Understandably, the fields mentioned above are merely examples of fields included in a public key certificate. In specific applications, a public key certificate may include more or fewer fields than the examples above, without limitation.
[0179] One possible implementation is that the public key certificate is generated based on the server's private key; alternatively, the public key certificate is generated based on the private key of the in-vehicle control device. Here, the in-vehicle control device is... Figure 1A The vehicle control device 103 in the middle, or for Figure 1B The vehicle-mounted control equipment.
[0180] S302: If the first signature information and the first public key information are successfully verified, the server sends an upgrade package for at least one in-vehicle device to the electronic device. Correspondingly, the electronic device receives the upgrade package from the server for at least one in-vehicle device.
[0181] Understandably, after receiving the first signature information and the first public key information, the server can verify the first signature information and the first public key information, and if the verification of the first signature information and the first public key information is successful, it can send an upgrade package for at least one vehicle device to the electronic device.
[0182] As an example, the server verifies the first signature information based on the public key of the electronic device. If the first signature information is successfully verified, it means that the first signature information has not been tampered with; or if the first signature information fails to be verified, it means that the first signature information has been tampered with.
[0183] As another example, if the first public key information includes a public key certificate of the electronic device's public key, which is generated based on the server's private key, then the server verifies the public key certificate based on the server's public key. Alternatively, if the first public key information includes a public key certificate of the electronic device's public key, which is generated based on the vehicle control device's private key, then the server verifies the public key certificate based on the vehicle control device's public key (prior to S302, the server could obtain the vehicle control device's public key from the vehicle control device). It is understood that the server's public key or the vehicle control device's public key can have its own public key certificate, which can be verified using the public keys of other devices. Other devices' public keys can also have their own public key certificates, and so on, forming a certificate chain. Ultimately, the root certificate in the certificate chain verifies the legitimacy of other certificates in the chain. It should be understood that if the public key certificate verification is successful, it indicates that the electronic device is legitimate or authorized to download the upgrade package; if the public key certificate verification fails, it indicates that the electronic device is illegitimate or not authorized to download the upgrade package.
[0184] As another example, if the first public key information includes the public key of the electronic device, the server verifies the public key of the electronic device based on the authorization information of the public key. The authorization information of the public key indicates whether the public key of the electronic device is authorized or whether the electronic device is legitimate. For example, if the authorization information includes the public key of the electronic device, it indicates that the public key of the electronic device is authorized or the electronic device is legitimate; if the authorization information does not include the public key of the electronic device, it indicates that the public key of the electronic device is not authorized or the electronic device is illegitimate. As another example, the authorization information includes a flag indicating whether the public key of the electronic device is authorized or whether the electronic device is legitimate. As yet another example, the authorization information includes the public key of the electronic device and a corresponding flag, which indicates whether the public key of the electronic device is authorized or whether the electronic device is legitimate.
[0185] Understandably, the server verifies the legitimacy of electronic devices using this authorization information, which avoids the need to use a certificate chain to verify the devices and improves verification efficiency.
[0186] Understandably, if a server wants to revoke the authorization for an electronic device within the authorization period, it can delete the authorization information.
[0187] S303: The electronic device sends an upgrade package for at least one on-board device to the on-board control device. Correspondingly, the on-board control device receives an upgrade package for at least one on-board device from the electronic device.
[0188] Understandably, electronic devices can send at least one upgrade package for the vehicle control device to the vehicle control device at an appropriate time (such as when the vehicle control device's network is idle or when the vehicle control device is connected to the network).
[0189] Understandably, the benefits of vehicle control devices requesting upgrade packages from servers through electronic devices are as follows: (1) it can save on the cost of vehicle network; (2) when vehicle control devices cannot communicate, electronic devices can obtain upgrade packages in a timely manner; (3) when users (such as car owners or owners of electronic devices) are not in the car and cannot operate vehicle control devices, electronic devices can obtain upgrade packages in a timely manner.
[0190] S304: The on-board control equipment sends an upgrade package to each of at least one on-board device. Correspondingly, each on-board device receives the upgrade package.
[0191] Understandably, once the vehicle-mounted equipment receives its own upgrade package, it can perform the upgrade.
[0192] The actions of the electronic devices, servers, or vehicle control devices in S301-S304 above can be performed by... Figure 2 The processor 201 in the communication device 20 shown calls the application code stored in the memory 203 to execute it, and this application embodiment does not impose any limitations on this.
[0193] based on Figure 3 The method shown allows the server to verify the legitimacy of the electronic device through the first public key information, such as whether the electronic device has the permission to download the upgrade package, and to verify whether the received information has been tampered with through the first signature information, thereby ensuring the security of the vehicle equipment upgrade.
[0194] Optional, in Figure 3 In one possible scenario of the method shown, the aforementioned public key certificate is generated by the in-vehicle control device or server for the electronic device. Specifically, such as... Figure 4 As shown, if the first public key information includes the public key certificate of the electronic device's public key, then Figure 3 The methods shown also include S300a~S300c or S300A~S300E.
[0195] S300a: Electronic devices obtain the public key and private key of electronic devices.
[0196] One possible implementation is that the electronic device generates its own public key and private key; or, a key generation device generates the electronic device's own public key and private key and sends them to the electronic device, which then receives the public key and private key.
[0197] S300b: The electronic device sends its public key to the vehicle control device. Correspondingly, the vehicle control device receives the public key from the electronic device.
[0198] S300c: The onboard control device sends the public key certificate of the electronic device's public key to the electronic device. The electronic device then receives the public key certificate.
[0199] One possible implementation is that the in-vehicle control device, acting as the authorizer, uses its own private key to generate a public key certificate for the electronic device's public key (the authorized party). Alternatively, the in-vehicle control device can use its private key to generate a public key certificate for the electronic device's public key through a certificate authority. Understandably, this public key certificate can serve as an authorization certificate.
[0200] Understandably, through S300a to S300c, the on-board control equipment can generate an authorization certificate (e.g., a public key certificate of the electronic device's public key) for electronic devices. The electronic device can then request an upgrade package from the server based on this authorization certificate. Because the authorization certificate is immutable and unforgeable, using it as proof of the electronic device's legitimacy to the server ensures the security of on-board equipment upgrades.
[0201] S300A: Electronic devices obtain the public key and private key of electronic devices.
[0202] S300B: The electronic device sends its public key to the vehicle control device. Correspondingly, the vehicle control device receives the electronic device's public key from the electronic device.
[0203] The processes of S300A to S300B are similar to those of S300a to S300b, so you can refer to the corresponding descriptions in S300a to S300b above, which will not be repeated here.
[0204] S300C: The on-board control device sends the public key of the electronic device to the server. Correspondingly, the server receives the public key of the electronic device from the on-board control device.
[0205] S300D: The server sends the public key certificate of the electronic device's public key to the in-vehicle control device. The in-vehicle control device then receives this public key certificate.
[0206] One possible implementation is that the server, acting as the authorizer, uses its own private key to generate a public key certificate for the electronic device's public key (the authorized party). Alternatively, the server can use its private key to generate a public key certificate for the electronic device's public key through a certificate authority. Understandably, this public key certificate can serve as an authorization certificate.
[0207] As an example, an in-vehicle control device can use its own private key to authenticate and log in to a server, and apply for a public key certificate for the electronic device's public key. The server can use its own private key to generate a public key certificate for the electronic device's public key, or call a third-party certificate authority to generate a public key certificate for the electronic device's public key using the server's private key.
[0208] S300E: The onboard control device sends the public key certificate of the electronic device's public key to the electronic device. The electronic device then receives this public key certificate.
[0209] Understandably, using S300A to S300E, the server can generate an authorization certificate for the electronic device (e.g., a public key certificate of the electronic device's public key). The electronic device can then request an upgrade package from the server based on this authorization certificate. Because the authorization certificate is immutable and unforgeable, using it as proof of the electronic device's legitimacy to the server ensures the security of upgrades for the in-vehicle equipment.
[0210] The operation of the electronic devices, vehicle control devices, or servers in S300a-S300E can be achieved by... Figure 2The processor 201 in the communication device 20 shown calls the application code stored in the memory 203 to execute it, and this application embodiment does not impose any limitations on this.
[0211] Optional, in Figure 3 In one possible scenario of the method shown, the server can generate authorization information for the public key of an electronic device. Specifically, such as... Figure 5 As shown, if the first public key information includes the public key of the electronic device, then Figure 3 The method shown also includes S3001 to S3004.
[0212] S3001: Electronic device obtains the public key and private key of electronic device.
[0213] S3002: The electronic device sends its public key to the vehicle control device. Correspondingly, the vehicle control device receives the electronic device's public key from the electronic device.
[0214] The processes of S3001 to S3002 are similar to those of S300a to S300b, so you can refer to the corresponding descriptions in S300a to S300b above, which will not be repeated here.
[0215] S3003: The vehicle control device sends the public key of the electronic device to the server. Correspondingly, the server receives the public key of the electronic device from the vehicle control device.
[0216] Optionally, the vehicle control device also sends a first instruction message to the server. The server then receives this first instruction message. This first instruction message is used to indicate authorization information for generating the public key of the electronic device.
[0217] For example, the first indication information includes 1 bit, which, when the value of the 1 bit is "0" or "1", indicates the authorization information for generating the public key of the electronic device.
[0218] S3004: Authorization information for the server to generate the public key of electronic devices.
[0219] For example, the vehicle control device uses its private key as authentication to log in to the server and requests authorization for the electronic device's public key. The server can generate and store this authorization information. Thus, when the server receives an upgrade request from the electronic device, it can query the authorization information to verify the electronic device's legitimacy.
[0220] Understandably, through S3001 to S3004 described above, the server can generate authorization information for the public key of the electronic device. Thus, when the electronic device requests an upgrade package from the server, the server does not need the public key certificate to verify the legitimacy of the electronic device; instead, it verifies the legitimacy of the electronic device through this authorization information. The entire verification process does not require the use of a certificate chain, resulting in high verification efficiency.
[0221] The actions of the electronic devices, vehicle control devices, or servers in S3001-S3004 above can be performed by... Figure 2 The processor 201 in the communication device 20 shown calls the application code stored in the memory 203 to execute it, and this application embodiment does not impose any limitations on this.
[0222] Understandably, in the above Figures 3 to 5 In the method shown, the server verifies the legitimacy of the electronic device's identity using authorization information from a public key certificate or the electronic device's public key. In practical applications, proxy signatures can be used to generate identity credentials for the electronic device, enabling the server to verify its legitimacy.
[0223] In proxy signing, both the original signer and the proxy signer are involved. The original signer authorizes the proxy signer with their signing capabilities by generating a proxy signing key. The proxy signing key can be generated using either the original signer's private key or the proxy signer's private key. If the proxy signing key is generated using the proxy signer's private key, it requires interaction and collaboration between the original signer and the proxy signer; if it is not generated using the proxy signer's private key, it is typically generated solely by the original signer. This application's embodiment uses the example of the original signer generating the proxy signing key independently.
[0224] like Figure 6 As shown in the figure, another method for upgrading an in-vehicle device provided in this application embodiment may include the following steps:
[0225] S601: The electronic device sends the second signature information to the server. Correspondingly, the server receives the second signature information from the electronic device.
[0226] In this embodiment of the application, the electronic device may be Figure 1A Electronic device 102 in the middle, the server can be Figure 1A Server 101; or electronic devices may be Figure 1B The electronic devices in the system, the server can be Figure 1B The server in the middle.
[0227] In this embodiment, the second signature information is used to verify the identity of the electronic device. The second signature information is obtained by signing the first upgrade request using a proxy signature key. The proxy signature key is obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key. For example, the proxy signature key can be calculated using the hash value of the authorization information corresponding to the algorithm and the private key of the vehicle control device. This authorization information can also be referred to as a warranty. The description of the first upgrade request can be found in the corresponding description in S301 above, and will not be repeated here.
[0228] In this embodiment, the authorization information for the proxy signature key may include at least one of the following: upgrade information for at least one vehicle-mounted device, the identifier of the vehicle-mounted control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information. The descriptions of the upgrade information for at least one vehicle-mounted device and the authorization period can be found in the corresponding descriptions in S301 above, and will not be repeated here.
[0229] S602: If the second signature information is successfully verified, the server sends an upgrade package for at least one in-vehicle device to the electronic device. Correspondingly, the electronic device receives the upgrade package from the server for at least one in-vehicle device.
[0230] Understandably, after receiving the second signature information, the server can verify it and, if the second signature information is successfully verified, send an upgrade package for at least one vehicle-mounted device to the electronic device.
[0231] One possible implementation is that the server verifies the second signature information using the public key of the vehicle control device. Understandably, the proxy signature key is obtained based on the authorization information of the vehicle control device's private key and the proxy signature key, and the second signature information is obtained by signing the first upgrade request using the proxy signature key. Therefore, the server can verify the second signature information using the public key of the vehicle control device.
[0232] Understandably, if the second signature information is successfully verified, it means that the electronic device is legitimate, or that the electronic device is authorized to download the upgrade package, and that the received information has not been tampered with. If the second signature information fails to be verified, it means that the electronic device is illegitimate, or that the electronic device is not authorized to download the upgrade package, or that the received information has been tampered with.
[0233] One possible implementation is that if the server needs to revoke the authorization of an electronic device within the authorization period, it can store the aforementioned authorization information in an authorization information cancellation list.
[0234] S603: The electronic device sends an upgrade package for at least one on-board device to the on-board control device. Correspondingly, the on-board control device receives an upgrade package for at least one on-board device from the electronic device.
[0235] S604: The on-board control equipment sends an upgrade package to each of at least one on-board device. Correspondingly, each on-board device receives the upgrade package.
[0236] The processes S603 to S604 described above are similar to those S303 to S304 described above. Therefore, you can refer to the corresponding descriptions in S303 to S304 described above, and they will not be repeated here.
[0237] The operation of the electronic equipment, server, or vehicle control equipment in S601-S604 can be achieved by... Figure 2 The processor 201 in the communication device 20 shown calls the application code stored in the memory 203 to execute it, and this application embodiment does not impose any limitations on this.
[0238] based on Figure 6 The method shown allows the server to verify the legitimacy of electronic devices through the second signature information, such as whether the electronic device has the permission to download upgrade packages, and to verify whether the received information has been tampered with, thereby ensuring the security of in-vehicle equipment upgrades.
[0239] Optional, in Figure 6 In one possible scenario of the method shown, the onboard control unit generates a proxy signature key for the electronic device. Specifically, as... Figure 7 As shown, Figure 6 The method shown also includes the following steps:
[0240] S600a: The vehicle control device obtains the agent signature key.
[0241] One possible implementation involves the in-vehicle control device, acting as the original signer, using its own private key to generate a proxy signing key for the electronic device (acting as a proxy signer). This proxy signing key includes authorization information. The proxy signing key can serve as an authorization document, used by the server to verify the legitimacy of the electronic device.
[0242] S600b: The onboard control device sends a proxy signature key to the electronic device. Correspondingly, the electronic device receives the proxy signature key from the onboard control device.
[0243] Understandably, through S600a-S600b, the vehicle control device can generate an authorization certificate (e.g., a proxy signature key) for the electronic device. The electronic device can then request an upgrade package from the server based on this authorization certificate. Since the authorization certificate is immutable and unforgeable, using it as proof of the electronic device's legitimacy to the server ensures the security of the vehicle device's upgrades. Furthermore, the generation of the authorization certificate does not require server involvement, making the process simple and practical. Moreover, the legitimacy of the digital signature generated by the proxy signature key (e.g., second signature information) is verified by the original signer's (vehicle control device's) public key, without involving the authorized party's (electronic device's) public key certificate. Compared to authentication methods using the electronic device's public key certificate, this reduces the length of the certificate chain and improves verification efficiency.
[0244] The operation of the electronic equipment or vehicle control equipment in S600a to S600b can be achieved by... Figure 2 The processor 201 in the communication device 20 shown calls the application code stored in the memory 203 to execute it, and this application embodiment does not impose any limitations on this.
[0245] The various embodiments mentioned above in this application can be combined without contradiction, and no limitation is imposed.
[0246] The above mainly describes the solutions provided by the embodiments of this application from the perspective of interaction between various devices. Correspondingly, the embodiments of this application also provide a communication device, which can be a server in the above method embodiments, or an apparatus containing the server, or a component usable in a server; or, the communication device can be an electronic device in the above method embodiments, or an apparatus containing the electronic device, or a component usable in an electronic device; or, the communication device can be an in-vehicle control device in the above method embodiments, or an apparatus containing the in-vehicle control device, or a component usable in an in-vehicle control device. It is understood that servers, electronic devices, or in-vehicle control devices, etc., include hardware structures and / or software modules corresponding to the execution of each function in order to achieve the above functions. Those skilled in the art should readily recognize that, in conjunction with the unit and algorithm operations of the various examples described in the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0247] This application embodiment can divide a server, electronic device, or vehicle control device into functional modules based on the above method examples. For example, each function can be divided into its own functional module, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It is understood that the module division in this application embodiment is illustrative and only represents one logical functional division; other division methods may be used in actual implementation.
[0248] For example, when dividing the functional modules using an integrated approach. Figure 8 A schematic diagram of a communication device 80 is shown. The communication device 80 includes a transceiver module 801 and a processing module 802. The transceiver module 801, also known as a transceiver unit, is used to perform transceiver operations, and may be, for example, a transceiver circuit, transceiver, transceiver interface, or communication interface. The processing module 802, also known as a processing unit, is used to perform operations other than transceiver operations, and may be, for example, a processing circuit or processor.
[0249] In some embodiments, the communication device 80 may further include a storage module ( Figure 8 (Not shown in the image) is used to store program instructions and data.
[0250] For example, communication device 80 is used to implement the functions of a server. Communication device 80 is, for example, a... Figure 3 The embodiment shown, Figure 4 The illustrated embodiments or Figure 5 The server described in the illustrated embodiment.
[0251] The transceiver module 801 is used to receive first signature information and first public key information from an electronic device. The first signature information is obtained by signing a first upgrade request using the electronic device's private key. The first upgrade request is used to request an upgrade package for at least one vehicle-mounted device. The first public key information is used to verify the identity of the electronic device and includes either a public key certificate of the electronic device's public key, or simply the electronic device's public key. For example, the transceiver module 801 can be used to execute S301.
[0252] The processing module 802 is used to send an upgrade package to the electronic device via the transceiver module 801 after the first signature information and the first public key information have been successfully verified. For example, the processing module 802 can be used to execute S302.
[0253] In one possible implementation, the processing module 802 is further configured to verify the first signature information based on the public key of the electronic device.
[0254] In one possible implementation, the transceiver module 801 is further configured to receive a public key from an electronic device of the vehicle control device; the transceiver module 801 is also configured to send a public key certificate to the vehicle control device, the public key certificate being generated based on the private key of the communication device 80.
[0255] In one possible implementation, the processing module 802 is also configured to verify the public key certificate based on the public key of the communication device 80.
[0256] In one possible implementation, the public key certificate is generated based on the private key of the vehicle control device, and the processing module 802 is also used to verify the public key certificate based on the public key of the vehicle control device.
[0257] In one possible implementation, the transceiver module 801 is further configured to receive the public key of the electronic device from the vehicle control device; the processing module 802 is further configured to generate authorization information for the public key of the electronic device.
[0258] In one possible implementation, the processing module 802 is also used to verify the public key of the electronic device based on the authorization information.
[0259] In one possible implementation, the processing module 802 is also used to delete authorization information.
[0260] In one possible implementation, the first upgrade request includes upgrade information for at least one onboard device.
[0261] In one possible implementation, the public key certificate includes at least one of the following: upgrade information for at least one vehicle-mounted device, an identifier for the vehicle-mounted control device, an identifier for the communication device 80, an identifier for the electronic device, and information on the authorization period or authorization purpose.
[0262] When used to implement server functions, for other functions that communication device 80 can perform, please refer to [reference needed]. Figure 3 The embodiment shown, Figure 4 The method embodiments shown or Figure 5 The relevant descriptions of the embodiments shown will not be elaborated upon further.
[0263] Alternatively, by way of example, communication device 80 is used to implement the functions of a server. Communication device 80 is, for example, a... Figure 6 The illustrated embodiments or Figure 7 The server described in the illustrated embodiment.
[0264] The transceiver module 801 is used to receive second signature information from an electronic device. The second signature information is used to verify the identity of the electronic device. The second signature information is obtained by signing a first upgrade request using a proxy signature key. The proxy signature key is obtained based on the authorization information of the vehicle control device's private key and the proxy signature key. The first upgrade request is used to request an upgrade package for at least one vehicle device. For example, the transceiver module 801 can be used to execute S601.
[0265] The processing module 802 is used to send an upgrade package to the electronic device via the transceiver module 801 if the second signature information is successfully verified. For example, the processing module 802 can be used to execute S602.
[0266] In one possible implementation, the processing module 802 is further configured to verify the second signature information based on the public key of the vehicle control device.
[0267] In one possible implementation, the processing module 802 is also used to store the authorization information into an authorization information cancellation list.
[0268] In one possible implementation, the first upgrade request includes upgrade information for at least one onboard device.
[0269] In one possible implementation, the authorization information includes at least one of the following: upgrade information for at least one in-vehicle device, identification of the in-vehicle control device, identification of the communication device 80, identification of the electronic device, authorization period or authorization purpose information.
[0270] When used to implement server functions, for other functions that communication device 80 can perform, please refer to [reference needed]. Figure 6 The illustrated embodiments or Figure 7 The relevant descriptions of the embodiments shown will not be elaborated upon further.
[0271] Alternatively, by way of example, the communication device 80 is used to implement the functions of an on-board control device. The communication device 80 is, for example, a... Figure 7 The vehicle control device described in the illustrated embodiment.
[0272] The processing module 802 is used to obtain the proxy signature key. The proxy signature key is obtained based on the private key of the communication device 80 and the authorization information of the proxy signature key. For example, the processing module 802 can be used to execute S600a.
[0273] The transceiver module 801 is used to send the proxy signature key to the electronic device. For example, the transceiver module 801 can be used to execute S600b.
[0274] In one possible implementation, the authorization information includes at least one of the following: upgrade information for at least one in-vehicle device, identification of communication device 80, identification of server, identification of electronic device, authorization period or authorization purpose information.
[0275] In one possible implementation, the transceiver module 801 is also used to send upgrade information for at least one vehicle-mounted device to the electronic device.
[0276] When used to implement the functions of vehicle control equipment, for other functions that the communication equipment 80 can perform, please refer to... Figure 7 The relevant descriptions of the embodiments shown will not be elaborated upon further.
[0277] In a simplified embodiment, those skilled in the art will recognize that the communication device 80 can employ... Figure 2 The form shown. For example, Figure 2 The processor 201 can call computer execution instructions stored in the memory 203 to cause the communication device 80 to execute the method described in the above method embodiment.
[0278] For example, Figure 8 The functions / implementation process of the transceiver module 801 and the processing module 802 can be obtained through... Figure 2 The processor 201 in the memory calls computer execution instructions stored in the memory 203 to implement the function. Alternatively, Figure 8 The function / implementation process of the processing module 802 can be achieved through... Figure 2 The processor 201 in the memory calls computer execution instructions stored in the memory 203 to implement this. Figure 8 The function / implementation process of the transceiver module 801 can be obtained through Figure 2 It is implemented using the communication interface 204.
[0279] For example, when dividing the functional modules using an integrated approach. Figure 9 A schematic diagram of a communication device 90 is shown. The communication device 90 includes a transceiver module 901. Optionally, the communication device 90 also includes a processing module 902. The transceiver module 901, also referred to as a transceiver unit, is used to perform transceiver operations, and may be, for example, a transceiver circuit, transceiver, transceiver interface, or communication interface. The processing module 902, also referred to as a processing unit, is used to perform operations other than transceiver operations, and may be, for example, a processing circuit or processor.
[0280] In some embodiments, the communication device 90 may further include a storage module ( Figure 9 (Not shown in the image) is used to store program instructions and data.
[0281] For example, the communication device 90 is used to implement the functions of an electronic device. The communication device 90 is, for example, a... Figure 3 The embodiment shown, Figure 4 The illustrated embodiments or Figure 5 The electronic device described in the illustrated embodiment.
[0282] The transceiver module 901 is used to send first signature information and first public key information to the server. The first signature information is obtained by signing a first upgrade request using the private key of the communication device 90. The first upgrade request is used to request an upgrade package for at least one vehicle-mounted device. The first public key information is used to verify the identity of the communication device 90 and includes either a public key certificate of the communication device 90's public key, or simply the communication device 90's public key. For example, the transceiver module 901 can be used to execute step S301.
[0283] The transceiver module 901 is also used to receive upgrade packages from the server. For example, the transceiver module 901 can be used to execute S302.
[0284] The transceiver module 901 is also used to send upgrade packages to the vehicle control equipment. For example, the transceiver module 901 can be used to execute S303.
[0285] In one possible implementation, the transceiver module 901 is further configured to receive a public key certificate from the vehicle control device, the public key certificate being generated based on the private key of the vehicle control device, or the public key certificate being generated based on the private key of the server.
[0286] In one possible implementation, the processing module 902 is used to obtain the public key and the private key of the communication device 90; the transceiver module 901 is also used to send the public key of the communication device 90 to the vehicle control device.
[0287] In one possible implementation, the first upgrade request includes upgrade information for at least one onboard device.
[0288] In one possible implementation, the public key certificate includes at least one of the following: upgrade information for at least one vehicle-mounted device, an identifier for the vehicle-mounted control device, an identifier for the server, an identifier for the communication device 90, and authorization period or authorization purpose information.
[0289] In one possible implementation, the transceiver module 901 is also configured to receive upgrade information from at least one on-board device from the on-board control equipment.
[0290] When used to implement the functions of electronic devices, for other functions that the communication device 90 can perform, please refer to... Figure 3 The embodiment shown, Figure 4 The method embodiments shown or Figure 5 The relevant descriptions of the embodiments shown will not be elaborated upon further.
[0291] In a simplified embodiment, those skilled in the art will recognize that the communication device 90 can employ... Figure 2 The form shown. For example, Figure 2 The processor 201 can call computer execution instructions stored in the memory 203 to cause the communication device 90 to execute the method described in the above method embodiment.
[0292] For example, Figure 9 The functions / implementation process of the transceiver module 901 and the processing module 902 can be obtained through... Figure 2 The processor 201 in the memory calls computer execution instructions stored in the memory 203 to implement the function. Alternatively, Figure 9 The function / implementation process of the processing module 902 can be achieved through... Figure 2 The processor 201 in the memory calls computer execution instructions stored in the memory 203 to implement this. Figure 9 The function / implementation process of the transceiver module 901 can be obtained through Figure 2 It is implemented using the communication interface 204.
[0293] For example, when dividing the functional modules using an integrated approach. Figure 10 A schematic diagram of a communication device 100 is shown. The communication device 100 includes a transceiver module 1001. The transceiver module 1001, also known as a transceiver unit, is used to perform transceiver operations, and may be, for example, a transceiver circuit, transceiver, transceiver interface, or communication interface.
[0294] For example, the communication device 100 is used to implement the functions of an on-board control device. The communication device 100 is, for example, a... Figure 4 The vehicle control device described in the illustrated embodiment.
[0295] The transceiver module 1001 is used to receive the public key of the electronic device from the electronic device. For example, the transceiver module 1001 can be used to execute S300b or S300B.
[0296] The transceiver module 1001 is used to send a public key certificate of the electronic device's public key to the electronic device. The public key certificate is generated based on the private key of the communication device 100, or it is generated based on the private key of the server. For example, the transceiver module 1001 can be used to execute S300c or S300E.
[0297] In one possible implementation, the public key certificate is generated based on the server's private key. The transceiver module 1001 is also used to send the public key of the electronic device to the server; the transceiver module 1001 is also used to receive the public key certificate from the server.
[0298] In one possible implementation, the public key certificate includes at least one of the following: upgrade information for at least one in-vehicle device, an identifier for the communication device 100, an identifier for the server, an identifier for the electronic device, and information on the authorization period or authorization purpose.
[0299] In one possible implementation, the transceiver module 1001 is also used to send upgrade information for at least one vehicle-mounted device to the electronic device.
[0300] When used to implement the functions of vehicle control equipment, for other functions that the communication device 100 can perform, please refer to... Figure 4 The relevant descriptions of the embodiments shown will not be elaborated upon further.
[0301] Alternatively, by way of example, the communication device 100 is used to implement the functions of an in-vehicle control device. The communication device 100 is, for example, a... Figure 5 The vehicle control device described in the illustrated embodiment.
[0302] The transceiver module 1001 is used to receive the public key of the electronic device from the electronic device. For example, the transceiver module 1001 can be used to execute S3002.
[0303] The transceiver module 1001 is also used to send first indication information and the public key of the electronic device to the server. The first indication information is used to indicate the authorization information for generating the public key of the electronic device. For example, the transceiver module 1001 can be used to execute S3003.
[0304] In one possible implementation, the transceiver module 1001 is also used to send upgrade information for at least one vehicle-mounted device to the electronic device.
[0305] When used to implement the functions of vehicle control equipment, for other functions that the communication device 100 can perform, please refer to... Figure 5 The relevant descriptions of the embodiments shown will not be elaborated upon further.
[0306] Alternatively, by way of example, communication device 100 is used to implement the functions of an electronic device. Communication device 100 is, for example, a... Figure 6 The illustrated embodiments or Figure 7 The electronic device described in the illustrated embodiment.
[0307] The transceiver module 1001 is used to send second signature information to the server. The second signature information is used to verify the identity of the communication device 100. The second signature information is obtained by signing the first upgrade request with a proxy signature key, which is obtained based on the authorization information of the vehicle control device's private key and the proxy signature key. The first upgrade request is used to request an upgrade package for at least one vehicle device. For example, the transceiver module 1001 is used to execute S601.
[0308] The transceiver module 1001 is also used to receive upgrade packages from the server. For example, the transceiver module 1001 is also used to execute S602.
[0309] The transceiver module 1001 is also used to send upgrade packages to the vehicle control equipment. For example, the transceiver module 1001 is also used to execute S603.
[0310] In one possible implementation, the transceiver module 1001 is also used to receive a proxy signature key from the vehicle control device.
[0311] In one possible implementation, the first upgrade request includes upgrade information for at least one onboard device.
[0312] In one possible implementation, the authorization information includes at least one of the following: upgrade information for at least one in-vehicle device, identification of the in-vehicle control device, identification of the server, identification of the communication device 100, and authorization period or authorization purpose information.
[0313] In one possible implementation, the transceiver module 1001 is also configured to receive upgrade information from at least one vehicle-mounted device from the vehicle control device.
[0314] When used to implement the functions of electronic devices, other functions that the communication device 100 can perform can be referred to Figure 6 The illustrated embodiments or Figure 7 The relevant descriptions of the embodiments shown will not be elaborated upon further.
[0315] In a simplified embodiment, those skilled in the art will recognize that the communication device 100 can employ... Figure 2 The form shown. For example, Figure 2 The processor 201 can call computer execution instructions stored in the memory 203 to cause the communication device 100 to execute the method described in the above method embodiment.
[0316] For example, Figure 10 The function / implementation process of the transceiver module 1001 can be obtained through Figure 2 The processor 201 in the memory calls computer execution instructions stored in the memory 203 to implement the function. Alternatively, Figure 10The function / implementation process of the transceiver module 1001 can be obtained through Figure 2 It is implemented using the communication interface 204.
[0317] It is understood that one or more of the above modules or units can be implemented by software, hardware, or a combination of both. When any of the above modules or units are implemented by software, the software exists as computer program instructions and is stored in memory. The processor can be used to execute the program instructions and implement the above method flow. The processor can be built into a SoC (System-on-a-Chip) or ASIC, or it can be a separate semiconductor chip. In addition to the core that executes software instructions for computation or processing, the processor may further include necessary hardware accelerators, such as field-programmable gate arrays (FPGAs), PLDs (Programmable Logic Devices), or logic circuits that implement dedicated logic operations.
[0318] When the above modules or units are implemented in hardware, the hardware can be any one or any combination of a CPU, microprocessor, digital signal processing (DSP) chip, microcontroller unit (MCU), artificial intelligence processor, ASIC, SoC, FPGA, PLD, application-specific digital circuit, hardware accelerator, or non-integrated discrete device, which can run the necessary software or perform the above method flow independently of software.
[0319] Optionally, embodiments of this application also provide a chip system, including: at least one processor and an interface, wherein the at least one processor is coupled to a memory via the interface, and when the at least one processor executes a computer program or instructions in the memory, the method in any of the above method embodiments is executed. In one possible implementation, the chip system further includes a memory. Optionally, the chip system may be composed of chips, or may include chips and other discrete devices; embodiments of this application do not specifically limit this.
[0320] Optionally, embodiments of this application also provide a computer-readable storage medium. All or part of the processes in the above method embodiments can be implemented by a computer program instructing related hardware. This program can be stored in the aforementioned computer-readable storage medium. When executed, the program can include the processes of the above method embodiments. The computer-readable storage medium can be an internal storage unit of the communication device in any of the foregoing embodiments, such as the hard disk or memory of the communication device. The aforementioned computer-readable storage medium can also be an external storage device of the communication device, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the communication device. Further, the aforementioned computer-readable storage medium can include both internal storage units and external storage devices of the communication device. The aforementioned computer-readable storage medium is used to store the aforementioned computer program and other programs and data required by the aforementioned communication device. The aforementioned computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
[0321] Optionally, this application also provides a computer program product. All or part of the processes in the above method embodiments can be executed by a computer program instructing related hardware. This program can be stored in the computer program product, and when executed, it can include the processes described in the above method embodiments.
[0322] Optionally, embodiments of this application also provide computer instructions. All or part of the processes in the above method embodiments can be executed by computer instructions instructing related hardware (such as computers, processors, servers, electronic devices, or vehicle control devices). The program can be stored in the aforementioned computer-readable storage medium or the aforementioned computer program product.
[0323] Optionally, this application embodiment also provides a vehicle, including the vehicle control device in the above embodiments.
[0324] Optionally, embodiments of this application also provide an upgrade system, including: Figure 3 The illustrated embodiment Figure 4 The illustrated embodiment or Figure 5 The server, electronic device, and vehicle control device shown in the embodiment.
[0325] Optionally, embodiments of this application also provide an upgrade system, including: Figure 6 The illustrated embodiment or Figure 7 The server, electronic device, and vehicle control device shown in the embodiment.
[0326] Through the above description of the embodiments, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0327] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0328] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0329] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0330] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A method for upgrading vehicle-mounted equipment, characterized in that, Applied to a server, the method includes: The system receives first signature information and first public key information from an electronic device. The first signature information is obtained by signing a first upgrade request with the private key of the electronic device. The first upgrade request is used to request an upgrade package for at least one in-vehicle device. The first public key information is used to verify the identity of the electronic device. The first public key information includes a public key certificate of the public key of the electronic device, or the first public key information includes the public key of the electronic device. If the first signature information and the first public key information are successfully verified, the upgrade package is sent to the electronic device; The method further includes: Receive the public key of the electronic device from the vehicle control device; Authorization information for generating the public key of the electronic device; Verify the public key of the electronic device based on the authorization information.
2. The method according to claim 1, characterized in that, The method further includes: The first signature information is verified using the public key of the electronic device.
3. The method according to claim 1 or 2, characterized in that, The method further includes: Receive the public key of the electronic device from the vehicle control device; The public key certificate, which is generated based on the server's private key, is sent to the vehicle control device.
4. The method according to claim 3, characterized in that, The method further includes: The public key certificate is verified using the server's public key.
5. The method according to claim 1 or 2, characterized in that, The public key certificate is generated based on the private key of the vehicle control device, and the method further includes: The public key certificate is verified using the public key of the vehicle control device.
6. The method according to claim 1 or 2, characterized in that, The method further includes: Delete the authorization information.
7. The method according to claim 1 or 2, characterized in that, The first upgrade request includes upgrade information for the at least one vehicle-mounted device.
8. The method according to claim 1 or 2, characterized in that, The public key certificate includes at least one of the following: upgrade information for the at least one vehicle-mounted device, the identifier of the vehicle-mounted control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
9. A method for upgrading vehicle-mounted equipment, characterized in that, Applied to in-vehicle control equipment, the method includes: Receive the public key of the electronic device from the electronic device; Send a first instruction message and the public key of the electronic device to the server. The first instruction message is used to indicate the authorization information for generating the public key of the electronic device, and the authorization information is used to verify the public key of the electronic device.
10. The method according to claim 9, characterized in that, The method further includes: Send upgrade information for at least one vehicle-mounted device to the electronic device.
11. A method for upgrading vehicle-mounted equipment, characterized in that, Applied to a server, the method includes: The system receives a second signature information from an electronic device. The second signature information is used to verify the identity of the electronic device. The second signature information is obtained by signing a first upgrade request with a proxy signature key. The proxy signature key is obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key. The first upgrade request is used to request an upgrade package for at least one vehicle device. If the second signature information is successfully verified, the upgrade package is sent to the electronic device.
12. The method according to claim 11, characterized in that, The method further includes: The second signature information is verified using the public key of the vehicle control device.
13. The method according to claim 11, characterized in that, The method further includes: Store the authorization information in the authorization information cancellation list.
14. The method according to any one of claims 11 to 13, characterized in that, The first upgrade request includes upgrade information for the at least one vehicle-mounted device.
15. The method according to any one of claims 11 to 13, characterized in that, The authorization information includes at least one of the following: upgrade information for the at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
16. A method for upgrading vehicle-mounted equipment, characterized in that, Applied to electronic devices, the method includes: Send a second signature information to the server. The second signature information is used to verify the identity of the electronic device. The second signature information is obtained by signing the first upgrade request with a proxy signature key. The proxy signature key is obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key. The first upgrade request is used to request an upgrade package for at least one vehicle device. Receive the upgrade package from the server; The upgrade package is sent to the vehicle control equipment.
17. The method according to claim 16, characterized in that, The method further includes: Receive the proxy signature key from the vehicle control device.
18. The method according to claim 16, characterized in that, The first upgrade request includes upgrade information for the at least one vehicle-mounted device.
19. The method according to any one of claims 16 to 18, characterized in that, The authorization information includes at least one of the following: upgrade information for the at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
20. The method according to claim 18, characterized in that, The method further includes: Receive upgrade information for at least one vehicle-mounted device from the vehicle control device.
21. A method for upgrading vehicle-mounted equipment, characterized in that, Applied to in-vehicle control equipment, the method includes: Obtain the proxy signature key, which is obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key; Send the proxy signature key to the electronic device.
22. The method according to claim 21, characterized in that, The authorization information includes at least one of the following: upgrade information for at least one in-vehicle device, the identifier of the in-vehicle control device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
23. The method according to claim 22, characterized in that, The method further includes: Send upgrade information for at least one vehicle-mounted device to the electronic device.
24. A communication device, characterized in that, The communication device includes: a transceiver module and a processing module; The transceiver module is used to receive first signature information and first public key information from an electronic device. The first signature information is obtained by signing a first upgrade request with the private key of the electronic device. The first upgrade request is used to request an upgrade package for at least one vehicle-mounted device. The first public key information is used to verify the identity of the electronic device. The first public key information includes a public key certificate of the public key of the electronic device, or the first public key information includes the public key of the electronic device. The processing module is used to send the upgrade package to the electronic device through the transceiver module if the first signature information and the first public key information are successfully verified. in, The transceiver module is also used to receive the public key of the electronic device from the vehicle control device; The processing module is also used to generate authorization information for the public key of the electronic device; The processing module is also used to verify the public key of the electronic device based on the authorization information.
25. The communication device according to claim 24, characterized in that, The processing module is further configured to verify the first signature information based on the public key of the electronic device.
26. The communication device according to claim 24 or 25, characterized in that, The transceiver module is also used to receive the public key of the electronic device from the vehicle control device; The transceiver module is also used to send the public key certificate to the vehicle control device, the public key certificate being generated based on the private key of the communication device.
27. The communication device according to claim 26, characterized in that, The processing module is further configured to verify the public key certificate based on the public key of the communication device.
28. The communication device according to claim 24 or 25, characterized in that, The public key certificate is generated based on the private key of the vehicle control device. The processing module is also used to verify the public key certificate based on the public key of the vehicle control device.
29. The communication device according to claim 24 or 25, characterized in that, The processing module is also used to delete the authorization information.
30. The communication device according to claim 24 or 25, characterized in that, The first upgrade request includes upgrade information for the at least one vehicle-mounted device.
31. The communication device according to claim 24 or 25, characterized in that, The public key certificate includes at least one of the following: upgrade information for the at least one vehicle-mounted device, the identifier of the vehicle-mounted control device, the identifier of the communication device, the identifier of the electronic device, and authorization period or authorization purpose information.
32. A communication device, characterized in that, The communication device includes: a transceiver module; The transceiver module is used to receive the public key of the electronic device from the electronic device; The transceiver module is further configured to send a first indication information and the public key of the electronic device to the server. The first indication information is used to indicate authorization information for generating the public key of the electronic device, and the authorization information is used to verify the public key of the electronic device.
33. The communication device according to claim 32, characterized in that, The transceiver module is also used to send upgrade information for at least one vehicle-mounted device to the electronic device.
34. A communication device, characterized in that, The communication device includes: a transceiver module and a processing module; The transceiver module is used to receive second signature information from an electronic device. The second signature information is used to verify the identity of the electronic device. The second signature information is obtained by signing the first upgrade request with a proxy signature key. The proxy signature key is obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key. The first upgrade request is used to request an upgrade package for at least one vehicle device. The processing module is used to send the upgrade package to the electronic device through the transceiver module if the second signature information is successfully verified.
35. The communication device according to claim 34, characterized in that, The processing module is further configured to verify the second signature information based on the public key of the vehicle control device.
36. The communication device according to claim 34, characterized in that, The processing module is also used to store the authorization information in an authorization information cancellation list.
37. The communication device according to any one of claims 34 to 36, characterized in that, The first upgrade request includes upgrade information for the at least one vehicle-mounted device.
38. The communication device according to any one of claims 34 to 36, characterized in that, The authorization information includes at least one of the following: upgrade information for the at least one vehicle-mounted device, the identifier of the vehicle-mounted control device, the identifier of the communication device, the identifier of the electronic device, and authorization period or authorization purpose information.
39. A communication device, characterized in that, The communication device includes: a transceiver module; The transceiver module is used to send second signature information to the server. The second signature information is used to verify the identity of the communication device. The second signature information is obtained by signing the first upgrade request with a proxy signature key. The proxy signature key is obtained based on the private key of the vehicle control device and the authorization information of the proxy signature key. The first upgrade request is used to request an upgrade package for at least one vehicle device. The transceiver module is also used to receive the upgrade package from the server; The transceiver module is also used to send the upgrade package to the vehicle control equipment.
40. The communication device according to claim 39, characterized in that, The transceiver module is also used to receive the proxy signature key from the vehicle control device.
41. The communication device according to claim 39 or 40, characterized in that, The first upgrade request includes upgrade information for the at least one vehicle-mounted device.
42. The communication device according to claim 39 or 40, characterized in that, The authorization information includes at least one of the following: upgrade information for the at least one vehicle-mounted device, the identifier of the vehicle-mounted control device, the identifier of the server, the identifier of the communication device, and authorization period or authorization purpose information.
43. The communication device according to claim 41, characterized in that, The transceiver module is also used to receive upgrade information from at least one vehicle-mounted device of the vehicle-mounted control device.
44. A communication device, characterized in that, The communication device includes: a processing module and a transceiver module; The processing module is used to obtain a proxy signature key, which is obtained based on the private key of the communication device and the authorization information of the proxy signature key; The transceiver module is used to send the proxy signature key to the electronic device.
45. The communication device according to claim 44, characterized in that, The authorization information includes at least one of the following: upgrade information for at least one vehicle-mounted device, the identifier of the communication device, the identifier of the server, the identifier of the electronic device, and authorization period or authorization purpose information.
46. The communication device according to claim 45, characterized in that, The transceiver module is also used to send upgrade information of the at least one vehicle-mounted device to the electronic device.
47. A communication device, characterized in that, include: A processor coupled to a memory for storing programs or instructions that, when executed by the processor, cause the communication device to perform the method as described in any one of claims 1 to 8, or the method as described in any one of claims 9 to 10, or the method as described in any one of claims 11 to 15, or the method as described in any one of claims 16 to 20, or the method as described in any one of claims 21 to 23.
48. A computer-readable storage medium having a computer program or instructions stored thereon, characterized in that, When the computer program or instructions are executed, they cause the computer to perform the method as described in any one of claims 1 to 8, or the method as described in any one of claims 9 to 10, or the method as described in any one of claims 11 to 15, or the method as described in any one of claims 16 to 20, or the method as described in any one of claims 21 to 23.
49. A computer program product, the computer program product comprising computer program code, characterized in that, When the computer program code is run on a computer, it causes the computer to perform the method as described in any one of claims 1 to 8, or the method as described in any one of claims 9 to 10, or the method as described in any one of claims 11 to 15, or the method as described in any one of claims 16 to 20, or the method as described in any one of claims 21 to 23.
50. A chip, characterized in that, include: A processor coupled to a memory for storing a program or instructions which, when executed by the processor, cause the chip to perform the method as claimed in any one of claims 1 to 8, or the method as claimed in any one of claims 9 to 10, or the method as claimed in any one of claims 11 to 15, or the method as claimed in any one of claims 16 to 20, or the method as claimed in any one of claims 21 to 23.
51. A vehicle, characterized in that, include: The communication device as described in any one of claims 32 to 33, or the communication device as described in any one of claims 44 to 46.