Upgrading method, vehicle controller and vehicle

By generating and verifying random numbers between the vehicle controller and the upgrade server, the security problem of intercepting the authentication information in the OTA upgrade is solved, and high security of data transmission is achieved.

CN120045206APending Publication Date: 2025-05-27ZHEJIANG GEELY HLDG GRP CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510107894.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-23
Publication Date
2025-05-27

AI Technical Summary

Technical Problem

How to improve the security of OTA upgrades and prevent the probability of successful identification after authentication information is intercepted.

Method used

By generating and verifying random numbers between the vehicle controller and the upgrade server, it is ensured that even if the first verification random number is intercepted, it cannot be used correctly, and the security of data transmission is improved by different random numbers used each time.

Benefits of technology

It effectively improves the security of data transmission between the vehicle controller and the upgraded server, prevents identity authentication information from being intercepted and tampered, and solves the security problem of OTA upgrades.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120045206A_ABST
    Figure CN120045206A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of Internet of Vehicles, in particular to an upgrading method, a vehicle controller and a vehicle. The method comprises the following steps: when upgrading task information sent by an upgrading server is received, generating a first verification random number; wherein the upgrading task information is sent when the upgrading server determines that the preset program of the new version exists; sending the first verification random number to an upgrade server; receiving upgrading information which is sent by the upgrading server and contains a second verification random number; unlocking the upgrading information, and determining a second verification random number contained in the upgrading information; and when the second verification random number is the same as the first verification random number, generating prompt information for prompting to upgrade the preset program.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of vehicle networking, and particularly to an upgrade method, a vehicle controller, and a vehicle. Background Art

[0002] Currently, with the gradual development of technology, more and more vehicles support software upgrades by means of Over-the-air Technology (OTA). Among them, when upgrading using OTA technology, identity verification is required. When the identity verification is successful, the Electronic Control Unit (ECU) of the vehicle will be unlocked to upgrade the software that needs to be upgraded.

[0003] Therefore, how to improve the security of OTA upgrades has become an urgent problem to be solved. Summary of the Invention

[0004] To solve the above technical problems, the present disclosure provides an upgrade method, a vehicle controller, and a vehicle, which are used to solve the problem of how to reduce the probability of successfully identifying the intercepted identity verification information.

[0005] In a first aspect, the present application provides an upgrade method, including: generating a first verification random number when receiving upgrade task information sent by an upgrade server; where the upgrade task information is sent by the upgrade server when it determines that there is a new version of a preset program; sending the first verification random number to the upgrade server; receiving upgrade information sent by the upgrade server and including a second verification random number; unlocking the upgrade information to determine the second verification random number included in the upgrade information; and generating a prompt information for prompting to upgrade the preset program when the second verification random number is the same as the first verification random number.

[0006] In some feasible examples, generating a first verification random number when receiving upgrade task information sent by an upgrade server includes: generating a first verification random number through a preset generator when receiving upgrade task information sent by the upgrade server; where the preset generator includes any one of a pseudo-random number generator, a true random number generator, and a quantum random number generator.

[0007] In some feasible examples, the preset generator includes a quantum random number generator; generating at least one derived random number based on a derivation multiple, a main derived random number of the previous cycle, and a derived random number seed; and generating a first verification random number based on the derived random number.

[0008] In some feasible examples, generating a first verification random number based on the derived random number includes: randomly selecting a derived random number from the derived random numbers as the first verification random number.

[0009] In some feasible examples, generating a first verification random number based on a derived random number includes: concatenating the derived random numbers into a long string; intercepting a substring of a target length from the long string; and randomly selecting a character of a preset length from the substring as the first verification random number.

[0010] In some feasible examples, before generating at least one derived random number based on a derived multiple, the main derived random number of the previous cycle, and the derived random number seed, the upgrade method provided by the present disclosure further includes: when receiving upgrade task information sent by an upgrade server, generating a first verification random number, including: obtaining a sampling period agreed with the upgrade server; sampling a target number of quantum random numbers from a random number pool of a quantum key distribution device according to the sampling period, and generating a current derived random number seed based on the quantum random numbers; and generating a derived multiple based on a target quantum random number derivation rate and the sampling period.

[0011] In a second aspect, the present application provides a vehicle controller, including: a processing module, configured to generate a first verification random number when a transceiver module receives upgrade task information sent by an upgrade server; where the upgrade task information is sent when the upgrade server determines that there is a new version of a preset program; the processing module is further configured to control the transceiver module to send the first verification random number to the upgrade server; the transceiver module is further configured to receive upgrade information sent by the upgrade server and including a second verification random number; the processing module is further configured to unlock the upgrade information received by the transceiver module and determine the second verification random number included in the upgrade information; and the processing module is further configured to generate a prompt message for prompting to upgrade the preset program when the second verification random number is the same as the first verification random number.

[0012] In some feasible examples, the processing module is specifically configured to generate a first verification random number through a preset generator when the transceiver module receives upgrade task information sent by an upgrade server; where the preset generator includes any one of a pseudo-random number generator, a true random number generator, and a quantum random number generator.

[0013] In a third aspect, the present application provides a vehicle, and the vehicle includes the vehicle control as above.

[0014] In a fourth aspect, the present application provides a computer-readable storage medium, and computer-executable instructions are stored in the computer-readable storage medium. When the computer-executable instructions are executed by a processor, they are used to implement the method as above.

[0015] The technical solution provided by the present disclosure has the following advantages compared with the prior art:

[0016] The upgrade method provided by the present disclosure is such that when the upgrade server determines that there is a new version of the preset program, it sends upgrade task information to the vehicle controller. After that, when the vehicle controller receives the upgrade task information sent by the upgrade server, it generates a first verification random number; the vehicle controller sends the first verification random number to the upgrade server; at this time, even if the first verification random number is intercepted, since the role of the intercepted first verification random number is not limited, it cannot be used correctly even if the first verification random number is intercepted; at the same time, since the first verification random numbers used each time between the vehicle controller and the upgrade server are different, the security of data transmission between the vehicle controller and the upgrade server can be improved. After that, the vehicle controller receives the upgrade information containing the second verification random number sent by the upgrade server; the vehicle controller unlocks the upgrade information to determine the second verification random number contained in the upgrade information; at this time, if the upgrade information is intercepted and the intercepted second verification random number is modified, since the vehicle controller and the upgrade server have previously agreed on the random number, the second verification random number in the modified upgrade information will be different from the first verification random number at this time. At this time, the vehicle controller does not execute the upgrade information, or does not modify the intercepted second verification random number, but uses the second verification random number for other purposes. At this time, since the random number is only used when the application program is upgraded, even if the vehicle controller determines that the second verification random number is the same as the first verification random number, that is, it will not generate a prompt message for prompting the upgrade of the preset program, nor will it execute other functions, thus improving the security of data transmission between the vehicle controller and the upgrade server and solving the problem of how to improve the security of OTA upgrades. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] The accompanying drawings herein are incorporated into the specification and form a part of the specification, showing embodiments consistent with the present disclosure and, together with the specification, are used to explain the principles of the present disclosure.

[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present disclosure or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0019] Figure 1 Exemplarily shown therein is one of the flow diagrams of an upgrade method provided in Embodiment 1 of the present disclosure;

[0020] Figure 2 Exemplarily shown therein is the second of the flow diagrams of an upgrade method provided in Embodiment 1 of the present disclosure;

[0021] Figure 3Exemplarily shown is the third schematic diagram of the process of an upgrade method provided in the first embodiment of the present invention;

[0022] Figure 4 Exemplarily shown is the fourth schematic diagram of the process of an upgrade method provided in the first embodiment of the present invention;

[0023] Figure 5 Exemplarily shown is the fifth schematic diagram of the process of an upgrade method provided in the first embodiment of the present invention;

[0024] Figure 6 Exemplarily shown is the sixth schematic diagram of the process of an upgrade method provided in the first embodiment of the present invention;

[0025] Figure 7 Exemplarily shown is the first schematic diagram of the structure of a vehicle controller provided in the second embodiment of the present invention;

[0026] Figure 8 Exemplarily shown is the second schematic diagram of the structure of a vehicle controller provided in the second embodiment of the present invention. Detailed implementation manners

[0027] In order to more clearly understand the above-mentioned objects, features and advantages of the present disclosure, the solutions of the present disclosure will be further described below. It should be noted that, without conflict, the embodiments of the present disclosure and the features in the embodiments may be combined with each other.

[0028] Many specific details are set forth in the following description in order to provide a thorough understanding of the present disclosure, but the present disclosure may be implemented in other ways different from those described herein; obviously, the embodiments in the specification are only a part of the embodiments of the present disclosure, rather than all the embodiments.

[0029] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or device. Without further limitation, an element defined by the statement "including a..." does not exclude the existence of another identical element in the process, method, article or device including the said element.

[0030] Embodiment 1

[0031] Figure 1A schematic flowchart of an upgrade method is exemplarily shown. The execution subject of this example can be a vehicle controller, such as Figure 1 As shown, the method includes:

[0032] S11. When receiving the upgrade task information sent by the upgrade server, generate a first verification random number. Among them, the upgrade task information is sent when the upgrade server determines that there is a new version of the preset program.

[0033] In some examples, the vehicle controller includes a main upgrade electronic control unit (Electronic Control Unit, ECU) for interacting with the upgrade server and sub-ECUs of at least one target device. The target device includes any one of an engine, a transmission, and an anti-lock braking system, etc. After the main ECU receives the upgrade task information sent by the upgrade server, the main ECU determines at least one target device that needs to be upgraded according to the upgrade task information. Then, the main ECU pushes the upgrade task information to the sub-ECUs of each target device that needs to be upgraded. For the sub-ECU that receives the upgrade task information, when the sub-ECU receives the upgrade task information sent by the upgrade server, it generates a first verification random number. It can be seen that no encrypted SAC (Sum of Absolute Changes) value is generated or transmitted between the upgrade server and the sub-ECU, preventing hackers from intercepting and using it, and improving the security of data transmission between the vehicle controller and the upgrade server.

[0034] In some examples, the upgrade server is used to provide OTA services. After the vehicle controller establishes a communication connection with the upgrade server, the upgrade server can provide OTA services for the application programs installed in the vehicle controller.

[0035] In some examples, when the upgrade server determines that there is a new version of the preset program, it sends upgrade task information to the vehicle controller. At this time, when the vehicle controller receives the upgrade task information sent by the upgrade server, it generates a first verification random number. For example, the vehicle controller generates the first verification random number based on a preset generator, or generates the first verification random number through a quantum key distribution device.

[0036] In some examples, one vehicle controller corresponds to one quantum key distribution (Quantum Key Distribution, QKD) device.

[0037] In some examples, security protocols such as Transport Layer Security (TLS) / Secure Sockets Layer (SSL) are usually used when communicating between the upgrade server and the main ECU or sub-ECU.

[0038] S12. Send the first verification random number to the upgrade server.

[0039] In some examples, the sub-ECU sends the first verification random number to the upgrade server via a secure communication protocol (such as TLS / SSL). This step ensures the confidentiality and integrity of the data during transmission.

[0040] In some examples, after receiving the first verification random number, the upgrade server encrypts the first verification random number according to the encryption algorithm agreed upon with the vehicle controller to generate upgrade information containing the second verification random number.

[0041] Alternatively, after receiving the first verification random number, the upgrade server encrypts the second verification random number according to the encryption algorithm and key agreed upon with the vehicle controller to generate upgrade information containing the second verification random number.

[0042] In some examples, the key can be a Pre-Shared Key (PSK) or implemented through a secure key exchange protocol (such as Diffie-Hellman).

[0043] In some examples, the first verification random number is the same as the second verification random number.

[0044] In some examples, the encryption algorithm can be the AES128 algorithm.

[0045] In some examples, the key can be a Secure Authentication Code (SAC).

[0046] It can be seen that only the first verification random number is transmitted between the upgrade server and the sub-ECU. Even if the first verification random number is intercepted, it is difficult for an attacker to forge a legitimate identity due to the unpredictability of the first verification random number, enhancing the security of the system.

[0047] S13. Receive the upgrade information containing the second verification random number sent by the upgrade server.

[0048] S14. Unlock the upgrade information to determine the second verification random number contained in the upgrade information.

[0049] S15. When the second verification random number is the same as the first verification random number, generate a prompt message for prompting the upgrade preset program.

[0050] In some examples, when the second verification random number is different from the first verification random number, there may be a risk of a cyber attack at this time. Therefore, the vehicle controller does not need to execute this upgrade information to avoid the phenomenon that the vehicle controller becomes unusable due to being attacked.

[0051] As can be seen from the above, for the upgrade method provided by the embodiments of the present disclosure, even if the first verification random number is intercepted, since the function of the intercepted first verification random number is not limited, it cannot be correctly used even if the first verification random number is intercepted. At the same time, since the first verification random numbers used each time between the vehicle controller and the upgrade server are different, the security of data transmission between the vehicle controller and the upgrade server can be improved. At the same time, if the upgrade information is intercepted and the intercepted second verification random number is modified, at this time, since the vehicle controller and the upgrade server have pre-agreed on the random number, the second verification random number in the modified upgrade information will be different from the first verification random number. At this time, the vehicle controller does not execute the upgrade information, or does not modify the intercepted second verification random number, but uses the second verification random number for other purposes. At this time, since the random number is only used when the application program is upgraded, even if the vehicle controller determines that the second verification random number is the same as the first verification random number, that is, it will not generate a prompt message for prompting the upgrade preset program, nor will it execute other functions, thereby improving the security of data transmission between the vehicle controller and the upgrade server.

[0052] In some feasible examples, in combination with Figure 1 , such as Figure 2 shown, the above S11 can be specifically implemented by the following S110.

[0053] S110. When receiving the upgrade task information sent by the upgrade server, generate a first verification random number through a preset generator. The preset generator includes any one of a Pseudo-Random Number Generator (PRNG), a True Random Number Generator (TRNG), and a Quantum Random Number Generator (QRNG).

[0054] In some examples, the first verification random number between the vehicle controller and the upgrade server is transmitted in plain text.

[0055] In some examples, when the preset generator includes a QRNG, when the sub-ECU receives the upgrade task information, it triggers the QRNG to generate a first verification random number. When the QRNG generates the first verification random number, the following conditions need to be met:

[0056] Hardware preparation: First, ensure that a QRNG chip is integrated in the sub-ECU. Such a chip is usually based on quantum physical principles, such as the measurement of the quantum state of photons, the quantum tunneling effect, etc., and can generate truly random numbers.

[0057] Power Supply and Interface: Ensure that the chip of the QRNG has a stable power supply and a reliable communication interface with the main control unit of the sub-ECU, such as Serial Peripheral Interface (SPI), Inter-Integrated Circuit (I2C), or General Purpose Input / Output (GPIO).

[0058] The process of the QRNG generating the first verification random number includes:

[0059] 1. Initialize the chip of the QRNG

[0060] Power-on Reset: When the sub-ECU starts up, perform a power-on reset on the chip of the QRNG to ensure it is in an initial state.

[0061] Configure Parameters: According to requirements, configure the parameters of the chip of the QRNG through the communication interface between the sub-ECU and the chip of the QRNG, such as the length of the generated random number, the generation rate, etc.

[0062] 2. Trigger the generation of the random number

[0063] Generation Request: When the sub-ECU receives the upgrade task information sent by the main ECU, trigger the QRNG chip to start generating the first verification random number.

[0064] Read the Random Number: The sub-ECU reads the generated first verification random number from the chip of the QRNG through the communication interface with the chip of the QRNG. This process needs to ensure the reliability and security of data transmission.

[0065] 3. Data Processing

[0066] Data Verification: After reading the first verification random number, some basic data verifications can be performed, such as checking whether the data length meets the expectation, whether there are obvious repeated patterns, etc.

[0067] Data Storage: Store the generated first verification random number in the secure memory area of the sub-ECU for subsequent use.

[0068] As can be seen from the above, in the upgrade method provided by the embodiments of the present disclosure, even if the first verification random number is intercepted, since the role of the intercepted first verification random number is not limited, it cannot be correctly used even if the first verification random number is intercepted; at the same time, since the first verification random numbers used each time between the vehicle controller and the upgrade server are different, the security of data transmission between the vehicle controller and the upgrade server can be improved.

[0069] In some feasible examples, in combination withFigure 1 , as Figure 3 shown, the preset generator includes a quantum random number generator; the above S11 can be specifically implemented by the following S111 and S112.

[0070] S111. Generate at least one derived random number based on the derived magnification, the main derived random number of the previous cycle, and the derived random number seed.

[0071] In some examples, for the first cycle, the main derived random number of the previous cycle is zero. For the main derived random numbers other than the first cycle, after waiting for the length requirement |H| of the long string spliced by the random numbers in the local quantum random number pool, directly sample and use it as the main derived random number.

[0072] In some examples, the vehicle controller uses the quantum random number derivation module to derive the main derived random number and the derived random number seed of the previous cycle DM times through the Hash-based Message Authentication Code (HMAC) technology, so as to generate at least one derived random number. Among them, the total number of derived random numbers is equal to DM.

[0073] In some examples, the main derived random number, the derived random number seed, and the derived magnification of the previous cycle can be input into the derived model for derivation to generate at least one derived random number.

[0074] Among them, the training process of the derived model includes:

[0075] Obtain the training sample data and the labeled results of the training sample data. Among them, the training sample data includes the historical main derived random number, the derived random number seed, and the derived magnification, and the labeled results include at least one derived random number corresponding to the historical main derived random number, the derived random number seed, and the derived magnification.

[0076] Input the training sample data into the neural network model for learning to obtain the prediction result of the neural network model for the training sample data.

[0077] Based on the prediction result and the labeled result, adjust the network parameters of the neural network model until the neural network model converges to obtain the derived model.

[0078] S112. Generate the first verification random number based on the derived random number.

[0079] In some examples, a derived random number can be randomly selected from the derived random numbers as the first verification random number; or, the derived random numbers are spliced into a long string, a substring of the target length is intercepted from the long string, and a derived random number randomly selected from the derived random numbers included in the substring is used as the first verification random number.

[0080] From the above, it can be seen that in the upgrade method provided by the embodiment of the present disclosure, even if the first verification random number is intercepted, since the function of the intercepted first verification random number is not limited, even if the first verification random number is intercepted, it cannot be used correctly; at the same time, since the first verification random number used each time between the vehicle controller and the upgrade server is different, the security of data transmission between the vehicle controller and the upgrade server can be improved.

[0081] In some possible implementation examples, combined with Figure 3 ,like Figure 4 As shown, the above S112 can be specifically implemented through the following S1120.

[0082] S1120. Randomly select a derived random number from the derived random numbers as a first verification random number.

[0083] From the above, it can be seen that in the upgrade method provided by the embodiment of the present disclosure, even if the first verification random number is intercepted, since the function of the intercepted first verification random number is not limited, even if the first verification random number is intercepted, it cannot be used correctly; at the same time, since the first verification random number used each time between the vehicle controller and the upgrade server is different, the security of data transmission between the vehicle controller and the upgrade server can be improved.

[0084] In some possible implementation examples, combined with Figure 3 ,like Figure 5 As shown, the above S112 can be specifically implemented through the following S1121-S1123.

[0085] S1121. Concatenate the derived random numbers into a long string.

[0086] S1122. Extract a substring of a target length from the long string.

[0087] In some examples, the target length may be a preset first length, or the target length may be determined based on a first total number of characters included in the long string, such as the target length is equal to half of the first total number.

[0088] S1123. Randomly select a character of a preset length in the substring as a first verification random number.

[0089] In some examples, the preset length may be a preset second length, or the preset length may be determined based on a second total number of characters included in the substring, such as the preset length being equal to half of the second total number.

[0090] As can be seen from the above, for the upgrade method provided by the embodiments of the present disclosure, even if the first verification random number is intercepted, since the function of the intercepted first verification random number is not limited, it cannot be correctly used even if the first verification random number is intercepted; at the same time, since the first verification random numbers used each time between the vehicle controller and the upgrade server are different, the security of data transmission between the vehicle controller and the upgrade server can be improved.

[0091] In some feasible examples, in combination with Figure 3 , such as Figure 6 shown, the upgrade method provided by the embodiments of the present disclosure further includes S16 - S18.

[0092] S16. Obtain the sampling period agreed with the upgrade server.

[0093] In some examples, the upgrade server and the ECU obtain quantum random numbers through Quantum Key Distribution (QKD) devices directly connected to them respectively. These random numbers are generated based on the principles of quantum mechanics, with extremely high randomness and security, and the first verification random numbers generated each time are different.

[0094] In some examples, the obtained first verification random numbers are stored in the local quantum random number pool of the QKD device corresponding to the vehicle controller. Among them, the data structure of the local quantum random number pool can be a database, a file system, or other forms of structures.

[0095] In some examples, the upgrade server and the vehicle controller negotiate to determine an initial sampling period T. This sampling period can be fixed or dynamically adjusted according to actual requirements.

[0096] In some examples, when the upgrade server and the vehicle controller negotiate to determine an initial sampling period T, it can be carried out through a secure communication protocol (such as the Transport Layer Security (TLS) protocol) to ensure the security of the negotiation process.

[0097] S17. Sample a target number of quantum random numbers from the random number pool of the quantum key distribution device according to the sampling period, and generate the current derived random number seed based on the quantum random numbers.

[0098] In some examples, within each random number sampling period T, the vehicle controller and the upgrade server agree on a sampling period. After that, the vehicle controller samples a target number of quantum random numbers from the random number pool of the quantum key distribution device according to the sampling period, and generates the current derived random number seed based on the quantum random numbers. Slide-sample a certain number of quantum random numbers from their respective local quantum random number pools to generate the derived random number seed SDKS for this period.

[0099] In some examples, the target number is equal to the derivation multiple.

[0100] In some examples, when sampling a target number of quantum random numbers from the random number pool of the quantum key distribution device according to the sampling period, slide-sampling can be performed, such as slide-sampling in the random number pool of the quantum key distribution device according to a time window or a fixed number within the sampling period to obtain the target number of quantum random numbers. Among them, the strategy of slide-sampling can be uniform distribution or weighted distribution to ensure the randomness and fairness of slide-sampling. For example, a pseudo-random number generator (PRNG) can be used to determine the position of each slide-sampling.

[0101] S18. Generate a derivation multiple based on the target quantum random number derivation rate and the sampling period.

[0102] In some examples, the target quantum random number derivation rate refers to the number of random numbers generated per unit time that the user expects.

[0103] In some examples, the derivation multiple can be calculated by the following formula:

[0104]

[0105] Among them, DM identifies the derivation multiple, R d represents the target quantum random number derivation rate, T represents the sampling period, and |H| represents the length of the string output by the hash function.

[0106] As can be seen from the above, the upgrade method provided by the embodiments of the present disclosure obtains the sampling period agreed with the upgrade server, samples a target number of quantum random numbers in the random number pool of the quantum key distribution device according to the sampling period, generates the current derived random number seed based on the quantum random numbers, and generates a derivation magnification based on the target quantum random number derivation rate and the sampling period. In this way, at least one derived random number can be generated based on the derivation magnification, the main derived random number of the previous period, and the derived random number seed. After that, a first verification random number is generated based on the derived random number. Even if the first verification random number is intercepted, since the function of the intercepted first verification random number is not limited, it cannot be correctly used even if the first verification random number is intercepted. At the same time, since the first verification random numbers used each time between the vehicle controller and the upgrade server are different, the security of data transmission between the vehicle controller and the upgrade server can be improved.

[0107] Embodiment 2

[0108] Figure 7 Exemplarily shown in it is the structural schematic diagram of the vehicle controller provided by Embodiment 2 of the present application, as Figure 7 shown. The vehicle controller includes: a processing module 81 and a transceiver module 82.

[0109] The processing module 81 is configured to generate a first verification random number when the transceiver module 82 receives the upgrade task information sent by the upgrade server; wherein, the upgrade task information is sent when the upgrade server determines that there is a new version of the preset program; the processing module 81 is further configured to control the transceiver module 82 to send the first verification random number to the upgrade server; the transceiver module 82 is further configured to receive the upgrade information including the second verification random number sent by the upgrade server; the processing module 81 is further configured to unlock the upgrade information received by the transceiver module 82 and determine the second verification random number included in the upgrade information; the processing module 81 is further configured to generate a prompt information for prompting to upgrade the preset program when the second verification random number is the same as the first verification random number.

[0110] In some feasible examples, the processing module 81 is specifically configured to generate a first verification random number through a preset generator when the transceiver module 82 receives the upgrade task information sent by the upgrade server; wherein, the preset generator includes any one of a pseudo-random number generator, a true random number generator, and a quantum random number generator.

[0111] In some feasible examples, the preset generator includes a quantum random number generator; the processing module 81 is specifically configured to generate at least one derived random number based on the derivation magnification, the main derived random number of the previous period, and the derived random number seed; the processing module 81 is specifically configured to generate a first verification random number based on the derived random number.

[0112] In some feasible examples, the processing module 81 is specifically configured to randomly select a derived random number from the derived random numbers as the first verification random number.

[0113] In some feasible examples, the processing module 81 is specifically configured to splice the derived random numbers into a long string; the processing module 81 is specifically configured to intercept a substring of a target length from the long string; the processing module 81 is specifically configured to randomly select a character of a preset length from the substring as the first verification random number.

[0114] In some feasible examples, the transceiver module 82 is further configured to obtain a sampling period agreed with the upgrade server; the processing module 81 is further configured to sample a target number of quantum random numbers from the random number pool of the quantum key distribution device according to the sampling period obtained by the transceiver module 82, and generate a current derived random number seed based on the quantum random numbers; the processing module 81 is further configured to generate a derived magnification factor based on the target quantum random number derivation rate and the sampling period.

[0115] All relevant contents of each step involved in the above method embodiments can be cited to the function descriptions of the corresponding functional modules, and their functions will not be elaborated here.

[0116] Of course, the vehicle controller provided by the embodiments of the present invention includes but is not limited to the above modules. For example, the vehicle controller may further include a storage module 83. The storage module 83 can be used to store the program code of the vehicle controller, and can also be used to store the data generated during the operation of the vehicle controller, such as diagnostic data, etc.

[0117] Figure 8 The structural schematic diagram of a vehicle controller provided by the embodiments of the present invention is as Figure 8 shown. The vehicle controller may include: at least one processor 51, a memory 52, a communication interface 53, and a communication bus 54.

[0118] Next, Figure 8 a specific introduction to each component of the vehicle controller will be given:

[0119] Among them, the processor 51 is the control center of the vehicle controller, which can be a single processor or a collective term for multiple processing elements. For example, the processor 51 is a central processing unit (CPU), or it can be an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present invention, such as: one or more DSPs, or one or more field programmable gate arrays (FPGAs).

[0120] In a specific implementation, as an embodiment, the processor 51 may include one or more CPUs, such as Figure 8 the CPU0 and CPU1 shown in. And, as an embodiment, the vehicle controller may include multiple processors, such as Figure 8 the processor 51 and the processor 55 shown in. Each of these processors can be a single-core processor (Single-CPU) or a multi-core processor (Multi-CPU). Here, the processor may refer to one or more devices, circuits, and / or processing cores for processing data (such as computer program instructions).

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

[0122] In a specific implementation, the memory 52 is used to store the data in the present invention and execute the software program of the present invention. The processor 51 can execute various functions of the air conditioner by running or executing the software program stored in the memory 52 and calling the data stored in the memory 52.

[0123] The communication interface 53 uses any device such as a transceiver and is used to communicate with other devices or communication networks, such as a Radio Access Network (RAN), a Wireless Local Area Network (WLAN), a terminal, a cloud, etc. The communication interface 53 may include a transceiver module to implement the acquisition function.

[0124] The communication bus 54 may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, etc. This bus can be divided into an address bus, a data bus, a control bus, etc. For the sake of convenience in representation, Figure 8 only a thick line is used to represent it in the figure, but it does not mean that there is only one bus or one type of bus.

[0125] As an example, in combination with Figure 7 the function implemented by the transceiver module 82 of the vehicle controller is the same as the function of the communication interface 53 in Figure 8 the function implemented by the processing module 81 in the vehicle controller is the same as the function of the processor 51 in Figure 8 and the function implemented by the storage module 83 in the vehicle controller is the same as the function of the memory 52 in Figure 8 The present application embodiment further provides a vehicle, which may include the vehicle controller in any embodiment.

[0126] The present application embodiment further provides a computer-readable storage medium, in which computer-executable instructions are stored, and when the computer-executable instructions are executed by a processor, they are used to implement the method in any embodiment.

[0127]

[0128] ​The above are only specific embodiments of the present disclosure, enabling those skilled in the art to understand or implement the present disclosure. Various modifications to these embodiments will be obvious to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure will not be limited to the embodiments described herein, but rather will be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. An upgrading method, characterized in that: include: Upon receiving the upgrade task information sent by the upgrade server, generating a first verification random number; wherein the upgrade task information is sent by the upgrade server when determining that a new version of the preset program exists; Sending the first verification random number to the upgrade server; Receiving the upgrade information including the second verification random number sent by the upgrade server; Unlock the upgrade information and determine the second verification random number contained in the upgrade information; When the second verification random number is the same as the first verification random number, a prompt message for prompting to upgrade the preset program is generated.

2. The upgrading method according to claim 1, characterized in that: When receiving the upgrade task information sent by the upgrade server, generating a first verification random number includes: When the upgrade task information sent by the upgrade server is received, a first verification random number is generated by a preset generator; wherein the preset generator includes any one of a pseudo-random number generator, a true random number generator and a quantum random number generator.

3. The upgrading method according to claim 2, characterized in that: The preset generator includes a quantum random number generator; When receiving the upgrade task information sent by the upgrade server, generating a first verification random number includes: Generate at least one derived random number based on the derivation multiplier, the main random number of the previous cycle and the derived random number seed; Based on the derived random number, the first verification random number is generated.

4. The upgrading method according to claim 3, characterized in that: The step of generating the first verification random number based on the derived random number comprises: A derived random number is randomly selected from the derived random numbers as the first verification random number.

5. The upgrading method according to claim 3, characterized in that: The step of generating the first verification random number based on the derived random number comprises: Concatenate the derived random numbers into a long string; Extract a substring of a target length from the long string; A character of a preset length is randomly selected from the substring as the first verification random number.

6. The upgrading method according to claim 3, characterized in that: Before generating at least one derived random number based on the derivation multiplier, the main random number of the previous cycle and the derived random number seed, the method further includes: Obtaining a sampling period agreed upon with the upgrade server; Sampling a target number of quantum random numbers from a random number pool of a quantum random number generator according to the sampling period, and generating a current derived random number seed based on the quantum random numbers; A derivation multiplier is generated based on a target quantum random number derivation rate and the sampling period.

7. A vehicle controller, characterized in that: include: A processing module, configured to generate a first verification random number when the transceiver module receives the upgrade task information sent by the upgrade server; wherein the upgrade task information is sent when the upgrade server determines that a new version of the preset program exists; The processing module is further used to control the transceiver module to send the first verification random number to the upgrade server; The transceiver module is further used to receive the upgrade information including the second verification random number sent by the upgrade server; The processing module is further used to unlock the upgrade information received by the transceiver module and determine the second verification random number included in the upgrade information; The processing module is further configured to generate prompt information for prompting to upgrade the preset program when the second verification random number is the same as the first verification random number.

8. The vehicle controller according to claim 7, characterized in that: The processing module is specifically used to generate a first verification random number through a preset generator when the transceiver module receives the upgrade task information sent by the upgrade server; wherein the preset generator includes any one of a pseudo-random number generator, a true random number generator and a quantum random number generator.

9. A vehicle, characterized in that: Comprising a vehicle controller as claimed in claim 6 or 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, which are used to implement the upgrading method according to any one of claims 1 to 6 when executed by a processor.