System firmware file initialization method and device, equipment, medium and product
By automatically sending the target system firmware files to the module and verifying their integrity and legality, the problem of manually loading the system firmware files to reduce production efficiency and increase costs is solved, and efficient and secure system firmware file initialization is achieved.
Patent Information
- Application Number
- CN202510388967.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-31
- Publication Date
- 2025-04-29
- Estimated Expiration
- 2045-03-31
AI Technical Summary
In the prior art, manually loading system firmware files reduces production efficiency and increases production costs.
By providing a system firmware file initialization method, the target system firmware file is automatically sent to the module using the initialization device, and the integrity and legality of the target password file are verified during the module initialization to lock permissions.
Automatic system firmware file initialization is realized, production efficiency is improved, production costs are reduced, and the rationality, normality and security of target system firmware files are ensured.
Smart Images

Figure CN119902820A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a system firmware file initialization method, device, equipment, medium and product. Background Art
[0002] When facing device production, the system firmware file needs to be loaded into the mainboard of the device to complete the production of the device.
[0003] In the related art, in the production of equipment equipped with a computing processing platform, R&D personnel load the system firmware file on site to complete the initialization of the system firmware, so that the detection program can be put online. However, the manual method of loading the system firmware file reduces production efficiency and increases production costs. Summary of the invention
[0004] The present application provides a system firmware file initialization method, device, equipment, medium and product to at least solve the problem of reduced production efficiency and increased production cost in the related art.
[0005] In a first aspect, the present application provides a system firmware file initialization method, comprising:
[0006] In response to the detection system being in an offline state, obtaining an initialization command; the detection system is located in the module;
[0007] Detect the module based on the initialization command to obtain the detection result;
[0008] If the test result is not passed, the target password file is sent to the module; the target password file corresponds to the module; the module is used to produce the target device; the target device is equipped with a computing and processing platform; the target password file is used to verify the integrity and legitimacy of the target system firmware file when the module is initialized and started normally for the first time, and is used to lock the module permissions;
[0009] The target system firmware file bound to the target password file is sent to the module, so that the module is initialized based on the target system firmware file; the target system firmware file is the system firmware file corresponding to the module.
[0010] In a second aspect, the present application also provides a system firmware file initialization device, comprising:
[0011] An acquisition module, used for acquiring an initialization command in response to the detection system being in an offline state; the detection system is located in the module;
[0012] A detection module, used to detect the module based on the initialization command to obtain a detection result;
[0013] The sending module is used to send the target password file to the module if the test result is not passed; the target password file corresponds to the module; the module is used to produce the target device; the target device is equipped with a computing and processing platform; the target password file is used to verify the integrity and legitimacy of the target system firmware file when the module is initialized and started normally for the first time, and is used to lock the module permissions;
[0014] The sending module is also used to send the target system firmware file bound to the target password file to the module, so that the module is initialized based on the target system firmware file; the target system firmware file is the system firmware file corresponding to the module.
[0015] In a third aspect, the present application further provides an electronic device, comprising: a memory for storing a computer program; and a processor for implementing the steps of any of the above-mentioned system firmware file initialization methods when executing the computer program.
[0016] In a fourth aspect, the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program, when executed by a processor, implements the steps of any of the above-mentioned system firmware file initialization methods.
[0017] In a fifth aspect, the present application also provides a computer program product, including a computer program, which implements the steps of any of the above-mentioned system firmware file initialization methods when executed by a processor.
[0018] Through a system firmware file initialization method, device, equipment, medium and product provided by the present application, the system firmware file initialization device (hereinafter referred to as the initialization device) in the present application first responds to the detection system being in an offline state, obtains an initialization command, and then detects the module. If the detection result is not passed, the target password file is sent to the module. Further, the initialization device sends the target system firmware file bound to the target password file to the module, so that the module is initialized. It can be seen that the initialization device in the present application realizes the automatic sending of the target system firmware file to the module, instead of manually loading the target system firmware file into the module. Therefore, the automated method can improve production efficiency and reduce production costs; in addition, the initialization device in this application also sends the target password file to the module, and then the module can verify the integrity and legality of the target password file during initialization, so it is ensured that the target system firmware file is reasonable and normal in the module; in addition, the module also uses the target password file to lock permissions, so it ensures the security of the target device during the production process; it can be seen that this application not only uses an automated method to improve the initialization efficiency of the target system firmware file, thereby improving production efficiency and reducing production costs, but also can ensure that the target system firmware file is reasonable, normal and safe. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0020] Figure 1 A schematic diagram of an application scenario provided for this application;
[0021] Figure 2 A schematic diagram of a system firmware file initialization method provided in Example 1;
[0022] Figure 3 A schematic diagram of a system firmware file initialization method provided in Example 2;
[0023] Figure 4 A schematic diagram of a target device provided for this application;
[0024] Figure 5 An interactive schematic diagram provided for this application example;
[0025] Figure 6 A hardware schematic diagram of an initialization system provided for this application;
[0026] Figure 7 A schematic diagram of the structure of a system firmware file initialization device provided by this application;
[0027] Figure 8 A schematic diagram of the structure of the electronic device provided in this application. DETAILED DESCRIPTION
[0028] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0029] It should be noted that, in the description of this application, the terms "include", "comprise" or any other variant 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 includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. The terms "first", "second", etc. in this application are used to distinguish similar objects, and are not used to describe a specific order or sequence.
[0030] In the related art, in the production of equipment equipped with a computing processing platform, R&D personnel load the system firmware file on site to complete the initialization of the system firmware, so that the detection program can be put online. However, the manual method of loading the system firmware file reduces production efficiency and increases production costs.
[0031] In order to solve the defects in the related art, this solution proposes a system firmware file initialization method after a series of improvements. In order to solve the problem of reducing production efficiency and increasing production costs in the related art, this solution adopts a system firmware file initialization device (hereinafter referred to as the initialization device) to automatically send the target system firmware file to the module, and the module is initialized based on the target system firmware file. Specifically, the initialization device detects the module based on the initialization command. If the detection result is that there is no ventilation, the target password file is sent to the module, and the target system firmware file bound to the target password file is sent to the module at the same time. Therefore, the initialization device in this solution can automatically send the target system firmware file to the module based on the initialization command, so it avoids the manual loading of the target system firmware file in the related art, thereby improving production efficiency and reducing production costs; at the same time, the initialization device in this solution also sends the target password file to the module, and the target password file can be used for the module to verify the integrity and legitimacy of the target system firmware file during initialization, and can also be used for the module to lock permissions, avoiding the loading of other system firmware files into the module, thereby ensuring that the module is initialized with the target system firmware file bound to the target password file, realizing the locking of the target system firmware file and the target device permissions, and improving security.
[0032] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.
[0033] In conjunction with the specific application environment architecture or specific hardware architecture on which the execution of the system firmware file initialization method depends, the specific application environment architecture or specific hardware architecture is described here. Figure 1 , Figure 1 A schematic diagram of an application scenario provided by this application. Figure 1 As shown, it includes an electronic device 101 and a module 102 .
[0034] The electronic device 101 may be any control device, for example, the electronic device 101 may be a baseboard management controller (BMC for short), or other devices, which are not limited here.
[0035] The module 102 includes a corresponding central processing unit, a memory, and an electronic storage chip, which will not be described in detail here. The electronic device 101 and the module 102 are mounted on a computing and processing platform, and the computing and processing platform is deployed in the target device.
[0036] In this application scenario, the user can implement one-key initialization (ie, trigger a one-key operation) through the electronic device 101, and then initiate an initialization command, so that the electronic device 101 obtains the initialization command.
[0037] Further, the electronic device 101 detects the module based on the initialization command and obtains the detection result. If the detection result is not passed, the target password file is sent to the module 102. Further, the electronic device 101 sends the target system firmware file bound to the target password file to the module 102. It should be noted that the module 102 can send the target system firmware file to the electronic storage chip therein to load and refresh the target system firmware file to complete the initialization.
[0038] Further, the module 102 verifies the target system firmware file based on the target password file to initialize the target system firmware file. In this scenario, the electronic device 101 can send the target system file to the module in an automated manner. In addition, the electronic device 101 also sends the target password file bound to the target system firmware file to the module, and the target password file can enable the module to verify the integrity and legality of the target system firmware file during initialization and the first normal startup, ensuring the rationality and normality of the target system firmware file; in addition, the target password file can also be used for the module to lock permissions, ensuring that the target system firmware file is not tampered with, and preventing the remaining system firmware files (i.e., system firmware files not bound to the target password file) from being loaded into the module, thereby locking the permissions of the target system firmware file, and further, locking the permissions of the target device produced based on the target system firmware file, i.e., ensuring that the target device does not include the remaining target system firmware.
[0039] It should be noted that the system firmware file initialization method in this application is applied after obtaining the module, and the system firmware file of the module needs to be initialized first, and then the detection system loaded in the module can be started normally. Therefore, in order to facilitate the subsequent production of the target device, the detection system needs to be started normally in this application so that the detection system can detect abnormalities in the production process, so it is imperative to initialize the system firmware file of the module. It should be noted that the normal startup of the detection system depends on the system firmware file.
[0040] It should be noted that in the related art, when the produced device is a computing processing platform, due to the integrated design of the module, the electronic device cannot be directly accessed through the hardware interface, so the system firmware file of the module is initialized manually.
[0041] Embodiment 1
[0042] The execution subject of Examples 1 to 16 of the present application is a system firmware file initialization device (hereinafter referred to as the initialization device), which is located in an electronic device, which may be a control device, and which is located in a target device for production.
[0043] Figure 2 The following is a flow chart of a method for initializing a system firmware file provided in Example 1. Figure 2 As shown, including:
[0044] S201, in response to the detection system being in an offline state, obtaining an initialization command; the detection system is located in a module.
[0045] The offline state of the detection system refers to a state in which the detection system cannot be suspended when powered on, that is, cannot start working normally.
[0046] The initialization command refers to a command for instructing to enter the system firmware file initialization process.
[0047] In one embodiment, the initialization device may receive detection system status information sent by a user, and determine whether the detection system is in an offline state based on the detection system status information.
[0048] In one method, a user can issue an initialization command through a one-key operation, specifically: a user can trigger a one-key operation on a user end or on an electronic device (i.e., pressing a preset one-key operation button can trigger a one-key operation), and the one-key operation is used to characterize that the detection system in the module is offline, and send an initialization command to the electronic device. In this method, the initialization command is generated by triggering a one-key operation, or sent by the user end, so the electronic device obtains the initialization command. In this method, only one-key operation needs to be triggered to enable the initialization device to automatically send the target system firmware file to the module, so that the module is initialized based on the target system firmware file. Therefore, the present application can implement a one-key initialization method for system firmware files.
[0049] Alternatively, in the present application, when it is determined that the detection system is in an offline state, the electronic device can be triggered, and the electronic device directly performs S202 to realize the detection of the module.
[0050] S202: Detect the module based on the initialization command to obtain a detection result.
[0051] The detection result refers to the result of detecting whether the system firmware file is initialized in the module.
[0052] In one embodiment, the initialization device detects the external trusted root in the module based on the initialization command to obtain the detection result.
[0053] Specifically, the module may include at least one external trusted root. In method 1, specifically: the initialization device may detect any one of the external trusted roots, obtain the detection result corresponding to the external trusted root, and use the detection result as the detection result of each external trusted root.
[0054] In mode 2, specifically: the initialization device detects each external trusted root based on the initialization command to obtain the final detection result. It should be noted that detecting each external trusted root can ensure the accuracy of the detection result and avoid missing the detection of any external trusted root.
[0055] The external trusted root may be External Root of Trust, referred to as EROT.
[0056] S203, if the test result is failed, the target password file is sent to the module; the target password file corresponds to the module; the module is used to produce the target device; the target device is equipped with a computing and processing platform; the target password file is used to verify the integrity and legitimacy of the target system firmware file during module initialization and first normal startup, and is used to lock the module permissions.
[0057] If the test result fails, it means that the target system firmware file is not initialized in the module.
[0058] It should be noted that during the production of the target device, the module needs to be mounted on the computing and processing platform. Different merchants correspond to different modules, and each module corresponds to a bound target password file and a target system firmware file. The module in this application corresponds to the target password file, which ensures that the module and the target password file are safe. When the module is initialized instead of using other password files, the target device obtained after initialization with the target password file is the expected production.
[0059] Among them, verifying the integrity and legality of the target system firmware file during initialization and the first normal startup means that the module uses the target password file to verify the integrity of the target system firmware during the initial loading phase (or refresh phase) to ensure that the target system firmware file is a complete system firmware file; in addition, the module uses the target password file to verify the legality of the target system firmware file during the initial startup phase to ensure that the target system firmware is a legal system firmware file, and can also verify that the target system firmware is the system firmware file expected in the target device generated this time, thereby avoiding other system firmware files from illegally loading the module instead of the target system firmware file.
[0060] S204, sending the target system firmware file bound to the target password file to the module, so that the module is initialized based on the target system firmware file; the target system firmware file is the system firmware file corresponding to the module.
[0061] Among them, the target system firmware file bound to the target password file is pre-set, the target password file and the target system firmware file are associated with the supplier, the target password file and the target system firmware file in this application belong to the target supplier, and the target supplier can provide the module in this application, and then the module is bound to the target password file and the target system firmware file is in a binding relationship. Under normal circumstances, the target password file and the bound target system firmware file need to be loaded into the module.
[0062] The target system firmware file is a basic input / output system firmware, which is the first program started after the target device is powered on, and is used to configure the basic functions of the target device and comprehensively configure the basic information of the target device. The basic input / output system firmware can be BIOS Firmware.
[0063] It should be noted that in this application, initialization is achieved during the production of the target device, and the target device of this application is different from the devices in other related technologies. The target device in this application is equipped with a computing and processing platform. This application achieves that when the target device is equipped with a computing and processing platform and the detection system is offline, this application can achieve offline and automatic initialization. In related technologies, when the target device is equipped with a computing and processing platform, offline initialization cannot be performed, but manual initialization is achieved manually.
[0064] Among them, the computing and processing platform can be a central processing unit designed for large-scale artificial intelligence and high-performance computing platforms. The computing and processing platform can be a system for training giant artificial intelligence models, or other large-scale computing platforms, and there is no restriction here.
[0065] The present embodiment provides a method for initializing a system firmware file. In the present embodiment, first, in response to detecting that the system is in an offline state, an initialization command is obtained, and then the module is detected. If the detection result is not passed, a target password file is sent to the module. Further, the initialization device sends the target system firmware file bound to the target password file to the module, so that the module is initialized. It can be seen that the initialization device in the present embodiment realizes the automatic sending of the target system firmware file to the module, rather than manually loading the target system firmware file into the module, so the automation method can improve production efficiency and reduce production costs. In addition, the initialization in the present embodiment The device realizes automatic detection of modules and improves production efficiency. In addition, the initialization device in this embodiment also sends the target password file to the module, so that the module can verify the integrity and legality of the target password file during initialization, thereby ensuring that the target system firmware file is reasonable and normal in the module. In addition, the module also uses the target password file to lock permissions, thereby ensuring the security of the target device during the production process. It can be seen that this embodiment not only uses an automated method to improve the initialization efficiency of the target system firmware file, thereby improving production efficiency and reducing production costs, but also ensures that the target system firmware file is reasonable, normal and safe.
[0066] Embodiment 2
[0067] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional way to detect the module based on the initialization command to obtain the detection result.
[0068] Figure 3 The following is a flow chart of a method for initializing a system firmware file provided in Example 2. Figure 3 As shown, including:
[0069] S301, detecting the initialization status information of the module through a preset safety protocol.
[0070] The preset security protocol may be any security protocol, for example, the SPDM (full name: Security Protocol and Data Model) protocol, which can protect the security and integrity of data transmitted between devices.
[0071] The initialization status information refers to status information of whether the module is initialized.
[0072] The initialization status information includes uninitialized or initialized.
[0073] S302: If the initialization state information is not initialized, determine that the detection result is failed.
[0074] The initialization status information of uninitialized means that the module does not include a target system file or a target password file.
[0075] S303: If the initialization state information is initialized, determine that the detection result is passed.
[0076] Here, initialized means that the module includes the target system file or the target password file.
[0077] It should be noted that before the electronic device in the present application detects the module, the firmware partition therein includes the target system firmware file. The electronic device can detect the module based on the automatic detection function of the target system firmware file stored in itself. It can detect whether the module includes the target password file or the target system firmware file, and can also detect whether the module is in a normal startup state. If it is detected that the module does not include the target password file or the target system firmware file, or if it is detected that the module is in an abnormal startup state, the electronic device can automatically initialize the target system firmware.
[0078] In this application, before the module is tested, the electronic device can control the module to start. If the module fails to start within the specified time, the user can trigger a one-key operation through the user end or the electronic device, and the electronic device obtains the initialization command, performs detection based on the initialization command, and automatically determines whether initialization is required based on the detection result. It should be noted that the target system firmware file can be initialized directly without detection after obtaining the initialization command. However, this application takes into account unexpected factors that cause the initialized module to fail to start within the specified time, so to ensure accuracy, detection can be performed after obtaining the initialization command. The detection can more accurately determine whether the module has been initialized. If the test result is not passed, the electronic device automatically performs the subsequent initialization process.
[0079] In one method, if the test result is passed, the electronic device does not perform initialization. This means that the module has been initialized, but the module failed to start within the specified time due to an accident in the early stage, so the initialization process is not performed at this time. The electronic device can control the module startup again to achieve the first normal startup of the module.
[0080] It should be noted that this embodiment realizes that the electronic device automatically detects whether the module is initialized, that is, when the module that has just received the material cannot start normally, it can be automatically initialized, so that the module that has received the material has been initialized and can start normally for the first time, further realizing the automated production mode of the production line.
[0081] It should be noted that the reason why the newly received module cannot start normally is that the newly received module does not include the target system firmware file.
[0082] The present embodiment provides a system firmware file initialization method. In the present embodiment, the initialization status information of the module is detected through a preset security protocol. Since the security protocol is adopted, the security of data transmission between the electronic device and the module is guaranteed, and the intrusion of malicious data is avoided; at the same time, the integrity of the data is also guaranteed.
[0083] Embodiment 3
[0084] This embodiment is a further refinement of any of the above embodiments. In this embodiment, the initialization state information includes password initialization information.
[0085] The initialization status information includes firmware initialization information and password initialization information.
[0086] The firmware initialization information includes whether the target system firmware file is uninitialized or initialized, wherein the firmware initialization information is uninitialized, indicating that the target system firmware file is uninitialized, that is, the module does not include the target system file.
[0087] The password initialization information includes whether the target password file is uninitialized or initialized, wherein the password initialization information is uninitialized, indicating that the target password file is uninitialized, that is, indicating that the module does not include the target password file. It can be understood that since the target password file is bound to the target system firmware file, when the target password file is uninitialized (that is, the target password file is not included in the module), it means that the target system firmware file is uninitialized.
[0088] This embodiment is an optional method of detecting the initialization status information of the module through a preset security protocol, including:
[0089] The password initialization information of at least one external trusted root in the module is detected through a preset security protocol.
[0090] In one embodiment, an external trusted root may be deployed on both sides of a module, and the electronic device may detect the password initialization information of at least one external trusted root included in the module through a preset security protocol.
[0091] Among them, the external trusted root can be used to store the target password file.
[0092] The password initialization information refers to information about whether the target password file is initialized. If the target password file is included in the external trusted root, the password initialization information is initialized; if the target password file is not included in the external trusted root, the password initialization information is uninitialized.
[0093] This embodiment provides a system firmware file initialization method. In this embodiment, it is only necessary to detect password initialization information to determine whether the initialization state information is initialized.
[0094] Embodiment 4
[0095] This embodiment is a further refinement of any of the above embodiments. In this embodiment, the initialization state information includes password initialization information.
[0096] This embodiment is an optional way to determine that the detection result is failed if the initialization state information is not initialized, including:
[0097] If the password initialization information is not initialized, the detection result is determined to be failed.
[0098] The password initialization information is uninitialized, that is, the external trusted root does not include the target password file.
[0099] This embodiment is an optional way of determining that the detection result is passed if the initialization state information is initialized, including:
[0100] If the password initialization information is initialized, the detection result is determined to be passed.
[0101] The password initialization information is initialized, that is, the external trusted root includes the target password file.
[0102] This embodiment provides a system firmware file initialization method. In this embodiment, the detection result is accurately determined according to whether the password initialization information is initialized.
[0103] Embodiment 5
[0104] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional way to determine password initialization information, including:
[0105] If it is detected that any external trusted root does not include the target password file, the password initialization information is determined to be uninitialized; the external trusted root is located in the module.
[0106] It should be noted that, for multiple external trusted roots, if it is detected that any one of the external trusted roots does not include the target password file, the password initialization information is determined to be uninitialized.
[0107] If it is detected that each external trusted root includes the target password file, it is determined that the password initialization information is initialized.
[0108] It should be noted that, for multiple external trusted roots, if it is detected that each external trusted root includes a target password file, the password initialization information is determined to be initialized.
[0109] It should be noted that the external trusted roots are interoperable, and the status of each external trusted root is basically the same, that is, if one of the external trusted roots includes the target password file, the other external trusted roots will also include the target password file; or, if one of the external trusted roots does not include the target password file, the other external trusted roots will also not include the target password file.
[0110] In practical applications, in order to save computing time and computing resources, the initialization device may only detect any one of the external trusted roots.
[0111] Specifically, the initialization device may randomly detect any one of the external trusted roots.
[0112] Alternatively, the initialization device may detect a predetermined external trusted root.
[0113] Alternatively, the initialization device may detect an external trusted root with a shorter communication distance, wherein the communication distance refers to the distance between the electronic device and the external trusted root.
[0114] The present embodiment provides a system firmware file initialization method. In the present embodiment, as long as it is detected that any external trusted root does not include the target password file, the password initialization information is determined to be uninitialized, so there is no need to continue to detect other external trusted roots; in addition, in the present embodiment, only when it is detected that each external trusted root includes the target password file, the password initialization information is determined to be initialized, so the accuracy of the password initialization information is improved, and the abnormal situation that one of the external trusted roots does not include the target password file while the other external trusted roots include the target password file is avoided, so the accuracy is improved to prevent abnormal situations.
[0115] Embodiment 6
[0116] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional method before sending the target password file to the module, including:
[0117] Get the target password file from its own preset storage space.
[0118] Wherein, the initialization device includes a preset storage space.
[0119] The preset storage space may be an embedded memory card (EMMC for short) equipped with NAND Flash storage technology. EMMC is mainly used in embedded devices.
[0120] Specifically, the initialization device obtains the target password file from the embedded storage card.
[0121] It should be noted that the target password file can be pre-stored in a preset storage space.
[0122] This embodiment also includes an optional method of sending the target password file to the module, specifically:
[0123] The target password file is sent to the module via the preset security protocol.
[0124] This embodiment provides a system firmware file initialization method. In this embodiment, in order to ensure the security and integrity of data, the initialization device sends the target password file to the module through a preset security protocol.
[0125] Embodiment 7
[0126] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional way of sending the target password file to the module through a preset security protocol, including:
[0127] The target password file is sent to at least one external trusted root in the module through a preset security protocol.
[0128] This embodiment provides a system firmware file initialization method. In this embodiment, in order to ensure that each external trusted root includes a target password file, the target password file needs to be sent to at least one external trusted root.
[0129] Embodiment 8
[0130] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional way to obtain a target password file from its own preset storage space, including:
[0131] Get the target password file from the password partition; the password partition is located in the preset storage space.
[0132] It should be noted that, for an electronic device, it can be partitioned in advance, and the preset storage space therein can be partitioned into a password partition and a firmware partition.
[0133] The password partition is used to pre-store the target password file.
[0134] The firmware partition is used to pre-store the target system firmware files.
[0135] The present embodiment provides a system firmware file initialization method. In the present embodiment, the password partition is located in the preset storage space, which can be further refined to obtain the target password file from the password partition, so it is more orderly, rather than taking the preset storage space as a unit to obtain the target password file in the preset storage space, because the preset storage space may include a large amount of data. If the target password file is obtained directly in the preset storage space, it may take more time to obtain the target password file; and the method of obtaining the target password file is also messy.
[0136] Embodiment 9
[0137] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional method for sending a target system firmware file bound to a target password file to a module so that the module is initialized based on the target system firmware file, including:
[0138] Obtain the target system firmware file bound to the target password file from its own preset storage space;
[0139] This embodiment also includes an optional method of sending the target system firmware file bound to the target password file to the module so that the module is initialized based on the target system firmware file, specifically:
[0140] The target system firmware file is sent to the module through a preset management protocol, so that the module is initialized based on the target system firmware file.
[0141] The preset management protocol may be a set of standards developed by the Distributed Management Task Force, and may be a PLDM protocol (full name: Platform Level Data Model), which is mainly used to standardize data exchange between system management components.
[0142] This embodiment provides a system firmware file initialization method. In this embodiment, a target system firmware file is sent through a preset management protocol. The preset management protocol can be used to systematically implement the sending of the target system firmware file.
[0143] Embodiment 10
[0144] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional way to obtain a target system firmware file bound to a target password file from its own preset storage space, including:
[0145] A target system firmware file bound to a target password file is obtained from a firmware partition; the firmware partition is located in a preset storage space.
[0146] The present embodiment provides a method for initializing a system firmware file. In the present embodiment, the firmware partition is located in a preset storage space, which can be further refined to obtain the target system firmware file from the firmware partition, so it is more orderly, rather than taking the preset storage space as a unit to obtain the target system firmware file in the preset storage space, because the preset storage space may include a large amount of data. If the target system firmware file is obtained directly in the preset storage space, it may take more time to obtain the target system firmware file; and the method of obtaining the target system firmware file is also messy.
[0147] Embodiment 11
[0148] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional method after sending the target system firmware file bound to the target password file to the module so that the module is initialized based on the target system firmware file, including:
[0149] When the module has initialized the target system firmware file, the control module is started normally for the first time to bring the detection system in the module online. The detection system is used to detect abnormalities of the target device during the production process.
[0150] It should be noted that the ability of the detection system to go online (i.e., start normally) depends on whether the target system firmware file exists, because the target system firmware is the basic program in the module. After obtaining the module for the first time, the target system firmware file needs to be initialized in the module before the detection system can go online.
[0151] Among them, the detection system is located in the module and can be used to detect abnormalities of the target equipment during the production process. The detection system is a necessary system in the production process of the target equipment.
[0152] This embodiment provides a method for initializing a system firmware file. In this embodiment, a detection system is put online, so anomalies in the production process can be detected, thereby ensuring that the production process can proceed smoothly.
[0153] Embodiment 12
[0154] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional method before obtaining an initialization command in response to detecting that the system is in an offline state, including:
[0155] Step 1: Generate the target password file.
[0156] It should be noted that the target password file is generated before the system firmware is initialized and stored in the storage partition.
[0157] In one approach, a preset asymmetric encryption algorithm may be used to generate a target password file.
[0158] Step 2: Partition the preset storage space to obtain storage partitions.
[0159] The preset storage space in the present application may be an electronic storage device.
[0160] It should be noted that the initialization device can randomly partition its own preset storage space to obtain storage partitions.
[0161] Alternatively, the initialization device partitions the preset storage space based on the pre-received partition address information. The partition address information refers to the address information included in the preset storage space. The storage partition in the present application can be multiple partitions, where, exemplarily, it is assumed that the preset storage space includes three address information, namely the first address information, the second address information and the third address information, where the partition address information is the first address information and the second address information, then the initialization device partitions the first address information and the second address information according to the partition address information, thereby obtaining the storage partition, where the partition address information includes the first address information and the second address information. Based on the above description, the storage partition in the present application can be multiple partitions. Wherein, the address information may include the corresponding storage space capacity information.
[0162] In one embodiment, the storage partition in the present application may be one partition, that is, the partition address information includes only one address information, that is, a space is divided from the preset storage space as a storage partition.
[0163] Step 3: Store the target password file in the storage partition.
[0164] This embodiment provides a system firmware file initialization method. In this embodiment, the target password file is stored in a storage partition to facilitate subsequent acquisition from a more detailed storage partition, rather than directly acquiring the target password file from a preset storage partition.
[0165] Embodiment 13
[0166] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional way to generate a target password file, including:
[0167] A preset asymmetric encryption algorithm is used to generate a local authorization password and its corresponding component authorization password; the component authorization password includes a component public key and a component private key; the target password file includes the local authorization password and the component authorization password; the component authorization password is used to verify the integrity and legitimacy of the target system firmware file during module initialization and the first normal startup; the local authorization password is used by the module to lock the component authorization password to lock permissions.
[0168] The component authorization password can be expressed as Component Authorization Key, referred to as CAK Key.
[0169] The local authorization password can be expressed as Local Access Key, abbreviated as LAK Key.
[0170] Among them, the component authorization password is used to verify the integrity of the target system firmware file during the refresh phase when the module is initialized. At the same time, after the refresh is completed, when the control model starts normally for the first time, it enters the startup phase, and the component authorization password is also used to verify the legitimacy of the target system firmware file.
[0171] Among them, the local authorization password is used to lock the component authorization password to prevent the component authorization password from being invaded, tampered with or replaced during the entire production process, thereby achieving the locking of the target device permissions.
[0172] It should be noted that in actual applications, the component authorization password is the password corresponding to the target supplier, and the local authorization password is the password corresponding to the target producer. There is a cooperative relationship between the target supplier and the target producer. Because of the cooperative relationship, the target password files corresponding to the two merchants will be generated, indicating that the production this time is a cooperation between the above two merchants. The system firmware files of any other merchants cannot be initialized to the module in this application, so the target device produced contains the target system firmware file of the target supplier and other devices of the target manufacturer, but the system firmware files of other suppliers are not allowed to be carried to the module in this application, so as to confuse the produced equipment and fail to achieve the expected target device.
[0173] In the present application, the preset asymmetric encryption algorithm can be generated by the RSA-3072 asymmetric encryption algorithm.
[0174] This embodiment provides a system firmware file initialization method. In this embodiment, the local authorization password and the component authorization password are in a corresponding relationship, or can be said to be a binding relationship. First, the component authorization password ensures the integrity and legality of the target system firmware file; the local authorization password locks the authority, ensuring that the target device is a device within the expected production authority.
[0175] Embodiment 14
[0176] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional way of partitioning the preset storage space to obtain storage partitions, including:
[0177] The preset storage space is partitioned to obtain a password partition and a firmware partition respectively; the storage partition includes the password partition and the firmware partition.
[0178] According to the description of the storage partition into multiple partitions in the twelfth embodiment, further, the partition address information also includes function information corresponding to each address information. Exemplarily, the function information corresponding to the first address information is that the address corresponding to the first address information is the address of the storage target password file, and when the initialization device is partitioning, the initialization device partitions the address corresponding to the first address information into a password partition.
[0179] Similarly, the partition address information also includes: the function information corresponding to the second address information is that the address corresponding to the second address information is the address for storing the target system firmware file, then when the initialization device partitions, the initialization device partitions the address corresponding to the second address information into a firmware partition.
[0180] This embodiment provides a method for initializing a system firmware file. In this embodiment, the storage partition is further refined into a password partition and a firmware partition, so that data can be obtained from each partition more easily and quickly.
[0181] It should be noted that in this application, the preset storage space is pre-partitioned to obtain storage partitions, wherein the storage partitions may include password partitions and firmware partitions, and different partitions have different functions, wherein the password partition may store the target password file, and the firmware partition may store the target system firmware file. It can be seen that different files are stored in different partitions, so that different files can be obtained from different partitions. The pre-partitioning method in this application has obvious advantages.
[0182] Embodiment 15
[0183] This embodiment is a further refinement of any of the above embodiments. In this embodiment, the storage partition includes a password partition and a firmware partition.
[0184] This embodiment is an optional way to store the target password file in the storage partition, including:
[0185] The target password file is stored in the password partition via the preset programmer.
[0186] This embodiment also includes:
[0187] Receive a target system firmware file bound to a target password file; and store the target system firmware file in a firmware partition through a preset programmer.
[0188] The target system firmware file may be provided by a target supplier, and may be sent by a user end to an electronic device, and the electronic device receives the target system firmware file.
[0189] It should be noted that during the production stage of the target device in this application, the electronic device can preset the target password file and the target system firmware file at a relatively low cost through the system firmware image preset function. In this embodiment, the preset programmer plays a role when the system firmware image preset function is used.
[0190] This embodiment provides a system firmware file initialization method, in which a target password file and a target system firmware file are stored in corresponding partitions by a preset programmer, so that each partition stores its own corresponding file, which is convenient for subsequent file acquisition. The files refer to the target password file and the target system firmware file.
[0191] Embodiment 16
[0192] This embodiment is a further refinement of any of the above embodiments. This embodiment is an optional method before obtaining an initialization command in response to detecting that the system is in an offline state, including:
[0193] The control module is started, and in response to the module failing to start normally, it is determined that the detection system in the module is not hung, and that the detection system is in an offline state.
[0194] This embodiment also includes another method, which is:
[0195] The detection system status information of the receiving module is determined to be in an offline state in response to the system status information being in an offline state.
[0196] The system status information refers to the status information of the detection system.
[0197] The system status information includes an offline status or an online status.
[0198] The offline state means that the detection system cannot be suspended and cannot be used normally.
[0199] Among them, the online status means that the detection system can be suspended and used normally.
[0200] This embodiment also includes another method, which is:
[0201] In response to triggering a one-key operation, determining that the detection system is in an offline state, and obtaining an initialization command; the initialization command can be generated by the user end when the one-key operation is triggered on the user end and sent to the electronic device. It can also be generated by the electronic device when the one-key operation is triggered on the electronic device, thereby obtaining the initialization command.
[0202] Among them, triggering the one-key operation can be a one-key operation triggered by the user on the user end, or it can be triggered on the electronic device, and there is no limitation here.
[0203] It can be understood that in this manner, a one-key initialization method for the system firmware file can be implemented, that is, only one-key operation needs to be triggered to achieve automatic initialization of the target system firmware file.
[0204] It should be noted that in the present application, the user triggers a one-key operation to determine that the detection system is offline. It is also possible that the detection system is offline due to an accident. Therefore, after obtaining the initialization command, in order to be just in case the detection system is offline due to an accident, the electronic device can detect the module based on the initialization command, and determine whether to automatically send the target password file and the target system firmware file to the module based on the final detection result, so that the module completes the initialization of the target system firmware file.
[0205] It should be noted that when the test result is failed, it means that the test system is finally offline, and it also means that the module fails to start normally (that is, it is in abnormal startup state), and the module does not include the target password file or target system file.
[0206] Figure 4 A schematic diagram of a target device provided in this application. Figure 4 In the embodiment, the target device 400 includes an electronic device 101 , a module 102 , a mainboard 401 , and a computing and processing platform 402 .
[0207] The electronic device 101 and the module 102 are both deployed on the mainboard 401 .
[0208] The mainboard 401 is mounted on a computing and processing platform 402 .
[0209] The module 102 is communicatively connected with the electronic device 101 , and the connection mode may be a wired connection or a wireless connection.
[0210] Figure 5 This is an interactive diagram provided by this application. Figure 5 As shown, the execution entity includes BMC and modules.
[0211] S501, the BMC generates a target password file and stores it in the password partition.
[0212] S502, the BMC receives the target system firmware file bound to the target password file, and stores it in the firmware partition.
[0213] S503: In response to detecting that the system is in an offline state, the BMC obtains an initialization command.
[0214] S504, the BMC detects the module based on the initialization command to obtain a detection result; if the detection result is a failure, S505 is executed; if the detection result is a pass, S509 is executed.
[0215] S505, the BMC sends the target password file to the module.
[0216] S506, the module stores the target password file in its own external trusted root.
[0217] S507, the BMC sends the target system firmware file bound to the target password file to the module.
[0218] S508, the module loads the target system firmware file into the electronic storage chip based on the external trusted root, and initializes the target system firmware file based on the target password file.
[0219] S509: BMC control starts normally for the first time.
[0220] S510, the module starts normally when the target system firmware file has been initialized, and the detection system is put online.
[0221] The electronic storage chip may be a Flash chip, or other storage devices, etc., which are not limited here.
[0222] In this application, the BMC sends the target system firmware file to an external trusted root, which then sends the target system firmware file to an electronic storage chip, and then uses the target password file to verify the integrity of the target system firmware file. If the integrity verification passes, it supports loading the target system firmware file into the electronic storage chip, and then the module loads the target system firmware into the electronic storage chip. Further, the module receives a control startup request from the BMC, that is, the BMC requests the control module to start normally for the first time, then the module uses the target password file to verify the legitimacy of the target system firmware file before the first normal startup. If the legitimacy verification passes, the module starts normally for the first time under the control of the BMC. After the module starts normally, the detection system included in it operates normally, that is, the detection system is online. In this application, the BMC adopts the method of presetting the target password file and the target system firmware file, and automatically sends the target password file and the target system firmware file to the module during the production process, so that the detection system in the module operates normally, thereby realizing the automatic compatibility of the detection system. This application can improve production efficiency and reduce production costs. Among them, the module in this application has the function of changing the device owner, which can realize two verifications based on the target password file and lock the permissions.
[0223] In this application, the detection system can realize production abnormality diagnosis in the entire production process, providing strong support for production.
[0224] Among them, the target password file is used to verify the integrity of the target system firmware file. Specifically, the module receives the integrity signature information, which is generated by the component private key signature in the component authorization password. Further, the module verifies the integrity signature information based on the component public key. If the component public key matches the integrity signature information, the integrity verification is successful.
[0225] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method.
[0226] Figure 6 This is a hardware schematic diagram of an initialization system provided by this application. Figure 6 As shown, the board-level management control device 600 includes an EMMC memory 601 , an embedded processor 602 and an integrated circuit 603 .
[0227] The embedded processor 602 includes a communication controller 6021 .
[0228] The EMMC memory 601 includes a password partition 6011 and a firmware partition 6012 .
[0229] in, Figure 6 The system also includes a module 102 , wherein the module 102 includes a field-programmable gate array (FPGA) 6041 , a security controller 6042 , and an electronic storage chip 6043 .
[0230] The embedded processor 602 can communicate with the FPGA 6041 in the module according to a preset protocol through the communication controller 6021, so that the board management control device (BMC) 600 can communicate with the FPGA 6041 in the module 102 according to the preset protocol. The preset protocol can be a preset security protocol and / or a preset management protocol.
[0231] Specifically, when the board-level management control device 600 is powered on, in response to the detection system in the module 102 being offline, an initialization command is obtained, and the initialization command is used to trigger the detection and initialization actions. The embedded processor 602 is used to control the integrated circuit 603 to detect the module 102 to obtain the detection result.
[0232] Furthermore, if the detection result fails, the embedded processor 602 obtains the target password file from the password partition 6011 in the EMMC memory 601, and sends the target password file to the FPGA 6041 in the module 102 through the communication controller 6021 according to the corresponding preset protocol, and the FPGA 6041 sends and stores the target password file to the security controller 6042. Figure 6 The security controller 6042 in includes an external trusted root.
[0233] Furthermore, the embedded processor 602 obtains the target system firmware file from the firmware partition 6012, and sends the target system firmware file to the FPGA 6041 in the module 102 according to the corresponding preset protocol through the communication controller 6021, and the module 102 sends and stores the target system firmware file to the electronic storage chip 6043 through the FPGA 6041.
[0234] exist Figure 6 In the embodiment, the FPGA 6041 can be connected via a serial peripheral interface (SPI) communication, the embedded processor 602 and the integrated circuit 603 can also be connected via SPI communication, and the embedded processor 602 can be connected via an EMMC (embedded multimedia card) communication, which can provide high-speed data transmission and storage functions.
[0235] The embodiment of the present application also provides a system firmware file initialization device. Figure 7 A schematic diagram of the structure of a system firmware file initialization device provided by this application, such as Figure 7 As shown, the system firmware file initialization device 700 includes the following modules:
[0236] The acquisition module 701 is used to acquire an initialization command in response to the detection system being in an offline state; the detection system is located in the module;
[0237] A detection module 702, configured to detect the module based on the initialization command to obtain a detection result;
[0238] The sending module 703 is used to send the target password file to the module if the detection result is not passed; the target password file corresponds to the module; the module is used to produce the target device; the target device is equipped with a computing and processing platform; the target password file is used to verify the integrity and legitimacy of the target system firmware file when the module is initialized and started normally for the first time, and is used to lock the module permissions;
[0239] The sending module 703 is further used to send the target system firmware file bound to the target password file to the module, so that the module is initialized based on the target system firmware file; the target system firmware file is the system firmware file corresponding to the module.
[0240] Optionally, the detection module 702, when detecting the module based on the initialization command to obtain the detection result, is specifically used to:
[0241] Detect the module's initialization status information through a preset safety protocol;
[0242] If the initialization status information is not initialized, the test result is determined to be failed;
[0243] If the initialization status information is initialized, the detection result is determined to be passed.
[0244] Optionally, the initialization status information includes password initialization information;
[0245] The detection module 702 is specifically used to:
[0246] The password initialization information of at least one external trusted root in the module is detected through a preset security protocol.
[0247] Optionally, the initialization status information includes password initialization information;
[0248] The detection module 702, when the initialization state information is not initialized, determines that the detection result is not passed, is specifically used to:
[0249] If the password initialization information is not initialized, the test result is determined to be failed;
[0250] If the initialization status information is initialized, the test result is determined to be passed, including:
[0251] If the password initialization information is initialized, the detection result is determined to be passed.
[0252] Optionally, this embodiment provides a system firmware file initialization device, further comprising: a determination module;
[0253] The determination module, when determining the password initialization information, is specifically used to:
[0254] If it is detected that any external trusted root does not include the target password file, the password initialization information is determined to be uninitialized; the external trusted root is located in the module;
[0255] If it is detected that each external trusted root includes the target password file, it is determined that the password initialization information is initialized.
[0256] Optionally, the acquisition module 701, before sending the target password file to the module, is further used to:
[0257] Get the target password file from its own preset storage space;
[0258] The sending module 703, when sending the target password file to the module, is specifically used for:
[0259] The target password file is sent to the module via the preset security protocol.
[0260] Optionally, the sending module 703, when sending the target password file to the module through a preset security protocol, is specifically used to:
[0261] The target password file is sent to at least one external trusted root in the module through a preset security protocol.
[0262] Optionally, when acquiring the target password file from its own preset storage space, the acquisition module 701 is specifically used to:
[0263] Get the target password file from the password partition; the password partition is located in the preset storage space.
[0264] Optionally, before sending the target system firmware file bound to the target password file to the module so that the module is initialized based on the target system firmware file, the acquisition module 701 is further used to:
[0265] Obtain the target system firmware file bound to the target password file from its own preset storage space;
[0266] The sending module 703 is specifically used to send the target system firmware file bound to the target password file to the module so that the module is initialized based on the target system firmware file:
[0267] The target system firmware file is sent to the module through a preset management protocol, so that the module is initialized based on the target system firmware file.
[0268] Optionally, when acquiring the target system firmware file bound to the target password file from its own preset storage space, the acquisition module 701 is specifically used to:
[0269] A target system firmware file bound to a target password file is obtained from a firmware partition; the firmware partition is located in a preset storage space.
[0270] Optionally, this embodiment provides a system firmware file initialization device, further comprising: a control module;
[0271] After sending the target system firmware file bound to the target password file to the module so that the module is initialized based on the target system firmware file, the control module is used to:
[0272] When the module has initialized the target system firmware file, the control module is started normally for the first time to bring the detection system in the module online. The detection system is used to detect abnormalities of the target device during the production process.
[0273] Optionally, this embodiment provides a system firmware file initialization device, further comprising: a generation module, a partition module and a storage module;
[0274] In response to detecting that the system is in an offline state, before obtaining an initialization command, a generation module is used to generate a target password file; a partition module is used to partition its own preset storage space to obtain storage partitions; and a storage module is used to store the target password file in the storage partition.
[0275] Optional, generation module, when generating the target password file, specifically used to:
[0276] A preset asymmetric encryption algorithm is used to generate a local authorization password and its corresponding component authorization password; the component authorization password includes a component public key and a component private key; the target password file includes the local authorization password and the component authorization password; the component authorization password is used to verify the integrity and legitimacy of the target system firmware file during module initialization and the first normal startup; the local authorization password is used by the module to lock the component authorization password to lock permissions.
[0277] Optionally, the partitioning module, when partitioning its own preset storage space to obtain storage partitions, is specifically used to:
[0278] The preset storage space is partitioned to obtain a password partition and a firmware partition respectively; the storage partition includes the password partition and the firmware partition.
[0279] Optionally, the storage partition includes a password partition and a firmware partition;
[0280] The storage module is used to store the target password file in the storage partition:
[0281] Store the target password file into the password partition through the preset programmer;
[0282] The present application provides a system firmware initialization device, further comprising: a receiving module, for: receiving a target system firmware file bound to a target password file;
[0283] The storage module is also used to store the target system firmware file in the firmware partition through a preset programmer.
[0284] Optionally, in response to detecting that the system is in an offline state, before obtaining the initialization command, the control module is further configured to:
[0285] The control module starts up and determines the module, and is further used to: in response to the module failing to start up normally, determine that the detection system in the module is not suspended, and determine that the detection system is in an offline state;
[0286] The receiving module is further used to receive the detection system status information of the module, and the determining module is further used to: in response to the system status information being an offline state, determine that the detection system is in an offline state.
[0287] The description of the features in the embodiment corresponding to the system firmware file initialization device can refer to the relevant description of the embodiment corresponding to the system firmware file initialization method, which will not be repeated here.
[0288] Figure 8 This is a schematic diagram of the structure of the electronic device provided in this application. Figure 8 As shown, the electronic device 101 provided in this embodiment includes: at least one processor 801 and a memory 802. Optionally, the electronic device 101 also includes a communication component 803. The processor 801, the memory 802 and the communication component 803 are connected via a bus 804.
[0289] In a specific implementation process, at least one processor 801 executes the computer-executable instructions stored in the memory 802, so that at least one processor 801 executes the above-mentioned system firmware file initialization method embodiment.
[0290] The specific implementation process of the processor 801 can be found in the above method embodiment, and its implementation principle and technical effect are similar, so this embodiment will not be repeated here.
[0291] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the method disclosed in the application may be directly implemented as being executed by a hardware processor, or may be executed by a combination of hardware and software modules in the processor.
[0292] The memory may include a high-speed memory (Random Access Memory, RAM), and may also include a non-volatile memory (NVM), such as at least one disk storage.
[0293] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, the bus in the drawings of this application is not limited to only one bus or one type of bus.
[0294] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above-mentioned system firmware file initialization method embodiments when running.
[0295] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
[0296] An embodiment of the present application further provides a computer program product, the computer program product comprising a computer program, and when the computer program is executed by a processor, the steps in any one of the above-mentioned system firmware file initialization method embodiments are implemented.
[0297] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, the non-volatile computer-readable storage medium storing a computer program, and when the computer program is executed by a processor, the steps in any of the above-mentioned system firmware file initialization method embodiments are implemented.
[0298] 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.
[0299] The above is a detailed introduction to a system firmware file initialization method provided by the present application. This article uses specific examples 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 and core ideas of the present application. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the scope of protection of the claims of the present application.
Claims
1. A system firmware file initialization method, characterized in that: include: In response to detecting that the system is in an offline state, obtaining an initialization command; The detection system is located in the module; Detecting the module based on the initialization command to obtain a detection result; If the detection result is not passed, the target password file is sent to the module; the target password file corresponds to the module; The module is used to produce a target device; the target device is equipped with a computing processing platform; the target password file is used to verify the integrity and legitimacy of the target system firmware file when the module is initialized and started normally for the first time, and is used to lock permissions of the module; Sending a target system firmware file bound to the target password file to the module, so that the module is initialized based on the target system firmware file; The target system firmware file is the system firmware file corresponding to the module.
2. The method according to claim 1, characterized in that The detecting the module based on the initialization command to obtain a detection result includes: Detect the module's initialization status information through a preset safety protocol; If the initialization state information is not initialized, determining that the detection result is failed; If the initialization state information is initialized, the detection result is determined to be passed.
3. The method according to claim 2, characterized in that The initialization state information includes password initialization information; The detecting the initialization status information of the module by using a preset safety protocol includes: The password initialization information of at least one external trusted root in the module is detected through a preset security protocol.
4. The method according to claim 2, characterized in that: The initialization state information includes password initialization information; If the initialization state information is not initialized, determining that the detection result is not passed includes: If the password initialization information is not initialized, determining that the detection result is failed; If the initialization state information is initialized, determining that the detection result is passed includes: If the password initialization information is initialized, the detection result is determined to be passed.
5. The method according to claim 4, characterized in that Determine the password initialization information, including: If it is detected that any external trusted root does not include the target password file, it is determined that the password initialization information is uninitialized; the external trusted root is located in the module; If it is detected that each external trusted root includes the target password file, it is determined that the password initialization information is initialized.
6. The method according to claim 1, characterized in that Before sending the target password file to the module, the method further includes: Obtain the target password file from its own preset storage space; The sending the target password file to the module includes: The target password file is sent to the module through a preset security protocol.
7. The method according to claim 6, characterized in that The sending the target password file to the module through a preset security protocol includes: The target password file is sent to at least one external trusted root in the module through a preset security protocol.
8. The method according to claim 6, characterized in that The step of obtaining the target password file from the preset storage space of the device includes: The target password file is obtained from a password partition; the password partition is located in the preset storage space.
9. The method according to claim 1, characterized in that: Before sending the target system firmware file bound to the target password file to the module so that the module is initialized based on the target system firmware file, the method further includes: Acquire a target system firmware file bound to the target password file from its own preset storage space; The step of sending the target system firmware file bound to the target password file to the module so that the module is initialized based on the target system firmware file includes: The target system firmware file is sent to the module through a preset management protocol, so that the module is initialized based on the target system firmware file.
10. The method according to claim 9, characterized in that The step of obtaining the target system firmware file bound to the target password file from the preset storage space of the device includes: A target system firmware file bound to the target password file is obtained from a firmware partition; the firmware partition is located in the preset storage space.
11. The method according to claim 1, characterized in that: After sending the target system firmware file bound to the target password file to the module so that the module is initialized based on the target system firmware file, the method further includes: In the case that the module has initialized the target system firmware file, the module is controlled to start normally for the first time so that the detection system in the module is online, and the detection system is used to detect abnormalities of the target device during the production process.
12. The method according to claim 1, characterized in that In response to detecting that the system is in an offline state, before obtaining the initialization command, the method further includes: Generate target password file; Partitioning the preset storage space of the device to obtain storage partitions; The target password file is stored in the storage partition.
13. The method according to claim 12, characterized in that The generating target password file comprises: A preset asymmetric encryption algorithm is used to generate a local authorization password and a corresponding component authorization password; the component authorization password includes a component public key and a component private key; the target password file includes a local authorization password and a component authorization password; the component authorization password is used to verify the integrity and legitimacy of the target system firmware file when the module is initialized and started normally for the first time; the local authorization password is used by the module to lock the component authorization password to lock the authority.
14. The method according to claim 12, characterized in that Partitioning the preset storage space to obtain storage partitions includes: The preset storage space is partitioned to obtain password partitions and firmware partitions respectively; the storage partitions include password partitions and firmware partitions.
15. The method according to claim 12, characterized in that The storage partitions include a password partition and a firmware partition; The storing the target password file in the storage partition comprises: The target password file is stored in the password partition by a preset programmer; The method further comprises: Receiving a target system firmware file bound to the target password file; The target system firmware file is stored in the firmware partition through a preset programmer.
16. The method according to claim 1, characterized in that In response to detecting that the system is in an offline state, before obtaining the initialization command, the method further includes: Controlling the module to start up, and in response to the module failing to start up normally, determining that the detection system in the module is not suspended, and determining that the detection system is in an offline state; Alternatively, the detection system status information of the module is received, and in response to the system status information being in an offline state, it is determined that the detection system is in an offline state.
17. A system firmware file initialization device, characterized in that: include: An acquisition module, used for acquiring an initialization command in response to detecting that the system is in an offline state; The detection system is located in the module; A detection module, used for detecting the module based on the initialization command to obtain a detection result; A sending module, used for sending a target password file to the module if the detection result is not passed; the target password file corresponds to the module; The module is used to produce a target device; the target device is equipped with a computing processing platform; the target password file is used to verify the integrity and legitimacy of the target system firmware file when the module is initialized and started normally for the first time, and is used to lock permissions of the module; The sending module is further used to send the target system firmware file bound to the target password file to the module, so that the module is initialized based on the target system firmware file; The target system firmware file is the system firmware file corresponding to the module.
18. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the system firmware file initialization method as claimed in any one of claims 1 to 16 when executing the computer program.
19. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the system firmware file initialization method according to any one of claims 1 to 16.
20. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the system firmware file initialization method according to any one of claims 1 to 16 are implemented.
Citation Information
Patent Citations
Firmware program loading protection method based on public key cryptographic algorithm
CN110298145A
Server component firmware updating method
CN111625263A
Component authentication method and device
CN116702114A
Communication device, method, system, equipment, medium, encryption system and server
CN117155714A
Trusted startup system and method of computer
CN117421736A