Firmware upgrading method and device, equipment, storage medium and program product

By obtaining firmware upgrade data packets and using firmware description information to determine the trusted data space, firmware upgrades are performed in this space, and the problem of difficult equipment security during firmware upgrade in the prior art is solved, and the security protection of firmware upgrades is achieved.

CN119718395APending Publication Date: 2025-03-28SHENZHEN ENVICOOL INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411884886.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-18
Publication Date
2025-03-28

AI Technical Summary

Technical Problem

In the prior art, when upgrading firmware of embedded devices, it is difficult to ensure the security of the device, especially after the firmware data and OTA programs are packaged and encrypted, once the OTA program is cracked, the firmware data will be completely cracked.

Method used

By obtaining the firmware upgrade data packet of the target device, using the firmware description information to determine the trusted data space corresponding to the firmware data, and performing firmware upgrades in this space to ensure security during the upgrade process.

Benefits of technology

This method can realize firmware upgrades by jumping to the specified trusted data space during the system firmware upgrade process, and effectively ensure the overall security of the equipment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119718395A_ABST
    Figure CN119718395A_ABST
Patent Text Reader

Abstract

The invention discloses a firmware upgrading method and device, equipment, a storage medium and a program product, and relates to the technical field of firmware upgrade.The firmware upgrading method comprises the steps that a firmware upgrading data packet of target equipment is obtained; the firmware upgrading data packet comprises firmware data and corresponding firmware description information; determining a trusted data space corresponding to the firmware data by utilizing the firmware description information; and carrying out firmware upgrading on the target equipment by utilizing the firmware data in the trusted data space. According to the method, in the firmware upgrading process of the system, the corresponding operation of the firmware data can be carried out by skipping to the specified trusted data space, so that firmware upgrading is realized, and the safety of the whole equipment in the firmware upgrading process is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of firmware upgrade technology, and in particular to a firmware upgrade method, device, equipment, storage medium and program product. Background Art

[0002] In the process of implementing the present invention, the inventors found that the prior art has at least the following problems:

[0003] At present, it is a rigid demand in the industry that products have the ability to upgrade firmware (OTA, Over-the-Air, i.e., over-the-air download technology), and from the perspective of firmware upgrade management, it is also proposed that the security protection of firmware during circulation should be fully considered (to prevent the firmware from circulating in plain text and being easily cracked and stolen). However, when upgrading embedded devices, it is necessary to receive the encrypted differential upgrade data sent by the server and burn it to the second space of the storage partition to perform encrypted differential upgrades on the embedded software. The encrypted differential upgrade data includes: a differential upgrade package and a firmware over-the-air upgrade FOTA (Firmware Over-The-Air, over-the-air firmware update) application for performing encrypted differential upgrades on embedded software based on the differential upgrade package. However, when the firmware data and the OTA program are packaged and encrypted through the above solution, once the OTA program is cracked, all the firmware data will be cracked. Therefore, how to ensure the security of the device when performing firmware upgrades through data packets sent by the server is a problem to be solved in this field. Summary of the invention

[0004] In view of this, the purpose of the present invention is to provide a firmware upgrade method, device, equipment, storage medium and program product, which can jump to the designated trusted data space to perform corresponding operations on firmware data to achieve firmware upgrade during the system firmware upgrade process, helping to ensure the overall security of the device during the firmware upgrade process. The specific scheme is as follows:

[0005] In a first aspect, the present application provides a firmware upgrade method, comprising:

[0006] Obtain a firmware upgrade data packet of a target device; the firmware upgrade data packet includes firmware data and corresponding firmware description information;

[0007] Determining a trusted data space corresponding to the firmware data using the firmware description information;

[0008] The firmware of the target device is upgraded using the firmware data in the trusted data space.

[0009] Optionally, the determining the trusted data space corresponding to the firmware data by using the firmware description information includes:

[0010] Determining, from a preset storage device of the target device, a first storage space corresponding to the trusted location description information in the firmware description information;

[0011] The first storage space is used as the trusted data space corresponding to the firmware data.

[0012] Optionally, the process of determining the trusted data space corresponding to the firmware data by using the firmware description information further includes:

[0013] If the current preset storage device cannot perform a data writing operation, determining a second storage space corresponding to the trusted location description information from a preset heterogeneous storage device corresponding to the preset storage device;

[0014] The second storage space is used as the trusted data space corresponding to the firmware data.

[0015] Optionally, the firmware upgrade data packet includes a plurality of firmware data to be upgraded of the target device and firmware description information corresponding to each of the firmware data;

[0016] Correspondingly, the determining the trusted data space corresponding to the firmware data by using the firmware description information includes:

[0017] Based on the firmware description information corresponding to each firmware data in the firmware upgrade data packet, the trusted data space corresponding to each firmware data is determined, so as to perform firmware upgrade on the target device using the corresponding firmware data in each trusted data space.

[0018] Optionally, before performing firmware upgrade on the target device using the firmware data in the trusted data space, the method further includes:

[0019] Loading the firmware upgrade system of the target device into a preset shared random access memory;

[0020] Accordingly, performing firmware upgrade on the target device using the firmware data in the trusted data space includes:

[0021] In any trusted data space, the firmware upgrade system in the preset shared random access memory is called to perform an operation of upgrading the firmware of the target device using the corresponding firmware data.

[0022] Optionally, the firmware upgrade method further includes:

[0023] Configure corresponding security protection logic for each of the trusted data spaces respectively;

[0024] Correspondingly, the process of upgrading the firmware of the target device using the firmware data in the trusted data space further includes:

[0025] The corresponding security protection logic is executed in the trusted data space to perform information security protection on the target objects to be protected during the local firmware upgrade process.

[0026] Optionally, after using the firmware description information to determine the trusted data space corresponding to the firmware data, the method further includes:

[0027] Extracting basic firmware feature information from the firmware description information;

[0028] Determining whether the firmware on the target device currently meets the firmware upgrade condition based on the firmware basic feature information;

[0029] If the firmware meets the firmware upgrade condition, the step of upgrading the firmware of the target device using the firmware data in the trusted data space is triggered.

[0030] Optionally, performing firmware upgrade on the target device by using the firmware data in the trusted data space includes:

[0031] Determine a target processing flow of the firmware data by using firmware processing logic related information in the firmware description information;

[0032] Processing the firmware data based on the target processing flow to obtain processed firmware data;

[0033] Performing a firmware upgrade on the target device using the processed firmware data in the trusted data space;

[0034] The target processing flow includes any one or a combination of data decryption, data decompression and data verification.

[0035] In a second aspect, the present application provides a firmware upgrade device, comprising:

[0036] A data packet acquisition module, used to acquire a firmware upgrade data packet of a target device; the firmware upgrade data packet includes firmware data and corresponding firmware description information;

[0037] A trusted space determination module, used to determine a trusted data space corresponding to the firmware data using the firmware description information;

[0038] A firmware upgrade module is used to upgrade the firmware of the target device using the firmware data in the trusted data space.

[0039] In a third aspect, the present application provides an electronic device, comprising a processor and a memory; wherein the memory is used to store a computer program, and the computer program is loaded and executed by the processor to implement the aforementioned firmware upgrade method.

[0040] In a fourth aspect, the present application provides a computer-readable storage medium for storing a computer program, wherein the computer program implements the aforementioned firmware upgrade method when executed by a processor.

[0041] In a fifth aspect, the present application provides a computer program product, including a computer program / instruction, which implements the aforementioned firmware upgrade method when executed by a processor.

[0042] The present application can first obtain a firmware upgrade data packet including firmware data and corresponding firmware description information of the target device, and use the firmware description information to determine the trusted data space corresponding to the firmware data, and then use the firmware data in the trusted data space to perform firmware upgrades on the target device. Through the above technical solution, the present application can jump to the trusted data space corresponding to the target device through the firmware description information in the obtained firmware upgrade data packet during the system firmware upgrade process to perform corresponding operations on the firmware data to achieve firmware upgrades. In this way, compared to packaging and encrypting the firmware data and the OTA program, the present application can construct a corresponding firmware upgrade data packet based on the firmware data and the firmware description information corresponding to the firmware data, and determine the trusted data space based on the firmware description information, thereby carrying the relevant information of the firmware upgrade to jump to the corresponding trusted code space to perform subsequent upgrade actions, which helps to ensure the overall security of the device during the firmware upgrade process. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.

[0044] Figure 1 A flowchart of a firmware upgrade method provided by this application;

[0045] Figure 2 A schematic diagram of the data structure of a firmware upgrade data packet provided in this application;

[0046] Figure 3 A schematic diagram of the system architecture of a firmware upgrade method provided in this application;

[0047] Figure 4A specific firmware upgrade method flow chart provided for this application;

[0048] Figure 5 A specific firmware upgrade method flow chart provided for this application;

[0049] Figure 6 A schematic diagram of the structure of a firmware upgrade device provided in this application;

[0050] Figure 7 A structural diagram of an electronic device provided for this application. DETAILED DESCRIPTION

[0051] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0052] Currently, when the product performs a firmware upgrade, it is necessary to receive the encrypted differential upgrade data sent by the server for encrypted differential upgrade. However, when the firmware data and OTA program are packaged and encrypted, once the OTA program is cracked, all the firmware data will be cracked. The present application can obtain the firmware description information in the firmware upgrade data packet during the system firmware upgrade process and jump to the trusted data space corresponding to the target device to perform corresponding operations on the firmware data to achieve firmware upgrade, which helps to ensure the overall security of the device during the firmware upgrade process.

[0053] See also Figure 1 As shown, an embodiment of the present invention discloses a firmware upgrade method, including:

[0054] Step S11, obtaining a firmware upgrade data packet of a target device; the firmware upgrade data packet includes firmware data and corresponding firmware description information.

[0055] In this embodiment, the server (i.e., the target device) that needs to perform firmware upgrade is a lower-level device. First, it can obtain a firmware upgrade data packet for performing its own firmware upgrade from the upgrade upper-level device. The above firmware upgrade data packet may include firmware data corresponding to the firmware that needs to be upgraded and corresponding firmware description information. Specifically, the data structure of the above firmware upgrade data packet is as follows: Figure 2 As shown, a complete firmware is composed of two structure definitions: firmware description information and firmware data. When there are multiple firmwares in the upgrade data package, they are arranged in sequence in this way to form the entire upgrade data package;

[0056] The firmware description information may include a basic firmware description and available firmware configurations. The basic firmware description is specifically used to identify the firmware code, version, and firmware data size; the available firmware configurations can be defined according to actual application requirements. The following is a configuration related to problem solving defined according to the actual requirements of the target device firmware upgrade in a specific embodiment:

[0057] a. Encryption information: defines encryption-related information during the firmware upgrade process, such as the key used to encrypt the actual firmware data. It is understood that the above key can be further encrypted according to user needs or the actual needs of the firmware upgrade to ensure data security;

[0058] b. Decompression information: defines the actual firmware data is compressed and the corresponding decompression method;

[0059] c. Verification information: defines the verification method and verification value of firmware data to ensure the security and integrity of data;

[0060] d. Trusted Point: defines the program (i.e., code space) existing in the embedded product where the firmware that needs to be upgraded can perform operations such as firmware data conversion and extraction (decryption, compression, burning, and utilization); it is understood that the above-mentioned trusted point can be defined by the application design to define in which space the firmware can be safely used.

[0061] It is understandable that this embodiment only lists relevant upgrade application requirements such as encryption, compression, and trusted points. If there are other corresponding requirements, the firmware description information can be adjusted accordingly according to the actual requirements. It should also be pointed out that when defining the trusted points corresponding to the firmware data in the firmware description information, that is, the trusted data space, compared with the untrusted points, the trusted points can be designed to meet the following conditions:

[0062] 1. Storage space protected by hardware security can ensure that the actual application logic design of the firmware cannot be obtained or known, and can include the above-mentioned conversion and extraction (decryption, compression, burning, utilization) and other operations;

[0063] 2. Various security logics of trusted points can be designed. For example, the encrypted firmware data can actually contain various key information required in the system. The system key information can be updated by extracting the key from a trust point that is absolutely protected by security, so that it is not easy to know the relevant encryption rule information from the change rules of multiple upgrade data packets. The security protection of other firmware packages in the upgrade data packet can also be strengthened.

[0064] Correspondingly, the above-mentioned firmware data is the data after the actual firmware data is converted accordingly according to the available configuration in the description information when the upgrade data packet is generated; for example, in a specific embodiment, the firmware description information in the firmware upgrade data packet includes encryption information, decompression information and verification information of the firmware data, and the above-mentioned firmware data is the actual firmware data used for firmware upgrade, which is the processed firmware data obtained after the corresponding data encryption, data compression and corresponding related verification processing are performed based on the above-mentioned firmware description information. In this way, the security of the actual firmware data during data circulation can be effectively protected. After the lower-level device obtains the firmware upgrade data packet, it decrypts, decompresses and verifies the processed firmware data according to the firmware description information, and then the actual firmware data can be obtained for subsequent upgrade operations.

[0065] In this way, compared with the existing conventional upgrade data packet, by packaging and encrypting the firmware data and OTA program, the upgrade data packet data structure and the lower computer embedded firmware upgrade management system are designed to add trusted points and expandable firmware description information to ensure the security of the upgrade data packet during circulation, upgrade channel, and firmware application. When the ciphertext is circulated and transmitted, the lower computer device performs the corresponding trusted processing of the firmware by itself; and compared with the definition of conventional firmware description information, there is no relevant availability configuration description and application. In this embodiment, when the firmware needs to be upgraded, the firmware data can be converted accordingly according to the upgrade package data structure design and the required firmware configuration (such as encryption / compression, etc.), and the firmware description information is generated, and finally assembled into a complete upgrade data packet, thereby further ensuring the versatility and security of the upgrade data packet. And the configuration of the firmware available configuration information can be realized through the definition of the upgrade data packet data structure and the firmware configuration management. The requirements of compressed transmission, decompression and burning of the firmware can be achieved by defining the decompression information of the firmware. At the same time, various available configuration requirements can also be expanded in this embodiment to meet the diversity of application requirements.

[0066] Step S12: Determine the trusted data space corresponding to the firmware data using the firmware description information.

[0067] In this embodiment, based on Figure 3In the firmware upgrade system architecture diagram shown, the upgrade host computer is responsible for sending the upgrade data packet data according to the specified upgrade protocol, which is a common component in the application scenario; the upgrade host computer may include several embedded firmware upgrade management systems responsible for processing the received upgrade package data and performing corresponding management on the upgraded firmware, including matching the basic information of the firmware, parsing and executing the firmware burning according to the available configuration information of the firmware; specifically including firmware configuration management, general upgrade protocol stack, and firmware upgrade management, wherein the firmware configuration management is used to interpret and execute the basic information and available configuration of the firmware; the general upgrade protocol stack is used to match the custom (customer-defined) file download protocol; the firmware upgrade management is used to parse and identify the received upgrade data packet according to the established data structure, such as obtaining the firmware description information and firmware data. Therefore, when using the firmware description information to determine the trusted data space corresponding to the firmware data, the firmware description information and firmware data can be obtained through the firmware upgrade management, and then the firmware configuration management can be used to jump to the trusted point (i.e., the program segment corresponding to the target device) according to the firmware description information.

[0068] That is to say, in the firmware upgrade process of this embodiment, in order to ensure the overall security during the upgrade and application process, the lower computer can jump to the designated security program space through the trusted point to perform operations such as firmware data conversion and extraction (decryption, compression, burning, and utilization). In a specific embodiment, the first storage space corresponding to the trusted location description information in the firmware description information can be determined from the preset storage device of the target device, and the first storage space can be used as the trusted data space corresponding to the firmware data. In the above embodiment, the storage space in the local space of the target device can be used as the trusted data space corresponding to the firmware upgrade data packet according to the firmware description information. In addition, it can be understood that some storage devices cannot perform write operations on the storage device when accessing the memory (running the program in the storage device). Therefore, in another specific embodiment, when the current preset storage device cannot perform data write operations, the second storage space corresponding to the trusted location description information can be determined from the preset heterogeneous storage device corresponding to the preset storage device, and the second storage space can be used as the trusted data space corresponding to the firmware data, so as to jump to the program segment stored in the heterogeneous storage device through the trusted point to perform write operations on the storage device, thereby completing the firmware upgrade burning.

[0069] And if Figure 4As shown, after using the firmware description information to determine the trusted data space corresponding to the firmware data, the firmware basic feature information in the firmware description information can also be extracted through the firmware configuration management, and based on the firmware basic feature information, it is determined whether the firmware on the current target device meets the firmware upgrade conditions; if the firmware meets the firmware upgrade conditions, the above-mentioned step of using the firmware data in the trusted data space to perform a firmware upgrade on the target device is triggered. In a specific embodiment, the firmware upgrade conditions can be determined based on the firmware code and firmware version information in the firmware description information. Specifically, the firmware code and firmware version information in the firmware description information can be compared with the current firmware code and firmware version information of the firmware in the lower device. If the comparison result indicates that the firmware code and the firmware version information are consistent, it indicates that the current firmware upgrade data packet meets the upgrade conditions of the firmware in the lower device, and the subsequent firmware upgrade process can be performed.

[0070] Step S13: upgrading the firmware of the target device using the firmware data in the trusted data space.

[0071] In this embodiment, when the firmware data is used in the trusted data space to perform a firmware upgrade on the target device, the firmware processing logic related information in the firmware description information can be used to determine the target processing flow of the firmware data, and then the firmware data is processed based on the target processing flow to obtain the processed firmware data, and then the processed firmware data is used in the trusted data space to perform a firmware upgrade on the target device; wherein the above-mentioned target processing flow includes any one or a combination of data decryption, data decompression and data verification, which can be specifically determined based on the relevant data in the firmware description information. For example, if the firmware description information contains relevant data of data encryption and data compression, the firmware data is decrypted and decompressed accordingly.

[0072] Through the above technical solution, this embodiment can solve the problem that when generating firmware upgrade data packets, it is necessary to deploy additional servers for generating software differential upgrade data packets and OTA programs through the design of an embedded firmware upgrade management system (lower-level device). It can determine whether the system receives upgrade data while performing corresponding parsing and burning and other execution actions according to actual application requirements, thereby reducing the requirements of firmware upgrade in terms of product management and R&D costs and improving the applicability of the product; and by designing the upgrade data packet data structure and the lower-level embedded firmware upgrade management system, the availability configuration of the firmware can be defined when the upgrade data packet is generated, and the corresponding configuration description can be expanded according to the firmware application requirements to meet the subsequent expansion requirements for firmware upgrades and applications. The trusted point can also solve the problem that some storage devices cannot write to the storage device when accessing the memory (running the program in the storage device), so the trusted point can jump to the program segment stored in the heterogeneous storage device to write to the storage device, thereby completing the firmware upgrade burning, which can meet the scalability of the firmware upgrade and application process, and realize the security protection of the firmware during circulation and upgrade.

[0073] Based on the previous embodiment, it can be known that the present application can carry the relevant information of the firmware upgrade data to jump to the corresponding trusted code space for subsequent upgrade actions. Next, the firmware upgrade process when there are multiple firmwares to be upgraded on the target device will be described in detail in this embodiment. Figure 5 As shown, the embodiment of the present application discloses a specific firmware upgrade method, including:

[0074] Step S21, obtaining a firmware upgrade data packet of a target device; the firmware upgrade data packet includes firmware data and corresponding firmware description information.

[0075] In a specific embodiment, there may be multiple firmwares that need to be upgraded in the target device. In this case, the firmware upgrade data packet received by the target device may include multiple firmware data to be upgraded of the target device and firmware description information corresponding to each firmware data, so as to Figure 3 The embedded firmware upgrade management system shown obtains firmware description information and firmware data corresponding to each firmware in the firmware upgrade data packet through firmware upgrade management.

[0076] Step S22: Determine the trusted data space corresponding to the firmware data using the firmware description information.

[0077] In this embodiment, based on the firmware description information in the above-mentioned firmware upgrade data packet, firmware configuration management can be used to jump to the trusted point corresponding to each firmware according to the corresponding firmware description information. That is to say, based on the firmware description information corresponding to each firmware data in the firmware upgrade data packet, the trusted data space corresponding to each firmware data can be determined, so that the firmware of the target device can be upgraded using the corresponding firmware data in each trusted data space.

[0078] It should be noted that, based on the previous embodiment, the trusted data space corresponding to the trusted location description information in the firmware description information can be determined from the preset storage device of the target device, or the trusted data space corresponding to the trusted location description information can be determined from the preset heterogeneous storage device corresponding to the preset storage device. Therefore, if there are multiple trusted data spaces, the multiple trusted data spaces at this time are not limited to the same device, and can be the trusted data space of the target device itself or the trusted data space corresponding to the heterogeneous storage. In other words, there are multiple levels of code space, i.e., multiple levels of trusted points, on the embedded product in this embodiment; and when there are multiple firmware upgrades in the application scenario, and the program trust points on which each firmware depends are inconsistent, the firmware configuration management and firmware upgrade management can be used to jump to the corresponding code space to perform the upgrade action of the corresponding firmware. In this way, considering that the embedded product may not be able to deploy a server to manage the target software when managing, generating differential data packets and FOTA application applications, the firmware information can be placed in the firmware description information and combined with the concept of program trust points for upgrade management, which helps to improve the versatility of firmware upgrades.

[0079] Step S23: load the firmware upgrade system of the target device into a preset shared random access memory, and in any trusted data space, call the firmware upgrade system in the preset shared random access memory to perform an operation of upgrading the firmware of the target device using the corresponding firmware data.

[0080] In this embodiment, the firmware upgrade system of the target device can also be loaded into the preset shared random access memory, and in any trusted data space, by calling the firmware upgrade system in the preset shared random access memory, the operation of upgrading the firmware of the target device using the corresponding firmware data is performed. The embedded firmware upgrade management system in this embodiment can be deployed with the ability to receive upgrade data packets while implementing firmware parsing and burning actions. The system can be designated to be loaded into the shared RAM (Random Access Memory) space, and all programs (trusted points) can be directly applied. In this way, when the firmware data requires various special processing, it can be directly expanded on the basis of the data structure of the firmware description information, such as decompression and other operations, and through the firmware upgrade management and the definition of the upgrade data packet data structure, it can be realized that the firmware parsing and burning actions can be implemented while receiving the upgrade data packet, and there is no need to establish a second storage space to preload the upgrade data packet, which solves the problem of tight memory resources, inability to establish a second storage partition on a given product, and insufficient availability. In a specific embodiment, if the lower-level device does not have a second storage space, no storage area is required. When the upgrade data packet is received, the firmware upgrade management in the embedded firmware upgrade management system parses the firmware description information and then checks all relevant information through the firmware configuration management. For example, after consistency and relevance checks, it will carry relevant information to jump to the corresponding trust code space to perform subsequent upgrade actions, which can save valuable storage space for embedded products. In another specific embodiment, if there is a second storage space, after the upgrade data packet is stored in the second space when it is received, it is combined with the firmware configuration management in the embedded firmware upgrade management system to check all relevant information. For example, after consistency and relevance checks, it will carry relevant information to jump to the corresponding trust code space for firmware burning. Although the second storage space condition is required at this time, a certain degree of versatility and security can be guaranteed, such as firmware rollback and other demand scenarios.

[0081] In addition, in this embodiment, corresponding security protection logic can be configured for each trusted data space respectively; accordingly, in the process of using firmware data in the trusted data space to upgrade the firmware of the target device, the corresponding security protection logic can be executed in the trusted data space to perform information security protection on the target objects to be protected in the local firmware upgrade process. In a specific embodiment, the encrypted firmware data can actually contain various types of key information required in the system. In this embodiment, the system key information can be updated by extracting the key update system key from a trust point that is absolutely protected, so that it is not easy to know the relevant encryption rule information from the change rules of multiple upgrade data packets, and the security protection of other firmware packages in the upgrade data packet can also be strengthened.

[0082] Through the above technical solution, in this embodiment, when there are multiple firmwares that need to be upgraded, when the program trust points that each firmware depends on are inconsistent, the firmware configuration management and firmware upgrade management can be used to jump to the corresponding code space to execute the upgrade action of the corresponding firmware. At the same time, the embedded firmware upgrade management system has the ability to implement firmware parsing and burning actions while receiving upgrade data packets. The system can be designated to be loaded into the shared RAM space, and all trusted points can be directly applied, meeting the security protection requirements of the firmware during circulation and upgrade.

[0083] See also Figure 6 As shown, the embodiment of the present application also discloses a firmware upgrade device, including:

[0084] The data packet acquisition module 11 is used to acquire a firmware upgrade data packet of a target device; the firmware upgrade data packet includes firmware data and corresponding firmware description information;

[0085] A trusted space determination module 12, configured to determine a trusted data space corresponding to the firmware data using the firmware description information;

[0086] The firmware upgrade module 13 is used to upgrade the firmware of the target device using the firmware data in the trusted data space.

[0087] In this embodiment, a firmware upgrade data packet including firmware data and corresponding firmware description information of the target device is first obtained, and the firmware description information is used to determine the trusted data space corresponding to the firmware data, and then the firmware data is used in the trusted data space to perform a firmware upgrade on the target device. Through the above technical solution, during the system firmware upgrade process, the firmware description information in the obtained firmware upgrade data packet can be used to jump to the trusted data space corresponding to the target device to perform corresponding operations on the firmware data to achieve firmware upgrade. In this way, this embodiment can save valuable storage space of embedded products by jumping to the corresponding trusted code space carrying relevant information to perform subsequent upgrade actions, which helps to ensure the overall security of the device during the firmware upgrade process.

[0088] In some specific embodiments, the trusted space determination module 12 specifically includes:

[0089] A first storage space determining unit, configured to determine, from a preset storage device of the target device, a first storage space corresponding to the trusted location description information in the firmware description information;

[0090] The first trusted space determining unit is configured to use the first storage space as the trusted data space corresponding to the firmware data.

[0091] In some specific embodiments, the trusted space determination module 12 further includes:

[0092] A second storage space determining unit, configured to determine a second storage space corresponding to the trusted location description information from a preset heterogeneous storage device corresponding to the preset storage device if the preset storage device cannot currently perform a data writing operation;

[0093] The second trusted space determining unit is configured to use the second storage space as the trusted data space corresponding to the firmware data.

[0094] In some specific embodiments, the firmware upgrade data packet includes a plurality of firmware data to be upgraded of the target device and firmware description information corresponding to each of the firmware data;

[0095] Accordingly, the trusted space determination module 12 specifically includes:

[0096] The information determination unit is used to determine the trusted data space corresponding to each firmware data based on the firmware description information corresponding to each firmware data in the firmware upgrade data packet, so as to use the corresponding firmware data in each trusted data space to perform firmware upgrade on the target device.

[0097] In some specific embodiments, the firmware upgrade device further includes:

[0098] A system loading module, used for loading the firmware upgrade system of the target device into a preset shared random access memory;

[0099] Accordingly, the firmware upgrade module 13 specifically includes:

[0100] The system calling unit is used to perform an operation of upgrading the firmware of the target device by using the corresponding firmware data in any trusted data space by calling the firmware upgrading system in the preset shared random access memory.

[0101] In some specific embodiments, the firmware upgrade device further includes:

[0102] A logic configuration module, used to configure corresponding security protection logic for each of the trusted data spaces;

[0103] The logic execution module is used to execute the corresponding security protection logic in the trusted data space to perform information security protection on the relevant target objects to be protected during the local firmware upgrade process.

[0104] In some specific embodiments, the firmware upgrade module 13 further includes:

[0105] An information extraction unit, used to extract basic firmware feature information from the firmware description information;

[0106] A condition judgment unit, used for judging whether the firmware on the current target device meets the firmware upgrade condition based on the firmware basic feature information;

[0107] The first firmware upgrade unit is used to trigger the step of upgrading the firmware of the target device using the firmware data in the trusted data space if the firmware meets the firmware upgrade condition.

[0108] In some specific embodiments, the firmware upgrade module 13 specifically includes:

[0109] A process determination unit, configured to determine a target processing process of the firmware data by using firmware processing logic related information in the firmware description information;

[0110] A data processing unit, configured to process the firmware data based on the target processing flow to obtain processed firmware data;

[0111] A second firmware upgrade unit, configured to perform a firmware upgrade on the target device using the processed firmware data in the trusted data space;

[0112] The target processing flow includes any one or a combination of data decryption, data decompression and data verification.

[0113] Furthermore, the present application also discloses an electronic device. Figure 7 This is a structural diagram of an electronic device 20 according to an exemplary embodiment. The content in the diagram cannot be considered as any limitation on the scope of use of the present application.

[0114] Figure 7 A schematic diagram of the structure of an electronic device 20 provided in an embodiment of the present application. The electronic device 20 may specifically include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the firmware upgrade method disclosed in any of the aforementioned embodiments. In addition, the electronic device 20 in this embodiment may specifically be an electronic computer.

[0115] In this embodiment, the power supply 23 is used to provide working voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and the external device, and the communication protocol it follows is any communication protocol that can be applied to the technical solution of the present application, and is not specifically limited here; the input and output interface 25 is used to obtain external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs and is not specifically limited here.

[0116] In addition, the memory 22, as a carrier for storing resources, can be a read-only memory, a random access memory, a disk or an optical disk, etc. The resources stored thereon can include an operating system 221, a computer program 222, etc., and the storage method can be temporary storage or permanent storage.

[0117] The operating system 221 is used to manage and control the hardware devices and computer program 222 on the electronic device 20, which can be Windows Server, Netware, Unix, Linux, etc. In addition to including a computer program that can be used to complete the firmware upgrade method performed by the electronic device 20 disclosed in any of the aforementioned embodiments, the computer program 222 can further include a computer program that can be used to complete other specific tasks.

[0118] Furthermore, the present application also discloses a computer-readable storage medium for storing a computer program; wherein the computer program, when executed by a processor, implements the aforementioned disclosed firmware upgrade method. The specific steps of the method can refer to the corresponding contents disclosed in the aforementioned embodiments, and will not be repeated here.

[0119] Furthermore, the present application also discloses a computer program product, including a computer program / instruction, wherein the computer program / instruction, when executed by a processor, implements the aforementioned disclosed firmware upgrade method. The specific steps of the method may refer to the corresponding contents disclosed in the aforementioned embodiments, and will not be repeated here.

[0120] In this specification, each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part.

[0121] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0122] The steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

[0123] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.

[0124] The technical solution provided by the present application is introduced in detail above. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea. At the same time, for general technicians in this field, according to the idea of ​​the present application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A firmware upgrade method, characterized in that: include: Get the firmware upgrade data package of the target device; The firmware upgrade data packet includes firmware data and corresponding firmware description information; Determining a trusted data space corresponding to the firmware data using the firmware description information; The firmware of the target device is upgraded using the firmware data in the trusted data space.

2. The firmware upgrade method according to claim 1, characterized in that: The determining the trusted data space corresponding to the firmware data by using the firmware description information includes: Determining, from a preset storage device of the target device, a first storage space corresponding to the trusted location description information in the firmware description information; The first storage space is used as the trusted data space corresponding to the firmware data.

3. The firmware upgrade method according to claim 2, characterized in that: The process of determining the trusted data space corresponding to the firmware data by using the firmware description information further includes: If the current preset storage device cannot perform a data writing operation, determining a second storage space corresponding to the trusted location description information from a preset heterogeneous storage device corresponding to the preset storage device; The second storage space is used as the trusted data space corresponding to the firmware data.

4. The firmware upgrade method according to claim 1, characterized in that: The firmware upgrade data packet includes a plurality of firmware data to be upgraded of the target device and firmware description information corresponding to each of the firmware data; Accordingly, the determining the trusted data space corresponding to the firmware data by using the firmware description information includes: Based on the firmware description information corresponding to each firmware data in the firmware upgrade data packet, the trusted data space corresponding to each firmware data is determined, so as to perform firmware upgrade on the target device using the corresponding firmware data in each trusted data space.

5. The firmware upgrade method according to claim 4, characterized in that: Before performing firmware upgrade on the target device using the firmware data in the trusted data space, the method further includes: Loading the firmware upgrade system of the target device into a preset shared random access memory; Accordingly, performing firmware upgrade on the target device using the firmware data in the trusted data space includes: In any trusted data space, the firmware upgrade system in the preset shared random access memory is called to perform an operation of upgrading the firmware of the target device using the corresponding firmware data.

6. The firmware upgrade method according to claim 5, characterized in that: Also includes: Configure corresponding security protection logic for each of the trusted data spaces respectively; Correspondingly, the process of upgrading the firmware of the target device using the firmware data in the trusted data space further includes: The corresponding security protection logic is executed in the trusted data space to perform information security protection on the target objects to be protected during the local firmware upgrade process.

7. The firmware upgrade method according to claim 1, characterized in that: After determining the trusted data space corresponding to the firmware data by using the firmware description information, the method further includes: Extracting basic firmware feature information from the firmware description information; Determining whether the firmware on the target device currently meets the firmware upgrade condition based on the firmware basic feature information; If the firmware meets the firmware upgrade condition, the step of performing firmware upgrade on the target device using the firmware data in the trusted data space is triggered.

8. The firmware upgrade method according to any one of claims 1 to 7, characterized in that: The step of upgrading the firmware of the target device by using the firmware data in the trusted data space includes: Determine a target processing flow of the firmware data by using firmware processing logic related information in the firmware description information; Processing the firmware data based on the target processing flow to obtain processed firmware data; Performing a firmware upgrade on the target device using the processed firmware data in the trusted data space; The target processing flow includes any one or a combination of data decryption, data decompression and data verification.

9. A firmware upgrade device, characterized in that: include: A data packet acquisition module, used to acquire a firmware upgrade data packet of a target device; the firmware upgrade data packet includes firmware data and corresponding firmware description information; A trusted space determination module, used to determine the trusted data space corresponding to the firmware data using the firmware description information; A firmware upgrade module is used to upgrade the firmware of the target device using the firmware data in the trusted data space.

10. An electronic device, characterized in that: The electronic device comprises a processor and a memory; wherein the memory is used to store a computer program, and the computer program is loaded and executed by the processor to implement the firmware upgrade method according to any one of claims 1 to 8.

11. A computer-readable storage medium, characterized in that: Used to store a computer program, which, when executed by a processor, implements the firmware upgrade method according to any one of claims 1 to 8.

12. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instruction is executed by a processor, the steps of the firmware upgrade method according to any one of claims 1 to 8 are implemented.