Trusted controller based on multiple verification mechanisms and starting method
By adopting a multi-factor verification mechanism in the controller, combining software and hardware verification, the problem of insufficient security and credibility during the controller startup process is solved, and higher security and credibility are achieved and external attacks are resisted.
Patent Information
- Application Number
- CN202510109990.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-23
- Publication Date
- 2025-05-16
AI Technical Summary
Existing controllers may be attacked and disturbed during startup, resulting in insufficient security and credibility.
A multi-factor verification mechanism is adopted, combining software verification and hardware verification, verification data is generated through hashing operations, and consistency verification is performed in a trusted chip to ensure the secure startup of the controller.
Improves the security and credibility of the controller during startup, enhances resistance to external attacks, and prevents tampering and attacks on the controller by malware or hackers.
Smart Images

Figure CN120012071A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of controllers and relates to a trusted controller and a startup method based on a multiple verification mechanism. Background Art
[0002] With the rapid development of information technology, controllers are increasingly used in various fields. However, since controllers may be subject to various attacks and interferences during the startup process, how to ensure the security and credibility of controllers has become an urgent problem to be solved.
[0003] A Chinese patent application with publication number CN117170763A discloses a controller trusted startup method and a controller, wherein the controller includes a trusted chip, a first processor, a second processor, a first memory and a second memory, wherein the first memory stores a program to be loaded, and the second memory stores first verification data, and the first verification data is obtained by a trusted loader operation. The controller trusted startup method includes: the second processor obtains first output data and first verification data, and the first output data is output by the first processor when the program to be loaded is loaded; the second processor parses the first verification data and / or the first output data to obtain a parsing result; the second processor determines the startup indication information of the controller according to the parsing result, and the startup indication information indicates whether to execute the controller startup operation. The controller and its startup method only perform software measurement, and the reliability needs to be improved. Summary of the invention
[0004] In order to solve the above problems of the prior art, the present invention provides a trusted controller and a startup method based on a multiple verification mechanism, which improves the security and credibility of the trusted controller by combining software verification and hardware verification.
[0005] The present invention is achieved through the following technical solutions: In a first aspect, the present invention provides a trusted controller based on a multiple authentication mechanism, comprising: a processor, a memory and a trusted chip; The memory is used to store the program to be loaded, the startup instruction information and the first verification data, and the trusted chip stores a trusted loading program, a verification data generation program and a verification program; The processor is configured to load the program to be loaded to obtain output data of the program to be loaded, execute the trusted loading program to operate on the output data of the program to be loaded to obtain first verification data, and transmit the first verification data to the memory and the trusted chip; obtain hardware information of the trusted controller, and execute the verification data generation program to generate second verification data based on the hardware information and the first verification data, and transmit the second verification data to the trusted chip; The trusted chip is used to obtain the hardware information of the trusted controller, and parse the hardware information and the first verification data to obtain a parsing result; execute the verification program to verify the consistency of the parsing result with the second verification data. If the verification result is consistent, the trusted controller starts the program to be loaded according to the startup indication information.
[0006] Preferably, the performing of operation on the output data of the program to be loaded to obtain the first verification data is specifically: performing a hash operation on the output data of the program to be loaded, and obtaining a hash value as the first verification data.
[0007] Preferably, generating the second verification data based on the hardware information and the first verification data is specifically: performing a hash operation on the hardware information and the first verification data to obtain the second verification data.
[0008] Preferably, the parsing of the hardware information and the first verification data to obtain the parsing result specifically comprises: performing a hash operation on the hardware information and the first verification data to obtain the parsing result.
[0009] Preferably, the hardware information is version information of a Basic Input Output System (BIOS), a Unified Extensible Firmware Interface (UEFI) or a system bootloader (Bootloader).
[0010] Preferably, the processor includes: a first processor and a second processor; the memory includes: a first memory and a second memory; The first memory is used to store the program to be loaded and the startup instruction information; The second memory is used to store the first verification data; The first processor is used to load the program to be loaded to obtain output data of the program to be loaded, execute the trusted loading program to operate on the output data of the program to be loaded to obtain first verification data, and transmit the first verification data to the second memory and the trusted chip; The second processor is used to obtain the hardware information of the trusted controller, read the first verification data in the second memory, execute the verification data generation program to generate second verification data based on the hardware information and the first verification data, and transmit the second verification data to the trusted chip.
[0011] In a second aspect, the present invention provides a trusted controller startup method based on a multiple verification mechanism, comprising: Loading the program to be loaded to obtain output data of the program to be loaded, executing the trusted loading program to operate on the output data of the program to be loaded, and obtaining first verification data; Acquire hardware information of the trusted controller, and execute a verification data generation program to generate second verification data based on the hardware information and the first verification data; Parsing the hardware information and the first verification data to obtain a parsing result; A verification program is executed to verify the consistency between the parsing result and the second verification data. If the verification result is consistent, the trusted controller starts the program to be loaded according to the startup indication information.
[0012] Preferably, the performing of operation on the output data of the program to be loaded to obtain the first verification data is specifically: performing a hash operation on the output data of the program to be loaded, and obtaining a hash value as the first verification data.
[0013] Preferably, generating the second verification data based on the hardware information and the first verification data is specifically: performing a hash operation on the hardware information and the first verification data to obtain the second verification data.
[0014] Preferably, the parsing of the hardware information and the first verification data to obtain the parsing result specifically comprises: performing a hash operation on the hardware information and the first verification data to obtain the parsing result.
[0015] Compared with the prior art, the present invention has the following beneficial effects: The trusted controller of the present invention adopts a multiple verification mechanism, including verification based on software (program to be loaded) and verification based on hardware (hardware information of the trusted controller). By combining software verification and hardware verification, the security and credibility of the trusted controller during the startup process are improved. Therefore, the present invention improves the ability of the trusted controller to resist external attacks, effectively prevents malicious software or hackers from tampering with and attacking the trusted controller, thereby ensuring the stability and security of the trusted controller. In general, the trusted controller based on the multiple verification mechanism of the present invention has a high degree of security and credibility, and can meet the application requirements in various complex environments.
[0016] Furthermore, the present invention includes a first processor and a second processor. The first processor is used to process and obtain first verification data. The second processor and the trusted chip can directly use the first verification data, thereby reducing the data processing volume of the second processor and the trusted chip and improving the multiple verification response speed.
[0017] The trusted controller startup method of the present invention adopts a multiple verification mechanism combining software verification and hardware verification for verification, which improves the security and credibility of the trusted controller during startup and operation, improves the trusted controller's ability to resist external attacks, and effectively prevents malicious software or hackers from tampering with and attacking the trusted controller, thereby ensuring the stability and security of the trusted controller. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0019] Figure 1 A block diagram of a trusted controller based on a multiple authentication mechanism of the present invention; Figure 2 This is a flow chart of a trusted controller startup method based on a multiple authentication mechanism of the present invention. DETAILED DESCRIPTION
[0020] The following describes the embodiments of the present invention through specific examples, and those skilled in the art can easily understand other advantages and effects of the present invention from the contents disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present invention.
[0021] It should be noted that the process equipment or devices not specifically specified in the following embodiments are all conventional equipment or devices in the art.
[0022] It should be noted that the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices. Moreover, unless otherwise specified, the numbering of each method step is only a convenient tool for identifying each method step, and is not intended to limit the order of arrangement of each method step or to define the scope of the present invention. Changes or adjustments in their relative relationships should also be regarded as the scope of the present invention without substantially changing the technical content.
[0023] like Figure 1 As shown, the trusted controller based on the multiple authentication mechanism of the present invention includes: a processor, a memory and a trusted chip; The memory is used to store the program to be loaded, the startup instruction information and the first verification data, and the trusted chip stores a trusted loading program, a verification data generation program and a verification program; The processor is configured to load the program to be loaded to obtain output data of the program to be loaded, execute the trusted loading program to operate on the output data of the program to be loaded to obtain first verification data, and transmit the first verification data to the memory and the trusted chip; obtain hardware information of the trusted controller, and execute the verification data generation program to generate second verification data based on the hardware information and the first verification data, and transmit the second verification data to the trusted chip; The trusted chip is used to obtain the hardware information of the trusted controller, and parse the hardware information and the first verification data to obtain a parsing result; execute the verification program to verify the consistency of the parsing result with the second verification data. If the verification result is consistent, the trusted controller starts the program to be loaded according to the startup indication information.
[0024] The first verification data of the present invention is a hash value obtained by performing a hash operation or other verification operation on the output data of the program to be loaded, and is a software-based verification. The second verification data is generated based on hardware information, and is a hardware-based verification. Therefore, the trusted controller of the present invention includes both software-based verification and hardware-based verification, thereby improving the security and credibility of the trusted controller during the startup process.
[0025] The processor described in the present invention may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The processor may execute one or more instructions, which are different programs, including a trusted loader, a verification data generation program, and a verification program.
[0026] The memory described in the present invention is used to store programs and data, and may include a built-in storage medium in a trusted controller, or an extended storage medium supported by the trusted controller. The memory here may be a random access memory (RAM) or a non-volatile memory, such as at least one disk storage.
[0027] The trusted chip described in the present invention is an integrated circuit chip specifically used to protect data and application security. It has a hardware-level security protection mechanism that can provide confidentiality, integrity and availability of information and prevent data leakage, tampering and illegal access.
[0028] The processor of the present invention executes the trusted loader to operate on the output data of the program to be loaded to obtain first verification data. The specific process is: the processor loads the trusted loader, performs a hash operation on the output data of the program to be loaded, and the obtained hash value is used as the first verification data.
[0029] Hash operation, also known as hash algorithm or hash function, is a mathematical function or algorithm that converts data of any length (called "message" or "input") into a string of fixed length (called "hash value" or simply "hash"). Hash operation is very sensitive to any slight change in data. Even if only one bit of the original data is modified, the final hash value will be very different. Therefore, the present invention uses the hash value obtained by hash operation as the first verification data, which can well verify the data integrity.
[0030] The processor obtains the hardware information of the trusted controller and executes the verification data generation program to generate second verification data based on the hardware information and the first verification data. The specific process is: the processor obtains the hardware information of the trusted controller through the data interface, performs a hash operation on the hardware information and the first verification data, and obtains the second verification data.
[0031] The processor of the present invention obtains the hardware information of the trusted controller through the data interface. The hardware information obtained through the data interface is directly provided by the hardware, so it has high accuracy, which avoids errors and omissions that may occur in manual collection. In addition, the hardware information and the first verification data are hashed to obtain the second verification data, which can well verify the data integrity.
[0032] The processor of the present invention transmits the first verification data to the memory and the trusted chip, specifically: the processor transmits the first verification data to the memory and the trusted chip through the data interface; and transmits the second verification data to the trusted chip, specifically: the second verification data is transmitted to the trusted chip through the data interface.
[0033] The present invention transmits the first verification data via a data interface, which has a relatively high transmission speed. Meanwhile, the data interface can ensure the integrity and accuracy of the transmission of the first verification data.
[0034] The trusted chip of the present invention obtains the hardware information of the trusted controller, and parses the hardware information and the first verification data to obtain the parsing result. The specific process is: the trusted chip obtains the hardware information of the trusted controller through the data interface, performs hash operation on the hardware information and the first verification data, and obtains the parsing result.
[0035] The trusted chip of the present invention obtains the hardware information of the trusted controller through the data interface. The hardware information obtained through the data interface is directly provided by the hardware, so it has high accuracy and avoids errors and omissions that may occur in manual collection. In addition, the hardware information and the first verification data are hashed to obtain a parsing result, which can well verify the data integrity.
[0036] The hardware information described in the present invention specifically refers to version information of firmware such as BIOS, UEFI, and system boot program.
[0037] The BIOS is a bridge between computer hardware and software. It is a set of programs that are fixed to a read-only memory (ROM) on the motherboard of the computer. It stores the most important basic input and output programs of the computer, the self-test program after power-on, and the system self-starting program. In the present invention, the computer refers to a trusted controller.
[0038] The UEFI is a modern computer firmware interface designed to replace the traditional BIOS. UEFI provides richer, more powerful and flexible functions to support the needs of modern computer hardware and operating systems.
[0039] The system boot program, also called a boot program or a boot program, is a vital component in a computer system. Its main task is to load the operating system kernel into the memory and start the system to ensure that the computer can enter the operating system environment normally.
[0040] like Figure 2 As shown, the present invention also provides a trusted controller startup method based on a multiple verification mechanism, including: Loading the program to be loaded to obtain output data of the program to be loaded, executing the trusted loading program to operate on the output data of the program to be loaded, and obtaining first verification data; Acquire hardware information of the trusted controller, and execute a verification data generation program to generate second verification data based on the hardware information and the first verification data; Parsing the hardware information and the first verification data to obtain a parsing result; A verification program is executed to verify the consistency between the parsing result and the second verification data. If the verification result is consistent, the trusted controller starts the program to be loaded according to the startup indication information.
[0041] The trusted controller of the present invention adopts a multiple verification mechanism, including software-based verification and hardware-based verification, thereby improving the security and credibility of the trusted controller during the startup process. Therefore, the present invention improves the trusted controller's ability to resist external attacks, effectively preventing malware or hackers from tampering with and attacking the trusted controller, thereby ensuring the stability and security of the trusted controller. In general, the trusted controller based on the multiple verification mechanism of the present invention has a high degree of security and credibility, and can meet the application requirements in various complex environments.
[0042] Example The trusted controller based on the multiple verification mechanism described in this embodiment includes a hardware part and a software part. The hardware part includes: a first processor, a second processor, a first memory, a second memory, and a trusted chip; the software part includes: a program to be loaded, a trusted loader, a verification data generation program, and a verification program. The program to be loaded is stored in the first memory, and the trusted loader, the verification data generation program, and the verification program are stored in the trusted chip; the startup instruction information received by the trusted controller is stored in the first memory.
[0043] The second memory is used to store the first verification data obtained by the trusted loader; the trusted chip is also used to store the first verification data and the second verification data, and the second verification data is generated by the verification data generation program based on the hardware information and the first verification data.
[0044] The first processor is used to load the program to be loaded to obtain output data of the program to be loaded, execute the trusted loading program to operate on the output data of the program to be loaded to obtain first verification data, and transmit the first verification data to the second memory and the trusted chip.
[0045] The second processor is used to obtain the hardware information of the trusted controller, read the first verification data in the second memory, execute the verification data generation program to generate second verification data based on the hardware information and the first verification data, and transmit the second verification data to the trusted chip.
[0046] The trusted chip is used to obtain the hardware information of the trusted controller, and parse the hardware information and the first verification data to obtain a parsing result; execute the verification program to verify the consistency of the parsing result with the second verification data. If the verification result is consistent, the trusted controller starts the program to be loaded according to the startup indication information.
[0047] The first processor and the second processor are set at the same time, and the first processor is used to process and obtain the first verification data. The second processor and the trusted chip directly use the first verification data, thereby reducing the data processing volume of the second processor and the trusted chip and improving the multiple verification response speed.
[0048] When the trusted controller described in this embodiment is started, the specific process is as follows: (1) The first processor loads the program to be loaded to obtain output data of the program to be loaded, executes the trusted loader to operate on the output data of the program to be loaded to obtain first verification data, and transmits the first verification data to the second memory and the trusted chip.
[0049] Specifically, the first processor loads the program to be loaded to obtain output data of the program to be loaded, executes the trusted loading program, performs a hash operation on the output data of the program to be loaded to obtain first verification data, and transmits the first verification data to the second memory and the trusted chip through the data interface.
[0050] (2) The second processor obtains hardware information of the trusted controller, executes the verification data generation program to generate second verification data based on the hardware information and the first verification data, and transmits the second verification data to the trusted chip.
[0051] Specifically: the second processor obtains the hardware information of the trusted controller through the data interface, reads the first verification data in the second memory, performs a hash operation on the first verification data and the hardware information to obtain the second verification data, and transmits the second verification data to the trusted chip.
[0052] (3) The trusted chip obtains the hardware information of the trusted controller, and parses the first verification data and the hardware information to obtain a parsing result.
[0053] Specifically, the trusted chip obtains the hardware information of the trusted controller through a data interface, performs a hash operation on the first verification data and the hardware information, and obtains a parsing result.
[0054] (4) The trusted chip executes the verification program to verify the consistency between the parsing result and the second verification data. If the verification result is consistent, the trusted controller starts the program to be loaded according to the startup instruction information in the first memory.
[0055] The trusted controller of this embodiment adopts multiple authentication mechanisms, including software-based authentication and hardware-based authentication, thereby improving the security and credibility of the controller during startup and operation, and being able to meet application requirements in various complex environments.
[0056] The embodiments of the present invention have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The selection of terms used in the present invention is intended to best explain the principles of the embodiments, practical applications, or technical improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed in the present invention.
Claims
1. A trusted controller based on a multiple verification mechanism, characterized in that: include: Processors, memory and trusted chips; The memory is used to store the program to be loaded, the startup instruction information and the first verification data, and the trusted chip stores a trusted loading program, a verification data generation program and a verification program; The processor is used to load the program to be loaded to obtain output data of the program to be loaded, execute the trusted loading program to operate on the output data of the program to be loaded to obtain first verification data, and transmit the first verification data to the memory and the trusted chip; Acquire hardware information of the trusted controller, execute the verification data generation program to generate second verification data based on the hardware information and the first verification data, and transmit the second verification data to the trusted chip; The trusted chip is used to obtain the hardware information of the trusted controller, and parse the hardware information and the first verification data to obtain a parsing result; execute the verification program to verify the consistency of the parsing result with the second verification data. If the verification result is consistent, the trusted controller starts the program to be loaded according to the startup indication information.
2. The trusted controller based on the multi-verification mechanism according to claim 1, characterized in that: The performing operation on the output data of the program to be loaded to obtain the first verification data specifically includes: performing a hash operation on the output data of the program to be loaded, and obtaining a hash value as the first verification data.
3. The trusted controller based on a multiple authentication mechanism according to claim 1, characterized in that: The generating the second verification data based on the hardware information and the first verification data specifically comprises: performing a hash operation on the hardware information and the first verification data to obtain the second verification data.
4. The trusted controller based on a multiple authentication mechanism according to claim 1, characterized in that: The parsing of the hardware information and the first verification data to obtain the parsing result specifically includes: performing a hash operation on the hardware information and the first verification data to obtain the parsing result.
5. The trusted controller based on a multiple authentication mechanism according to claim 1, characterized in that: The hardware information is version information of BIOS, UEFI or system boot program.
6. The trusted controller based on a multiple authentication mechanism according to claim 1, characterized in that: The processor includes: a first processor and a second processor; the memory includes: a first memory and a second memory; The first memory is used to store the program to be loaded and the startup instruction information; The second memory is used to store the first verification data; The first processor is used to load the program to be loaded to obtain output data of the program to be loaded, execute the trusted loading program to operate on the output data of the program to be loaded to obtain first verification data, and transmit the first verification data to the second memory and the trusted chip; The second processor is used to obtain the hardware information of the trusted controller, read the first verification data in the second memory, execute the verification data generation program to generate second verification data based on the hardware information and the first verification data, and transmit the second verification data to the trusted chip.
7. A trusted controller startup method based on a multiple verification mechanism, characterized in that: include: Loading the program to be loaded to obtain output data of the program to be loaded, executing the trusted loading program to operate on the output data of the program to be loaded, and obtaining first verification data; Acquire hardware information of the trusted controller, and execute a verification data generation program to generate second verification data based on the hardware information and the first verification data; Parsing the hardware information and the first verification data to obtain a parsing result; A verification program is executed to verify the consistency between the parsing result and the second verification data. If the verification result is consistent, the trusted controller starts the program to be loaded according to the startup indication information.
8. The trusted controller startup method based on a multiple verification mechanism according to claim 7, characterized in that: The performing operation on the output data of the program to be loaded to obtain the first verification data specifically includes: performing a hash operation on the output data of the program to be loaded, and obtaining a hash value as the first verification data.
9. The trusted controller startup method based on a multiple authentication mechanism according to claim 7, characterized in that: The generating the second verification data based on the hardware information and the first verification data specifically comprises: performing a hash operation on the hardware information and the first verification data to obtain the second verification data.
10. The trusted controller startup method based on a multiple verification mechanism according to claim 7, characterized in that: The parsing of the hardware information and the first verification data to obtain the parsing result specifically includes: performing a hash operation on the hardware information and the first verification data to obtain the parsing result.
Citation Information
Patent Citations
Controller trusted starting method and controller
CN117170763A