Computer trusted boot method
By using an MCU and watchdog mechanism on the computer motherboard, combined with password verification, the problem of high cost of trusted booting in domestic computer platforms is solved, achieving low-cost trusted booting and supporting system firmware updates.
Patent Information
- Application Number
- CN202211273185.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-18
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2042-10-18
AI Technical Summary
The existing trusted boot schemes for domestic computer platforms are costly and difficult to develop, mainly due to the high price of SOC cards and TCM cards, and the high cost of dedicated firmware licensing fees.
By using an MCU on the computer motherboard in conjunction with existing ROM and system firmware, and employing a watchdog mechanism and password verification, the system firmware, memory, device information, and system files are verified to ensure the trustworthiness of the boot process.
It achieves a low-cost trusted boot solution, avoiding information security threats caused by factors such as system firmware, memory, and device replacement, and supports system firmware updates.
Smart Images

Figure CN115577346B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of computer, in particular to a computer trusted boot method. BACKGROUND
[0002] With the continuous development of computer technology, various electronic devices are more and more widely used in users' work and daily life. With the development of information technology, computer faces more and more security threats. Since a large amount of important information is carried in the computer, its security is paid more and more attention by all aspects. Various computer platforms need to use trusted boot scheme to avoid affecting the boot, normal operation and information security of the computer platform due to malicious tampering of system firmware, i.e. BIOS (Basic Input Output System) and various hardware of the computer platform.
[0003] The current trusted boot scheme of domestic computer platform mostly uses SOC (System on Chip) card or TCM (trusted cryptography module) card to cooperate with special firmware. However, the SOC card and TCM card are expensive, and the authorization fee of special firmware is high, so the existing technical scheme has high cost and great development difficulty. SUMMARY
[0004] Therefore, the purpose of the present application is to provide a computer trusted boot method to realize trusted boot at a low cost.
[0005] To achieve the above purpose, the present application provides a computer trusted boot method, comprising:
[0006] Step 10, the computer is powered on, and the MCU on the computer mainboard prohibits the CPU from accessing the system firmware in the ROM; the MCU verifies the content of the system firmware in the ROM, if the system firmware is not tampered, the authentication is passed, the MCU allows the CPU to access the system firmware in the ROM, and the CPU executes the system firmware code in the ROM to continue booting, otherwise the booting is prohibited;
[0007] Step 20, the system firmware starts running and initializes the memory, and sends the password and memory information to the MCU; and the first watchdog of the MCU is started, and the password and memory information sent by the system firmware are waited; if the MCU does not receive the correct password within a specified time, the first watchdog times out and the booting is prohibited; if the first watchdog does not time out and the MCU receives the correct password and memory information, the first watchdog is closed and the booting is continued, otherwise the booting is prohibited;
[0008] Step 30, the system firmware checks the device information on the mainboard, and sends the password and the device information to the MCU; and, the second watchdog of the MCU is started, and the password and the device information sent by the system firmware are waited for; if the MCU does not receive the correct password within a specified time, the second watchdog times out, and the boot is prohibited; if the second watchdog does not time out, and the MCU receives the correct password and the device information, the second watchdog is closed, and the boot is continued, otherwise the boot is prohibited;
[0009] Step 40, the system firmware checks the system file information on the hard disk, and sends the password and the system file information to the MCU; and, the third watchdog of the MCU is started, and the password and the system file information sent by the system firmware are waited for; if the MCU does not receive the correct password within a specified time, the third watchdog times out, and the boot is prohibited; if the third watchdog does not time out, and the MCU receives the correct password and the system file information, the third watchdog is closed, the trusted verification is passed, and the operating system is started.
[0010] The computer trusted boot method further comprises:
[0011] Step 12, after the CPU in step 10 continues to boot by executing the system firmware code in the ROM, it is judged whether it is the first boot, if yes, the device information on the mainboard and the system file information on the hard disk are collected and sent to the MCU through the password as the original reference data;
[0012] Step 14, when it is judged in step 12 that it is not the first boot, it is judged whether the system firmware needs to be updated; if yes, the system firmware is updated, and the MCU is informed to recalculate the check value of the system firmware content in the ROM; if no, step 20 is executed.
[0013] The device information is a hash value of the device information.
[0014] The system file information is a hash value of the system file information.
[0015] The ROM is a flash memory.
[0016] The computer comprises a desktop computer, a notebook computer, a tablet computer, and a vehicle-mounted computer.
[0017] The CPU and the MCU are connected to the ROM storing the system firmware through the same channel selector.
[0018] The CPU and the MCU are connected to the channel selector through the SPI bus, and the channel selector is connected to the ROM through the SPI bus.
[0019] In conclusion, the computer trusted starting method can realize low-cost trusted starting scheme. BRIEF DESCRIPTION OF DRAWINGS
[0020] The technical scheme and other beneficial effects of the present application will become apparent from the following detailed description of the embodiments of the present application, taken in conjunction with the accompanying drawings.
[0021] In the drawings,
[0022] Figure 1 The hardware principle block diagram of a preferred embodiment of the computer trusted starting method of the present application;
[0023] Figure 2 The flow chart of the computer trusted starting method of the present application;
[0024] Figure 3 The flow chart of a preferred embodiment of the computer trusted starting method of the present application. DETAILED DESCRIPTION
[0025] Referring to Figure 1 , which is the principle block diagram of a preferred embodiment of the computer trusted starting method of the present application. The present application provides a new computer trusted starting method, which can be implemented based on existing software and hardware by appropriate modification, so as to realize low-cost trusted starting scheme. As shown in Figure 1As shown, in principle, the hardware and software modules involved in the computer trusted boot method mainly include a CPU (central processing unit) provided on a computer mainboard, an MCU (micro control unit), a mainboard power control logic module, a channel selector, a ROM (read only memory) in which system firmware, i.e. BIOS, is stored, the ROM can be specifically a Flash in this embodiment, the mainboard power control logic module, and other components (devices or hardware) on the mainboard, and further a watchdog (not shown), which can be understood by those skilled in the art that the watchdog can be realized by hardware or software, which will not be described herein again. Among them, the CPU and the MCU are connected to the ROM storing the system firmware via the same channel selector, in this preferred embodiment, the connection is specifically selected to be realized by an SPI (serial peripheral interface) bus, i.e. the CPU and the MCU are connected to the channel selector via the SPI bus, and the channel selector is connected to the ROM via the SPI bus. In this preferred embodiment, the mainboard power control logic module is electrically connected to the CPU and other components on the mainboard to provide CPU power and device power respectively. In this preferred embodiment, the MCU is communicatively connected to the ROM and the mainboard power control logic module, so that the MCU can provide firmware access control and power control signals, therefore, when the system firmware collects system firmware and / or hardware information during the boot process and sends it to the MCU for checking, when the information does not match, for example, when the memory bar is replaced, the external device on the mainboard is replaced, or the operating system on the hard disk is replaced, the MCU can realize the endpoint of the corresponding device by sending a power control signal, so as to be able to prohibit the system from booting. In this preferred embodiment, the computer includes but is not limited to a desktop computer, a notebook computer, a tablet computer, and a vehicle-mounted computer, etc.
[0026] Those skilled in the art can understand that the hardware and software modules involved in the computer trusted boot method of the present application are all realized on the basis of existing computer platforms, especially existing domestic computer platforms, and the MCU is used to realize trusted boot with system firmware, so as to realize a low-cost trusted boot scheme.
[0027] Referring to Figure 2 and Figure 3 , and combining Figure 1 , the computer trusted boot method of the present application can be further understood, wherein Figure 2 is a flowchart of the computer trusted boot method of the present application, Figure 3 is a flowchart of a preferred embodiment of the computer trusted boot method of the present application. The method mainly includes:
[0028] Step 10, the computer is powered on, the MCU on the computer motherboard prohibits the CPU from accessing the system firmware in the ROM; the MCU checks the system firmware content in the ROM, if the system firmware is not tampered, the authentication is passed, the MCU allows the CPU to access the system firmware in the ROM, the CPU executes the system firmware code in the ROM to continue the boot, otherwise, the boot is prohibited;
[0029] In this preferred embodiment, specifically, before the computer is powered on, the MCU takes over the signals of the SPI bus of the FLASH storing the system firmware through the channel selector, reads the system firmware content and makes a check, and after ensuring that the check value is correct, controls the CPU to be powered on through the motherboard power supply control logic module and releases the signals on the SPI bus to the CPU through the channel selector. The CPU starts to execute the system firmware code stored in the FLASH to continue the boot, i.e., the start. By checking the system firmware content in the ROM, the information security and other problems caused by the tampering of the system firmware can be avoided.
[0030] Step 20, the system firmware starts to run and initialize the memory, and sends the password and the memory information to the MCU; and, the first watchdog of the MCU is started, and the password and the memory information sent by the system firmware are waited for; if the MCU does not receive the correct password within a specified time, the first watchdog times out, and the boot is prohibited; if the first watchdog does not time out, and the MCU receives the correct password and the memory information, the first watchdog is closed, and the boot is continued, otherwise, the boot is prohibited;
[0031] In this preferred embodiment, specifically, the system firmware starts to run and initialize the memory, and the system firmware sends the password plus the memory information to the MCU. At this time, the first watchdog of the MCU is started, and the MCU waits to receive the password and the memory information sent by the system firmware. If the correct password is not received within a specified time, the first watchdog times out, and the start is prohibited. If the MCU receives the correct password and the memory information, the first watchdog is closed, and the system firmware is allowed to continue to run to perform the boot. By checking the memory information, the information security and other problems caused by the change of the memory can be avoided.
[0032] Step 30, the system firmware checks the device information on the motherboard, and sends the password and the device information to the MCU; and, the second watchdog of the MCU is started, and the password and the device information sent by the system firmware are waited for; if the MCU does not receive the correct password within a specified time, the second watchdog times out, and the boot is prohibited; if the second watchdog does not time out, and the MCU receives the correct password and the device information, the second watchdog is closed, and the boot is continued, otherwise, the boot is prohibited;
[0033] In the preferred embodiment, specifically, the system firmware continues to run to start up and checks other key information on the motherboard, i.e. device information, including but not limited to device list, Option ROM (Option ROM) information, hard disk SN (serial number), and sends the password and device information to the MCU. Specifically, the device information can be the hash value of the device information, which can improve the comparison speed when compared. At this time, the second watchdog of the MCU is started, waiting for the password and device hash value sent by the system firmware. If the correct password is not received within a specified time, the second watchdog times out and prohibits further startup. If the MCU receives the correct password and the hash value of the device information, the second watchdog is closed and the system firmware is allowed to continue running to start up. By checking the device information, information security and other problems caused by changes in devices on the motherboard can be avoided.
[0034] Step 40, the system firmware checks the system file information on the hard disk and sends the password and system file information to the MCU; and, start the third watchdog of the MCU, waiting for the password and system file information sent by the system firmware; if the MCU does not receive the correct password within a specified time, the third watchdog times out and prohibits starting up; if the third watchdog does not time out and the MCU receives the correct password and system file information, the third watchdog is closed, the trusted verification is passed, and the operating system is started.
[0035] In the preferred embodiment, specifically, the system firmware continues to run to start up, and the system firmware starts to check the system file information on the hard disk, which can be the hash value of the system file information, thereby improving the checking speed, and then sends the password and the hash value of the system file information to the MCU. At this time, the third watchdog of the MCU is started, waiting for the password and the hash value of the system file sent by the system firmware. If the correct password is not received within a specified time, the third watchdog times out and prohibits further startup. If the MCU receives the correct password and the hash value of the system file information, the third watchdog is closed and the system firmware is allowed to continue running to start up.
[0036] Further, the computer trusted startup method of the preferred embodiment can further include:
[0037] Step 12, after the CPU continues to start up in step 10 by executing the system firmware code in the ROM, it is determined whether it is the first start up. If it is the first start up, the device information on the motherboard and the system file information on the hard disk are collected and sent to the MCU as original reference data through the password.
[0038] Through this step, when the system firmware performs the booting for the first time, the system firmware transmits the original memory information, the device hash value, the system file hash value and the like to the MCU. These values can be saved in the MCU, and the original data cannot be obtained externally, and only the MCU itself is allowed to use the values when performing information checking.
[0039] Further, the computer trusted booting method of the preferred embodiment can further include:
[0040] Step 14: When it is determined in step 12 that it is not the first booting, it is determined whether the system firmware needs to be updated; if yes, the system firmware is updated, and the MCU is notified to recalculate the check value of the system firmware content in the ROM; if no, step 20 is performed. Through this step, the computer trusted booting method of the present application can support the update of the system firmware.
[0041] In summary, the computer trusted booting method of the present application can realize a low-cost trusted booting scheme.
[0042] The above description is for the ordinary skilled in the art, and various corresponding changes and modifications can be made according to the technical solutions and technical concepts of the present application, and all these changes and modifications shall belong to the protection scope of the appended claims of the present application.
Claims
1. A trusted boot method for a computer, characterized in that, include: Step 10: Power on the computer. The MCU on the computer motherboard prevents the CPU from accessing the system firmware in the ROM. The MCU verifies the system firmware content in the ROM. If the system firmware has not been tampered with, the authentication is successful. The MCU allows the CPU to access the system firmware in the ROM, and the CPU executes the system firmware code in the ROM to continue booting. Otherwise, booting is prohibited. Step 20: The system firmware starts running and initializes the memory, and sends a code and memory information to the MCU; and, the first watchdog timer of the MCU is activated, waiting for the code and memory information sent by the system firmware; If the MCU does not receive the correct password within the specified time, the first watchdog timer expires and power-on is prohibited; if the first watchdog timer does not expire and the MCU receives the correct password and memory information, the first watchdog timer is turned off and power-on continues; otherwise, power-on is prohibited. Step 30: The system firmware verifies the device information on the motherboard and sends a code word and device information to the MCU; and activates the second watchdog timer of the MCU, waiting for the code word and device information sent by the system firmware. If the MCU does not receive the correct password within the specified time, the second watchdog timeout will occur, and power-on will be disabled. If the second watchdog timer does not time out and the MCU receives the correct password and device information, the second watchdog timer is turned off and the power-on process continues; otherwise, power-on is prohibited. Step 40: The system firmware verifies the system file information on the hard drive and sends the code and system file information to the MCU; and activates the third watchdog timer of the MCU, waiting for the code and system file information sent by the system firmware. If the MCU does not receive the correct password within the specified time, the third watchdog timeout will occur, and power-on will be disabled. If the third watchdog timer does not time out and the MCU receives the correct code and system file information, the third watchdog timer is disabled, the trusted verification is passed, and the operating system is started.
2. The trusted boot method for computers as described in claim 1, characterized in that, Also includes: Step 12: After the CPU executes the system firmware code in the ROM to continue booting as described in Step 10, it determines whether this is the first boot. If it is the first boot, it collects the device information on the motherboard and the system file information on the hard drive and sends them to the MCU through a code to serve as the raw reference data.
3. The trusted boot method for computers as described in claim 2, characterized in that, Also includes: Step 14: If it is determined in Step 12 that this is not the first time the device has been powered on, determine whether a system firmware update is required. If so, update the system firmware and notify the MCU to recalculate the checksum of the system firmware content in the ROM; If not, proceed to step 20.
4. The trusted boot method for computers as described in claim 1, characterized in that, The device information is a hash value of the device information.
5. The trusted boot method for a computer as described in claim 1, characterized in that, The system file information is the hash value of the system file information.
6. The trusted boot method for computers as described in claim 1, characterized in that, The ROM is a flash memory.
7. The trusted boot method for computers as described in claim 1, characterized in that, The computers include desktop computers, laptop computers, tablet computers, and in-vehicle computers.
8. The trusted boot method for a computer as described in claim 1, characterized in that, The CPU and MCU are connected to the ROM storing the system firmware via the same channel selector.
9. The trusted boot method for a computer as described in claim 8, characterized in that, The CPU and MCU are connected to the channel selector via an SPI bus, and the channel selector is connected to the ROM via an SPI bus.
Citation Information
Patent Citations
Hardware platform, starting method and device thereof and electronic equipment
CN112114908A
Equipment starting method, equipment management method and embedded equipment
CN112632562A