WO2021129065A1 - 升级方法及装置 - Google Patents

升级方法及装置 Download PDF

Info

Publication number
WO2021129065A1
WO2021129065A1 PCT/CN2020/121269 CN2020121269W WO2021129065A1 WO 2021129065 A1 WO2021129065 A1 WO 2021129065A1 CN 2020121269 W CN2020121269 W CN 2020121269W WO 2021129065 A1 WO2021129065 A1 WO 2021129065A1
Authority
WO
WIPO (PCT)
Prior art keywords
upgrade
information
ecu
server
channel
Prior art date
Application number
PCT/CN2020/121269
Other languages
English (en)
French (fr)
Inventor
王勇
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to JP2022538331A priority Critical patent/JP2023507027A/ja
Priority to EP20907652.0A priority patent/EP4068083A4/en
Publication of WO2021129065A1 publication Critical patent/WO2021129065A1/zh
Priority to US17/846,942 priority patent/US20220326938A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/106Packet or message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/44Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]

Definitions

  • This application relates to the field of Internet of Vehicles technology, and in particular to an upgrade method and device.
  • OTA Over the air
  • Original equipment manufacturers original equipment manufacturer, OEM
  • OTA upgrade the related software or firmware of intelligent connected cars through OTA, which can reduce the number of vehicle recalls, reduce the operating costs of manufacturers, and can quickly respond to user needs and improve user experience.
  • An intelligent networked car includes multiple devices, such as a telematics box (T-box), a gateway, and an electronic control unit (ECU), etc.
  • the cloud or server
  • the T-box or gateway receives and verifies the upgrade package of the multiple devices, and after the verification is successful, sends the upgrade package of each device
  • the T-box or gateway not only takes a long time to download the upgrade packages of the multiple devices, but also consumes a large amount of storage space to store the multiple devices’ upgrade packages.
  • the upgrade package increases the load and storage requirements of the T-box or gateway.
  • the embodiment of the application provides an upgrade method and device.
  • the upgrade efficiency and download speed can be improved, and the load and storage requirements of the car box or gateway can be reduced.
  • an embodiment of the present application provides an upgrade method.
  • the method includes: receiving upgrade information of the first ECU from a car box or a gateway; establishing a first channel with a server according to the upgrade information of the first ECU; The first channel receives the upgrade package of the first ECU from the server; upgrades according to the upgrade package of the first ECU.
  • the first ECU when the first ECU needs to be upgraded, can receive the upgrade information of the first ECU from the car box or the gateway, and establish the first channel with the server according to the upgrade information of the first ECU, and Receive the upgrade package of the first ECU from the server through the first channel, and upgrade according to the upgrade package of the first ECU.
  • the first ECU can receive the upgrade information of the first ECU from the car box or the gateway, and establish the first channel with the server according to the upgrade information of the first ECU, and Receive the upgrade package of the first ECU from the server through the first channel, and upgrade according to the upgrade package of the first ECU.
  • it is not necessary to download the upgrade package of the first ECU through the car box or gateway, which can improve the upgrade efficiency and download speed , And reduce the load and storage requirements of the car box or gateway.
  • the first channel is a transport layer security channel, a hypertext transfer security protocol security channel, or a data packet transport layer security protocol security channel.
  • the first ECU may not download the upgrade package of the first ECU through the car box or gateway, but from the server through the transport layer security channel, the hypertext transmission security protocol security channel, or the data packet transmission layer security protocol security channel Download the upgrade package of the first ECU, thereby improving the upgrade efficiency and download speed, and reducing the load and storage requirements of the car box or gateway.
  • establishing the first channel with the server according to the upgrade information of the first ECU includes: sending first request information to the server, where the first request information is used to request the establishment of the first channel with the server. A channel; receiving first request response information from the server, where the first request response information is used to determine the encryption method of the server and the first ECU; sending first completion information to the server, where the first The completion information is used to indicate the completion of the establishment of the first channel between the first ECU and the server; the first completion response information is received from the server, where the first completion response information is used to indicate the first completion of the first ECU and the server One channel is established.
  • the first ECU can establish the first channel by sending the first request information to the server, receiving the first request response information from the server, and sending the first completion information to the server, and receiving the first completion response information from the server. , So that the first ECU can download the upgrade package of the first ECU from the server through the first channel instead of downloading the upgrade package of the first ECU through the car box or gateway.
  • the upgrade information of the first ECU includes a download address of the upgrade package of the first ECU.
  • the upgrade information of the first ECU includes the download address of the upgrade package of the first ECU.
  • the first ECU can establish a first channel with the server according to the download address of the upgrade package of the first ECU, so that the first ECU can The upgrade package of the first ECU is not downloaded through the car box or gateway, but the upgrade package of the first ECU is downloaded from the server through the first channel.
  • the upgrade information of the first ECU includes instruction information, and the instruction information is used to indicate the upgrade of the first ECU.
  • the upgrade information of the first ECU includes instruction information.
  • the first ECU can establish a first channel with the server according to the instruction information, so that the first ECU can download the upgrade package of the first ECU without using the car box or gateway. Instead, download the upgrade package of the first ECU from the server through the first channel.
  • performing the upgrade according to the upgrade package of the first ECU includes: after verifying the signature of the upgrade package of the first ECU successfully, performing the upgrade according to the upgrade package of the first ECU. Based on the above method, the first ECU may perform the upgrade according to the upgrade package of the first ECU after successfully verifying the signature of the upgrade package of the first ECU, so as to ensure that the upgrade package of the first ECU has not been tampered with.
  • an embodiment of the present application provides an upgrade method.
  • the method includes: receiving upgrade information of a plurality of devices from a server, wherein the upgrade information of the plurality of devices includes the upgrade information of the first electronic control unit ECU.
  • the upgrade information of an ECU is used to instruct the first ECU to establish a first channel with the server; according to the upgrade information of the first ECU, the upgrade information of the first ECU is sent to the first ECU.
  • the car box or gateway can receive the upgrade information of multiple devices from the server, and send the upgrade information of the first ECU to the first ECU according to the upgrade information of the first ECU, so that the first ECU
  • the first channel is established with the server according to the upgrade information of the first ECU, and the first ECU can download the upgrade package of the first ECU from the server through the first channel instead of downloading the upgrade package of the first ECU through the car box or the gateway. It improves the upgrade efficiency and download speed, and reduces the load and storage requirements of the car box or gateway.
  • the first channel is a transport layer security channel, a hypertext transfer security protocol security channel, or a data packet transport layer security protocol security channel.
  • the car box or the gateway can send the upgrade information of the first ECU to the first ECU, so that the first ECU establishes a transmission layer security channel, a hypertext transmission security protocol security channel, or a server according to the upgrade information of the first ECU and the server.
  • Data packet transmission layer security protocol security channel and then the first ECU can not download the upgrade package of the first ECU through the car box or gateway, but through the transmission layer security channel, hypertext transmission security protocol security channel, or data packet transmission layer
  • the security protocol secure channel downloads the upgrade package of the first ECU from the server, which improves the upgrade efficiency and download speed, and reduces the load and storage requirements of the car box or gateway.
  • the upgrade information of the first ECU includes a download address of the upgrade package of the first ECU.
  • the car box or gateway can send the download address of the upgrade package of the first ECU to the first ECU, so that the first ECU establishes a first channel with the server according to the download address of the upgrade package of the first ECU, and then the first ECU It is possible not to download the upgrade package of the first ECU through the car box or gateway, but to download the upgrade package of the first ECU from the server through the first channel, which improves the upgrade efficiency and download speed, and reduces the load and storage of the car box or gateway demand.
  • the upgrade information of the first ECU includes instruction information
  • the instruction information is used to indicate the upgrade of the first ECU.
  • the car box or gateway can send instruction information to the first ECU, so that the first ECU establishes a first channel with the server according to the instruction information, and then the first ECU can download the upgrade package of the first ECU without using the car box or gateway Instead, it downloads the upgrade package of the first ECU from the server through the first channel, which improves the upgrade efficiency and download speed, and reduces the load and storage requirements of the car box or gateway.
  • the upgrade information of the multiple devices further includes an upgrade package of the second ECU; the method further includes: sending the upgrade package of the second ECU to the second ECU.
  • the upgrade information of multiple devices also includes the upgrade package of the second ECU.
  • the car box or gateway can also send the upgrade package of the second ECU to the second ECU, so that the second ECU can be upgraded according to the second ECU.
  • the package is upgraded.
  • an embodiment of the present application provides an upgrade method.
  • the method includes: sending upgrade information of multiple devices to a car box or a gateway, where the upgrade information of the multiple devices includes the upgrade of the first electronic control unit ECU Information; establish a first channel with the first ECU according to the upgrade information of the first ECU; send the upgrade package of the first ECU to the first ECU through the first channel.
  • the server can send the upgrade information of the first ECU to the car box or the gateway, establish a first channel with the first ECU according to the upgrade information of the first ECU, and send it to the first ECU through the first channel
  • the upgrade package of the first ECU so that the first ECU can download the upgrade package of the first ECU from the server through the first channel instead of downloading the upgrade package of the first ECU through the car box or gateway, which improves the upgrade efficiency and download speed , And reduce the load and storage requirements of the car box or gateway.
  • the first channel is a transport layer security channel, a hypertext transfer security protocol security channel, or a data packet transport layer security protocol security channel.
  • the server can establish a transmission layer security channel, a hypertext transmission security protocol security channel, or a data packet transmission layer security protocol security channel with the first ECU according to the upgrade information of the first ECU, so that the first ECU may not pass
  • the car box or gateway downloads the upgrade package of the first ECU, but downloads the upgrade package of the first ECU from the server through the transport layer security channel, the hypertext transfer security protocol security channel, or the data packet transport layer security protocol security channel, which improves Upgrade efficiency and download speed, and reduce the load and storage requirements of the car box or gateway.
  • establishing a first channel with the first ECU according to the upgrade information of the first ECU includes: receiving first request information from the first ECU, where the first request information is used for Request to establish the first channel with the server; send first request response information to the first ECU according to the first request information, where the first request response information is used to determine the encryption method between the server and the first ECU; Receive first completion information from the first ECU, where the first completion information is used to indicate that the first channel between the first ECU and the server is established; and send the first completion information to the first ECU according to the first completion information.
  • Completion response information where the first completion response information is used to indicate that the establishment of the first channel between the first ECU and the server is completed.
  • the server can receive the first request information from the first ECU, send the first request response information to the first ECU according to the first request information, receive the first completion information from the first ECU, and receive the first completion information according to the first completion information.
  • the information sends the first completion response message to the first ECU to establish the first channel, so that the first ECU can not download the upgrade package of the first ECU through the car box or gateway, but through the transmission layer security channel and the hypertext transmission security protocol.
  • the channel or data packet transport layer security protocol secure channel downloads the upgrade package of the first ECU from the server, which improves the upgrade efficiency and download speed, and reduces the load and storage requirements of the car box or gateway.
  • the upgrade information of the first ECU includes a download address of the upgrade package of the first ECU.
  • the server can establish a first channel with the first ECU according to the download address of the upgrade package of the first ECU, so that the first ECU can download the upgrade package of the first ECU not through the car box or gateway, but through the transport layer
  • the secure channel, hypertext transmission security protocol secure channel, or data packet transport layer security protocol secure channel downloads the upgrade package of the first ECU from the server, which improves the upgrade efficiency and download speed, and reduces the load and storage of the car box or gateway demand.
  • the upgrade information of the first ECU includes instruction information, and the instruction information is used to indicate the upgrade of the first ECU.
  • the server can establish the first channel with the first ECU according to the instruction information, so that the first ECU can not download the upgrade package of the first ECU through the car box or gateway, but through the transmission layer security channel, hypertext transmission security
  • the protocol secure channel or the data packet transport layer security protocol secure channel downloads the upgrade package of the first ECU from the server, which improves the upgrade efficiency and download speed, and reduces the load and storage requirements of the car box or gateway.
  • the method further includes: signing the upgrade package of the first ECU.
  • the server can sign the upgrade package of the first ECU, so that after receiving the upgrade package of the first ECU, the first ECU can verify whether the upgrade package of the first ECU has been tampered with, so as to ensure that the first ECU Upgraded security.
  • the upgrade information of the multiple devices further includes an upgrade package of the second ECU.
  • the server can also send the upgrade package of the second ECU to the car box or the gateway, so that the car box or the gateway assists in the upgrade of the second ECU.
  • an embodiment of the present application provides a communication device that has the method and function described in the first aspect.
  • This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • an embodiment of the present application provides a communication device that has the method and function described in the second aspect.
  • This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • an embodiment of the present application provides a communication device that has the method and function described in the third aspect.
  • This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • an embodiment of the present application provides a communication device, including: at least one processor, at least one memory, and a communication interface, the communication interface, the at least one memory and the at least one processor are coupled; the communication device communicates through the The interface communicates with other devices, and the at least one memory is used to store a computer program, so that when the computer program is executed by the at least one processor, the upgrade method as described in the first aspect and various possible implementation manners thereof is implemented.
  • an embodiment of the present application provides a communication device, including: at least one processor, at least one memory, and a communication interface.
  • the communication interface, the at least one memory and the at least one processor are coupled; the communication device communicates with each other.
  • the interface communicates with other devices, and the at least one memory is used to store a computer program, so that when the computer program is executed by the at least one processor, the upgrade method as described in the second aspect and various possible implementation manners thereof is implemented.
  • an embodiment of the present application provides a communication device, including: at least one processor, at least one memory, and a communication interface, the communication interface, the at least one memory and the at least one processor are coupled; the communication device communicates via the The interface communicates with other devices, and the at least one memory is used to store a computer program, so that when the computer program is executed by the at least one processor, the upgrade method as described in the third aspect and various possible implementation manners thereof is implemented.
  • the present application provides a system chip that can be used in a communication device.
  • the system chip includes: at least one processor, and related program instructions are executed in the at least one processor to implement The method on the one hand and the function of the first ECU in any design.
  • the system chip may further include at least one memory, and the memory stores related program instructions.
  • the present application provides a system chip that can be used in a communication device.
  • the system chip includes: at least one processor, and related program instructions are executed in the at least one processor to implement The method of the second aspect and the function of the car box or gateway in any design.
  • the system chip may further include at least one memory, and the memory stores related program instructions.
  • the present application provides a system chip that can be used in a communication device.
  • the system chip includes: at least one processor, and related program instructions are executed in the at least one processor to implement The method of the third aspect and the function of the server in any design.
  • the system chip may further include at least one memory, and the memory stores related program instructions.
  • embodiments of the present application provide a computer-readable storage medium, such as a computer-readable storage medium that is non-transitory.
  • a computer program is stored thereon, and when the computer program runs on the computer, the computer is caused to execute any one of the possible methods of the first aspect described above.
  • the computer may be at least one storage node.
  • the embodiments of the present application provide a computer-readable storage medium, such as a computer non-transitory readable storage medium.
  • a computer program is stored thereon, and when the computer program runs on the computer, the computer is caused to execute any one of the possible methods of the second aspect described above.
  • the computer may be at least one storage node.
  • embodiments of the present application provide a computer-readable storage medium, such as a computer-readable storage medium that is non-transitory.
  • a computer program is stored thereon, and when the computer program runs on the computer, the computer is caused to execute any one of the possible methods of the third aspect.
  • the computer may be at least one storage node.
  • the embodiments of the present application provide a computer program product, which when running on a computer, enables any method provided in the first aspect to be executed.
  • the computer may be at least one storage node.
  • the embodiments of the present application provide a computer program product, which when running on a computer, enables any method provided in the second aspect to be executed.
  • the computer may be at least one storage node.
  • the embodiments of the present application provide a computer program product, which when running on a computer, enables any method provided in the third aspect to be executed.
  • the computer may be at least one storage node.
  • an embodiment of the present application provides an upgrade system, which may include any one or more of the following: such as the communication device in the fourth aspect, or the communication device in the fifth aspect, or the communication device in the fifth aspect, or The communication device in the sixth aspect, or the communication device in the seventh aspect, or the communication device in the eighth aspect, or the communication device in the ninth aspect, or the system chip in the tenth aspect, or the communication device in the first aspect.
  • any communication device, system chip, computer readable storage medium, computer program product, or upgrade system provided above are all used to execute the corresponding method provided above, and therefore, the benefits that can be achieved are For the effect, please refer to the beneficial effect in the corresponding method, which will not be repeated here.
  • an embodiment of the present application provides an upgrade method, which is applied to a first device, and the method includes: receiving upgrade information of the first device from an OTA node; and communicating with the server according to the upgrade information of the first device Establish a first channel; receive the upgrade package of the first device from the server through the first channel; upgrade according to the upgrade package of the first device.
  • the first channel is a transport layer security channel, a hypertext transfer security protocol security channel, or a data packet transport layer security protocol security channel.
  • establishing the first channel with the server according to the upgrade information of the first device includes: sending first request information to the server, where the first request information is used to request the establishment of the first channel with the server. A channel; receiving first request response information from the server, where the first request response information is used to determine the encryption method of the server and the first device; sending first completion information to the server, where the first The completion information is used to indicate the completion of the establishment of the first channel between the first device and the server; the first completion response information from the server is received, where the first completion response information is used to indicate the first device and the server One channel is established.
  • the upgrade information of the first device includes a download address of the upgrade package of the first device.
  • the upgrade information of the first device includes instruction information, and the instruction information is used to indicate to upgrade the first device.
  • the upgrading according to the upgrade package of the first device includes: after verifying the signature of the upgrade package of the first device successfully, performing the upgrade according to the upgrade package of the first device.
  • the first device is an electronic control unit ECU, a gateway, a domain controller or a car box.
  • an OTA node is deployed on the first device, or an OTA node is not deployed on the first device.
  • an embodiment of the present application provides an upgrade method, which is applied to an OTA node, and the method includes: receiving upgrade information of multiple devices from a server, wherein the upgrade information of the multiple devices includes the first The upgrade information of the device, the upgrade information of the first device is used to instruct the first device to establish a first channel with the server; and the upgrade information of the first device is sent to the first device according to the upgrade information of the first device.
  • the first channel is a transport layer security channel, a hypertext transfer security protocol security channel, or a data packet transport layer security protocol security channel.
  • the upgrade information of the first device includes a download address of the upgrade package of the first device.
  • the upgrade information of the first device includes instruction information, and the instruction information is used to indicate to upgrade the first device.
  • the upgrade information of the multiple devices further includes an upgrade package of the second device; the method further includes: sending the upgrade package of the second device to the second device.
  • the first device is an electronic control unit ECU, a gateway, a domain controller or a car box.
  • the second device is different from the first device, and the second device is an electronic control unit ECU, a gateway, a domain controller, or a car box.
  • the first device deploys an OTA node, or the first device does not deploy an OTA node.
  • the second device deploys an OTA node, or the second device does not deploy an OTA node.
  • an embodiment of the present application provides an upgrade method, which is applied to a server, and the method includes: sending upgrade information of multiple devices to an OTA node, where the upgrade information of the multiple devices includes the first device Establish a first channel with the first device according to the upgrade information of the first device; send the upgrade package of the first device to the first device through the first channel.
  • the first channel is a transport layer security channel, a hypertext transfer security protocol security channel, or a data packet transport layer security protocol security channel.
  • establishing a first channel with the first device according to the upgrade information of the first device includes: receiving first request information from the first device, where the first request information is used for Request to establish the first channel with the server; send first request response information to the first device according to the first request information, where the first request response information is used to determine the encryption method of the server and the first device; Receiving first completion information from the first device, where the first completion information is used to indicate that the first channel between the first device and the server is established; and sending the first completion information to the first device according to the first completion information Completion response information, where the first completion response information is used to indicate that the establishment of the first channel between the first device and the server is completed.
  • the upgrade information of the first device includes a download address of the upgrade package of the first device.
  • the upgrade information of the first device includes instruction information, and the instruction information is used to indicate to upgrade the first device.
  • the method further includes: signing the upgrade package of the first device.
  • the upgrade information of the multiple devices further includes an upgrade package of the second device.
  • the first device is an electronic control unit ECU, a gateway, a domain controller or a car box.
  • the second device is different from the first device, and the second device is an electronic control unit ECU, a gateway, a domain controller, or a car box.
  • the first device deploys an OTA node, or the first device does not deploy an OTA node.
  • the second device deploys an OTA node, or the second device does not deploy an OTA node.
  • an embodiment of the present application provides a communication device that has the method and function described in the twentieth aspect.
  • This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • an embodiment of the present application provides a communication device, which has the method and functions described in the twenty-first aspect.
  • This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • an embodiment of the present application provides a communication device that has the method and function described in the twenty-second aspect.
  • This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • an embodiment of the present application provides a communication device, including: at least one processor, at least one memory, and a communication interface, the communication interface, the at least one memory and the at least one processor are coupled; the communication device passes through The communication interface communicates with other devices, and the at least one memory is used to store a computer program, so that when the computer program is executed by the at least one processor, the upgrade method as described in the twentieth aspect and various possible implementation manners thereof is implemented.
  • an embodiment of the present application provides a communication device, including: at least one processor, at least one memory, and a communication interface, the communication interface, the at least one memory and the at least one processor are coupled; the communication device passes through The communication interface communicates with other devices, and the at least one memory is used to store a computer program, so that when the computer program is executed by the at least one processor, the upgrade method as described in the twenty-first aspect and various possible implementation manners thereof is implemented .
  • an embodiment of the present application provides a communication device, including: at least one processor, at least one memory, and a communication interface.
  • the communication interface, the at least one memory and the at least one processor are coupled; the communication device passes through The communication interface communicates with other devices, and the at least one memory is used to store a computer program, so that when the computer program is executed by the at least one processor, the upgrade method as described in the twenty-second aspect and various possible implementation manners thereof is implemented .
  • the present application provides a system chip that can be used in a communication device.
  • the system chip includes: at least one processor, and related program instructions are executed in the at least one processor to implement According to the method of the twentieth aspect and the function of the first ECU in any design.
  • the system chip may further include at least one memory, and the memory stores related program instructions.
  • the present application provides a system chip that can be used in a communication device.
  • the system chip includes: at least one processor, and related program instructions are executed in the at least one processor to implement The method of the twenty-first aspect and the function of the car box or gateway in any design.
  • the system chip may further include at least one memory, and the memory stores related program instructions.
  • the present application provides a system chip that can be applied to a communication device.
  • the system chip includes: at least one processor, and related program instructions are executed in the at least one processor to implement According to the method of the twenty-second aspect and the function of the server in any design.
  • the system chip may further include at least one memory, and the memory stores related program instructions.
  • an embodiment of the present application provides a computer-readable storage medium, such as a computer non-transitory readable storage medium.
  • a computer program is stored thereon, and when the computer program runs on the computer, the computer is caused to execute any one of the possible methods of the above-mentioned twentieth aspect.
  • the computer may be at least one storage node.
  • embodiments of the present application provide a computer-readable storage medium, such as a non-transitory computer-readable storage medium.
  • a computer program is stored thereon, and when the computer program is run on the computer, the computer is caused to execute any one of the possible methods in the twenty-first aspect.
  • the computer may be at least one storage node.
  • an embodiment of the present application provides a computer-readable storage medium, such as a non-transitory computer-readable storage medium.
  • a computer program is stored thereon, and when the computer program is run on a computer, the computer is caused to execute any one of the possible methods of the above-mentioned 22nd aspect.
  • the computer may be at least one storage node.
  • the embodiments of the present application provide a computer program product, which when running on a computer, enables any method provided in the twentieth aspect to be executed.
  • the computer may be at least one storage node.
  • the embodiments of the present application provide a computer program product, which when running on a computer, causes any method provided in the twenty-first aspect to be executed.
  • the computer may be at least one storage node.
  • the embodiments of the present application provide a computer program product, which when running on a computer, causes any method provided in the twenty-second aspect to be executed.
  • the computer may be at least one storage node.
  • an embodiment of the present application provides an upgrade system, which may include any one or more of the following: such as the communication device in the twenty-third aspect, or the communication in the twenty-fourth aspect The device, or the communication device in the twenty-fifth aspect, or the communication device in the twenty-sixth aspect, or the communication device in the twenty-seventh aspect, or the communication device in the twenty-eighth aspect, Or as the system chip in the twenty-ninth aspect, or as the system chip in the thirtieth aspect, or as the system chip in the thirty-first aspect, or as the computer-readable storage medium in the thirty-second aspect, Or as the computer-readable storage medium in the thirty-third aspect, or as the computer-readable storage medium in the thirty-fourth aspect, or as the computer program product in the thirty-fifth aspect, or as the thirty-sixth aspect The computer program product in the, or the computer program product in the thirty-seventh aspect.
  • any communication device, system chip, computer readable storage medium, computer program product, or upgrade system provided above are all used to execute the corresponding method provided above, and therefore, the benefits that can be achieved are For the effect, please refer to the beneficial effect in the corresponding method, which will not be repeated here.
  • FIG. 1A is a schematic diagram of an upgrade system architecture provided by an embodiment of the application.
  • FIG. 1B is a schematic diagram of the architecture of a vehicle provided by an embodiment of the application.
  • FIG. 2 is a schematic diagram of the hardware structure of a communication device provided by an embodiment of the application.
  • FIG. 3 is a first flowchart of the upgrade method provided by an embodiment of the application.
  • FIG. 4 is a second schematic flowchart of the upgrade method provided by an embodiment of the application.
  • FIG. 5 is a third schematic flowchart of the upgrade method provided by an embodiment of the application.
  • FIG. 6 is a fourth flowchart of the upgrade method provided by an embodiment of the application.
  • FIG. 7 is a first structural diagram of a communication device provided by an embodiment of this application.
  • FIG. 8 is a second structural diagram of a communication device provided by an embodiment of this application.
  • FIG. 9 is a third structural diagram of a communication device provided by an embodiment of this application.
  • FIG. 10 is a schematic diagram of the composition of an upgrade system provided by an embodiment of the application.
  • the upgrade system may include a vehicle 10 and a server 20 (or cloud 30).
  • the vehicle 10 in FIG. 1A may be an intelligent networked car.
  • the vehicle 10 may include multiple devices.
  • the vehicle 10 may include devices such as T-Box, gateway, and ECU.
  • the architecture of the vehicle 10 may be as shown in FIG. 1B.
  • FIG. 1B is a schematic structural diagram of a vehicle 10 provided by an embodiment of the application.
  • the vehicle 10 may include a T-Box 101, a gateway 102, and an ECU 103-ECU 107.
  • the T-Box 101 and the gateway 102 can be connected via Ethernet.
  • the gateway 102 and the ECU can be connected via Ethernet, controller area network (CAN), local interconnect network (LIN), media oriented system transport (MOST) or FlexRay
  • CAN controller area network
  • LIN local interconnect network
  • MOST media oriented system transport
  • FlexRay the gateway 102 and the ECU 103 may be connected through CAN
  • the gateway 102 and the ECU 105 may be connected through LIN.
  • the T-Box 101 in FIG. 1B may have the ability to communicate with external devices of the vehicle 10 and internal devices of the vehicle 10.
  • the external equipment of the vehicle 10 can be described as equipment other than the vehicle 10, for example, the server 20, the cloud 30 in FIG. 1A, or the user's terminal equipment (not shown in FIG. 1A); the internal equipment of the vehicle 10 may be as shown in FIG. 1B
  • the T-Box 101 in FIG. 1B communicates with the internal devices of the vehicle 10 and can be used to send information to the internal devices of the vehicle 10. For example, the T-Box 101 sends upgrade information of multiple devices to the gateway 102.
  • the T-Box 101 communicates with external devices of the vehicle 10 and can be used to receive information from the server 20 or the cloud 30. For example, the T-Box 101 can be used to receive upgrade information from multiple devices on the server 20 or the cloud 30.
  • the T-Box 101 may also have the ability to coordinate the upgrade of the internal equipment of the vehicle 10.
  • T-Box 101 can receive the upgrade information of multiple devices from the server 20 and verify the upgrade of multiple devices After the verification is successful, the upgrade information of the ECU 103 is sent to the ECU 103 through the gateway 102, and the upgrade information of the ECU 105 is sent to the ECU 105 through the gateway 102.
  • the gateway 102 in FIG. 1B is a core component of the vehicle 10, and the gateway 102 can route network data such as CAN, LIN, MOST, or FlexRay in different networks.
  • the gateway 102 may receive the upgrade information from the ECU 103 of the T-Box 101, and send the upgrade information of the ECU 103 to the ECU 103.
  • the gateway 102 may also have the ability to coordinate the upgrade of the internal equipment of the vehicle 10.
  • the gateway 102 can receive the upgrade information of multiple devices from T-Box 101 and verify the upgrade of multiple devices After the verification is successful, the upgrade information of ECU 106 is sent to ECU 106, and the upgrade information of ECU 105 is sent to ECU 105.
  • the ECU in FIG. 1B may be a microcomputer controller of the vehicle 10 and may have the ability to perform preset control functions.
  • the ECU 104 may be used to control the operation of the engine, and the ECU 103 may be used to protect the safety of the vehicle.
  • the ECU in FIG. 1B may also be equipment related to automatic driving.
  • the ECU 105 may be a mobile data center (MDC)
  • the ECU 107 may be a human-machine interaction (HMI) device.
  • the MDC may be an intelligent vehicle-mounted computing platform of the vehicle 10.
  • the HMI may be the infotainment system of the vehicle 10.
  • an OTA node may be deployed on a device in the vehicle 10 (for example, T-Box 101, gateway 102, or ECU 103-ECU 107, etc.).
  • the OTA node may also be called OTA master or OTA manager.
  • the equipment where the OTA node is deployed may have the ability to coordinate the upgrade of the internal equipment of the vehicle 10. Taking the OTA node deployed on the ECU 103, the upgrade information of multiple devices includes the upgrade information of the ECU 106 and the upgrade information of the ECU 105 as an example.
  • the ECU 103 can receive the upgrade information of multiple devices from the server 20 (the ECU 103 can directly from the server 20 Receive the upgrade information of multiple devices, you can also receive the upgrade information of multiple devices from the server 20 through T-Box 101), and verify the upgrade information of multiple devices. After the verification is successful, send the upgrade information of ECU 106 To ECU 106, the upgrade information of ECU 105 is sent to ECU 105.
  • the OTA node may also be deployed on a domain controller (not shown in FIG. 1B) or a vehicle integrated/integration unit (VIU).
  • the domain controller can divide each device in the vehicle into multiple fields according to their functions, and manage each field.
  • Multiple VIUs can form a ring network to achieve high bandwidth (which can be embodied in high-definition cameras, or high-definition displays, etc.), low latency, and high-reliability processing capabilities.
  • the ring network can also simplify vehicle network configuration and upgrade upgrades. Maintain efficiency.
  • the OTA node can also be separately deployed in the vehicle 10, that is, the OTA node can be independent of the T-Box 101, gateway 102, ECU 103-ECU 107 and other equipment, deployed in the vehicle 10, and can be integrated with the T-Box 101, the gateway 102, and the ECU 103-ECU 107.
  • -Box 101, gateway 102, ECU 103-ECU 107 and other equipment communication can be separately deployed in the vehicle 10
  • the OTA node can be independent of the T-Box 101, gateway 102, ECU 103-ECU 107 and other equipment, deployed in the vehicle 10, and can be integrated with the T-Box 101, the gateway 102, and the ECU 103-ECU 107.
  • the vehicle-side executive body of this embodiment of the application is the device. If the OTA node is deployed separately in the vehicle, the vehicle-side executive body of the embodiment of the application is the OTA node .
  • the following embodiments of this application are based on the OTA node deployed on the T-Box or gateway, the first device is the first ECU, and the second device is the second ECU as an example.
  • the OTA node is deployed separately or the OTA node is deployed in a For the situation on the equipment other than the T-Box or the gateway, please refer to the situation that the OTA node is deployed on the T-Box or the gateway, which will not be repeated.
  • the architecture of the vehicle 10 shown in FIG. 1B is only used as an example and is not used to limit the technical solution of the present application.
  • the vehicle 10 may also include other devices, for example, an on-board diagnostic (OBD), or a domain controller, and the gateway may also be determined according to specific needs. , The number of domain controllers and ECUs.
  • OBD on-board diagnostic
  • the gateway may also be determined according to specific needs. , The number of domain controllers and ECUs.
  • the server 20 or the cloud 30 in FIG. 1A may have upgrade information for discovering devices in the vehicle 10 and instructions to upgrade the devices in the vehicle 10. For example, when the server 20 finds the upgrade information of multiple devices in the vehicle 10, it may send the upgrade information of the multiple devices to the vehicle 10.
  • the server 20 or the cloud 30 in FIG. 1A may also have the ability to provide services for devices in the vehicle 10. For example, if the ECU 106 is used for navigation, the server 20 or the cloud 30 can provide the ECU 106 with navigation services.
  • the upgrade system shown in FIG. 1A is only used as an example, and is not used to limit the technical solution of the present application.
  • the upgrade system may also include other equipment, and the number of vehicles 10, servers 20, or clouds 30 may also be determined according to specific needs, which is not limited.
  • each device in FIG. 1B in the embodiment of the present application may be a functional module in one device.
  • the functional module may be a component in a hardware device, a software function running on dedicated hardware, or a virtualization function instantiated on a platform (for example, a cloud platform).
  • each device in FIG. 1B can be implemented by the hardware device 200 in FIG. 2.
  • Fig. 2 shows a schematic diagram of the hardware structure of a hardware device applicable to the embodiments of the present application.
  • the hardware device 200 may include at least one processor 201, a communication line 202, a memory 203, and at least one communication interface 204.
  • the processor 201 may be a general-purpose CPU, a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program of the present application.
  • ASIC application-specific integrated circuit
  • the communication line 202 may include a path for transferring information between the above-mentioned components, such as a bus.
  • the communication interface 204 uses any device such as a transceiver to communicate with other devices or communication networks, such as an Ethernet interface, a radio access network (RAN), and a wireless local area network (wireless local area networks, WLAN) etc.
  • a transceiver to communicate with other devices or communication networks, such as an Ethernet interface, a radio access network (RAN), and a wireless local area network (wireless local area networks, WLAN) etc.
  • RAN radio access network
  • WLAN wireless local area network
  • the memory 203 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, random access memory (RAM), or other types that can store information and instructions
  • the dynamic storage device can also be electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disk storage, optical disc storage (Including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or can be used to carry or store desired program codes in the form of instructions or data structures and can be used by a computer Any other media accessed, but not limited to this.
  • the memory can exist independently and is connected to the processor through the communication line 202.
  • the memory can also be integrated with the processor.
  • the memory provided in the embodiments of the present application may generally be non-volatile.
  • the memory 203 is used to store and execute the computer execution instructions involved in the solution of the present application, and the processor 201 controls the execution.
  • the processor 201 is configured to execute computer-executable instructions stored in the memory 203, so as to implement the method provided in the embodiment of the present application.
  • the computer-executed instructions in the embodiments of the present application may also be referred to as application program codes, which are not specifically limited in the embodiments of the present application.
  • the processor 201 may include one or more CPUs, such as CPU0 and CPU1 in FIG. 2.
  • the hardware device 200 may include multiple processors, such as the processor 201 and the processor 207 in FIG. 2. Each of these processors can be a single-CPU (single-CPU) processor or a multi-core (multi-CPU) processor.
  • the processor here may refer to one or more devices, circuits, and/or processing cores for processing data (for example, computer program instructions).
  • the hardware device 200 may further include an output device 205 and an input device 206.
  • the output device 205 communicates with the processor 201 and can display information in a variety of ways.
  • 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 (projector) Wait.
  • the input device 206 communicates with the processor 201, and can receive user input in a variety of ways.
  • the input device 206 may be a mouse, a keyboard, a touch screen device, a sensor device, or the like.
  • the hardware device 200 may be an embedded device or a device with a similar structure in FIG. 2.
  • the embodiment of the present application does not limit the type of the hardware device 200.
  • upgrade method provided by the embodiments of the present application can be applied to multiple fields, such as: unmanned driving field, autonomous driving field, assisted driving field, intelligent driving field, networked driving field, intelligent networked driving field, Car sharing field, etc.
  • first ECU and other ECUs with different numbers are used only for the convenience of context, and different sequence numbers do not have specific technical meanings.
  • first ECU the second ECU, etc., can be understood It is one or any one of a series of ECUs.
  • the server, cloud, T-Box, gateway, or ECU can perform some or all of the steps in the embodiments of the present application. These steps are only examples, and the embodiments of the present application may also perform other steps or Variations of various steps. In addition, each step may be executed in a different order presented in the embodiment of the present application, and it may not be necessary to perform all the steps in the embodiment of the present application.
  • an upgrade method provided by an embodiment of this application includes step 301-step 305.
  • Step 301 The server sends the upgrade information of multiple devices to the T-Box/gateway.
  • the server may be the server 20 in FIG. 1A, and the T-Box may be the T-Box in the vehicle.
  • the vehicle may be the vehicle 10 in FIG. 1A
  • the T-Box may be the T-Box 101 in FIG. 1B.
  • the gateway may be a gateway in a vehicle, for example, the vehicle may be the vehicle 10 in FIG. 1A, and the gateway may be the gateway 102 in FIG. 1B.
  • server in the embodiment of the present application may be replaced with a cloud, and the cloud may be the cloud 30 in FIG. 1A.
  • the upgrade information of multiple devices may include the upgrade information of one or more devices among the internal devices of the vehicle.
  • the upgrade information of multiple devices may include the upgrade information of the first ECU.
  • the upgrade information of the first ECU may be used to instruct the server to establish the first channel with the first ECU.
  • the first ECU may be any ECU in ECU 103-ECU 107 in FIG. 1B.
  • the upgrade information of the first ECU may indicate the address or identification of the server.
  • the upgrade information of multiple devices may include a set of upgrade information of the first ECU, that is, the upgrade information of multiple devices may include the upgrade information of two or more first ECUs.
  • the embodiment of the present application takes the upgrade information of multiple devices including the upgrade information of the first ECU as an example for introduction. If the upgrade information of multiple devices includes a group of upgrade information of the first ECU, please refer to the following upgrade of multiple devices The information includes an introduction to the upgrade information of the first ECU, which will not be repeated.
  • the upgrade information of the first ECU may include the download address of the upgrade package of the first ECU, and the download address of the upgrade package of the first ECU may indicate the address of the server.
  • the download address of the upgrade package of the first ECU is the uniform resource locator (URL) of the server.
  • the upgrade information of the first ECU may include the download address of the upgrade package of the first ECU and the address of the server.
  • the download address of the upgrade package of the first ECU may be the URL of the resource server where the upgrade package of the first ECU is located.
  • the server may download the upgrade package according to the first ECU. The address downloads the upgrade package of the first ECU from the resource server, and sends the upgrade package of the first ECU to the first ECU.
  • the upgrade information of the first ECU may include instruction information, and the instruction information may be used to indicate the upgrade of the first ECU.
  • the indication information may include the identification of the first ECU and the identification of the server.
  • the upgrade information of the first ECU may also include at least one of the following information: the size of the upgrade package of the first ECU, the download strategy of the upgrade package of the first ECU, and the upgrade of the first ECU The upgrade condition of the package, or the upgrade strategy of the upgrade package of the first ECU.
  • the size of the upgrade package of the first ECU is used to indicate the number of bits occupied by the upgrade package of the first ECU.
  • the download strategy of the upgrade package of the first ECU is used to instruct a rule for downloading the upgrade package of the first ECU.
  • the upgrade condition of the upgrade package of the first ECU is used to indicate the conditions that need to be met for upgrading using the upgrade package of the first ECU.
  • the upgrade strategy of the upgrade package of the first ECU is used to indicate a rule for upgrading according to the upgrade package of the first ECU.
  • the first ECU is an ECU with a larger upgrade package and/or more frequent upgrades.
  • the first ECU is MDC or HMI.
  • the server and the T-Box/gateway establish a second channel.
  • the second channel may be a transport layer security (TLS) channel, a hypertext transfer protocol (hypertext transfer protocol secure, HTTPs) secure channel, or a datagram transport layer security protocol (datagram transport layer security). , DTLS) secure channel, etc.
  • TLS transport layer security
  • HTTPs hypertext transfer protocol secure
  • HTTPs datagram transport layer security
  • DTLS datagram transport layer security
  • the second channel can be used for T-Box/gateway and server communication.
  • the server and the T-Box/gateway can establish a second channel through a handshake. After the second channel is successfully established, the server and the T-Box/gateway can perform encrypted communication.
  • the following takes the server and the T-Box/gateway through four communications to establish the second channel as an example to introduce the process of the server and the T-Box/gateway through the handshake to establish the second channel.
  • establishing a second channel between the server and the T-Box/gateway includes: the server receives the second request information from the T-Box/gateway, where the second request information is used to request the establishment of a second channel with the server; The second request information sends the second request response information to the T-Box/gateway, where the second request response information is used to determine the encryption method of the server and the T-Box/gateway; the server receives the second completion from the T-Box/gateway Information, where the second completion information is used to indicate that the establishment of the second channel between the server and the T-Box/gateway is complete; the server sends the second completion response information to the T-Box/gateway according to the second completion information, where the second completion response The information is used to indicate the completion of the establishment of the second channel between the server and the T-Box/gateway.
  • the second request information may include the encrypted communication protocol version supported by the T-Box/gateway (for example, TLS1.2), the first random number, and the encryption method supported by the T-Box/gateway (for example, asymmetric encryption algorithm (RSA) ) Public key encryption method).
  • the second request information may be named ClientHello request.
  • the second request information may also include a compression method supported by the T-Box/gateway.
  • the second request response information may include the second random number, the certificate of the server, the encrypted communication protocol version and the encryption method determined to be used by the server.
  • the second request response message may be named SeverHello message.
  • the second request response information may include a compression method determined to be used by the server.
  • the server can close the encrypted communication, that is, when the server communicates with the T-Box/gateway, it will not be encrypted.
  • the second request response information may also be used to request the certificate of the T-Box/gateway.
  • the second completion information may include a third random number, a T-Box/gateway code change notification, and a T-Box/gateway handshake end notification.
  • the T-Box/gateway encoding change notification may be used to instruct the T-Box/gateway to use the encryption method determined in the second request response message to send the message after sending the second completion message.
  • the T-Box/gateway handshake end notification can be used to indicate the end of the T-Box/gateway handshake phase.
  • the second completion information may also be the signature of the second request information, the third random number, the T-Box/gateway coding change notification, and the T-Box/gateway handshake end notification according to the digest function (for example, a hash function) After the information.
  • the digest function for example, a hash function
  • the second completion response information may include the encoding change notification of the server and the end notification of the server handshake.
  • the server encoding change notification may be used to instruct the server to send the information using the encryption method determined in the second request response information after sending the second completion response information.
  • the server handshake end notification can be used to indicate the end of the server's handshake phase.
  • the server may generate the first session key according to the encryption method determined in the first random number, the second random number, the third random number, and the second request response information. Subsequently, the server can use the first session key to encrypt the information sent to the T-Box/gateway, or the server can use the first session key to decrypt the information from the T-Box/gateway.
  • the server finds that there are devices to be upgraded among the internal devices of the vehicle, and the server sends the upgrade information of multiple devices to the T-Box/gateway.
  • the server 20 receives the instruction information from the OEM system, and the instruction information is used to instruct the server 20 to notify the vehicle 10 to upgrade the internal equipment of the vehicle 10, and the server 20 sends T -Box 101/gateway 102 sends the upgrade information of multiple devices.
  • the server sends the upgrade information of multiple devices to the T-Box/gateway, including: the server signs the upgrade information of the multiple devices to obtain the signed upgrade information of the multiple devices; the server signs the upgraded information of the multiple devices; The upgrade information of the multiple devices is encrypted to obtain the encrypted upgrade information of the multiple devices; the server sends the encrypted upgrade information of the multiple devices to the T-Box/gateway.
  • the server signing the upgrade information of the multiple devices may include: the server signing the upgrade information of the multiple devices with one layer, or the server signing the upgrade information of the multiple devices with two layers.
  • the server signs the upgrade information of the multiple devices at one level, including: the server signs the upgrade information of the multiple devices.
  • the server signs the upgrade information of the first ECU according to the first digest function (for example, a hash function), and obtains the first signed first ECU.
  • the server uses the first session key to encrypt the signed upgrade information of the first ECU to obtain the encrypted upgrade information of the first ECU; the server sends the encrypted first ECU to the T-Box/gateway Upgrade information.
  • the first digest function for example, a hash function
  • the server performs a two-layer signature on the upgrade information of the multiple devices, including: the server signs the upgrade information of each device in the upgrade information of the multiple devices, and obtains the upgraded information after the signature of the multiple devices; The server signs the signed upgrade information of multiple devices.
  • the server signs the upgrade information of the first ECU according to the second digest function to obtain the first signature information; the server signs the upgrade information of the first ECU according to the second digest function; The first signature information is signed to obtain the second signature information; the server uses the first session key to encrypt the second signature information to obtain the encrypted second signature information; the server sends the encrypted second signature information to the T-Box/gateway Signature information.
  • the first summary function and the second summary function may be the same or different.
  • Step 302 The T-Box/gateway receives the upgrade information of multiple devices from the server, and sends the upgrade information of the first ECU to the first ECU according to the upgrade information of the first ECU.
  • the T-Box/gateway and the server establish a second channel.
  • the T-Box/gateway and the server can establish a second channel through a handshake. After the second channel is successfully established, the T-Box/gateway and the server can perform encrypted communication.
  • the following takes the T-Box/gateway and server to establish the second channel through four communications as an example to introduce the process of T-Box/gateway and the server to establish the second channel through handshake.
  • the establishment of a second channel between the T-Box/gateway and the server includes: the T-Box/gateway sends second request information to the server, where the second request information is used to request the establishment of a second channel with the server; T-Box /The gateway receives the second request response information from the server, where the second request response information is used to determine the encryption method between the server and the T-Box/gateway; the T-Box/gateway sends the second completion information to the server, where the second The completion information is used to indicate the completion of the establishment of the second channel between the server and the T-Box/gateway; the T-Box/gateway receives the second completion response information from the server, and the second completion response information is used to indicate the server and the T-Box/gateway.
  • the second channel of the gateway is established.
  • the first session key may be generated according to the encryption method determined in the first random number, the second random number, the third random number, and the second request response information. Subsequently, the T-Box/gateway can use the first session key to encrypt the information sent to the server, or the T-Box/gateway can use the first session key to decrypt the information from the server.
  • the T-Box/gateway sends the upgrade information of the first ECU to the first ECU according to the upgrade information of the first ECU, including: after the T-Box/gateway verifies the upgrade information of the multiple devices successfully, according to the first ECU An ECU upgrade information, and the first ECU upgrade information is sent to the first ECU.
  • the T-Box/gateway uses the first session key to decrypt the upgrade information of the first ECU to obtain the decrypted upgrade information of the first ECU Information:
  • the T-Box/gateway verifies the decrypted upgrade information of the first ECU according to the first digest function, and after successful verification, sends the decrypted upgrade information of the first ECU to the first ECU.
  • the T-Box/gateway decrypts the upgrade information of the first ECU through the first session key to obtain the decrypted upgrade information of the first ECU Information:
  • the T-Box/gateway verifies the decrypted upgrade information of the first ECU according to the first digest function, and after successful verification, sends the decrypted upgrade information of the first ECU to the first ECU.
  • the T-Box/gateway if the T-Box/gateway fails to verify the upgrade information of the multiple devices, the T-Box/gateway sends a verification failure message to the server, and the verification failure message is used to indicate that the T-Box/gateway verification fails.
  • Step 303 The first ECU receives the upgrade information of the first ECU from the T-Box/gateway, and establishes a first channel with the server according to the upgrade information of the first ECU.
  • the first ECU can be based on the upgrade package of the first ECU.
  • the download address determines the server, and establishes the first channel with the server.
  • the first ECU may send the download address of the upgrade package of the first ECU to the server, so that the server sends the upgrade package of the first ECU to the first ECU according to the download address of the upgrade package of the first ECU.
  • the first ECU may determine the server according to the address of the server, and establish a first channel with the server. Subsequently, the first ECU may send the download address of the upgrade package of the first ECU to the server, so that the server sends the upgrade package of the first ECU to the first ECU according to the download address of the upgrade package of the first ECU.
  • the upgrade information of the first ECU includes indication information
  • the indication information includes the identification of the first ECU and the identification of the server
  • the first ECU determines the server according to the identification of the server, and establishes the first channel with the server .
  • the first ECU may send the identification of the first ECU to the server, so that the server sends the upgrade package of the first ECU to the first ECU according to the identification of the first ECU.
  • the first ECU establishes a first channel with the server according to the upgrade information of the first ECU, including: the first ECU is verifying the upgrade information of the first ECU After success, establish the first channel with the server according to the upgrade information of the first ECU. For example, the first ECU verifies the upgrade information of the first ECU according to the second digest function, and after successful verification, establishes a first channel with the server according to the upgrade information of the first ECU.
  • the T-Box/gateway can also verify the upgrade information of the first ECU and send the first ECU to the first ECU after successful verification.
  • the upgrade information of the ECU In this way, the first ECU does not need to verify the upgrade information of the first ECU.
  • the first ECU if the first ECU fails to verify the upgrade information of the first ECU, the first ECU sends verification failure information to the server, and the verification failure information is used to indicate that the first ECU fails to verify.
  • the first channel can be a TLS channel, an HTTPs secure channel, or a DTLS secure channel, etc.
  • the first channel can be used for communication between the first ECU and the server.
  • the first ECU and the server can establish the first channel through a handshake. After the first channel is successfully established, the first ECU and the server can perform encrypted communication.
  • the following takes the first ECU and the server to establish the first channel through four communications as an example to introduce the process of establishing the first channel through the handshake between the first ECU and the server.
  • establishing the first channel between the first ECU and the server includes: the first ECU sends the first request information to the server according to the first request information, where the first request information is used to request the establishment of the first channel with the server; the first ECU receives from the server The first request response information, where the first request response information is used to determine the encryption method between the server and the first ECU; the first ECU sends the first completion information to the server, where the first completion information is used to indicate the first ECU and The establishment of the first channel of the server is completed; the first ECU receives the first completion response information from the server, where the first completion response information is used to indicate that the establishment of the first channel between the first ECU and the server is completed.
  • the first request information may include an encrypted communication protocol version supported by the first ECU (for example, TLS 1.2), a fourth random number, and an encryption method supported by the first ECU (for example, asymmetric encryption algorithm (RSA) public key encryption method) ).
  • the first request information can be named ClientHello request.
  • the first request information may also include a compression method supported by the first ECU.
  • the first request response information may include the fifth random number, the certificate of the server, the encrypted communication protocol version and encryption method determined to be used by the server.
  • the first request response message may be named SeverHello message.
  • the first request response information may include a compression method determined to be used by the server.
  • the server can close the encrypted communication, that is, when the subsequent server communicates with the first ECU, encryption is not performed.
  • the first request response information may also be used to request the certificate of the first ECU.
  • the first completion information may include the sixth random number, the first ECU code change notification, and the first ECU handshake end notification.
  • the first ECU encoding change notification may be used to instruct the first ECU to use the encryption method determined in the first request response message to send the information after sending the first completion message.
  • the first ECU handshake end notification may be used to indicate the end of the handshake phase of the first ECU.
  • the first completion information may also be information obtained after signing the first request information, the sixth random number, the first ECU encoding change notification, and the first ECU handshake completion notification according to a digest function (for example, a hash function).
  • a digest function for example, a hash function
  • the first completion response information may include the encoding change notification of the server and the end notification of the server handshake.
  • the server encoding change notification may be used to instruct the server to send the information using the encryption method determined in the first request response information after sending the first completion response information.
  • the server handshake end notification can be used to indicate the end of the server's handshake phase.
  • the server may generate the second session key according to the encryption method determined in the fourth random number, the fifth random number, the sixth random number, and the first request response information. Subsequently, the server may use the second session key to encrypt the information sent to the first ECU, or the server may use the first session key to decrypt the information from the first ECU.
  • each first ECU may establish a first channel with the server according to the upgrade information of the ECU.
  • Step 304 The server establishes a first channel with the first ECU, and sends the upgrade package of the first ECU to the first ECU through the first channel.
  • the server and the first ECU can establish the first channel through a handshake. After the first channel is successfully established, the server and the first ECU can perform encrypted communication.
  • the following takes the server and the first ECU to establish the first channel through four communications as an example to introduce the process of establishing the first channel by the server and the first ECU through handshake.
  • establishing the first channel between the server and the first ECU includes: the server receives the first request information from the first ECU, where the first request information is used to request the establishment of the first channel with the server; the server according to the first request information Send the first request response information to the first ECU, where the first request response information is used to determine the encryption method between the server and the first ECU; the server receives the first completion information from the first ECU, where the first completion information is used for Indicate the completion of the establishment of the first channel between the server and the first ECU; the server sends the first completion response information to the first ECU according to the first completion information, where the first completion response information is used to instruct the server and the first ECU to establish the first channel carry out.
  • the server can establish a first channel with each first ECU, and send the first channel to the ECU corresponding to the first channel through the first channel. Send the ECU upgrade package.
  • the server sends the upgrade package of the first ECU to the first ECU through the first channel, including: the server signs the upgrade package of the first ECU to obtain the signed upgrade package of the first ECU; the server signs the upgrade package of the first ECU; The upgrade package of the first ECU is encrypted to obtain the encrypted upgrade package of the first ECU; the server sends the encrypted upgrade package of the first ECU to the first ECU through the first channel.
  • the server signs the upgrade package of the first ECU according to the first digest function to obtain the signed upgrade package of the first ECU;
  • the server uses the second session key to encrypt the signed upgrade package of the first ECU to obtain the encrypted upgrade package of the first ECU;
  • the server sends the encrypted upgrade package of the first ECU to the first ECU through the first channel .
  • Step 305 The first ECU receives the upgrade package of the first ECU from the server through the first channel, and performs the upgrade according to the upgrade package of the first ECU.
  • the upgrade of the first ECU according to the upgrade package of the first ECU includes: the first ECU performs the upgrade according to the upgrade package of the first ECU after successfully verifying the signature of the upgrade package of the first ECU.
  • the first ECU uses the second session key to decrypt the upgrade package of the first ECU to obtain the decrypted upgrade package of the first ECU ;
  • the first ECU verifies the decrypted upgrade package of the first ECU according to the first digest function, and after successful verification, performs the upgrade according to the upgrade package of the first ECU.
  • the upgrade of the first ECU according to the upgrade package of the first ECU includes: the first ECU installs the upgrade package of the first ECU.
  • the server can send the upgrade information of multiple devices to the T-Box/gateway.
  • the T-Box/gateway receives the upgrade information of multiple devices from the server, and according to the upgrade information of the first ECU,
  • the first ECU sends the upgrade information of the first ECU, the first ECU receives the upgrade information of the first ECU from the T-Box/gateway, and establishes the first channel with the server according to the upgrade information of the first ECU, and the server can pass through the first channel Send the upgrade package of the first ECU to the first ECU.
  • the first ECU receives the upgrade package of the first ECU from the server and performs the upgrade according to the upgrade package of the first ECU. In this way, the first ECU does not need to be downloaded through the T-Box/gateway.
  • the ECU upgrade package can improve the upgrade efficiency and download speed, and reduce the load and storage requirements of the T-Box/gateway.
  • the upgrade information of multiple devices may also include the upgrade information of the second ECU, and/or the upgrade information of the gateway, and/or the upgrade information of the T-Box, the T-Box/gateway may be based on multiple
  • the upgrade information of the device sends the upgrade information of the device to the corresponding device. After the device receives the upgrade information of the device, it can upgrade according to the upgrade information of the device.
  • the following takes the upgrade information of multiple devices including the upgrade information of the second ECU as an example to introduce the upgrade method provided in the embodiment of the present application.
  • the upgrade information of multiple devices includes the upgrade information of the gateway and/or the upgrade information of the T-Box.
  • the method shown in Figure 4 below please refer to the method shown in Figure 4 below, which will not be repeated.
  • the upgrade information of multiple devices may also include the upgrade information of the second ECU.
  • the T-Box/gateway may send the upgrade information of the second ECU to the second ECU according to the upgrade information of the second ECU, and the second ECU receives the upgrade information of the second ECU. Upgrade information from the second ECU, and upgrade according to the upgrade information of the second ECU. Exemplarily, as shown in FIG. 4, the method shown in FIG. 3 further includes step 401 and step 402.
  • Step 401 The T-Box/gateway sends the upgrade information of the second ECU to the second ECU.
  • the second ECU may be any ECU in ECU 103-ECU 107 in FIG. 1B.
  • the second ECU is different from the first ECU.
  • the upgrade information of the second ECU may include an upgrade package of the second ECU.
  • the second ECU is an ECU with a smaller upgrade package and/or infrequent upgrades.
  • Step 402 The second ECU receives the upgrade information of the second ECU from the T-Box/gateway, and performs the upgrade according to the upgrade information of the second ECU.
  • the upgrade of the second ECU according to the upgrade information of the second ECU includes: the second ECU installs the upgrade package of the second ECU.
  • step 401-step 402 may be executed first, and then step 302-step 305 may be executed.
  • step 302 to step 305 can be performed first, and then step 401 to step 402 can be performed, or step 302 to step 305 and step 401 to step 402 can be performed at the same time.
  • the T-Box/gateway can send the upgrade information of the second ECU to the second ECU, and the second ECU receives the upgrade information from the T-Box. /The upgrade information of the second ECU of the gateway, and upgrade according to the upgrade information of the second ECU. In this way, the T-Box/gateway can also assist in the upgrade of the second ECU.
  • the upgrade information of multiple devices including the upgrade information of the first ECU and the upgrade information of the second ECU is taken as an example to introduce the upgrade method provided by the embodiment of the present application.
  • the upgrade method includes step 501-step 508.
  • Step 501 The server sends upgrade information of multiple devices to the T-Box.
  • the server may be the server 20 in FIG. 1A, and the T-Box may be the T-Box in the vehicle.
  • the vehicle may be the vehicle 10 in FIG. 1A
  • the T-Box may be the T-Box 101 in FIG. 1B. .
  • server in the embodiment of the present application may be replaced with a cloud, and the cloud may be the cloud 30 in FIG. 1A.
  • the upgrade information of the multiple devices may include the upgrade information of the first ECU and the upgrade information of the second ECU.
  • first ECU and the upgrade information of the first ECU reference may be made to the introduction of the first ECU and the upgrade information of the first ECU in the method shown in FIG. 3, which will not be repeated.
  • second ECU and the upgrade information of the second ECU reference may be made to the introduction of the second ECU and the upgrade information of the second ECU in the method shown in FIG. 4, which will not be repeated.
  • the server establishes a second channel with the T-Box.
  • establishing the second channel between the server and the T-Box please refer to the introduction of establishing the second channel between the server and the T-Box/gateway in step 301 above, which will not be repeated.
  • the server finds that the first ECU and the second ECU need to be upgraded, and the server sends upgrade information of multiple devices to the T-Box.
  • the server 20 receives instruction information from the OEM system.
  • the instruction information is used to instruct the server 20 to notify the first ECU and the second ECU to upgrade, and the server 20 sends T- Box 101 sends the upgrade information of multiple devices.
  • the server sends the upgrade information of multiple devices to the T-Box, including: the server signs the upgrade information of the multiple devices to obtain the signed upgrade information of the multiple devices;
  • the upgrade information of each device is encrypted to obtain the encrypted upgrade information of multiple devices; the server sends the encrypted upgrade information of multiple devices to the T-Box.
  • the server signing the upgrade information of the multiple devices may include: the server signing the upgrade information of the multiple devices with one layer, or the server signing the upgrade information of the multiple devices with two layers.
  • the server signing the upgrade information of the multiple devices at one level includes: the server signing the upgrade information of the multiple devices.
  • the server signs the upgrade information of the first ECU and the upgrade information of the second ECU according to a first digest function (for example, a hash function) .
  • a first digest function for example, a hash function
  • the server uses the first session key to encrypt the signed upgrade information of the first ECU and the second ECU to obtain the encrypted
  • the server sends the encrypted upgrade information of the first ECU and the upgrade information of the second ECU to the T-Box.
  • the server performs a two-layer signature on the upgrade information of the multiple devices, including: the server signs the upgrade information of each device in the upgrade information of the multiple devices, and obtains the upgraded information after the signature of the multiple devices; The server signs the signed upgrade information of multiple devices.
  • the server signs the upgrade information of the first ECU according to the second digest function to obtain the first signature information; the server signs the upgrade information of the first ECU according to the third digest function; Sign the upgrade information of the second ECU to obtain the second signature information; the server signs the first signature information and the second signature information according to the first digest function to obtain the third signature information; the server uses the first session key to pair the third signature information
  • the signature information is encrypted to obtain the encrypted third signature information; the server sends the encrypted third signature information to the T-Box.
  • the first summary function, the second summary function, and the third summary function may be the same or different.
  • Step 502 T-Box receives upgrade information of multiple devices from the server.
  • the T-Box before the T-Box receives the upgrade information of multiple devices from the server, the T-Box establishes a second channel with the server.
  • the establishment of the second channel between the T-Box and the server please refer to the introduction of the establishment of the second channel between the T-Box/gateway and the server in step 302, which will not be repeated.
  • T-Box after T-Box receives the upgrade information of multiple devices from the server, it can verify the upgrade information of multiple devices. If the verification is successful, T-Box sends to each of the multiple devices. The upgrade information corresponding to the device; if the verification fails, the T-Box sends a verification failure message to the server, and the verification failure message is used to indicate that the T-Box verification fails.
  • T-Box decrypts the upgrade information of the first ECU and the upgrade information of the second ECU to obtain the decrypted upgrade information of the first ECU And the decrypted upgrade information of the second ECU; T-Box verifies the decrypted upgrade information of the first ECU and the decrypted upgrade information of the second ECU according to the first digest function, and after the verification is successful, it sends to the first ECU Send the decrypted upgrade information of the first ECU, and send the decrypted upgrade information of the second ECU to the second ECU.
  • T-Box decrypts the upgrade information of the first ECU and the upgrade information of the second ECU to obtain the decrypted upgrade information of the first ECU And the decrypted upgrade information of the second ECU; T-Box verifies the decrypted upgrade information of the first ECU and the decrypted upgrade information of the second ECU according to the first digest function, and after the verification is successful, it sends to the first ECU Send the decrypted upgrade information of the first ECU; verify the decrypted upgrade information of the second ECU according to the third digest function, if the decrypted upgrade information of the second ECU is successfully verified, send the decrypted second ECU to the second ECU ECU upgrade information.
  • Step 503 The T-Box sends the upgrade information of the first ECU to the first ECU according to the upgrade information of the first ECU.
  • the T-Box sends the upgrade information of the first ECU to the first ECU according to the upgrade information of the first ECU, including that the T-Box forwards the upgrade information of the first ECU to the first ECU via the gateway (transparent transmission) according to the upgrade information of the first ECU. ) Upgrade information of the first ECU.
  • the gateway may be the gateway 102 in FIG. 1B.
  • Step 504 The first ECU receives the upgrade information of the first ECU from the T-Box, and establishes a first channel with the server according to the upgrade information of the first ECU.
  • the first ECU receiving the upgrade information of the first ECU from the T-Box includes that the first ECU receives the upgrade information from the first ECU of the T-Box through a gateway.
  • step 303 For the specific introduction of establishing the first channel between the first ECU and the server according to the upgrade information of the first ECU, reference may be made to the description in step 303 above, which will not be repeated.
  • Step 505 The server establishes a first channel with the first ECU, and sends the upgrade package of the first ECU to the first ECU through the first channel.
  • Step 506 The first ECU receives the upgrade package of the first ECU from the server through the first channel, and performs the upgrade according to the upgrade package of the first ECU.
  • step 505 For the specific introduction of step 505 to step 506, please refer to the description of step 304 to step 305 above, and will not be repeated.
  • Step 507 The T-Box sends the upgrade information of the second ECU to the second ECU.
  • Step 508 The second ECU receives the upgrade information of the second ECU from the T-Box, and performs the upgrade according to the upgrade information of the second ECU.
  • step 507 For the specific introduction of step 507 to step 508, reference may be made to the description in step 401 to step 402 above, and will not be repeated.
  • the embodiment of the present application does not limit the execution order of step 503-step 506 and step 507-step 508.
  • the embodiment of the present application may perform step 503-step 506 first, and then perform step 507-step 508.
  • Step 507-step 508 can be performed first, and then step 503-step 506 can be performed, or step 503-step 506 and step 507-step 508 can be performed at the same time.
  • the server can send the upgrade information of multiple devices to the T-Box.
  • the T-Box receives the upgrade information of multiple devices from the server and sends it to the first ECU according to the upgrade information of the first ECU.
  • Upgrade information of the first ECU The first ECU receives the upgrade information of the first ECU from the T-Box, and establishes the first channel with the server according to the upgrade information of the first ECU.
  • the server can send the first channel to the first ECU through the first channel.
  • An ECU upgrade package The first ECU receives the upgrade package of the first ECU from the server and performs the upgrade according to the upgrade package of the first ECU.
  • the T-Box sends the second ECU's upgrade information to the second ECU according to the upgrade information of the second ECU.
  • Upgrade information the second ECU receives the upgrade information of the second ECU from the second ECU of the T-Box, and performs the upgrade according to the upgrade information of the second ECU, so that the second ECU can download the upgrade of the second ECU through the T-Box
  • the first ECU does not need to download the upgrade package of the first ECU through the T-Box, which improves the upgrade efficiency and download speed, and reduces the load and storage requirements of the T-Box.
  • the gateway has the ability to coordinate the upgrade of the internal equipment of the vehicle, and the upgrade information of multiple devices includes the upgrade information of the first ECU and the upgrade information of the second ECU as an example to introduce the upgrade method provided by the embodiment of the present application.
  • the upgrade method includes step 601-step 608.
  • Step 601 The server sends upgrade information of multiple devices to the gateway.
  • the server may be the server 20 in FIG. 1A, and the gateway may be a gateway in a vehicle.
  • the vehicle may be the vehicle 10 in FIG. 1A
  • the gateway may be the gateway 102 in FIG. 1B.
  • server in the embodiment of the present application may be replaced with a cloud, and the cloud may be the cloud 30 in FIG. 1A.
  • the upgrade information of the multiple devices may include the upgrade information of the first ECU and the upgrade information of the second ECU.
  • first ECU and the upgrade information of the first ECU reference may be made to the introduction of the first ECU and the upgrade information of the first ECU in the method shown in FIG. 3, which will not be repeated.
  • second ECU and the upgrade information of the second ECU reference may be made to the introduction of the second ECU and the upgrade information of the second ECU in the method shown in FIG. 4, which will not be repeated.
  • the server sends the upgrade information of multiple devices to the gateway, including: the server sends the upgrade information of multiple devices to the T-Box, the T-Box receives the upgrade information of multiple devices from the server, and combines the multiple devices
  • the upgrade information is forwarded (transparently transmitted) to the gateway.
  • the server before the server sends the upgrade information of multiple devices to the T-Box, the server establishes a second channel with the T-Box.
  • establishing the second channel between the server and the T-Box please refer to the introduction of establishing the second channel between the server and the T-Box/gateway in step 301 above, which will not be repeated.
  • the T-Box before the T-Box receives the upgrade information of multiple devices from the server, the T-Box establishes a second channel with the server.
  • the establishment of the second channel between the T-Box and the server please refer to the introduction of the establishment of the second channel between the T-Box/gateway and the server in step 302, which will not be repeated.
  • the server finds that the first ECU and the second ECU need to be upgraded, and the server sends upgrade information of multiple devices to the gateway.
  • the server 20 receives instruction information from the OEM system, and the instruction information is used to instruct the server 20 to notify the first ECU and the second ECU to upgrade, and the server 20 sends the gateway 102 Send upgrade information for multiple devices.
  • the server sends the upgrade information of multiple devices to the gateway, including: the server signs the upgrade information of the multiple devices to obtain the signed upgrade information of the multiple devices; the server signs the multiple devices Encrypt the upgrade information of multiple devices to obtain the encrypted upgrade information of multiple devices; the server sends the encrypted upgrade information of multiple devices to the gateway.
  • the server signing the upgrade information of the multiple devices may include: the server signing the upgrade information of the multiple devices with one layer, or the server signing the upgrade information of the multiple devices with two layers.
  • the server signs the upgrade information of the multiple devices at one level, including: the server signs the upgrade information of the multiple devices.
  • the server signs the upgrade information of the first ECU and the upgrade information of the second ECU according to a first digest function (for example, a hash function) .
  • a first digest function for example, a hash function
  • the server uses the first session key to encrypt the signed upgrade information of the first ECU and the second ECU to obtain the encrypted
  • the server sends the encrypted upgrade information of the first ECU and the upgrade information of the second ECU to the gateway.
  • the server performs a two-layer signature on the upgrade information of the multiple devices, including: the server signs the upgrade information of each device in the upgrade information of the multiple devices, and obtains the upgraded information after the signature of the multiple devices; The server signs the signed upgrade information of multiple devices.
  • the server signs the upgrade information of the first ECU according to the second digest function to obtain the first signature information; the server signs the upgrade information of the first ECU according to the third digest function; Sign the upgrade information of the second ECU to obtain the second signature information; the server signs the first signature information and the second signature information according to the first digest function to obtain the third signature information; the server uses the first session key to pair the third signature information
  • the signature information is encrypted to obtain the encrypted third signature information; the server sends the encrypted third signature information to the gateway.
  • the first summary function, the second summary function, and the third summary function may be the same or different.
  • Step 602 The gateway receives upgrade information of multiple devices from the server.
  • the gateway receives the upgrade information of multiple devices from the server, including: the gateway receives the upgrade information of multiple devices from the T-Box.
  • the gateway can verify the upgrade information of the multiple devices. If the verification is successful, the gateway sends the corresponding device to each of the multiple devices. Upgrade information; if the verification fails, the gateway sends a verification failure message to the server, and the verification failure message is used to indicate that the gateway verification fails.
  • the gateway decrypts the upgrade information of the first ECU and the upgrade information of the second ECU to obtain the decrypted upgrade information and decryption of the first ECU.
  • the gateway verifies the decrypted upgrade information of the first ECU and the decrypted second ECU according to the first digest function, and after successful verification, sends the decrypted upgrade information to the first ECU
  • the upgrade information of the first ECU sends the decrypted upgrade information of the second ECU to the second ECU.
  • the gateway decrypts the upgrade information of the first ECU and the upgrade information of the second ECU to obtain the decrypted upgrade information and decryption of the first ECU.
  • the gateway After the upgrade information of the second ECU; the gateway verifies the decrypted upgrade information of the first ECU and the decrypted second ECU according to the first digest function, and after successful verification, sends the decrypted upgrade information to the first ECU Upgrade information of the first ECU; verify the decrypted upgrade information of the second ECU according to the third digest function, if the decrypted upgrade information of the second ECU is verified successfully, send the decrypted upgrade information of the second ECU to the second ECU .
  • Step 603 The gateway sends the upgrade information of the first ECU to the first ECU according to the upgrade information of the first ECU.
  • Step 604 The first ECU receives the upgrade information of the first ECU from the gateway, and establishes a first channel with the server according to the upgrade information of the first ECU.
  • step 604 For the specific introduction of step 604, reference may be made to the description in step 303 above, which will not be repeated.
  • Step 605 The server establishes a first channel with the first ECU, and sends the upgrade package of the first ECU to the first ECU through the first channel.
  • Step 606 The first ECU receives the upgrade package of the first ECU from the server through the first channel, and performs the upgrade according to the upgrade package of the first ECU.
  • step 605 For the specific introduction of step 605 to step 606, reference may be made to the description in step 304 to step 305 above, and will not be repeated.
  • Step 607 The gateway sends the upgrade information of the second ECU to the second ECU.
  • Step 608 The second ECU receives the upgrade information of the second ECU from the gateway, and performs the upgrade according to the upgrade information of the second ECU.
  • step 607 For the specific introduction of step 607 to step 608, reference may be made to the description of step 401 to step 402 above, and will not be repeated.
  • the embodiment of the present application does not limit the execution order of step 603-step 606 and step 607-step 608.
  • the embodiment of the present application may perform step 603-step 606 first, and then perform step 607-step 608.
  • Step 607-step 608 can be performed first, and then step 603-step 606 can be performed, or step 603-step 606 and step 607-step 608 can be performed at the same time.
  • the server can send the upgrade information of multiple devices to the gateway.
  • the gateway receives the upgrade information of multiple devices from the server, and sends the upgrade information of the first ECU to the first ECU according to the upgrade information of the first ECU.
  • Upgrade information the first ECU receives the upgrade information of the first ECU from the gateway, and establishes a first channel with the server according to the upgrade information of the first ECU, and the server can send the upgrade package of the first ECU to the first ECU through the first channel,
  • the first ECU receives the upgrade package of the first ECU from the server and performs the upgrade according to the upgrade package of the first ECU.
  • the gateway sends the upgrade information of the second ECU to the second ECU according to the upgrade information of the second ECU, and the second ECU receives the upgrade information from the second ECU.
  • the upgrade information of the second ECU of the second ECU of the gateway is upgraded according to the upgrade information of the second ECU.
  • the second ECU can download the upgrade package of the second ECU through the gateway and perform the upgrade.
  • the first ECU can There is no need to download the upgrade package of the first ECU through the gateway, which improves the upgrade efficiency and download speed, and reduces the load and storage requirements of the gateway.
  • the server, cloud, T-Box, gateway, or first ECU, etc. include hardware structures and/or software modules corresponding to each function.
  • the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed by hardware or computer software-driven hardware depends on the specific application and design constraints of the technical solution. Professionals and technicians can use different methods for each specific application to implement the described functions, but such implementation should not be considered beyond the scope of this application.
  • the embodiments of the present application can divide the server, cloud, T-Box, gateway, or first ECU into functional modules according to the above method examples.
  • each functional module can be divided corresponding to each function, or two or more
  • the functions are integrated in a processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or software functional modules. It should be noted that the division of modules in the embodiments of the present application is illustrative, and is only a logical function division, and there may be other division methods in actual implementation.
  • FIG. 7 shows a schematic structural diagram of a communication device 70.
  • the communication device 70 may be a chip or a system on a chip in the first ECU, or other combination devices, components, etc. that can realize the functions of the first ECU.
  • the communication device 70 may be used to implement the functions of the first ECU involved in the above embodiments.
  • the communication device 70 shown in FIG. 7 includes: a receiving module 701 and a processing module 702.
  • the receiving module 701 is used to receive the upgrade information of the communication device 70 from the car box or the gateway.
  • the processing module 702 is configured to establish a first channel with the server according to the upgrade information of the communication device 70.
  • the receiving module 701 is further configured to receive the upgrade package of the communication device 70 from the server through the first channel.
  • the processing module 702 is also used for upgrading according to the upgrade package of the communication device 70.
  • the first channel is a transmission layer security channel, a hypertext transmission security protocol security channel, or a data packet transmission layer security protocol security channel.
  • the processing module 702 is specifically configured to send first request information to the server, where the first request information is used to request the establishment of the first channel with the server; the processing module 702 is also specifically configured to receive information from the server The first request response information is used to determine the encryption method between the server and the first ECU; the processing module 702 is also specifically used to send the first completion information to the server, where the first completion information is A completion message is used to indicate the completion of the establishment of the first channel between the communication device 70 and the server; the processing module 702 is also specifically configured to receive first completion response information from the server, where the first completion response information is used to indicate The establishment of the first channel between the communication device 70 and the server is completed.
  • the upgrade information of the communication device 70 includes the download address of the upgrade package of the communication device 70.
  • the upgrade information of the communication device 70 includes instruction information, and the instruction information is used to instruct the communication device 70 to be upgraded.
  • processing module 702 is specifically configured to perform the upgrade according to the upgrade package of the first ECU after the signature of the upgrade package of the first ECU is successfully verified.
  • the communication device 70 is presented in the form of dividing various functional modules in an integrated manner.
  • the "module” here can refer to a specific ASIC, circuit, processor and memory that executes one or more software or firmware programs, integrated logic circuit, and/or other devices that can provide the above-mentioned functions.
  • the communication device 70 may adopt the form shown in FIG. 2.
  • the processor 201 in FIG. 2 may invoke the computer execution instructions stored in the memory 203 to cause the communication device 70 to execute the upgrade method in the foregoing method embodiment.
  • the functions/implementation process of the receiving module 701 and the processing module 702 in FIG. 7 may be implemented by the processor 201 in FIG. 2 calling a computer execution instruction stored in the memory 203.
  • the function/implementation process of the processing module 702 in FIG. 7 may be implemented by the processor 201 in FIG. 2 calling a computer execution instruction stored in the memory 203, and the function/implementation process of the receiving module 701 in FIG. 2 in the communication interface 204 to achieve.
  • the communication device 70 provided in this embodiment can perform the above-mentioned upgrade method, the technical effects that can be obtained can refer to the above-mentioned method embodiment, and will not be repeated here.
  • FIG. 8 shows a schematic structural diagram of a communication device 80.
  • the communication device 80 may be a chip or a system-on-a-chip in the T-Box/gateway, or other combination devices, components, etc. that can realize the above-mentioned T-Box/gateway function.
  • the communication device 80 may be used to implement the above-mentioned embodiments. T-Box/gateway function.
  • the communication device 80 shown in FIG. 8 includes: a receiving module 801 and a sending module 802.
  • the receiving module 801 is configured to receive upgrade information of multiple devices from the server, where the upgrade information of the multiple devices includes the upgrade information of the first electronic control unit ECU, and the upgrade information of the first ECU is used to indicate the first electronic control unit ECU.
  • the ECU establishes the first channel with the server.
  • the sending module 802 is configured to send the upgrade information of the first ECU to the first ECU according to the upgrade information of the first ECU.
  • the first channel is a transmission layer security channel, a hypertext transmission security protocol security channel, or a data packet transmission layer security protocol security channel.
  • the upgrade information of the first ECU includes a download address of the upgrade package of the first ECU.
  • the upgrade information of the first ECU includes instruction information, and the instruction information is used to instruct to upgrade the first ECU.
  • the upgrade information of the multiple devices further includes an upgrade package of the second ECU; the sending module 802 is further configured to send the upgrade package of the second ECU to the second ECU.
  • the communication device 80 is presented in the form of dividing various functional modules in an integrated manner.
  • the "module” here can refer to a specific ASIC, circuit, processor and memory that executes one or more software or firmware programs, integrated logic circuit, and/or other devices that can provide the above-mentioned functions.
  • the communication device 80 may adopt the form shown in FIG. 2.
  • the processor 201 in FIG. 2 may invoke the computer execution instructions stored in the memory 203 to cause the communication device 80 to execute the upgrade method in the foregoing method embodiment.
  • the functions/implementation process of the receiving module 801 and the sending module 802 in FIG. 8 may be implemented by the processor 201 in FIG. 2 calling a computer execution instruction stored in the memory 203.
  • the functions/implementation process of the receiving module 801 and the sending module 802 in FIG. 8 can be implemented through the communication interface 204 in FIG. 2.
  • the communication device 80 provided in this embodiment can perform the above-mentioned upgrading method, the technical effects that can be obtained can refer to the above-mentioned method embodiment, and will not be repeated here.
  • FIG. 9 shows a schematic structural diagram of a communication device 90.
  • the communication device 90 may be a chip or a system on a chip in a server, or other combination devices, components, etc. that can realize the server functions described above, and the communication device 90 may be used to realize the functions of the server involved in the above embodiments.
  • the communication device 90 shown in FIG. 9 includes: a sending module 901 and a processing module 902.
  • the sending module 901 is used to send the upgrade information of multiple devices to the car box or the gateway, where the upgrade information of the multiple devices includes the upgrade information of the first electronic control unit ECU.
  • the processing module 902 is configured to establish a first channel with the first ECU according to the upgrade information of the first ECU.
  • the sending module 901 is also used to send the upgrade package of the first ECU to the first ECU through the first channel.
  • the first channel is a transmission layer security channel, a hypertext transmission security protocol security channel, or a data packet transmission layer security protocol security channel.
  • the processing module 902 is specifically configured to receive first request information from the first ECU, where the first request information is used to request the establishment of the first channel with the communication device 90; the processing module 902 is specifically configured to It is used to send first request response information to the first ECU according to the first request information, where the first request response information is used to determine the encryption method of the communication device 90 and the first ECU; the processing module 902 is also specific Used to receive first completion information from the first ECU, where the first completion information is used to indicate that the first channel between the first ECU and the communication device 90 is established; the processing module 902 is also specifically used to The first completion information sends first completion response information to the first ECU, where the first completion response information is used to indicate that the first channel between the first ECU and the communication device 90 is established.
  • the upgrade information of the first ECU includes a download address of the upgrade package of the first ECU.
  • the upgrade information of the first ECU includes instruction information, and the instruction information is used to instruct to upgrade the first ECU.
  • processing module 902 is also used to sign the upgrade package of the first ECU.
  • the upgrade information of the multiple devices further includes an upgrade package of the second ECU.
  • the communication device 90 is presented in the form of dividing various functional modules in an integrated manner.
  • the "module” here can refer to a specific ASIC, circuit, processor and memory that executes one or more software or firmware programs, integrated logic circuit, and/or other devices that can provide the above-mentioned functions.
  • the communication device 90 may adopt the form shown in FIG. 2.
  • the processor 201 in FIG. 2 may invoke the computer execution instructions stored in the memory 203 to cause the communication device 90 to execute the upgrade method in the foregoing method embodiment.
  • the function/implementation process of the sending module 901 and the processing module 902 in FIG. 9 may be implemented by the processor 201 in FIG. 2 calling a computer execution instruction stored in the memory 203.
  • the function/implementation process of the processing module 902 in FIG. 9 may be implemented by the processor 201 in FIG. 2 calling computer execution instructions stored in the memory 203, and the function/implementation process of the sending module 901 in FIG. 2 in the communication interface 204 to achieve.
  • the communication device 90 provided in this embodiment can perform the above-mentioned upgrading method, the technical effects that can be obtained can refer to the above-mentioned method embodiment, and will not be repeated here.
  • FIG. 10 shows a schematic diagram of the composition of an upgrade system.
  • the upgrade system 100 may include: a server/cloud 1001, a T-Box/gateway 1002, and an ECU 1003. It should be noted that FIG. 10 is only an exemplary drawing, and the embodiment of the present application does not limit the devices included in the upgrade system 100 shown in FIG. 10 and the number of devices.
  • the server/cloud 1001 has the function of the communication device 90 shown in FIG. 9, and can send the upgrade information of multiple devices to the T-Box/gateway 1002, and establish the first channel with the ECU 1003 according to the upgrade information of the ECU 1003.
  • the first channel sends the upgrade package of ECU 1003 to ECU 1003.
  • the T-Box/Gateway 1002 has the function of the communication device 80 shown in Fig. 8, which can receive the upgrade information of multiple devices from the server/cloud 1001, and send the upgrade information of the ECU 1003 to the ECU 1003 according to the upgrade information of the ECU 1003 .
  • the ECU 1003 has the function of the communication device 70 shown in FIG. 7, and can receive the upgrade information from the ECU 1003 of the T-Box/gateway 1002, and establish the first channel with the server/cloud 1001 according to the upgrade information of the ECU 1003.
  • the channel receives the upgrade package of ECU 1003 from the server/cloud 1001, and upgrades according to the upgrade package of ECU 1003.
  • the above embodiments it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • a software program it can be implemented in the form of a computer program product in whole or in part.
  • the computer program product includes one or more computer instructions.
  • the computer program instructions When the computer program instructions are loaded and executed on the computer, the processes or functions according to the embodiments of the present application are generated in whole or in part.
  • the computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
  • Computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
  • computer instructions may be transmitted from a website, computer, server, or data center through a cable (such as Coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL) or wireless (such as infrared, wireless, microwave, etc.) transmission to another website site, computer, server or data center.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer, or may include one or more data storage devices such as a server or a data center that can be integrated with the medium.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, and a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种升级方法及装置,涉及车联网技术领域,当智能网联汽车中的多个设备需要升级时,可以提高升级效率和下载速度,并降低汽车盒子或网关的负载和存储需求。该方法包括:接收来自空中下载技术(over the air,OTA)节点的第一装置的升级信息;根据第一装置的升级信息与服务器建立第一通道;通过第一通道接收来自服务器的第一装置的升级包;根据第一装置的升级包进行升级。

Description

升级方法及装置
“本申请要求于2019年12月23日提交国家知识产权局、申请号为201911342865.5、发明名称为“升级方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中”。
技术领域
本申请涉及车联网技术领域,尤其涉及升级方法及装置。
背景技术
空中下载技术(over the air,OTA)是一种通过无线网络进行数据下载的技术,现已被广泛应用于智能电视、手机、平板电脑、机顶盒等设备的软件升级中。随着智能网联汽车的发展,OTA也逐渐应用于智能网联汽车的软件升级中。原始设备制造商(original equipment manufacturer,OEM)通过OTA升级智能网联汽车的相关软件或固件,可以减少车辆召回的次数,降低厂商的运营成本,并且可以快速响应用户的需求,提升用户体验。
智能网联汽车包括多个设备,例如,汽车盒子(telematics box,T-box)、网关和电子控制单元(electronic control unit,ECU)等,当智能网联汽车中的多个设备需要升级时,云端(或服务器)向T-box或网关发送该多个设备的升级包,T-box或网关接收并验证该多个设备的升级包,并在验证成功后,将每个设备的升级包发送给对应的设备,若该多个设备的升级包较大时,T-box或网关不仅花费较长的时间下载该多个设备的升级包,而且消耗较大的存储空间存储该多个设备的升级包,增加了T-box或网关的负载和存储需求。
发明内容
本申请实施例提供升级方法及装置,当智能网联汽车中的多个设备需要升级时,可以提高升级效率和下载速度,并降低汽车盒子或网关的负载和存储需求。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,本申请实施例提供一种升级方法,该方法包括:接收来自汽车盒子或网关的该第一ECU的升级信息;根据该第一ECU的升级信息与服务器建立第一通道;通过该第一通道接收来自该服务器的该第一ECU的升级包;根据该第一ECU的升级包进行升级。
上述第一方面提供的技术方案,当第一ECU需要升级时,第一ECU可以接收来自汽车盒子或网关的第一ECU的升级信息,根据第一ECU的升级信息与服务器建立第一通道,并通过第一通道接收来自服务器的第一ECU的升级包,并根据第一ECU的升级包进行升级,如此,可以不用通过汽车盒子或网关下载第一ECU的升级包,可以提高升级效率和下载速度,并降低汽车盒子或网关的负载和存储需求。
在第一种可能的实现方式中,该第一通道为传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道。基于上述方法,第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道从服务器下载第一ECU的升 级包,从而提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,根据该第一ECU的升级信息与服务器建立第一通道,包括:向服务器发送第一请求信息,其中,该第一请求信息用于请求与该服务器建立该第一通道;接收来自该服务器的第一请求响应信息,其中,该第一请求响应信息用于确定该服务器与该第一ECU的加密方法;向该服务器发送第一完成信息,其中,该第一完成信息用于指示该第一ECU和该服务器的第一通道建立完成;接收来自该服务器的第一完成响应信息,其中,该第一完成响应信息用于指示该第一ECU和该服务器的第一通道建立完成。基于上述方法,第一ECU可以通过向服务器发送第一请求信息,接收来自服务器的第一请求响应信息,并向服务器发送第一完成信息,并接收来自服务器的第一完成响应信息建立第一通道,以使得第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过第一通道从服务器下载第一ECU的升级包。
在一种可能的实现方式中,该第一ECU的升级信息包括该第一ECU的升级包的下载地址。基于上述方法,第一ECU的升级信息包括第一ECU的升级包的下载地址,如此,第一ECU可以根据第一ECU的升级包的下载地址与服务器建立第一通道,以使得第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过第一通道从服务器下载第一ECU的升级包。
在一种可能的实现方式中,该第一ECU的升级信息包括指示信息,该指示信息用于指示对该第一ECU升级。基于上述方法,第一ECU的升级信息包括指示信息,如此,第一ECU可以根据指示信息与服务器建立第一通道,以使得第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过第一通道从服务器下载第一ECU的升级包。
在一种可能的实现方式中,根据该第一ECU的升级包进行升级,包括:在验证该第一ECU的升级包的签名成功后,根据该第一ECU的升级包进行升级。基于上述方法,第一ECU可以在验证该第一ECU的升级包的签名成功后,根据该第一ECU的升级包进行升级,以保证第一ECU的升级包没有被篡改。
第二方面,本申请实施例提供一个升级方法,该方法包括:接收来自服务器的多个设备的升级信息,其中,该多个设备的升级信息包括第一电子控制单元ECU的升级信息,该第一ECU的升级信息用于指示该第一ECU与该服务器建立第一通道;根据该第一ECU的升级信息向该第一ECU发送该第一ECU的升级信息。
上述第二方面提供的技术方案,汽车盒子或网关可以接收来自服务器的多个设备的升级信息,并根据第一ECU的升级信息向第一ECU发送第一ECU的升级信息,以使得第一ECU根据第一ECU的升级信息与服务器建立第一通道,进而第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过第一通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,该第一通道为传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道。基于上述方案,汽车盒子或网关可以向第一ECU发送第一ECU的升级信息,以使得第一ECU根据第一ECU的升级信息与服务器建立传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安 全性协议安全通道,进而第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,该第一ECU的升级信息包括该第一ECU的升级包的下载地址。基于上述方案,汽车盒子或网关可以向第一ECU发送第一ECU的升级包的下载地址,以使得第一ECU根据第一ECU的升级包的下载地址与服务器建立第一通道,进而第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过第一通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,该第一ECU的升级信息包括指示信息,该指示信息用于指示对该第一ECU升级。基于上述方案,汽车盒子或网关可以向第一ECU发送指示信息,以使得第一ECU根据指示信息与服务器建立第一通道,进而第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过第一通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,该多个设备的升级信息还包括第二ECU的升级包;该方法还包括:向该第二ECU发送该第二ECU的升级包。基于上述方法,多个设备的升级信息还包括第二ECU的升级包,如此,汽车盒子或网关还可以向第二ECU发送第二ECU的升级包,以使得第二ECU根据第二ECU的升级包进行升级。
第三方面,本申请实施例提供了一种升级方法,该方法包括:向汽车盒子或网关发送多个设备的升级信息,其中,该多个设备的升级信息包括第一电子控制单元ECU的升级信息;根据该第一ECU的升级信息与该第一ECU建立第一通道;通过该第一通道向该第一ECU发送该第一ECU的升级包。
上述第三方面提供的技术方案,服务器可以向汽车盒子或网关发送第一ECU的升级信息,根据第一ECU的升级信息与第一ECU建立第一通道,并通过第一通道向第一ECU发送第一ECU的升级包,以使得第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过第一通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,该第一通道为传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道。基于上述方法,服务器可以根据第一ECU的升级信息与第一ECU建立传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道,以使得第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,根据该第一ECU的升级信息与该第一ECU建立第一通道,包括:接收来自该第一ECU的第一请求信息,其中,该第一请求信息用于请求与该服务器建立该第一通道;根据该第一请求信息向该第一ECU发送第一请求响应信 息,其中,该第一请求响应信息用于确定该服务器与该第一ECU的加密方法;接收来自该第一ECU的第一完成信息,其中,该第一完成信息用于指示该第一ECU和该服务器的第一通道建立完成;根据该第一完成信息向该第一ECU发送第一完成响应信息,其中,该第一完成响应信息用于指示该第一ECU和该服务器的第一通道建立完成。基于上述方法,服务器可以通过接收来自第一ECU的第一请求信息,根据第一请求信息向第一ECU发送第一请求响应信息,接收来自第一ECU的第一完成信息,并根据第一完成信息向第一ECU发送第一完成响应信息建立第一通道,以使得第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,该第一ECU的升级信息包括该第一ECU的升级包的下载地址。基于上述方法,服务器可以根据第一ECU的升级包的下载地址与第一ECU建立第一通道,以使得第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,该第一ECU的升级信息包括指示信息,该指示信息用于指示对该第一ECU升级。基于上述方法,服务器可以根据指示信息与第一ECU建立第一通道,以使得第一ECU可以不通过汽车盒子或网关下载第一ECU的升级包,而是通过传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道从服务器下载第一ECU的升级包,提高了升级效率和下载速度,并降低了汽车盒子或网关的负载和存储需求。
在一种可能的实现方式中,该方法还包括:对该第一ECU的升级包进行签名。基于上述方法,服务器可以对第一ECU的升级包进行签名,以使得第一ECU接收到该第一ECU的升级包后,可以验证该第一ECU的升级包是否被篡改,以保证第一ECU升级的安全性。
在一种可能的实现方式中,该多个设备的升级信息还包括第二ECU的升级包。基于上述方法,服务器还可以向汽车盒子或网关发送第二ECU的升级包,以使得汽车盒子或网关协助第二ECU升级。
第四方面,本申请实施例提供了一种通信装置,该通信装置具有实现上述第一方面所述的方法和功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第五方面,本申请实施例提供了一种通信装置,该通信装置具有实现上述第二方面所述的方法和功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第六方面,本申请实施例提供了一种通信装置,该通信装置具有实现上述第三方面所述的方法和功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第七方面,本申请实施例提供了一种通信装置,包括:至少一个处理器、至少一 个存储器以及通信接口,该通信接口、该至少一个存储器与该至少一个处理器耦合;通信装置通过该通信接口与其他设备通信,该至少一个存储器用于存储计算机程序,使得该计算机程序被该至少一个处理器执行时实现如第一方面及其各种可能的实现方式所述的升级方法。
第八方面,本申请实施例提供了一种通信装置,包括:至少一个处理器、至少一个存储器以及通信接口,该通信接口、该至少一个存储器与该至少一个处理器耦合;通信装置通过该通信接口与其他设备通信,该至少一个存储器用于存储计算机程序,使得该计算机程序被该至少一个处理器执行时实现如第二方面及其各种可能的实现方式所述的升级方法。
第九方面,本申请实施例提供了一种通信装置,包括:至少一个处理器、至少一个存储器以及通信接口,该通信接口、该至少一个存储器与该至少一个处理器耦合;通信装置通过该通信接口与其他设备通信,该至少一个存储器用于存储计算机程序,使得该计算机程序被该至少一个处理器执行时实现如第三方面及其各种可能的实现方式所述的升级方法。
第十方面,本申请提供了一种***芯片,该***芯片可以应用在通信装置中,该***芯片包括:至少一个处理器,涉及的程序指令在该至少一个处理器中执行,以实现根据第一方面的方法及其任一设计中的第一ECU的功能。可选的,该***芯片还可以包括至少一个存储器,该存储器存储有涉及的程序指令。
第十一方面,本申请提供了一种***芯片,该***芯片可以应用在通信装置中,该***芯片包括:至少一个处理器,涉及的程序指令在该至少一个处理器中执行,以实现根据第二方面的方法及其任一设计中的汽车盒子或网关的功能。可选的,该***芯片还可以包括至少一个存储器,该存储器存储有涉及的程序指令。
第十二方面,本申请提供了一种***芯片,该***芯片可以应用在通信装置中,该***芯片包括:至少一个处理器,涉及的程序指令在该至少一个处理器中执行,以实现根据第三方面的方法及其任一设计中的服务器的功能。可选的,该***芯片还可以包括至少一个存储器,该存储器存储有涉及的程序指令。
第十三方面,本申请实施例提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述第一方面的任一种可能的方法。例如,该计算机可以是至少一个存储节点。
第十四方面,本申请实施例提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述第二方面的任一种可能的方法。例如,该计算机可以是至少一个存储节点。
第十五方面,本申请实施例提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述第三方面的任一种可能的方法。例如,该计算机可以是至少一个存储节点。
第十六方面,本申请实施例提供了一种计算机程序产品,当其在计算机上运行时, 使得第一方面提供的任一方法被执行。例如,该计算机可以是至少一个存储节点。
第十七方面,本申请实施例提供了一种计算机程序产品,当其在计算机上运行时,使得第二方面提供的任一方法被执行。例如,该计算机可以是至少一个存储节点。
第十八方面,本申请实施例提供了一种计算机程序产品,当其在计算机上运行时,使得第三方面提供的任一方法被执行。例如,该计算机可以是至少一个存储节点。
第十九方面,本申请实施例提供一种升级***,该升级***可以包括如下任一种或几种:如第四方面中的通信装置,或者如第五方面中的通信装置,或者如第六方面中的通信装置,或者如第七方面中的通信装置,或者如第八方面中的通信装置,或者如第九方面中的通信装置,或者如第十方面中的***芯片,或者如第十一方面中的***芯片,或者如第十二方面中的***芯片,或者如第十三方面中的计算机可读存储介质,或者如第十四方面中的计算机可读存储介质,或者如第十五方面中的计算机可读存储介质,或者如第十六方面中的计算机程序产品,或者如第十七方面中的计算机程序产品,或者如第十八方面中的计算机程序产品。
可以理解的,上述提供的任一种通信装置、***芯片、计算机可读存储介质、计算机程序产品或升级***等均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
第二十方面,本申请实施例提供一种升级方法,该方法应用于第一装置,该方法包括:接收来自OTA节点的该第一装置的升级信息;根据该第一装置的升级信息与服务器建立第一通道;通过该第一通道接收来自该服务器的该第一装置的升级包;根据该第一装置的升级包进行升级。
在一种可能的实现方式中,该第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
在一种可能的实现方式中,根据该第一装置的升级信息与服务器建立第一通道,包括:向服务器发送第一请求信息,其中,该第一请求信息用于请求与该服务器建立该第一通道;接收来自该服务器的第一请求响应信息,其中,该第一请求响应信息用于确定该服务器与该第一装置的加密方法;向该服务器发送第一完成信息,其中,该第一完成信息用于指示该第一装置和该服务器的第一通道建立完成;接收来自该服务器的第一完成响应信息,其中,该第一完成响应信息用于指示该第一装置和该服务器的第一通道建立完成。
在一种可能的实现方式中,该第一装置的升级信息包括该第一装置的升级包的下载地址。
在一种可能的实现方式中,该第一装置的升级信息包括指示信息,该指示信息用于指示对该第一装置升级。
在一种可能的实现方式中,该根据该第一装置的升级包进行升级,包括:在验证该第一装置的升级包的签名成功后,根据该第一装置的升级包进行升级。
在一种可能的实现方式中,该第一装置为电子控制单元ECU、网关、域控制器或汽车盒子。
在一种可能的实现方式中,该第一装置上部署OTA节点,或者该第一装置上没有部署OTA节点。
第二十一方面,本申请实施例提供一种升级方法,该方法应用于OTA节点,该方法包括:接收来自服务器的多个设备的升级信息,其中,该多个设备的升级信息包括第一装置的升级信息,该第一装置的升级信息用于指示该第一装置与该服务器建立第一通道;根据该第一装置的升级信息向该第一装置发送该第一装置的升级信息。
在一种可能的实现方式中,该第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
在一种可能的实现方式中,该第一装置的升级信息包括该第一装置的升级包的下载地址。
在一种可能的实现方式中,该第一装置的升级信息包括指示信息,该指示信息用于指示对该第一装置升级。
在一种可能的实现方式中,该多个设备的升级信息还包括第二装置的升级包;该方法还包括:向该第二装置发送该第二装置的升级包。
在一种可能的实现方式中,该第一装置为电子控制单元ECU、网关、域控制器或汽车盒子。
在一种可能的实现方式中,该第二装置与该第一装置不同,该第二装置为电子控制单元ECU、网关、域控制器或汽车盒子。
在一种可能的实现方式中,该第一装置部署OTA节点,或者该第一装置上没有部署OTA节点。
在一种可能的实现方式中,该第二装置部署OTA节点,或者该第二装置上没有部署OTA节点。
第二十二方面,本申请实施例提供一种升级方法,该方法应用于服务器,该方法包括:向OTA节点发送多个设备的升级信息,其中,该多个设备的升级信息包括第一装置的升级信息;根据该第一装置的升级信息与该第一装置建立第一通道;通过该第一通道向该第一装置发送该第一装置的升级包。
在一种可能的实现方式中,该第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
在一种可能的实现方式中,根据该第一装置的升级信息与该第一装置建立第一通道,包括:接收来自该第一装置的第一请求信息,其中,该第一请求信息用于请求与该服务器建立该第一通道;根据该第一请求信息向该第一装置发送第一请求响应信息,其中,该第一请求响应信息用于确定该服务器与该第一装置的加密方法;接收来自该第一装置的第一完成信息,其中,该第一完成信息用于指示该第一装置和该服务器的第一通道建立完成;根据该第一完成信息向该第一装置发送第一完成响应信息,其中,该第一完成响应信息用于指示该第一装置和该服务器的第一通道建立完成。
在一种可能的实现方式中,该第一装置的升级信息包括该第一装置的升级包的下载地址。
在一种可能的实现方式中,该第一装置的升级信息包括指示信息,该指示信息用于指示对该第一装置升级。
在一种可能的实现方式中,该方法还包括:对该第一装置的升级包进行签名。
在一种可能的实现方式中,该多个设备的升级信息还包括第二装置的升级包。
在一种可能的实现方式中,该第一装置为电子控制单元ECU、网关、域控制器或汽车盒子。
在一种可能的实现方式中,该第二装置与该第一装置不同,该第二装置为电子控制单元ECU、网关、域控制器或汽车盒子。
在一种可能的实现方式中,该第一装置部署OTA节点,或者该第一装置上没有部署OTA节点。
在一种可能的实现方式中,该第二装置部署OTA节点,或者该第二装置上没有部署OTA节点。
第二十三方面,本申请实施例提供了一种通信装置,该通信装置具有实现上述第二十方面所述的方法和功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第二十四方面,本申请实施例提供了一种通信装置,该通信装置具有实现上述第二十一方面所述的方法和功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第二十五方面,本申请实施例提供了一种通信装置,该通信装置具有实现上述第二十二方面所述的方法和功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第二十六方面,本申请实施例提供了一种通信装置,包括:至少一个处理器、至少一个存储器以及通信接口,该通信接口、该至少一个存储器与该至少一个处理器耦合;通信装置通过该通信接口与其他设备通信,该至少一个存储器用于存储计算机程序,使得该计算机程序被该至少一个处理器执行时实现如第二十方面及其各种可能的实现方式所述的升级方法。
第二十七方面,本申请实施例提供了一种通信装置,包括:至少一个处理器、至少一个存储器以及通信接口,该通信接口、该至少一个存储器与该至少一个处理器耦合;通信装置通过该通信接口与其他设备通信,该至少一个存储器用于存储计算机程序,使得该计算机程序被该至少一个处理器执行时实现如第二十一方面及其各种可能的实现方式所述的升级方法。
第二十八方面,本申请实施例提供了一种通信装置,包括:至少一个处理器、至少一个存储器以及通信接口,该通信接口、该至少一个存储器与该至少一个处理器耦合;通信装置通过该通信接口与其他设备通信,该至少一个存储器用于存储计算机程序,使得该计算机程序被该至少一个处理器执行时实现如第二十二方面及其各种可能的实现方式所述的升级方法。
第二十九方面,本申请提供了一种***芯片,该***芯片可以应用在通信装置中,该***芯片包括:至少一个处理器,涉及的程序指令在该至少一个处理器中执行,以实现根据第二十方面的方法及其任一设计中的第一ECU的功能。可选的,该***芯片还可以包括至少一个存储器,该存储器存储有涉及的程序指令。
第三十方面,本申请提供了一种***芯片,该***芯片可以应用在通信装置中,该***芯片包括:至少一个处理器,涉及的程序指令在该至少一个处理器中执行,以实现根据第二十一方面的方法及其任一设计中的汽车盒子或网关的功能。可选的,该 ***芯片还可以包括至少一个存储器,该存储器存储有涉及的程序指令。
第三十一方面,本申请提供了一种***芯片,该***芯片可以应用在通信装置中,该***芯片包括:至少一个处理器,涉及的程序指令在该至少一个处理器中执行,以实现根据第二十二方面的方法及其任一设计中的服务器的功能。可选的,该***芯片还可以包括至少一个存储器,该存储器存储有涉及的程序指令。
第三十二方面,本申请实施例提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述第二十方面的任一种可能的方法。例如,该计算机可以是至少一个存储节点。
第三十三方面,本申请实施例提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述第二十一方面的任一种可能的方法。例如,该计算机可以是至少一个存储节点。
第三十四方面,本申请实施例提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述第二十二方面的任一种可能的方法。例如,该计算机可以是至少一个存储节点。
第三十五方面,本申请实施例提供了一种计算机程序产品,当其在计算机上运行时,使得第二十方面提供的任一方法被执行。例如,该计算机可以是至少一个存储节点。
第三十六方面,本申请实施例提供了一种计算机程序产品,当其在计算机上运行时,使得第二十一方面提供的任一方法被执行。例如,该计算机可以是至少一个存储节点。
第三十七方面,本申请实施例提供了一种计算机程序产品,当其在计算机上运行时,使得第二十二方面提供的任一方法被执行。例如,该计算机可以是至少一个存储节点。
第三十八方面,本申请实施例提供一种升级***,该升级***可以包括如下任一种或几种:如第二十三方面中的通信装置,或者如第二十四方面中的通信装置,或者如第二十五方面中的通信装置,或者如第二十六方面中的通信装置,或者如第二十七方面中的通信装置,或者如第二十八方面中的通信装置,或者如第二十九方面中的***芯片,或者如第三十方面中的***芯片,或者如第三十一方面中的***芯片,或者如第三十二方面中的计算机可读存储介质,或者如第三十三方面中的计算机可读存储介质,或者如第三十四方面中的计算机可读存储介质,或者如第三十五方面中的计算机程序产品,或者如第三十六方面中的计算机程序产品,或者如第三十七方面中的计算机程序产品。
可以理解的,上述提供的任一种通信装置、***芯片、计算机可读存储介质、计算机程序产品或升级***等均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
附图说明
图1A为本申请实施例提供的升级***架构示意图;
图1B为本申请实施例提供的车辆的架构示意图;
图2为本申请实施例提供的通信装置的硬件结构示意图;
图3为本申请实施例提供的升级方法的流程示意图一;
图4为本申请实施例提供的升级方法的流程示意图二;
图5为本申请实施例提供的升级方法的流程示意图三;
图6为本申请实施例提供的升级方法的流程示意图四;
图7为本申请实施例提供的通信装置的结构示意图一;
图8为本申请实施例提供的通信装置的结构示意图二;
图9为本申请实施例提供的通信装置的结构示意图三;
图10为本申请实施例提供的升级***的组成示意图。
具体实施方式
下面结合附图对本申请实施例的实施方式进行详细描述。
如图1A所示,为本申请实施例提供的升级***的架构示意图。图1A中,升级***可以包括车辆10和服务器20(或云端30)。
图1A中的车辆10可以是智能网联汽车。车辆10可以包括多个设备。例如,车辆10可以包括T-Box、网关和ECU等设备。具体的,车辆10的架构可以如图1B所示。
图1B为本申请实施例提供的一种车辆10的架构示意图,如图1B所示,车辆10可以包括T-Box 101、网关102以及ECU 103-ECU 107。
其中,T-Box 101和网关102之间可以通过以太网连接。网关102和ECU之间可以通过以太网、控制器局域网络(controller area network,CAN)、局域互联网(local interconnect network,LIN)、面向媒体的***传输(media oriented system transport,MOST)或FlexRay连接,例如,网关102与ECU 103之间可以通过CAN连接,网关102与ECU 105之间可以通过LIN连接。
图1B中的T-Box 101可以具备与车辆10的外部设备以及车辆10的内部设备通信的能力。其中,车辆10的外部设备可以描述为车辆10之外的设备,例如,图1A中的服务器20、云端30或用户的终端设备(图1A未示出);车辆10的内部设备可以是图1B中所示的设备,例如,网关102或ECU 103等等。
图1B中的T-Box 101与车辆10的内部设备通信,可以用于向车辆10的内部设备发送信息,例如,T-Box 101向网关102发送多个设备的升级信息。T-Box 101与车辆10的外部设备通信,可以用于接收来自服务器20或云端30的信息,例如,T-Box 101可以用于接收来自服务器20或云端30的多个设备的升级信息。
在一些实施例中,T-Box 101还可以具备协调车辆10的内部设备升级的能力。示例性的,以多个设备的升级信息包括ECU 103的升级信息和ECU 105的升级信息为例,T-Box 101可以接收来自服务器20的多个设备的升级信息,并验证多个设备的升级信息,在验证成功后,将ECU 103的升级信息通过网关102发送给ECU 103,将ECU 105的升级信息通过网关102发送给ECU 105。
图1B中的网关102是车辆10的核心部件,网关102可以将CAN、LIN、MOST 或FlexRay等网络数据在不同网络中进行路由。例如,网关102可以接收来自T-Box 101的ECU 103的升级信息,并将ECU 103的升级信息发送给ECU 103。
在一些实施例中,网关102还可以具备协调车辆10的内部设备升级的能力。示例性的,以多个设备的升级信息包括ECU 106的升级信息和ECU 105的升级信息为例,网关102可以接收来自T-Box 101的多个设备的升级信息,并验证多个设备的升级信息,在验证成功后,将ECU 106的升级信息发送给ECU 106,将ECU 105的升级信息发送给ECU 105。
图1B中的ECU可以是车辆10的微机控制器,可以具备执行预设控制功能的能力,例如,ECU 104可以用于控制发动机运行,ECU 103可以用于保护车辆安全。
在一些实施例中,图1B中的ECU还可以是自动驾驶相关的设备。例如,ECU 105可以是移动数据中心(mobile data center,MDC),ECU 107可以是人机交互(human-machine interaction,HMI)设备。其中,MDC可以是车辆10的智能车载计算平台。HMI可以是车辆10的信息娱乐***。
在一些实施例中,车辆10中的设备(例如,T-Box 101、网关102或ECU 103-ECU 107等)上可以部署OTA节点,OTA节点也可以称为OTA master,或OTA manager等。部署OTA节点的设备可以具备协调车辆10的内部设备升级的能力。以ECU 103上部署OTA节点,多个设备的升级信息包括ECU 106的升级信息和ECU 105的升级信息为例,ECU 103可以接收来自服务器20的多个设备的升级信息(ECU 103可以直接从服务器20接收多个设备的升级信息,也可以通过T-Box 101接收来自服务器20的多个设备的升级信息),并验证多个设备的升级信息,在验证成功后,将ECU 106的升级信息发送给ECU 106,将ECU 105的升级信息发送给ECU 105。
可以理解的,OTA节点也可以部署在域控制器(图1B中未示出)或整车集成单元(vehicle integrated/integration unit,VIU)上。其中,域控制器可以将车辆中各个设备按功能划分为多个领域,并对每个领域进行管理。多个VIU可以组成一个环网,以实现高带宽(具体可以体现为高清摄像头、或高清显示等)、低时延、高可靠处理能力,另外,该环网还可以简化车载网络配置、提升升级维护效率。
可以理解的,OTA节点也可以单独部署在车辆10中,也就是说,OTA节点可以独立于T-Box 101、网关102、ECU 103-ECU 107等设备,部署在车辆10中,并且可以与T-Box 101、网关102、ECU 103-ECU 107等设备通信。
可以理解的,若OTA节点部署在某一车内设备上,本申请实施例的车端执行主体为该设备,若OTA节点在车内单独部署,本申请实施例的车端执行主体是OTA节点。本申请下述实施例是以OTA节点部署在T-Box或网关上,第一装置为第一ECU,第二装置为第二ECU为例进行介绍的,OTA节点单独部署或者OTA节点部署在除T-Box或网关之外的设备上的情况,可以参考OTA节点部署在T-Box或网关上的情况,不予赘述。
应理解,图1B所示的车辆10的架构仅用于举例,并非用于限制本申请的技术方案。本领域的技术人员应当明白,在具体实现过程中,车辆10还可以包括其他设备,例如,车载诊断***(on-board diagnostic,OBD),或域控制器,同时也可根据具体需要来确定网关、域控制器以及ECU的数量。
图1A中的服务器20或云端30可以具备发现车辆10中设备的升级信息以及指示对车辆10中的设备进行升级。例如,当服务器20发现车辆10中多个设备的升级信息,可以向车辆10发送该多个设备的升级信息。
图1A中的服务器20或云端30还可以具备为车辆10中的设备提供服务的能力。例如,若ECU 106用于导航,服务器20或云端30可以为ECU 106提供导航服务。
应理解,图1A所示的升级***仅用于举例,并非用于限制本申请的技术方案。本领域的技术人员应当明白,在具体实现过程中,升级***还可以包括其他设备,同时也可根据具体需要来确定车辆10、服务器20或云端30的数量,不予限制。
可选的,本申请实施例图1B中的各设备,例如,服务器20、云端30、T-Box 101、网关102或ECU 106,可以是一个设备内的一个功能模块。可以理解的是,该功能模块既可以是硬件设备中的元件,也可以是在专用硬件上运行的软件功能,或者是平台(例如,云平台)上实例化的虚拟化功能。
例如,图1B中的各设备均可以通过图2中的硬件设备200来实现。图2所示为可适用于本申请实施例的硬件设备的硬件结构示意图。该硬件设备200可以包括至少一个处理器201,通信线路202,存储器203以及至少一个通信接口204。
处理器201可以是一个通用CPU,微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路202可包括一通路,在上述组件之间传送信息,例如总线。
通信接口204,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网接口,无线接入网接口(radio access network,RAN),无线局域网接口(wireless local area networks,WLAN)等。
存储器203可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路202与处理器相连接。存储器也可以和处理器集成在一起。本申请实施例提供的存储器通常可以具有非易失性。其中,存储器203用于存储执行本申请方案所涉及的计算机执行指令,并由处理器201来控制执行。处理器201用于执行存储器203中存储的计算机执行指令,从而实现本申请实施例提供的方法。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,处理器201可以包括一个或多个CPU,例如图2中的CPU0和CPU1。
在具体实现中,作为一种实施例,硬件设备200可以包括多个处理器,例如图2 中的处理器201和处理器207。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,硬件设备200还可以包括输出设备205和输入设备206。输出设备205和处理器201通信,可以以多种方式来显示信息。例如,输出设备205可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备206和处理器201通信,可以以多种方式接收用户的输入。例如,输入设备206可以是鼠标、键盘、触摸屏设备或传感设备等。
在具体实现中,硬件设备200可以是嵌入式设备或有图2中类似结构的设备。本申请实施例不限定硬件设备200的类型。
下面结合图1A、图1B和图2对本申请实施例提供的升级方法进行具体阐述。
需要说明的是,本申请实施例提供的升级方法可以应用于多个领域,例如:无人驾驶领域、自动驾驶领域、辅助驾驶领域、智能驾驶领域、网联驾驶领域、智能网联驾驶领域、汽车共享领域等。
需要说明的是,本申请下述实施例中各个网元之间的消息名字或消息中各参数的名字等只是一个示例,具体实现中也可以是其他的名字,本申请实施例对此不作具体限定。
需要说明的是,在本申请的描述中,“第一”、或“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。本申请中的“第一ECU”等具有不同编号的ECU,该编号仅为用于上下文行文方便,不同的次序编号本身不具有特定技术含义,比如,第一ECU,第二ECU等,可以理解为是一系列ECU中的一个或者任一个。
可以理解的,本申请实施例中,服务器、云端、T-Box、网关或ECU可以执行本申请实施例中的部分或全部步骤,这些步骤仅是示例,本申请实施例还可以执行其它步骤或者各种步骤的变形。此外,各个步骤可以按照本申请实施例呈现的不同的顺序来执行,并且有可能并非要执行本申请实施例中的全部步骤。
如图3所示,为本申请实施例提供的一种升级方法,该升级方法包括步骤301-步骤305。
步骤301:服务器向T-Box/网关发送多个设备的升级信息。
其中,该服务器可以是图1A中的服务器20,T-Box可以是车辆中的T-Box,例如,车辆可以是图1A中的车辆10,T-Box可以是图1B中的T-Box 101。网关可以是车辆中的网关,例如,车辆可以是图1A中的车辆10,网关可以是图1B中的网关102。
需要说明的是,本申请实施例中的服务器可以用云端替换,该云端可以是图1A中的云端30。
其中,多个设备的升级信息可以包括车辆的内部设备中,一个或多个设备的升级信息。
一种可能的实现方式,多个设备的升级信息可以包括第一ECU的升级信息。第一ECU的升级信息可以用于指示服务器与第一ECU建立第一通道。
其中,第一ECU可以是图1B中的ECU 103-ECU 107中的任一ECU。第一ECU的升级信息可以指示服务器的地址或标识。
需要说明的是,多个设备的升级信息可以包括一组第一ECU的升级信息,也就是说,多个设备的升级信息可以包括两个或两个以上的第一ECU的升级信息。本申请实施例以多个设备的升级信息包括第一ECU的升级信息为例进行介绍,多个设备的升级信息包括一组第一ECU的升级信息的情况,可以参考下述多个设备的升级信息包括一个第一ECU的升级信息的介绍,不予赘述。
在一些实施例中,第一ECU的升级信息可以包括第一ECU的升级包的下载地址,该第一ECU的升级包的下载地址可以指示服务器的地址。例如,第一ECU的升级包的下载地址为服务器的统一资源定位符(uniform resource locator,URL)。
在一些实施例中,第一ECU的升级信息可以包括第一ECU的升级包的下载地址和服务器的地址。例如,第一ECU的升级包的下载地址可以是第一ECU的升级包所在的资源服务器的URL,后续,第一ECU和服务器建立第一通道后,服务器可以根据第一ECU的升级包的下载地址从资源服务器中下载该第一ECU的升级包,并将该第一ECU的升级包发送给第一ECU。
在一些实施例中,第一ECU的升级信息可以包括指示信息,该指示信息可以用于指示对第一ECU升级。
其中,该指示信息可以包括第一ECU的标识和服务器的标识。
进一步的,第一ECU的升级信息除了包括上述信息之外,还可以包括以下信息中的至少一个:第一ECU的升级包的大小、第一ECU的升级包的下载策略、第一ECU的升级包的升级条件、或第一ECU的升级包的升级策略。
其中,第一ECU的升级包的大小用于指示第一ECU升级包占用的比特数。第一ECU的升级包的下载策略用于指示下载第一ECU的升级包的规则。第一ECU的升级包的升级条件用于指示使用第一ECU的升级包进行升级需满足的的条件。第一ECU的升级包的升级策略用于指示根据第一ECU升级包进行升级的规则。
可选的,第一ECU是升级包较大和/或升级较频繁的ECU。例如,第一ECU为MDC或HMI。
可选的,步骤301之前,服务器和T-Box/网关建立第二通道。
其中,该第二通道可以是传输层安全(transport layer security,TLS)通道、超文本传输安全协议(hyper text transfer protocol secure,HTTPs)安全通道、或数据包传输层安全性协议(datagram transport layer security,DTLS)安全通道等。第二通道可以用于T-Box/网关和服务器通信。
在一些实施例中,服务器和T-Box/网关可以通过握手建立第二通道,第二通道建立成功后,服务器和T-Box/网关可以进行加密通信。
下面以服务器和T-Box/网关通过四次通信建立第二通道为例,介绍服务器和T-Box/网关通过握手建立第二通道的过程。
可选的,服务器和T-Box/网关建立第二通道,包括:服务器接收来自T-Box/网关的第二请求信息,其中,第二请求信息用于请求与服务器建立第二通道;服务器根据第二请求信息向T-Box/网关发送第二请求响应信息,其中,第二请求响应信息用于确 定服务器与T-Box/网关的加密方法;服务器接收来自T-Box/网关的第二完成信息,其中,第二完成信息用于指示服务器和T-Box/网关的第二通道建立完成;服务器根据第二完成信息向T-Box/网关发送第二完成响应信息,其中,第二完成响应信息用于指示服务器和T-Box/网关的第二通道建立完成。
其中,第二请求信息可以包括T-Box/网关支持的加密通信协议版本(例如,TLS1.2)、第一随机数和T-Box/网关支持的加密方法(例如,非对称加密算法(RSA)公钥加密方法)。第二请求信息可以命名为ClientHello请求。
可选的,第二请求信息还可以包括T-Box/网关支持的压缩方法。
其中,第二请求响应信息可以包括第二随机数、服务器的证书、服务器确定使用的加密通信协议版本和加密方法。第二请求响应信息可以命名为SeverHello信息。
可选的,第二请求响应信息可以包括服务器确定使用的压缩方法。
需要说明的是,若服务器和T-Box/网关支持的加密通信协议版本不一致,服务器可以关闭加密通信,也就是说,后续服务器与T-Box/网关通信时,不进行加密。
可选的,第二请求响应信息还可以用于请求T-Box/网关的证书。
其中,第二完成信息可以包括第三随机数、T-Box/网关编码改变通知和T-Box/网关握手结束通知。T-Box/网关编码改变通知可以用于指示T-Box/网关在发送第二完成信息后,使用第二请求响应信息中确定的加密方法发送信息。T-Box/网关握手结束通知可以用于指示T-Box/网关的握手阶段结束。
可选的,第二完成信息还可以是根据摘要函数(例如,哈希函数)对第二请求信息、第三随机数、T-Box/网关编码改变通知和T-Box/网关握手结束通知签名后的信息。
其中,第二完成响应信息可以包括服务器的编码改变通知和服务器握手结束通知。服务器编码改变通知可以用于指示服务器在发送第二完成响应信息后,使用第二请求响应信息中确定的加密方法发送信息。服务器握手结束通知可以用于指示服务器的握手阶段结束。
可选的,服务器接收到第二完成信息后,可以根据第一随机数、第二随机数、第三随机数和第二请求响应信息中确定的加密方法生成第一会话密钥。后续,服务器可以使用该第一会话密钥对发送给T-Box/网关的信息进行加密,或者,服务器可以使用第一会话密钥解密来自T-Box/网关的信息。
可选的,服务器发现车辆的内部设备中,有要升级的设备,服务器向T-Box/网关发送多个设备的升级信息。
示例性的,以图1A和图1B所示为例,服务器20接收到来自OEM***的指示信息,该指示信息用于指示服务器20通知车辆10对车辆10的内部设备进行升级,服务器20向T-Box 101/网关102发送多个设备的升级信息。
可选的,服务器向T-Box/网关发送多个设备的升级信息,包括:服务器对该多个设备的升级信息进行签名,得到签名后的该多个设备的升级信息;服务器对签名后的该多个设备的升级信息进行加密,得到加密后的多个设备的升级信息;服务器向T-Box/网关发送加密后的多个设备的升级信息。
其中,服务器对该多个设备的升级信息进行签名,可以包括:服务器对该多个设备的升级信息进行一层签名,或者,服务器对该多个设备的升级信息进行两层签名。
可选的,服务器对该多个设备的升级信息进行一层签名,包括:服务器对该多个设备的升级信息进行签名。
示例性的,以服务器对该多个设备的升级信息进行一层签名为例,服务器根据第一摘要函数(例如,哈希函数)对第一ECU的升级信息进行签名,得到签名后的第一ECU的升级信息;服务器使用第一会话密钥对签名后的第一ECU的升级信息进行加密,得到加密后的第一ECU的升级信息;服务器向T-Box/网关发送加密后的第一ECU的升级信息。
可选的,服务器对该多个设备的升级信息进行两层签名,包括:服务器对多个设备的升级信息中,每个设备的升级信息进行签名,得到多个设备的签名后的升级信息;服务器对多个设备的签名后的升级信息进行签名。
示例性的,以服务器对该多个设备的升级信息进行二层签名为例,服务器根据第二摘要函数对第一ECU的升级信息进行签名,得到第一签名信息;服务器根据第一摘要函数对第一签名信息进行签名,得到第二签名信息;服务器使用第一会话密钥对第二签名信息进行加密,得到加密后的第二签名信息;服务器向T-Box/网关发送加密后的第二签名信息。其中,第一摘要函数和第二摘要函数可以相同也可以不同。
步骤302:T-Box/网关接收来自服务器的多个设备的升级信息,并根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息。
可选的,T-Box/网关接收来自服务器的多个设备的升级信息之前,T-Box/网关和服务器建立第二通道。
T-Box/网关和服务器可以通过握手建立第二通道,第二通道建立成功后,T-Box/网关和服务器可以进行加密通信。
下面以T-Box/网关和服务器通过四次通信建立第二通道为例,介绍T-Box/网关和服务器通过握手建立第二通道的过程。
可选的,T-Box/网关和服务器建立第二通道,包括:T-Box/网关向服务器发送第二请求信息,其中,第二请求信息用于请求与服务器建立第二通道;T-Box/网关接收来自服务器的第二请求响应信息,其中,第二请求响应信息用于确定服务器与T-Box/网关的加密方法;T-Box/网关向服务器发送第二完成信息,其中,第二完成信息用于指示服务器和T-Box/网关的第二通道建立完成;T-Box/网关接收来自服务器的第二完成响应信息,其中,第二完成响应信息用于指示服务器和T-Box/网关的第二通道建立完成。
可选的,T-Box/网关发送第二完成信息后,可以根据第一随机数、第二随机数、第三随机数和第二请求响应信息中确定的加密方法生成第一会话密钥。后续,T-Box/网关可以使用该第一会话密钥对发送给服务器的信息进行加密,或者,T-Box/网关可以使用第一会话密钥解密来自服务器的信息。
可选的,T-Box/网关根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息,包括:T-Box/网关在验证该多个设备的升级信息成功后,根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息。
示例性的,以服务器对该多个设备的升级信息进行一层签名为例,T-Box/网关使用第一会话密钥解密该第一ECU的升级信息,得到解密后的第一ECU的升级信息; T-Box/网关根据第一摘要函数验证解密后的第一ECU的升级信息,并在验证成功后,向第一ECU发送解密后的第一ECU的升级信息。
示例性的,以服务器对该多个设备的升级信息进行二层签名为例,T-Box/网关通过第一会话密钥解密该第一ECU的升级信息,得到解密后的第一ECU的升级信息;T-Box/网关根据第一摘要函数验证解密后的第一ECU的升级信息,并在验证成功后,向第一ECU发送解密后的第一ECU的升级信息。
在一些实施例中,若T-Box/网关验证该多个设备的升级信息失败,T-Box/网关向服务器发送验证失败信息,该验证失败信息用于指示T-Box/网关验证失败。
步骤303:第一ECU接收来自T-Box/网关的第一ECU的升级信息,并根据第一ECU的升级信息与服务器建立第一通道。
在一些实施例中,若第一ECU的升级信息包括第一ECU的升级包的下载地址,该第一ECU的升级包的下载地址指示服务器的地址,第一ECU可以根据第一ECU的升级包的下载地址确定服务器,并与该服务器建立第一通道。后续,第一ECU可以向服务器发送第一ECU的升级包的下载地址,以便服务器根据第一ECU的升级包的下载地址向第一ECU发送第一ECU的升级包。
在一些实施例中,若第一ECU的升级信息包括第一ECU的升级包的下载地址和服务器的地址,第一ECU可以根据服务器的地址确定服务器,并与该服务器建立第一通道。后续,第一ECU可以向服务器发送第一ECU的升级包的下载地址,以便服务器根据第一ECU的升级包的下载地址向第一ECU发送第一ECU的升级包。
在一些实施例中,若第一ECU的升级信息包括指示信息,该指示信息包括第一ECU的标识和服务器的标识,第一ECU根据该服务器的标识确定服务器,并与该服务器建立第一通道。后续,第一ECU可以向服务器发送第一ECU的标识,以便服务器根据第一ECU的标识向第一ECU发送第一ECU的升级包。
可选的,若服务器对该多个设备的升级信息进行了二层签名,第一ECU根据第一ECU的升级信息与服务器建立第一通道,包括:第一ECU在验证第一ECU的升级信息成功后,根据第一ECU的升级信息与服务器建立第一通道。例如,第一ECU根据第二摘要函数验证第一ECU的升级信息,并在验证成功后,根据第一ECU的升级信息与服务器建立第一通道。
需要说明的是,若服务器对该多个设备的升级信息进行了二层签名,T-Box/网关也可以对第一ECU的升级信息进行验证,并在验证成功后向第一ECU发送第一ECU的升级信息,如此,第一ECU可以不用验证第一ECU的升级信息。
进一步可选的,若第一ECU验证第一ECU的升级信息失败,第一ECU向服务器发送验证失败信息,该验证失败信息用于指示第一ECU验证失败。
其中,第一通道可以是TLS通道、HTTPs安全通道、或DTLS安全通道等。第一通道可以用于第一ECU和服务器通信。
在一些实施例中,第一ECU和服务器可以通过握手建立第一通道,第一通道建立成功后,第一ECU和服务器可以进行加密通信。
下面以第一ECU和服务器通过四次通信建立第一通道为例,介绍第一ECU和服务器通过握手建立第一通道的过程。
可选的,第一ECU和服务器建立第一通道,包括:第一ECU根据向服务器发送第一请求信息,其中,第一请求信息用于请求与服务器建立第一通道;第一ECU接收来自服务器的第一请求响应信息,其中,第一请求响应信息用于确定服务器与第一ECU的加密方法;第一ECU向服务器发送第一完成信息,其中,第一完成信息用于指示第一ECU和服务器的第一通道建立完成;第一ECU接收来自服务器的第一完成响应信息,其中,第一完成响应信息用于指示第一ECU和服务器的第一通道建立完成。
其中,第一请求信息可以包括第一ECU支持的加密通信协议版本(例如,TLS 1.2)、第四随机数和第一ECU支持的加密方法(例如,非对称加密算法(RSA)公钥加密方法)。第一请求信息可以命名为ClientHello请求。
可选的,第一请求信息还可以包括第一ECU支持的压缩方法。
其中,第一请求响应信息可以包括第五随机数、服务器的证书、服务器确定使用的加密通信协议版本和加密方法。第一请求响应信息可以命名为SeverHello信息。
可选的,第一请求响应信息可以包括服务器确定使用的压缩方法。
需要说明的是,若服务器和第一ECU支持的加密通信协议版本不一致,服务器可以关闭加密通信,也就是说,后续服务器与第一ECU通信时,不进行加密。
可选的,第一请求响应信息还可以用于请求第一ECU的证书。
其中,第一完成信息可以包括第六随机数、第一ECU编码改变通知和第一ECU握手结束通知。第一ECU编码改变通知可以用于指示第一ECU在发送第一完成信息后,使用第一请求响应信息中确定的加密方法发送信息。第一ECU握手结束通知可以用于指示第一ECU的握手阶段结束。
可选的,第一完成信息还可以是根据摘要函数(例如,哈希函数)对第一请求信息、第六随机数、第一ECU编码改变通知和第一ECU握手结束通知签名后的信息。
其中,第一完成响应信息可以包括服务器的编码改变通知和服务器握手结束通知。服务器编码改变通知可以用于指示服务器在发送第一完成响应信息后,使用第一请求响应信息中确定的加密方法发送信息。服务器握手结束通知可以用于指示服务器的握手阶段结束。
可选的,服务器接收到第一完成信息后,可以根据第四随机数、第五随机数、第六随机数和第一请求响应信息中确定的加密方法生成第二会话密钥。后续,服务器可以使用该第二会话密钥对发送给第一ECU的信息进行加密,或者,服务器可以使用第一会话密钥解密来自第一ECU的信息。
需要说明的是,当多个设备的升级信息包括一组第一ECU的升级信息时,每个第一ECU可以根据该ECU的升级信息与服务器建立第一通道。
步骤304:服务器与第一ECU建立第一通道,并通过第一通道向第一ECU发送第一ECU的升级包。
在一些实施例中,服务器和第一ECU可以通过握手建立第一通道,第一通道建立成功后,服务器和第一ECU可以进行加密通信。
下面以服务器和第一ECU通过四次通信建立第一通道为例,介绍服务器和第一ECU通过握手建立第一通道的过程。
可选的,服务器和第一ECU建立第一通道,包括:服务器接收来自第一ECU的 第一请求信息,其中,第一请求信息用于请求与服务器建立第一通道;服务器根据第一请求信息向第一ECU发送第一请求响应信息,其中,第一请求响应信息用于确定服务器与第一ECU的加密方法;服务器接收来自第一ECU的第一完成信息,其中,第一完成信息用于指示服务器和第一ECU的第一通道建立完成;服务器根据第一完成信息向第一ECU发送第一完成响应信息,其中,第一完成响应信息用于指示服务器和第一ECU的第一通道建立完成。
需要说明的是,当多个设备的升级信息包括一组第一ECU的升级信息时,服务器可以与每个第一ECU建立第一通道,并通过该第一通道向该第一通道对应的ECU发送该ECU的升级包。
可选的,服务器通过第一通道向第一ECU发送第一ECU的升级包,包括:服务器对第一ECU的升级包进行签名,得到签名后的第一ECU的升级包;服务器对签名后的第一ECU的升级包进行加密,得到加密后的第一ECU的升级包;服务器通过第一通道向第一ECU发送加密后第一ECU的升级包。
示例性的,以服务器用第一摘要函数对第一ECU的升级包进行签名为例,服务器根据第一摘要函数对第一ECU的升级包进行签名,得到签名后的第一ECU的升级包;服务器使用第二会话密钥对签名后的第一ECU的升级包进行加密,得到加密后的第一ECU的升级包;服务器通过第一通道向第一ECU发送加密后的第一ECU的升级包。
步骤305:第一ECU通过第一通道接收来自服务器的第一ECU的升级包,并根据第一ECU的升级包进行升级。
可选的,第一ECU根据第一ECU的升级包进行升级,包括:第一ECU在验证第一ECU的升级包的签名成功后,根据第一ECU的升级包进行升级。
示例性的,以服务器用第一摘要函数对第一ECU的升级包进行签名为例,第一ECU使用第二会话密钥解密第一ECU的升级包,得到解密后的第一ECU的升级包;第一ECU根据第一摘要函数验证解密后的第一ECU的升级包,并在验证成功后,根据第一ECU的升级包进行升级。
可选的,第一ECU根据第一ECU的升级包进行升级,包括:第一ECU安装该第一ECU的升级包。
基于图3所示的方法,服务器可以向T-Box/网关发送多个设备的升级信息,T-Box/网关接收来自服务器的多个设备的升级信息,并根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息,第一ECU接收来自T-Box/网关的第一ECU的升级信息,并根据第一ECU的升级信息与服务器建立第一通道,服务器可以通过第一通道向第一ECU发送第一ECU的升级包,第一ECU接收来自服务器的第一ECU的升级包,并根据第一ECU的升级包进行升级,如此,可以不用通过T-Box/网关下载第一ECU的升级包,可以提高升级效率和下载速度,并降低T-Box/网关的负载和存储需求。
需要说明的是,多个设备的升级信息还可以包括第二ECU的升级信息,和/或,网关的升级信息,和/或,T-Box的升级信息,T-Box/网关可以根据多个设备的升级信息向对应的设备发送该设备的升级信息,该设备接收到该设备的升级信息后,可以根据该设备的升级信息进行升级。
下面以多个设备的升级信息包括第二ECU的升级信息为例,介绍本申请实施例提 供的升级方法,多个设备的升级信息包括网关的升级信息,和/或,T-Box的升级信息时的情况,可以参考下述图4所示方法,不予赘述。
进一步可选的,多个设备的升级信息还可以包括第二ECU的升级信息,T-Box/网关可以根据第二ECU的升级信息向第二ECU发送第二ECU的升级信息,第二ECU接收来自第二ECU的升级信息,并根据第二ECU的升级信息进行升级。示例性的,如图4所示,图3所示的方法还包括步骤401和步骤402。
步骤401:T-Box/网关向第二ECU发送第二ECU的升级信息。
其中,第二ECU可以是图1B中的ECU 103-ECU 107中的任一ECU。第二ECU与第一ECU不同。
其中,第二ECU的升级信息可以包括第二ECU的升级包。
可选的,第二ECU是升级包较小和/或升级不频繁的ECU。
步骤402:第二ECU接收来自T-Box/网关的第二ECU的升级信息,并根据第二ECU的升级信息进行升级。
可选的,第二ECU根据第二ECU的升级信息进行升级,包括:第二ECU安装该第二ECU的升级包。
需要说明的是,本申请实施例不限制步骤401-步骤402和步骤302-步骤305的执行顺序,例如,本申请实施例可以先执行步骤401-步骤402,再执行步骤302-步骤305,还可以先执行步骤302-步骤305,再执行步骤401-步骤402,也可以同时执行步骤302-步骤305和步骤401-步骤402。
基于图4所示方法,当多个设备的升级信息还包括第二ECU的升级信息时,T-Box/网关可以向第二ECU发送第二ECU的升级信息,第二ECU接收来自T-Box/网关的第二ECU的升级信息,并根据第二ECU的升级信息进行升级,如此,T-Box/网关还可以协助第二ECU升级。
下面以T-Box具备协调车辆的内部设备升级的能力,多个设备的升级信息包括第一ECU的升级信息和第二ECU的升级信息为例,对本申请实施例提供的升级方法进行介绍。
如图5所示,为本申请实施例提供的一种升级方法,该升级方法包括步骤501-步骤508。
步骤501:服务器向T-Box发送多个设备的升级信息。
其中,该服务器可以是图1A中的服务器20,T-Box可以是车辆中的T-Box,例如,车辆可以是图1A中的车辆10,T-Box可以是图1B中的T-Box 101。
需要说明的是,本申请实施例中的服务器可以用云端替换,该云端可以是图1A中的云端30。
其中,多个设备的升级信息可以包括第一ECU的升级信息和第二ECU的升级信息。第一ECU以及第一ECU的升级信息的描述,可以参考图3所示方法中对第一ECU以及第一ECU的升级信息的介绍,不予赘述。第二ECU以及第二ECU的升级信息的描述,可以参考图4所示方法中对第二ECU以及第二ECU的升级信息的介绍,不予赘述。
可选的,步骤501之前,服务器和T-Box建立第二通道。服务器和T-Box建立第 二通道的描述,可以参考上述步骤301中服务器和T-Box/网关建立第二通道的介绍,不予赘述。
可选的,服务器发现第一ECU和第二ECU要升级,服务器向T-Box发送多个设备的升级信息。
示例性的,以图1A和图1B所示为例,服务器20接收到来自OEM***的指示信息,该指示信息用于指示服务器20通知第一ECU和第二ECU进行升级,服务器20向T-Box 101发送多个设备的升级信息。
可选的,服务器向T-Box发送多个设备的升级信息,包括:服务器对该多个设备的升级信息进行签名,得到签名后的该多个设备的升级信息;服务器对签名后的该多个设备的升级信息进行加密,得到加密后的多个设备的升级信息;服务器向T-Box发送加密后的多个设备的升级信息。
其中,服务器对该多个设备的升级信息进行签名,可以包括:服务器对该多个设备的升级信息进行一层签名,或者,服务器对该多个设备的升级信息进行两层签名。
可选的,服务器对该多个设备的升级信息进行一层签名,包括:服务器对由该多个设备的升级信息进行签名。
示例性的,以服务器对该多个设备的升级信息进行一层签名为例,服务器根据第一摘要函数(例如,哈希函数)对第一ECU的升级信息和第二ECU的升级信息进行签名,得到签名后的第一ECU的升级信息和第二ECU的升级信息,服务器使用第一会话密钥对签名后的第一ECU的升级信息和第二ECU的升级信息进行加密,得到加密后的第一ECU的升级信息和第二ECU的升级信息,服务器向T-Box发送加密后的第一ECU的升级信息和第二ECU的升级信息。
可选的,服务器对该多个设备的升级信息进行两层签名,包括:服务器对多个设备的升级信息中,每个设备的升级信息进行签名,得到多个设备的签名后的升级信息;服务器对多个设备的签名后的升级信息进行签名。
示例性的,以服务器对该多个设备的升级信息进行二层签名为例,服务器根据第二摘要函数对第一ECU的升级信息进行签名,得到第一签名信息;服务器根据第三摘要函数对第二ECU的升级信息进行签名,得到第二签名信息;服务器根据第一摘要函数对第一签名信息和第二签名信息进行签名,得到第三签名信息;服务器使用第一会话密钥对第三签名信息进行加密,得到加密后的第三签名信息;服务器向T-Box发送加密后的第三签名信息。其中,第一摘要函数、第二摘要函数和第三摘要函数可以相同也可以不同。
步骤502:T-Box接收来自服务器的多个设备的升级信息。
可选的,T-Box接收来自服务器的多个设备的升级信息之前,T-Box和服务器建立第二通道。T-Box和服务器建立第二通道的描述,可以参考上述步骤302中T-Box/网关和服务器建立第二通道的介绍,不予赘述。
可选的,T-Box接收到来自服务器的多个设备的升级信息后,可以对多个设备的升级信息进行验证,若验证成功,T-Box向该多个设备中的每个设备,发送该设备对应的升级信息;若验证失败,T-Box向服务器发送验证失败信息,该验证失败信息用于指示T-Box验证失败。
示例性的,以服务器对该多个设备的升级信息进行一层签名为例,T-Box解密该第一ECU的升级信息和第二ECU的升级信息,得到解密后的第一ECU的升级信息和解密后的第二ECU的升级信息;T-Box根据第一摘要函数验证解密后的第一ECU的升级信息和解密后的第二ECU的升级信息,并在验证成功后,向第一ECU发送解密后的第一ECU的升级信息,向第二ECU发送解密后的第二ECU的升级信息。
示例性的,以服务器对该多个设备的升级信息进行二层签名为例,T-Box解密该第一ECU的升级信息和第二ECU的升级信息,得到解密后的第一ECU的升级信息和解密后的第二ECU的升级信息;T-Box根据第一摘要函数验证解密后的第一ECU的升级信息和解密后的第二ECU的升级信息,并在验证成功后,向第一ECU发送解密后的第一ECU的升级信息;根据第三摘要函数验证解密后的第二ECU的升级信息,若解密后的第二ECU的升级信息验证成功,向第二ECU发送解密后的第二ECU的升级信息。
步骤503:T-Box根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息。
可选的,T-Box根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息,包括,T-Box根据第一ECU的升级信息,经网关向第一ECU转发(透传)第一ECU的升级信息。
其中,网关可以是图1B中的网关102。
步骤504:第一ECU接收来自T-Box的第一ECU的升级信息,并根据第一ECU的升级信息与服务器建立第一通道。
可选的,第一ECU接收来自T-Box的第一ECU的升级信息,包括,第一ECU通过网关接收来自T-Box的第一ECU的升级信息。
第一ECU根据第一ECU的升级信息与服务器建立第一通道的具体介绍可以参考上述步骤303中的描述,不予赘述。
步骤505:服务器与第一ECU建立第一通道,并通过第一通道向第一ECU发送第一ECU的升级包。
步骤506:第一ECU通过第一通道接收来自服务器的第一ECU的升级包,并根据第一ECU的升级包进行升级。
步骤505-步骤506的具体介绍可以参考上述步骤304-步骤305中的描述,不予赘述。
步骤507:T-Box向第二ECU发送第二ECU的升级信息。
步骤508:第二ECU接收来自T-Box的第二ECU的升级信息,并根据第二ECU的升级信息进行升级。
步骤507-步骤508的具体介绍可以参考上述步骤401-步骤402中的描述,不予赘述。
需要说明的是,本申请实施例不限制步骤503-步骤506和步骤507-步骤508的执行顺序,例如,本申请实施例可以先执行步骤503-步骤506,再执行步骤507-步骤508,还可以先执行步骤507-步骤508,再执行步骤步骤503-步骤506,也可以同时执行步骤503-步骤506和步骤507-步骤508。
基于图5所示的方法,服务器可以向T-Box发送多个设备的升级信息,T-Box接收来自服务器的多个设备的升级信息,并根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息,第一ECU接收来自T-Box的第一ECU的升级信息,并根据第一ECU的升级信息与服务器建立第一通道,服务器可以通过第一通道向第一ECU发送第一ECU的升级包,第一ECU接收来自服务器的第一ECU的升级包,并根据第一ECU的升级包进行升级,T-Box根据第二ECU的升级信息向第二ECU发送第二ECU的升级信息,第二ECU接收来自T-Box的第二ECU的第二ECU的升级信息,并根据第二ECU的升级信息进行升级,如此,第二ECU可以通过T-Box下载第二ECU的升级包,并进行升级,然而,第一ECU可以不用通过T-Box下载第一ECU的升级包,从而提高了升级效率和下载速度,并降低了T-Box的负载和存储需求。
下面以网关具备协调车辆的内部设备升级的能力,多个设备的升级信息包括第一ECU的升级信息和第二ECU的升级信息为例,对本申请实施例提供的升级方法进行介绍。
如图6所示,为本申请实施例提供的一种升级方法,该升级方法包括步骤601-步骤608。
步骤601:服务器向网关发送多个设备的升级信息。
其中,该服务器可以是图1A中的服务器20,网关可以是车辆中的网关,例如,车辆可以是图1A中的车辆10,网关可以是图1B中的网关102。
需要说明的是,本申请实施例中的服务器可以用云端替换,该云端可以是图1A中的云端30。
其中,多个设备的升级信息可以包括第一ECU的升级信息和第二ECU的升级信息。第一ECU以及第一ECU的升级信息的描述,可以参考图3所示方法中对第一ECU以及第一ECU的升级信息的介绍,不予赘述。第二ECU以及第二ECU的升级信息的描述,可以参考图4所示方法中对第二ECU以及第二ECU的升级信息的介绍,不予赘述。
可选的,服务器向网关发送多个设备的升级信息,包括:服务器向T-Box发送多个设备的升级信息,T-Box接收来自服务器的多个设备的升级信息,并将该多个设备的升级信息转发(透传)给网关。
可选的,服务器向T-Box发送多个设备的升级信息之前,服务器和T-Box建立第二通道。服务器和T-Box建立第二通道的描述,可以参考上述步骤301中服务器和T-Box/网关建立第二通道的介绍,不予赘述。
可选的,T-Box接收来自服务器的多个设备的升级信息之前,T-Box和服务器建立第二通道。T-Box和服务器建立第二通道的描述,可以参考上述步骤302中T-Box/网关和服务器建立第二通道的介绍,不予赘述。
可选的,服务器发现第一ECU和第二ECU要升级,服务器向网关发送多个设备的升级信息。
示例性的,以图1A和图1B所示为例,服务器20接收到来自OEM***的指示信息,该指示信息用于指示服务器20通知第一ECU和第二ECU进行升级,服务器20向网关102发送多个设备的升级信息。
可选的,服务器向网关发送多个设备的升级信息,包括:服务器对该多个设备的升级信息进行签名,得到签名后的该多个设备的升级信息;服务器对签名后的该多个设备的升级信息进行加密,得到加密后的多个设备的升级信息;服务器向网关发送加密后的多个设备的升级信息。
其中,服务器对该多个设备的升级信息进行签名,可以包括:服务器对该多个设备的升级信息进行一层签名,或者,服务器对该多个设备的升级信息进行两层签名。
可选的,服务器对该多个设备的升级信息进行一层签名,包括:服务器对该多个设备的升级信息进行签名。
示例性的,以服务器对该多个设备的升级信息进行一层签名为例,服务器根据第一摘要函数(例如,哈希函数)对第一ECU的升级信息和第二ECU的升级信息进行签名,得到签名后的第一ECU的升级信息和第二ECU的升级信息,服务器使用第一会话密钥对签名后的第一ECU的升级信息和第二ECU的升级信息进行加密,得到加密后的第一ECU的升级信息和第二ECU的升级信息,服务器向网关发送加密后的第一ECU的升级信息和第二ECU的升级信息。
可选的,服务器对该多个设备的升级信息进行两层签名,包括:服务器对多个设备的升级信息中,每个设备的升级信息进行签名,得到多个设备的签名后的升级信息;服务器对多个设备的签名后的升级信息进行签名。
示例性的,以服务器对该多个设备的升级信息进行二层签名为例,服务器根据第二摘要函数对第一ECU的升级信息进行签名,得到第一签名信息;服务器根据第三摘要函数对第二ECU的升级信息进行签名,得到第二签名信息;服务器根据第一摘要函数对第一签名信息和第二签名信息进行签名,得到第三签名信息;服务器使用第一会话密钥对第三签名信息进行加密,得到加密后的第三签名信息;服务器向网关发送加密后的第三签名信息。其中,第一摘要函数、第二摘要函数和第三摘要函数可以相同也可以不同。
步骤602:网关接收来自服务器的多个设备的升级信息。
可选的,网关接收来自服务器的多个设备的升级信息,包括:网关接收来自T-Box的多个设备的升级信息。
可选的,网关接收到来自服务器的多个设备的升级信息后,可以对多个设备的升级信息进行验证,若验证成功,网关向该多个设备中的每个设备,发送该设备对应的升级信息;若验证失败,网关向服务器发送验证失败信息,该验证失败信息用于指示网关验证失败。
示例性的,以服务器对该多个设备的升级信息进行一层签名为例,网关解密该第一ECU的升级信息和第二ECU的升级信息,得到解密后的第一ECU的升级信息和解密后的第二ECU的升级信息;网关根据第一摘要函数验证解密后的第一ECU的升级信息和解密后的第二ECU的升级信息,并在验证成功后,向第一ECU发送解密后的第一ECU的升级信息,向第二ECU发送解密后的第二ECU的升级信息。
示例性的,以服务器对该多个设备的升级信息进行二层签名为例,网关解密该第一ECU的升级信息和第二ECU的升级信息,得到解密后的第一ECU的升级信息和解密后的第二ECU的升级信息;网关根据第一摘要函数验证解密后的第一ECU的升级 信息和解密后的第二ECU的升级信息,并在验证成功后,向第一ECU发送解密后的第一ECU的升级信息;根据第三摘要函数验证解密后的第二ECU的升级信息,若解密后的第二ECU的升级信息验证成功,向第二ECU发送解密后的第二ECU的升级信息。
步骤603:网关根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息。
步骤604:第一ECU接收来自网关的第一ECU的升级信息,并根据第一ECU的升级信息与服务器建立第一通道。
步骤604的具体介绍可以参考上述步骤303中的描述,不予赘述。
步骤605:服务器与第一ECU建立第一通道,并通过第一通道向第一ECU发送第一ECU的升级包。
步骤606:第一ECU通过第一通道接收来自服务器的第一ECU的升级包,并根据第一ECU的升级包进行升级。
步骤605-步骤606的具体介绍可以参考上述步骤304-步骤305中的描述,不予赘述。
步骤607:网关向第二ECU发送第二ECU的升级信息。
步骤608:第二ECU接收来自网关的第二ECU的升级信息,并根据第二ECU的升级信息进行升级。
步骤607-步骤608的具体介绍可以参考上述步骤401-步骤402中的描述,不予赘述。
需要说明的是,本申请实施例不限制步骤603-步骤606和步骤607-步骤608的执行顺序,例如,本申请实施例可以先执行步骤603-步骤606,再执行步骤607-步骤608,还可以先执行步骤607-步骤608,再执行步骤步骤603-步骤606,也可以同时执行步骤603-步骤606和步骤607-步骤608。
基于图6所示的方法,服务器可以向网关发送多个设备的升级信息,网关接收来自服务器的多个设备的升级信息,并根据第一ECU的升级信息,向第一ECU发送第一ECU的升级信息,第一ECU接收来自网关的第一ECU的升级信息,并根据第一ECU的升级信息与服务器建立第一通道,服务器可以通过第一通道向第一ECU发送第一ECU的升级包,第一ECU接收来自服务器的第一ECU的升级包,并根据第一ECU的升级包进行升级,网关根据第二ECU的升级信息向第二ECU发送第二ECU的升级信息,第二ECU接收来自网关的第二ECU的第二ECU的升级信息,并根据第二ECU的升级信息进行升级,如此,第二ECU可以通过网关下载第二ECU的升级包,并进行升级,然而,第一ECU可以不用通过网关下载第一ECU的升级包,从而提高了升级效率和下载速度,并降低了网关的负载和存储需求。
上述主要从各个设备之间交互的角度对本申请实施例提供的方案进行了介绍。可以理解的是,上述服务器、云端、T-Box、网关或第一ECU等为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法操作,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬 件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对服务器、云端、T-Box、网关或第一ECU进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
比如,以采用集成的方式划分各个功能模块的情况下,图7示出了一种通信装置70的结构示意图。该通信装置70可以为第一ECU中的芯片或者片上***,或其他可实现上述第一ECU功能的组合器件、部件等,该通信装置70可以用于实现上述实施例中涉及的第一ECU的功能。
作为一种可能的实现方式,图7所示的通信装置70包括:接收模块701和处理模块702。
接收模块701,用于接收来自汽车盒子或网关的该通信装置70的升级信息。
处理模块702,用于根据该通信装置70的升级信息与服务器建立第一通道。
接收模块701,还用于通过该第一通道接收来自该服务器的该通信装置70的升级包。
处理模块702,还用于根据该通信装置70的升级包进行升级。
可选的,该第一通道为传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道。
可选的,处理模块702,具体用于向服务器发送第一请求信息,其中,该第一请求信息用于请求与该服务器建立该第一通道;处理模块702,还具体用于接收来自该服务器的第一请求响应信息,其中,该第一请求响应信息用于确定该服务器与该第一ECU的加密方法;处理模块702,还具体用于向该服务器发送第一完成信息,其中,该第一完成信息用于指示该通信装置70和该服务器的第一通道建立完成;处理模块702,还具体用于接收来自该服务器的第一完成响应信息,其中,该第一完成响应信息用于指示该通信装置70和该服务器的第一通道建立完成。
可选的,通信装置70的升级信息包括该通信装置70的升级包的下载地址。
可选的,通信装置70的升级信息包括指示信息,该指示信息用于指示对该通信装置70升级。
可选的,处理模块702,具体用于在验证该第一ECU的升级包的签名成功后,根据该第一ECU的升级包进行升级。
其中,上述方法实施例涉及的各操作的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在本实施例中,该通信装置70以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以指特定ASIC,电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到该通信装置70可以采用图2所示的形式。
比如,图2中的处理器201可以通过调用存储器203中存储的计算机执行指令,使得通信装置70执行上述方法实施例中的升级方法。
示例性的,图7中的接收模块701和处理模块702的功能/实现过程可以通过图2中的处理器201调用存储器203中存储的计算机执行指令来实现。或者,图7中的处理模块702的功能/实现过程可以通过图2中的处理器201调用存储器203中存储的计算机执行指令来实现,图7中的接收模块701的功能/实现过程可以通过图2中的通信接口204来实现。
由于本实施例提供的通信装置70可执行上述的升级方法,因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
比如,以采用集成的方式划分各个功能模块的情况下,图8示出了一种通信装置80的结构示意图。该通信装置80可以为T-Box/网关中的芯片或者片上***,或其他可实现上述T-Box/网关功能的组合器件、部件等,该通信装置80可以用于实现上述实施例中涉及的T-Box/网关的功能。
作为一种可能的实现方式,图8所示的通信装置80包括:接收模块801和发送模块802。
接收模块801,用于接收来自服务器的多个设备的升级信息,其中,该多个设备的升级信息包括第一电子控制单元ECU的升级信息,该第一ECU的升级信息用于指示该第一ECU与该服务器建立第一通道。
发送模块802,用于根据该第一ECU的升级信息向该第一ECU发送该第一ECU的升级信息。
可选的,该第一通道为传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道。
可选的,该第一ECU的升级信息包括该第一ECU的升级包的下载地址。
可选的,该第一ECU的升级信息包括指示信息,该指示信息用于指示对该第一ECU升级。
可选的,该多个设备的升级信息还包括第二ECU的升级包;发送模块802,还用于向该第二ECU发送该第二ECU的升级包。
其中,上述方法实施例涉及的各操作的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在本实施例中,该通信装置80以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以指特定ASIC,电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到该通信装置80可以采用图2所示的形式。
比如,图2中的处理器201可以通过调用存储器203中存储的计算机执行指令,使得通信装置80执行上述方法实施例中的升级方法。
示例性的,图8中的接收模块801和发送模块802的功能/实现过程可以通过图2中的处理器201调用存储器203中存储的计算机执行指令来实现。或者,图8中的接收模块801和发送模块802的功能/实现过程可以通过图2中的通信接口204来实现。
由于本实施例提供的通信装置80可执行上述的升级方法,因此其所能获得的技术 效果可参考上述方法实施例,在此不再赘述。
比如,以采用集成的方式划分各个功能模块的情况下,图9示出了一种通信装置90的结构示意图。该通信装置90可以为服务器中的芯片或者片上***,或其他可实现上述服务器功能的组合器件、部件等,该通信装置90可以用于实现上述实施例中涉及的服务器的功能。
作为一种可能的实现方式,图9所示的通信装置90包括:发送模块901和处理模块902。
发送模块901,用于向汽车盒子或网关发送多个设备的升级信息,其中,该多个设备的升级信息包括第一电子控制单元ECU的升级信息。
处理模块902,用于根据该第一ECU的升级信息与该第一ECU建立第一通道。
发送模块901,还用于通过该第一通道向该第一ECU发送该第一ECU的升级包。
可选的,该第一通道为传输层安全通道、超文本传输安全协议安全通道、或数据包传输层安全性协议安全通道。
可选的,处理模块902,具体用于接收来自该第一ECU的第一请求信息,其中,该第一请求信息用于请求与该通信装置90建立该第一通道;处理模块902,还具体用于根据该第一请求信息向该第一ECU发送第一请求响应信息,其中,该第一请求响应信息用于确定该通信装置90与该第一ECU的加密方法;处理模块902,还具体用于接收来自该第一ECU的第一完成信息,其中,该第一完成信息用于指示该第一ECU和该通信装置90的第一通道建立完成;处理模块902,还具体用于根据该第一完成信息向该第一ECU发送第一完成响应信息,其中,该第一完成响应信息用于指示该第一ECU和该通信装置90的第一通道建立完成。
可选的,该第一ECU的升级信息包括该第一ECU的升级包的下载地址。
可选的,该第一ECU的升级信息包括指示信息,该指示信息用于指示对该第一ECU升级。
可选的,处理模块902,还用于对该第一ECU的升级包进行签名。
可选的,该多个设备的升级信息还包括第二ECU的升级包。
其中,上述方法实施例涉及的各操作的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在本实施例中,该通信装置90以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以指特定ASIC,电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到该通信装置90可以采用图2所示的形式。
比如,图2中的处理器201可以通过调用存储器203中存储的计算机执行指令,使得通信装置90执行上述方法实施例中的升级方法。
示例性的,图9中的发送模块901和处理模块902的功能/实现过程可以通过图2中的处理器201调用存储器203中存储的计算机执行指令来实现。或者,图9中的处理模块902的功能/实现过程可以通过图2中的处理器201调用存储器203中存储的计算机执行指令来实现,图9中的发送模块901的功能/实现过程可以通过图2中的通信接口204来实现。
由于本实施例提供的通信装置90可执行上述的升级方法,因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
图10示出了的一种升级***的组成示意图,如图10所示,该升级***100中可以包括:服务器/云端1001、T-Box/网关1002和ECU 1003。需要说明的是,图10仅为示例性附图,本申请实施例不限定图10所示升级***100包括的设备以及设备的个数。
其中,服务器/云端1001具有上述图9所示通信装置90的功能,可以向T-Box/网关1002发送多个设备的升级信息,根据ECU 1003的升级信息与ECU 1003建立第一通道,通过该第一通道向ECU 1003发送ECU 1003的升级包。
T-Box/网关1002具有上述图8所示通信装置80的功能,可以接收来自服务器/云端1001的多个设备的升级信息,并根据ECU 1003的升级信息向ECU 1003发送该ECU 1003的升级信息。
ECU 1003具有上述图7所示通信装置70的功能,可以接收来自T-Box/网关1002的ECU 1003的升级信息,根据ECU 1003的升级信息与服务器/云端1001建立第一通道,通过该第一通道接收来自服务器/云端1001的ECU 1003的升级包,并根据ECU 1003的升级包进行升级。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到该升级***100对应网元的功能描述,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或操作,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅 仅是所附权利要求所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (48)

  1. 一种升级方法,其特征在于,所述方法应用于第一装置,所述方法包括:
    接收来自空中下载技术OTA节点的所述第一装置的升级信息;
    根据所述第一装置的升级信息与服务器建立第一通道;
    通过所述第一通道接收来自所述服务器的所述第一装置的升级包;
    根据所述第一装置的升级包进行升级。
  2. 根据权利要求1所述的方法,其特征在于,所述第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
  3. 根据权利要求1或2所述的方法,其特征在于,根据所述第一装置的升级信息与服务器建立第一通道,包括:
    向服务器发送第一请求信息,其中,所述第一请求信息用于请求与所述服务器建立所述第一通道;
    接收来自所述服务器的第一请求响应信息,其中,所述第一请求响应信息用于确定所述服务器与所述第一装置的加密方法;
    向所述服务器发送第一完成信息,其中,所述第一完成信息用于指示所述第一装置和所述服务器的第一通道建立完成;
    接收来自所述服务器的第一完成响应信息,其中,所述第一完成响应信息用于指示所述第一装置和所述服务器的第一通道建立完成。
  4. 根据权利要求1-3任一项所述的方法,其特征在于,所述第一装置的升级信息包括所述第一装置的升级包的下载地址。
  5. 根据权利要求1-3任一项所述的方法,其特征在于,所述第一装置的升级信息包括指示信息,所述指示信息用于指示对所述第一装置升级。
  6. 根据权利要求1-5任一项所述的方法,其特征在于,所述根据所述第一装置的升级包进行升级,包括:
    在验证所述第一装置的升级包的签名成功后,根据所述第一装置的升级包进行升级。
  7. 根据权利要求1-6中任一项所述的方法,其特征在于,所述第一装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  8. 一种升级方法,其特征在于,所述方法应用于空中下载技术OTA节点,所述方法包括:
    接收来自服务器的多个设备的升级信息,其中,所述多个设备的升级信息包括第一装置的升级信息,所述第一装置的升级信息用于指示所述第一装置与所述服务器建立第一通道;
    根据所述第一装置的升级信息向所述第一装置发送所述第一装置的升级信息。
  9. 根据权利要求8所述的方法,其特征在于,所述第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
  10. 根据权利要求8或9所述的方法,其特征在于,所述第一装置的升级信息包括所述第一装置的升级包的下载地址。
  11. 根据权利要求8或9所述的方法,其特征在于,所述第一装置的升级信息包 括指示信息,所述指示信息用于指示对所述第一装置升级。
  12. 根据权利要求8-11任一项所述的方法,其特征在于,所述多个设备的升级信息还包括第二装置的升级包;所述方法还包括:
    向所述第二装置发送所述第二装置的升级包。
  13. 根据权利要求8-12中任一项所述的方法,其特征在于,所述第一装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  14. 根据权利要求12所述的方法,其特征在于,所述第二装置与所述第一装置不同,所述第二装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  15. 一种升级方法,其特征在于,所述方法应用于服务器,所述方法包括:
    向空中下载技术OTA节点发送多个设备的升级信息,其中,所述多个设备的升级信息包括第一装置的升级信息;
    根据所述第一装置的升级信息与所述第一装置建立第一通道;
    通过所述第一通道向所述第一装置发送所述第一装置的升级包。
  16. 根据权利要求15所述的方法,其特征在于,所述第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
  17. 根据权利要求15或16所述的方法,其特征在于,根据所述第一装置的升级信息与所述第一装置建立第一通道,包括:
    接收来自所述第一装置的第一请求信息,其中,所述第一请求信息用于请求与所述服务器建立所述第一通道;
    根据所述第一请求信息向所述第一装置发送第一请求响应信息,其中,所述第一请求响应信息用于确定所述服务器与所述第一装置的加密方法;
    接收来自所述第一装置的第一完成信息,其中,所述第一完成信息用于指示所述第一装置和所述服务器的第一通道建立完成;
    根据所述第一完成信息向所述第一装置发送第一完成响应信息,其中,所述第一完成响应信息用于指示所述第一装置和所述服务器的第一通道建立完成。
  18. 根据权利要求15-17任一项所述的方法,其特征在于,所述第一装置的升级信息包括所述第一装置的升级包的下载地址。
  19. 根据权利要求15-17任一项所述的方法,其特征在于,所述第一装置的升级信息包括指示信息,所述指示信息用于指示对所述第一装置升级。
  20. 根据权利要求15-19任一项所述的方法,其特征在于,所述方法还包括:
    对所述第一装置的升级包进行签名。
  21. 根据权利要求15-20任一项所述的方法,其特征在于,所述多个设备的升级信息还包括第二装置的升级包。
  22. 根据权利要求15-21中任一项所述的方法,其特征在于,所述第一装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  23. 根据权利要求21所述的方法,其特征在于,所述第二装置与所述第一装置不同,所述第二装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  24. 一种通信装置,其特征在于,所述通信装置包括:接收模块和处理模块;
    所述接收模块,用于接收来自空中下载技术OTA节点的所述通信装置的升级信息;
    所述处理模块,用于根据所述通信装置的升级信息与服务器建立第一通道;
    所述接收模块,还用于通过所述第一通道接收来自所述服务器的所述通信装置的升级包;
    所述处理模块,还用于根据所述通信装置的升级包进行升级。
  25. 根据权利要求24所述的通信装置,其特征在于,所述第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
  26. 根据权利要求24或25所述的通信装置,其特征在于,
    所述处理模块,具体用于向服务器发送第一请求信息,其中,所述第一请求信息用于请求与所述服务器建立所述第一通道;
    所述处理模块,还具体用于接收来自所述服务器的第一请求响应信息,其中,所述第一请求响应信息用于确定所述服务器与所述通信装置的加密方法;
    所述处理模块,还具体用于向所述服务器发送第一完成信息,其中,所述第一完成信息用于指示所述通信装置和所述服务器的第一通道建立完成;
    所述处理模块,还具体用于接收来自所述服务器的第一完成响应信息,其中,所述第一完成响应信息用于指示所述通信装置和所述服务器的第一通道建立完成。
  27. 根据权利要求24-26任一项所述的通信装置,其特征在于,所述通信装置的升级信息包括所述通信装置的升级包的下载地址。
  28. 根据权利要求24-26任一项所述的通信装置,其特征在于,所述通信装置的升级信息包括指示信息,所述指示信息用于指示对所述通信装置升级。
  29. 根据权利要求24-28任一项所述的通信装置,其特征在于,
    所述处理模块,具体用于在验证所述通信装置的升级包的签名成功后,根据所述通信装置的升级包进行升级。
  30. 根据权利要求24-29中任一项所述的通信装置,其特征在于,所述通信装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  31. 一种通信装置,其特征在于,所述通信装置包括:接收模块和发送模块;
    所述接收模块,用于接收来自服务器的多个设备的升级信息,其中,所述多个设备的升级信息包括第一装置的升级信息,所述第一装置的升级信息用于指示所述第一装置与所述服务器建立第一通道;
    所述发送模块,用于根据所述第一装置的升级信息向所述第一装置发送所述第一装置的升级信息。
  32. 根据权利要求31所述的通信装置,其特征在于,所述第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
  33. 根据权利要求31或32所述的通信装置,其特征在于,所述第一装置的升级信息包括所述第一装置的升级包的下载地址。
  34. 根据权利要求31或32所述的通信装置,其特征在于,所述第一装置的升级信息包括指示信息,所述指示信息用于指示对所述第一装置升级。
  35. 根据权利要求31-34任一项所述的通信装置,其特征在于,所述多个设备的升级信息还包括第二装置的升级包;
    所述发送模块,还用于向所述第二装置发送所述第二装置的升级包。
  36. 根据权利要求31-35中任一项所述的通信装置,其特征在于,所述第一装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  37. 根据权利要求35所述的通信装置,其特征在于,所述第二装置与所述第一装置不同,所述第二装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  38. 一种通信装置,其特征在于,所述通信装置包括:发送模块和处理模块;
    所述发送模块,用于向OTA节点发送多个设备的升级信息,其中,所述多个设备的升级信息包括第一装置的升级信息;
    所述处理模块,用于根据所述第一装置的升级信息与所述第一装置建立第一通道;
    所述发送模块,还用于通过所述第一通道向所述第一装置发送所述第一装置的升级包。
  39. 根据权利要求38所述的通信装置,其特征在于,所述第一通道为传输层安全通道、超文本传输安全协议安全通道或数据包传输层安全性协议安全通道。
  40. 根据权利要求38或39所述的通信装置,其特征在于,
    所述处理模块,具体用于接收来自所述第一装置的第一请求信息,其中,所述第一请求信息用于请求与所述通信装置建立所述第一通道;
    所述处理模块,还具体用于根据所述第一请求信息向所述第一装置发送第一请求响应信息,其中,所述第一请求响应信息用于确定所述通信装置与所述第一装置的加密方法;
    所述处理模块,还具体用于接收来自所述第一装置的第一完成信息,其中,所述第一完成信息用于指示所述第一装置和所述通信装置的第一通道建立完成;
    所述处理模块,还具体用于根据所述第一完成信息向所述第一装置发送第一完成响应信息,其中,所述第一完成响应信息用于指示所述第一装置和所述通信装置的第一通道建立完成。
  41. 根据权利要求38-40任一项所述的通信装置,其特征在于,所述第一装置的升级信息包括所述第一装置的升级包的下载地址。
  42. 根据权利要求38-40任一项所述的通信装置,其特征在于,所述第一装置的升级信息包括指示信息,所述指示信息用于指示对所述第一装置升级。
  43. 根据权利要求38-42任一项所述的通信装置,其特征在于,
    所述处理模块,还用于对所述第一装置的升级包进行签名。
  44. 根据权利要求38-43任一项所述的通信装置,其特征在于,所述多个设备的升级信息还包括第二装置的升级包。
  45. 根据权利要求38-44中任一项所述的通信装置,其特征在于,所述第一装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  46. 根据权利要求44所述的通信装置,其特征在于,所述第二装置与所述第一装置不同,所述第二装置为电子控制单元ECU、网关、域控制器或汽车盒子。
  47. 一种通信装置,其特征在于,所述通信装置包括:
    至少一个处理器,存储器;
    所述存储器存储有程序指令,所述程序指令在所述至少一个处理器中执行,以实现权利要求1-7中任一项所述方法中所述的第一装置的功能,或者以实现权利要求8- 14中任一项所述方法中所述的OTA节点的功能,或者以实现权利要求15-23中任一项所述方法中所述的服务器的功能。
  48. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序指令,所述程序指令运行时,以实现权利要求1-7中任一项所述方法中所述的第一装置的功能,或者以实现权利要求8-14中任一项所述方法中所述的OTA节点的功能,或者以实现权利要求15-23中任一项所述方法中所述的服务器的功能。
PCT/CN2020/121269 2019-12-23 2020-10-15 升级方法及装置 WO2021129065A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022538331A JP2023507027A (ja) 2019-12-23 2020-10-15 アップグレード方法および装置
EP20907652.0A EP4068083A4 (en) 2019-12-23 2020-10-15 UPGRADE METHOD AND DEVICE
US17/846,942 US20220326938A1 (en) 2019-12-23 2022-06-22 Upgrade method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911342865.5A CN113094062A (zh) 2019-12-23 2019-12-23 升级方法及装置
CN201911342865.5 2019-12-23

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/846,942 Continuation US20220326938A1 (en) 2019-12-23 2022-06-22 Upgrade method and apparatus

Publications (1)

Publication Number Publication Date
WO2021129065A1 true WO2021129065A1 (zh) 2021-07-01

Family

ID=76573659

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/121269 WO2021129065A1 (zh) 2019-12-23 2020-10-15 升级方法及装置

Country Status (5)

Country Link
US (1) US20220326938A1 (zh)
EP (1) EP4068083A4 (zh)
JP (1) JP2023507027A (zh)
CN (1) CN113094062A (zh)
WO (1) WO2021129065A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114024732A (zh) * 2021-10-29 2022-02-08 百度在线网络技术(北京)有限公司 升级包下载方法、设备、存储介质及程序产品
CN115220750A (zh) * 2021-11-25 2022-10-21 广州汽车集团股份有限公司 汽车ota升级方法、前排主机及***
CN115412436A (zh) * 2022-08-30 2022-11-29 重庆长安新能源汽车科技有限公司 车窗开关的升级方法、装置、电子设备及存储介质
WO2023241218A1 (zh) * 2022-06-14 2023-12-21 一汽奔腾轿车有限公司 一种基于DoIP协议的车载信息娱乐***的OTA升级***及方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111757320B (zh) * 2019-03-28 2022-09-23 华为云计算技术有限公司 一种开启车辆的方法及相关设备
CN114006791B (zh) * 2021-10-29 2023-05-30 东风商用车有限公司 一种低延时报文转发方法及网关
CN115225492A (zh) * 2022-07-06 2022-10-21 中国第一汽车股份有限公司 一种远程升级方法及***
US20240061668A1 (en) * 2022-08-16 2024-02-22 Sap Se Automatic upgrade of on-premise software
CN116193436A (zh) * 2023-02-28 2023-05-30 东风汽车集团股份有限公司 一种车机设备ota升级包下发方法及***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150349977A1 (en) * 2012-12-07 2015-12-03 Wabco Gmbh Method and System for Transmitting Telematics Data from a Truck to a Telematics Portal
US20180013723A1 (en) * 2016-07-11 2018-01-11 Honeywell International Inc. Cross-domain data-gate for secure transmission of data over publicly shared datalinks
CN108182072A (zh) * 2017-12-28 2018-06-19 上汽通用五菱汽车股份有限公司 车辆电子设备的远程升级方法、服务器及存储介质
CN108241500A (zh) * 2018-01-15 2018-07-03 腾讯科技(深圳)有限公司 一种硬件组件的修复方法、装置、***和存储介质
CN109189447A (zh) * 2018-10-18 2019-01-11 北京长城华冠汽车技术开发有限公司 车载通讯模块的远程升级方法和装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4440168B2 (ja) * 2005-05-09 2010-03-24 キヤノン株式会社 画像形成システム
US8869138B2 (en) * 2011-11-11 2014-10-21 Wyse Technology L.L.C. Robust firmware update with recovery logic
US10021509B2 (en) * 2016-03-25 2018-07-10 At&T Mobility Ii Llc Methods and apparatus to provide an update via a satellite connection
US20170315797A1 (en) * 2016-05-02 2017-11-02 Ford Global Technologies, Llc Vehicle connection location regional software delivery
US10171478B2 (en) * 2016-06-30 2019-01-01 Faraday & Future Inc. Efficient and secure method and apparatus for firmware update
JP6376312B1 (ja) * 2017-02-01 2018-08-22 住友電気工業株式会社 制御装置、プログラム更新方法、およびコンピュータプログラム
CN108984191A (zh) * 2017-06-02 2018-12-11 阿里巴巴集团控股有限公司 一种应用更新的方法、装置以及电子设备
CN111279310B (zh) * 2017-10-24 2023-09-12 华为国际有限公司 一种车载设备升级方法及相关设备
WO2019168907A1 (en) * 2018-02-27 2019-09-06 Excelfore Corporation Broker-based bus protocol and multi-client architecture

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150349977A1 (en) * 2012-12-07 2015-12-03 Wabco Gmbh Method and System for Transmitting Telematics Data from a Truck to a Telematics Portal
US20180013723A1 (en) * 2016-07-11 2018-01-11 Honeywell International Inc. Cross-domain data-gate for secure transmission of data over publicly shared datalinks
CN108182072A (zh) * 2017-12-28 2018-06-19 上汽通用五菱汽车股份有限公司 车辆电子设备的远程升级方法、服务器及存储介质
CN108241500A (zh) * 2018-01-15 2018-07-03 腾讯科技(深圳)有限公司 一种硬件组件的修复方法、装置、***和存储介质
CN109189447A (zh) * 2018-10-18 2019-01-11 北京长城华冠汽车技术开发有限公司 车载通讯模块的远程升级方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4068083A4

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114024732A (zh) * 2021-10-29 2022-02-08 百度在线网络技术(北京)有限公司 升级包下载方法、设备、存储介质及程序产品
CN115220750A (zh) * 2021-11-25 2022-10-21 广州汽车集团股份有限公司 汽车ota升级方法、前排主机及***
CN115220750B (zh) * 2021-11-25 2024-03-15 广州汽车集团股份有限公司 汽车ota升级方法、前排主机及***
WO2023241218A1 (zh) * 2022-06-14 2023-12-21 一汽奔腾轿车有限公司 一种基于DoIP协议的车载信息娱乐***的OTA升级***及方法
CN115412436A (zh) * 2022-08-30 2022-11-29 重庆长安新能源汽车科技有限公司 车窗开关的升级方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
JP2023507027A (ja) 2023-02-20
CN113094062A (zh) 2021-07-09
US20220326938A1 (en) 2022-10-13
EP4068083A4 (en) 2023-01-11
EP4068083A1 (en) 2022-10-05

Similar Documents

Publication Publication Date Title
WO2021129065A1 (zh) 升级方法及装置
CN110383773B (zh) 具有相关设备的被配置成基于面向服务的体系结构实施集中式服务ecu的专门编程的计算***及其使用方法
US20230289174A1 (en) Vehicle upgrade method and apparatus
JP7139424B2 (ja) 車両搭載機器アップグレード方法および関連機器
CN111263352B (zh) 车载设备的ota升级方法、***、存储介质及车载设备
US20220276855A1 (en) Method and apparatus for processing upgrade package of vehicle
US11972247B2 (en) Software upgrading method, apparatus, and system
US11321074B2 (en) Vehicle-mounted device upgrade method and related apparatus
EP4016955B1 (en) Security protection method and device for vehicle-mounted system
CN112913189B (zh) 一种ota升级方法及装置
WO2022165711A1 (zh) 基于空中下载技术ota的升级方法及装置
WO2021147100A1 (zh) 报文传输方法及装置
CN113365244A (zh) 整车ota升级方法、装置、电子设备、介质及签名方法
CN113824795A (zh) 车端与云端的通信方法、装置、***
WO2021179894A1 (zh) 证书切换方法及装置
US20240171564A1 (en) Application programming interface for certificate management systems
WO2023108618A1 (zh) 一种基于空中下载ota技术的升级方法及通信装置
CN114879980B (zh) 车载应用安装方法、装置、计算机设备、存储介质
WO2024029196A1 (ja) 管理装置、機能部、車載通信システムおよび車両通信管理プログラム
WO2023070426A1 (zh) 一种配置方法和装置
CN118316922A (zh) 空中下载方法、装置、电子设备和存储介质
CN118152064A (zh) 基于DoIP的虚拟ECU处理方法、装置、设备及介质
CN118041961A (zh) 车载域控制器的数据传输方法以及***
JP2023005718A (ja) 車載通信システム,リプロポリシーメタデータのデータ構造及びダウンロードメタデータのデータ構造
CN116974613A (zh) 一种升级方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20907652

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022538331

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2020907652

Country of ref document: EP

Effective date: 20220628

NENP Non-entry into the national phase

Ref country code: DE