Dynamic trusted verification method, device and equipment for process

By using the platform security processor as the root of dynamic metric trust in dynamic metric verification, the process dynamic metric verification module is used to verify the trustworthy metrics and pass the dynamic trust chain, the risk of tampering with the measurement module and benchmark values ​​in the prior art is solved, and the security and credibility of dynamic metrics are improved.

CN113868666BActive Publication Date: 2025-04-25DATANG GAOHONG XINAN ZHEJIANG INFORMATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111151322.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-09-29
Publication Date
2025-04-25
Estimated Expiration
2041-09-29

AI Technical Summary

Technical Problem

Dynamic trusted verification in the prior art has the risk that the measurement module itself and the reference value are tampered with, resulting in the trusted verification results being untrusted.

Method used

The platform security processor is used as the trusted root of dynamic metrics, and a trusted metric verification module is used to perform trusted metric verification when loading the process dynamic metric verification module, and a dynamic trusted chain is passed after confirming its trustworthiness, so that it can perform trusted metric verification on user-mode processes.

Benefits of technology

Through the hardware-level dynamic trusted root, the trustworthiness of the process dynamic metric verification module itself and the benchmark value is ensured, and the security and credibility of dynamic trusted verification are significantly improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113868666B_ABST
    Figure CN113868666B_ABST
Patent Text Reader

Abstract

The present application discloses a dynamic trusted verification method, device and equipment for a process, which relates to the field of computer technology. The method is applied to a platform security processor, and the method includes: when a process dynamic measurement verification module is loaded, using the platform security processor as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module; when determining that the process dynamic measurement verification module is trusted, passing the dynamic trusted chain to the process dynamic measurement verification module, so that the process dynamic measurement verification module performs trusted measurement verification on the user-mode process. In this way, the risk of tampering with the process dynamic measurement verification module and its reference value is avoided, and the authenticity and credibility of the feasible verification results of the user-mode process are guaranteed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a method, device and equipment for dynamic trusted verification of a process. Background Art

[0002] Trusted verification in trusted computing is divided into two aspects: static trusted verification and dynamic trusted verification. Static trusted verification uses the trusted computing module as the trusted root, and measures the Basic Input Output System (BIOS), option rom, bootloader, operating system kernel, etc. step by step, and stores the measurement results in the Platform Configuration Register (PCR) of the trusted computing module as the basis for judging whether the measured object is trustworthy. Dynamic trusted verification measures and verifies the data of the specified process in the memory to determine whether the data of the process has been tampered with. Traditional dynamic trusted verification methods are all implemented through software, using kernel modules to measure and verify the process, and information such as benchmark values ​​are also stored in the memory. There is a risk that the measurement module itself and the benchmark value are tampered with, resulting in unreliable trusted verification results for the process. Summary of the invention

[0003] The purpose of the present application is to provide a dynamic trusted verification method, device and equipment for a process, so as to solve the problem in the prior art that the measurement module itself and the reference value may be tampered with in the dynamic trusted verification.

[0004] In a first aspect, an embodiment of the present application provides a dynamic trusted verification method for a process, which is applied to a platform security processor, and the method includes:

[0005] When the process dynamic measurement verification module is loaded, the platform security processor is used as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module;

[0006] When it is determined that the process dynamic measurement verification module is trustworthy, the dynamic trusted chain is transmitted to the process dynamic measurement verification module, so that the process dynamic measurement verification module performs trustworthy measurement verification on the user state process.

[0007] Optionally, when the process dynamic measurement verification module is loaded, the platform security processor is used as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module, including:

[0008] Receiving a memory address and a first verification cycle of the process dynamic metric verification module;

[0009] Calculating a reference value of the process dynamic measurement verification module according to the memory address;

[0010] According to the first verification cycle, periodic measurement verification is performed on the process dynamic measurement verification module based on the reference value to determine the trustworthy state of the process dynamic measurement verification module.

[0011] Optionally, receiving the memory address and the first verification cycle of the process dynamic metric verification module includes:

[0012] Receive the memory address sent by the process dynamic measurement verification module by calling the driver and create_measure_task interface provided by the platform security processor;

[0013] The first verification cycle is received, which is sent by the process dynamic measurement verification module by calling the driver and update_measure_task interface provided by the platform security processor.

[0014] Optionally, the method further comprises:

[0015] In the case where it is determined that the process dynamic measurement verification module is not trustworthy, the process dynamic measurement verification module is prohibited from performing trustworthy measurement verification on the user state process.

[0016] Optionally, the method further comprises:

[0017] Obtain the processing function registered by the process dynamic measurement verification module by calling the register_measure_exception_handler interface;

[0018] When it is determined that the process dynamic measurement verification module is not trustworthy, prohibiting the process dynamic measurement verification module from performing trustworthy measurement verification on the user state process includes:

[0019] By calling back the processing function, the process dynamic measurement verification module is controlled to prohibit the trusted measurement verification of the user state process.

[0020] Optionally, the method further comprises:

[0021] When it is determined that the process dynamic measurement verification module is not credible, an alarm notification that the process dynamic measurement verification module is not credible is output by calling back the processing function.

[0022] In a second aspect, an embodiment of the present application further provides a dynamic trustworthy verification method of a process, which is applied to a dynamic measurement verification module of a process, and the method includes:

[0023] When the platform security processor determines that the process dynamic measurement verification module is credible, performing credible measurement verification on the user state process;

[0024] If it is determined that the user state process is credible, allowing the user state process to continue executing;

[0025] When it is determined that the user state process is not trustworthy, execution of the user state process is terminated.

[0026] Optionally, the user-mode process is verified for trustworthiness, including:

[0027] Based on the measurement verification policy configured by the policy configuration management module, the user state process is subjected to trusted measurement verification; wherein the measurement verification policy includes a second verification cycle and a control policy for the user state process.

[0028] Optionally, the method further comprises:

[0029] The memory address and the first verification cycle of the process dynamic measurement verification module are sent to the platform security processor, so that the platform security processor performs a trusted measurement verification on the process dynamic measurement verification module according to the memory address and the first verification cycle.

[0030] Optionally, sending the memory address and the first verification cycle of the process dynamic measurement verification module to the platform security processor includes:

[0031] Sending the memory address to the platform security processor by calling the driver and create_measure_task interface provided by the platform security processor;

[0032] The first verification cycle is sent to the platform security processor by calling a driver and an update_measure_task interface provided by the platform security processor.

[0033] Optionally, the method further comprises:

[0034] When the process dynamic measurement verification module is not trustworthy, the trustworthy measurement verification is not performed on the user-mode process.

[0035] Optionally, the method further comprises:

[0036] The register_measure_exception_handler interface is called to send a processing function to the platform security processor, so that when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the platform security processor prohibits the process dynamic measurement verification module from performing trusted measurement verification on the user-mode process by calling back the processing function, and / or outputs an alarm notification that the process dynamic measurement verification module is untrustworthy.

[0037] In the third aspect, an embodiment of the present application also provides a dynamic trusted verification device for a process, comprising a transceiver, a memory, a processor, and a computer program stored on the memory and running on the processor, wherein when the processor executes the computer program, it implements the dynamic trusted verification method for a process as described in the first aspect, or the dynamic trusted verification method for a process as described in the second aspect.

[0038] In a fourth aspect, an embodiment of the present application further provides a dynamic trusted verification device for a process, which is applied to a platform security processor, and the device includes:

[0039] A measurement verification module, used to use the platform security processor as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module when the process dynamic measurement verification module is loaded;

[0040] The first processing module is used to transfer the dynamic trusted chain to the process dynamic measurement verification module when it is determined that the process dynamic measurement verification module is credible, so that the process dynamic measurement verification module performs trusted measurement verification on the user state process.

[0041] In a fifth aspect, an embodiment of the present application further provides a dynamic trusted verification device for a process, which is applied to a dynamic measurement verification module of a process, and the device includes:

[0042] A measurement verification module, configured to perform a trusted measurement verification on the user-mode process when the platform security processor determines that the process dynamic measurement verification module is trusted;

[0043] A first processing module, configured to allow the user state process to continue executing if it is determined that the user state process is credible;

[0044] The second processing module is used to terminate the execution of the user state process when it is determined that the user state process is not trustworthy.

[0045] In a sixth aspect, an embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the dynamic trusted verification method for a process as described in the first aspect, or the dynamic trusted verification method for a process as described in the second aspect.

[0046] The above technical solution of the present application has at least the following beneficial effects:

[0047] The embodiment of the present application is a dynamic trusted verification method for placing a platform security processor into a process. First, when the process dynamic measurement verification module is loaded, the platform security processor is used as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module; the credibility of the process dynamic measurement verification module itself is guaranteed; secondly, when it is determined that the process dynamic measurement verification module is trustworthy, the dynamic trusted chain is passed to the process dynamic measurement verification module, so that the process dynamic measurement verification module performs trusted measurement verification on the user-mode process. In this way, the credibility and security of dynamic trusted verification of user-mode processes can be guaranteed. Compared with the traditional implementation method of dynamic trusted verification of processes, the embodiment of the present application has a dynamic trusted root at the hardware level, which meets the requirements of trusted computing for trusted roots and can significantly improve the security and credibility of dynamic trusted verification. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] Figure 1 This is one of the flowcharts of the dynamic trusted verification method of the process of the embodiment of the present application;

[0049] Figure 2 The second flowchart of the dynamic trusted verification method of the process of the embodiment of the present application;

[0050] Figure 3 This is one of the structural diagrams of the dynamic trusted verification device of the process of the embodiment of the present application;

[0051] Figure 4 This is a second structural diagram of a dynamic trusted verification device for a process according to an embodiment of the present application;

[0052] Figure 5 A schematic diagram of the structure of a dynamic trusted verification device for a process according to an embodiment of the present application. DETAILED DESCRIPTION

[0053] In order to make the technical problems, technical solutions and advantages to be solved by the application clearer, the following will be described in detail in conjunction with the accompanying drawings and specific embodiments. In the following description, specific details such as specific configurations and components are provided only to help fully understand the embodiments of the application. Therefore, it should be clear to those skilled in the art that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the application. In addition, for clarity and brevity, the description of known functions and structures has been omitted.

[0054] It should be understood that the references to "one embodiment" or "an embodiment" throughout the specification mean that the specific features, structures, or characteristics associated with the embodiment are included in at least one embodiment of the present application. Therefore, the references to "in one embodiment" or "in an embodiment" appearing throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0055] In the various embodiments of the present application, it should be understood that the size of the serial numbers of the following processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0056] In the embodiments provided in this application, it should be understood that "B corresponding to A" means that B is associated with A and B can be determined according to A. However, it should also be understood that determining B according to A does not mean determining B only according to A, but B can also be determined according to A and / or other information.

[0057] like Figure 1 FIG. 1 is a flow chart of a dynamic trusted verification method for a process in an embodiment of the present application. The method is applied to a platform security processor. The method includes:

[0058] Step 101: When a process dynamic measurement verification module is loaded, a platform security processor is used as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module.

[0059] Step 102: When it is determined that the process dynamic measurement verification module is trustworthy, a dynamic trust chain is transmitted to the process dynamic measurement verification module, so that the process dynamic measurement verification module performs trustworthy measurement verification on the user state process.

[0060] Here, it should be noted that the platform security processor is a processor inside the device's central processing unit (CPU) and is independent of the CPU's main processor; in this way, it can perform continuous periodic measurement verification on the specified target memory without relying on the main CPU, and promptly detect memory tampering, thereby protecting the security of the program. In addition, because the platform security processor has hardware-level security, it can serve as a trusted root for dynamic trusted verification. The platform security processor starts to perform trusted verification on the process dynamic trusted verification module, and then the dynamic trusted verification module performs trusted verification on the specified process, which improves the security of dynamic trusted verification.

[0061] The dynamic trusted verification method of the process in the embodiment of the present application, first, when the process dynamic measurement verification module is loaded, the platform security processor is used as the dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module; the credibility of the process dynamic measurement verification module itself is guaranteed; secondly, when it is determined that the process dynamic measurement verification module is trusted, the dynamic trusted chain is passed to the process dynamic measurement verification module, so that the process dynamic measurement verification module performs trusted measurement verification on the user-mode process. In this way, the credibility and security of dynamic trusted verification of user-mode processes can be guaranteed. Compared with the traditional implementation method of dynamic trusted verification of processes, the embodiment of the present application has a dynamic trusted root at the hardware level, which meets the requirements of trusted computing for trusted roots and can significantly improve the security and credibility of dynamic trusted verification.

[0062] As an optional implementation, in step 101, when the process dynamic measurement verification module is loaded, the platform security processor is used as the dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module, including:

[0063] Receiving a memory address and a first verification cycle of the process dynamic metric verification module;

[0064] Here, it should be noted that the memory address is the address of the code segment and the read-only data segment storing the process dynamic measurement verification module; the first verification cycle is the cycle in which the platform security processor performs trusted verification on the process dynamic measurement verification module;

[0065] Calculating a reference value of the process dynamic measurement verification module according to the memory address;

[0066] This step specifically calculates the benchmark value of the process dynamic measurement verification module according to the address range and data passed into the process dynamic measurement verification module.

[0067] Here, it should be noted that, after calculating the reference value of the process dynamic measurement verification module, this step further stores the reference value in a secure storage area of ​​the dynamic measurement trusted root (platform security processor).

[0068] Here, it should also be noted that the platform security processor calculates the baseline value of the process dynamic measurement verification module on the one hand, and on the other hand, it also starts dynamic trustworthy verification of the kernel's interrupt vector table and system call table, etc., to confirm the security credibility of the kernel environment.

[0069] According to the first verification cycle, periodic measurement verification is performed on the process dynamic measurement verification module based on the reference value to determine the trustworthy state of the process dynamic measurement verification module.

[0070] In this optional implementation, first, the platform security processor receives the memory address and the first verification cycle of the process dynamic measurement verification module; secondly, the platform security processor calculates the benchmark value of the process dynamic measurement verification module according to the memory address; finally, the platform security processor performs periodic measurement verification on the process dynamic measurement verification module based on the benchmark value according to the first verification cycle to determine the trusted state of the process dynamic measurement verification module. In this way, the platform security processor implements trusted measurement of the trusted state of the process dynamic measurement verification module, avoids the risk of tampering of the process dynamic measurement verification module itself and the benchmark value, and ensures the credibility of the process dynamic measurement verification module.

[0071] As an optional implementation, receiving the memory address and the first verification cycle of the process dynamic measurement verification module includes:

[0072] Receive the memory address sent by the process dynamic measurement verification module by calling the driver and create_measure_task interface provided by the platform security processor;

[0073] That is to say, the process dynamic measurement verification module calls the driver and create_measure_task interface provided by the platform security processor to create a measurement task, and passes the code segment and read-only data segment of the process dynamic measurement verification module to the platform security processor through the interface. In this way, the platform security processor can calculate the baseline value of the process dynamic measurement verification module based on the passed-in address range and data and store it in the secure storage area of ​​the dynamic measurement trusted root.

[0074] The first verification cycle is received, which is sent by the process dynamic measurement verification module by calling the driver and update_measure_task interface provided by the platform security processor.

[0075] That is to say, the process dynamic measurement verification module calls the drive and update measurement (Update_measure_task) interface provided by the platform security processor, updates the measurement verification time period (first verification period), and is used to regularly measure and verify the process dynamic measurement verification module to confirm the trustworthy status of the process dynamic measurement verification module.

[0076] Furthermore, as an optional implementation, the method further includes:

[0077] In the case where it is determined that the process dynamic measurement verification module is not trustworthy, the process dynamic measurement verification module is prohibited from performing trustworthy measurement verification on the user state process.

[0078] That is to say, when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the measurement verification result of the user-state process by the process dynamic measurement verification module is also untrustworthy. Therefore, when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the dynamic trust chain is no longer passed, that is, the process dynamic measurement verification module no longer performs trusted measurement verification on the user-state process. In this way, the credibility and authenticity of the trusted measurement verification result of the user-state process by the process dynamic measurement verification module can be guaranteed.

[0079] Furthermore, as an optional implementation, the method further includes:

[0080] Obtain the processing function registered by the process dynamic measurement verification module by calling the register_measure_exception_handler interface;

[0081] That is, the process dynamic measurement verification module calls the register_measure_exception_handler interface of the platform security processor to register the processing function when the verification is untrustworthy.

[0082] On this basis, when it is determined that the process dynamic measurement verification module is not trustworthy, prohibiting the process dynamic measurement verification module from performing trustworthy measurement verification on the user state process includes:

[0083] By calling back the processing function, the process dynamic measurement verification module is controlled to prohibit the trusted measurement verification of the user state process.

[0084] That is, when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, it can call back the processing function to control the process dynamic measurement verification module to prohibit the trusted measurement verification of the user state process. Among them, the processing function is aimed at the processing flow of the situation where the process dynamic measurement verification module is untrustworthy.

[0085] In this optional implementation, the platform security processor controls the process dynamic measurement verification module by calling a processing function to prohibit trusted measurement verification of user-state processes. In this way, the situation where the measurement verification results of the user-state process by the process dynamic measurement verification module are unreliable is avoided, thereby ensuring the authenticity and reliability of the measurement verification results.

[0086] As another optional implementation, the method further includes:

[0087] When it is determined that the process dynamic measurement verification module is not credible, an alarm notification that the process dynamic measurement verification module is not credible is output by calling back the processing function.

[0088] In this optional implementation, when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the platform security processor can output an alarm message that the process dynamic measurement verification module is untrustworthy by calling back the processing function, so as to inform the user that the process dynamic measurement verification module is untrustworthy. In this way, the user can judge whether the result of the measurement verification of the user-mode process by the process dynamic measurement verification module is credible based on the alarm notification.

[0089] Here, it should be noted that in the dynamic trusted verification method of the process in the embodiment of the present application, when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the platform security processor can prohibit the process dynamic measurement verification module from performing trusted measurement verification on the user-state process by calling back the processing function, or the platform security processor can output an alarm notification that the process dynamic measurement verification module is untrustworthy by calling back the processing function, or the platform security processor can prohibit the process dynamic measurement verification module from performing trusted measurement verification on the user-state process by calling back the processing function and output an alarm notification that the process dynamic measurement verification module is untrustworthy.

[0090] The dynamic trusted verification method for a process in an embodiment of the present application is as follows: first, when a process dynamic measurement verification module is loaded, a platform security processor is used as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module; the credibility of the process dynamic measurement verification module itself is ensured; secondly, when it is determined that the process dynamic measurement verification module is trusted, a dynamic trusted chain is passed to the process dynamic measurement verification module, so that the process dynamic measurement verification module performs trusted measurement verification on the user-state process; when it is determined that the process dynamic measurement verification module is not trusted, the process dynamic measurement verification module is controlled to perform trusted measurement verification on the user-state process, and / or an alarm notification that the process dynamic measurement verification module is not trusted is output. In this way, the credibility and security of dynamic trusted verification of the user-state process can be guaranteed. Compared with the traditional implementation method of dynamic trusted verification of a process, the embodiment of the present application has a dynamic trusted root at the hardware level, which meets the requirements of trusted computing for trusted roots and can significantly improve the security and credibility of dynamic trusted verification.

[0091] like Figure 2 FIG. 2 is a flow chart of a dynamic trustworthy measurement verification method for a process according to an embodiment of the present application. The method is applied to a dynamic measurement verification module for a process. The method includes:

[0092] Step 201, when the platform security processor determines that the process dynamic measurement verification module is credible, a credible measurement verification is performed on the user state process;

[0093] In this step, a trusted process dynamic measurement verification module is used to perform trusted measurement verification on the user-state process. This can prevent the process dynamic measurement verification module itself and its reference value from being tampered with, thereby improving the credibility and reliability of the trusted measurement verification of the user-state process by the process dynamic measurement verification module.

[0094] Step 202: if it is determined that the user state process is trustworthy, allow the user state process to continue to execute;

[0095] Step 203: When it is determined that the user state process is not trustworthy, terminate the execution of the user state process.

[0096] The dynamic trusted verification method of the process in the embodiment of the present application firstly performs trusted measurement verification on the user-mode process when the platform security processor determines that the dynamic measurement verification module of the process is trusted; secondly, when the user-mode process is determined to be trusted, the user-mode process is allowed to continue to execute; when the user-mode process is determined to be untrustworthy, the execution of the user-mode process is terminated. In this way, the trusted state of the dynamic measurement verification module of the process that performs trusted verification on the user-mode process is guaranteed to be trusted, thereby improving the security and credibility of dynamic trusted verification.

[0097] As an optional implementation, step 201, performing a trustworthy measurement verification on the user-mode process, includes:

[0098] Based on the measurement verification policy configured by the policy configuration management module, the user state process is subjected to trusted measurement verification; wherein the measurement verification policy includes a second verification cycle and a control policy for the user state process.

[0099] That is to say, the policy configuration management module is pre-configured with a measurement verification policy, so that the process dynamic measurement verification module can perform trusted measurement verification on the user state process according to the measurement verification policy; specifically, the process dynamic measurement verification module performs periodic trusted measurement verification on the user state process according to the second verification cycle in the measurement verification policy, and executes corresponding actions on the user state process according to the control policy of the user state process in the measurement verification policy; specifically, the control policy of the user state process includes: if the user state process is trusted, allowing the user state process to continue execution; if the user state process is not trusted, "killing" the user state process (i.e., terminating the execution of the user state process).

[0100] Furthermore, as an optional implementation, the method further includes:

[0101] The memory address and the first verification cycle of the process dynamic measurement verification module are sent to the platform security processor, so that the platform security processor performs a trusted measurement verification on the process dynamic measurement verification module according to the memory address and the first verification cycle.

[0102] Here, it should be noted that the memory address is the address of the code segment and the read-only data segment storing the process dynamic measurement verification module; the first verification cycle is the cycle in which the platform security processor performs trusted verification on the process dynamic measurement verification module.

[0103] As a specific implementation method, sending the memory address and the first verification cycle of the process dynamic measurement verification module to the platform security processor includes:

[0104] Sending the memory address to the platform security processor by calling the driver and create_measure_task interface provided by the platform security processor;

[0105] That is to say, the process dynamic measurement verification module calls the driver and create_measure_task interface provided by the platform security processor to create a measurement task, and passes the code segment and read-only data segment of the process dynamic measurement verification module to the platform security processor through the interface. In this way, the platform security processor can calculate the baseline value of the process dynamic measurement verification module based on the passed-in address range and data and store it in the secure storage area of ​​the dynamic measurement trusted root.

[0106] The first verification cycle is sent to the platform security processor by calling a driver and an update_measure_task interface provided by the platform security processor.

[0107] That is to say, the process dynamic measurement verification module calls the drive and update measurement (Update_measure_task) interface provided by the platform security processor, updates the measurement verification time period (first verification period), and is used to regularly measure and verify the dynamic measurement verification module to confirm the trustworthy status of the dynamic measurement verification module.

[0108] Furthermore, as an optional implementation, the method further includes:

[0109] When the process dynamic measurement verification module is not trustworthy, the trustworthy measurement verification is not performed on the user-mode process.

[0110] That is to say, when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the measurement verification result of the user-state process by the process dynamic measurement verification module is also untrustworthy. Therefore, when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the dynamic trust chain is no longer passed, that is, the process dynamic measurement verification module no longer performs trusted measurement verification on the user-state process. In this way, the credibility and authenticity of the trusted measurement verification result of the user-state process by the process dynamic measurement verification module can be guaranteed.

[0111] Furthermore, as an optional implementation, the method further includes:

[0112] The register_measure_exception_handler interface is called to send a processing function to the platform security processor, so that when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the platform security processor prohibits the process dynamic measurement verification module from performing trusted measurement verification on the user-mode process by calling back the processing function, and / or outputs an alarm notification that the process dynamic measurement verification module is untrustworthy.

[0113] That is, the process dynamic measurement verification module calls the register_measure_exception_handler interface of the platform security processor to register the processing function when the verification is untrustworthy. Therefore, when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the platform security processor can prohibit the process dynamic measurement verification module from performing trusted measurement verification on the user-mode process by calling back the processing function, or the platform security processor can output an alarm notification that the process dynamic measurement verification module is untrustworthy by calling back the processing function, or the platform security processor can prohibit the process dynamic measurement verification module from performing trusted measurement verification on the user-mode process by calling back the processing function and output an alarm notification that the process dynamic measurement verification module is untrustworthy.

[0114] To put it another way, the dynamic trusted verification method of the process in the embodiment of the present application is composed of a dynamic measurement trusted root platform security processor and related interfaces, a process dynamic measurement verification module, a policy configuration management module, and a measured process.

[0115] The dynamic measurement trusted root serves as the trusted measurement root and trusted storage root of dynamic trusted measurement. It provides interfaces and services for measurement verification, and is responsible for storing trusted measurement values ​​and performing measurement verification on the process dynamic measurement verification module. When the process dynamic trusted verification module is loaded, the trusted measurement verification is initiated by the dynamic measurement trusted root, and the process dynamic measurement verification module is trusted. The process dynamic measurement verification module then performs trusted verification on the user-mode process, completing the transfer of the dynamic trusted chain.

[0116] The process dynamic measurement and verification module is responsible for dynamically measuring and verifying the user-mode process that is specified to be measured and verified, so as to confirm the trustworthy state of the specified user-mode process.

[0117] The policy configuration management module is used to configure the measurement verification policy for the user-mode process, so that the process dynamic measurement verification module can measure and verify the trusted state of the process according to the policy. The measurement verification policy includes the measurement verification time period, the control policy after the process verification is untrustworthy (terminating the process execution or allowing it to continue to execute), etc.

[0118] like Figure 3 As shown, the embodiment of the present application also provides a dynamic trusted verification device for a process, which is applied to a platform security processor, and the device includes:

[0119] The measurement verification module 301 is used to use the platform security processor as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module when the process dynamic measurement verification module is loaded;

[0120] The first processing module 302 is used to transfer the dynamic trusted chain to the process dynamic measurement verification module when it is determined that the process dynamic measurement verification module is trustworthy, so that the process dynamic measurement verification module performs trusted measurement verification on the user state process.

[0121] The dynamic trusted verification device for a process in the embodiment of the present application, first, when the process dynamic metric verification module is loaded, the measurement verification module 301 uses the platform security processor as the dynamic metric trusted root to perform trusted metric verification on the process dynamic metric verification module; the credibility of the process dynamic metric verification module itself is ensured; secondly, when the first processing module 302 determines that the process dynamic metric verification module is credible, it passes the dynamic trusted chain to the process dynamic metric verification module, so that the process dynamic metric verification module performs trusted metric verification on the user-mode process. In this way, the credibility and security of the dynamic trusted verification of the user-mode process can be guaranteed. Compared with the traditional implementation method of dynamic trusted verification of the process, the embodiment of the present application has a dynamic trusted root at the hardware level, which meets the requirements of trusted computing for the trusted root, and can significantly improve the security and credibility of dynamic trusted verification.

[0122] Optionally, the metric verification module 301 includes:

[0123] A receiving submodule, configured to receive a memory address and a first verification cycle of the process dynamic measurement verification module;

[0124] A calculation submodule, used for calculating a reference value of the process dynamic measurement verification module according to the memory address;

[0125] The measurement verification submodule is used to perform periodic measurement verification on the process dynamic measurement verification module based on the reference value according to the first verification period to determine the trustworthy state of the process dynamic measurement verification module.

[0126] Optionally, the receiving submodule includes:

[0127] A first receiving submodule, configured to receive the memory address sent by the process dynamic measurement verification module by calling the driver and create_measure_task interface provided by the platform security processor;

[0128] The second receiving submodule is used to receive the first verification cycle sent by the process dynamic measurement verification module by calling the driver and update_measure_task interface provided by the platform security processor.

[0129] Optionally, the device further comprises:

[0130] The second processing module is used to prohibit the process dynamic measurement verification module from performing trusted measurement verification on the user state process when it is determined that the process dynamic measurement verification module is not trustworthy.

[0131] Optionally, the device further comprises:

[0132] An acquisition module, used to acquire the processing function registered by the process dynamic measurement verification module by calling the register_measure_exception_handler interface;

[0133] The second processing module is specifically configured to control the process dynamic measurement verification module to prohibit the trusted measurement verification of the user state process by calling back the processing function.

[0134] Optionally, the device further comprises:

[0135] The output module is used to output a warning notification that the process dynamic measurement verification module is not credible by calling back the processing function when it is determined that the process dynamic measurement verification module is not credible.

[0136] like Figure 4 As shown, the embodiment of the present application also provides a dynamic trusted verification device for a process, which is applied to a dynamic measurement verification module of a process, and the device includes:

[0137] The measurement verification module 401 is used to perform a trusted measurement verification on the user state process when the platform security processor determines that the process dynamic measurement verification module is trusted;

[0138] A first processing module 402 is used to allow the user state process to continue to execute if it is determined that the user state process is credible;

[0139] The second processing module 403 is used to terminate the execution of the user state process when it is determined that the user state process is not trustworthy.

[0140] The dynamic trusted verification device for a process in the embodiment of the present application, first, the measurement verification module 401 performs trusted measurement verification on the user state process when the platform security processor determines that the dynamic measurement verification module of the process is trusted; secondly, the first processing module 402 allows the user state process to continue to execute when it is determined that the user state process is trusted; the second processing module 403 terminates the execution of the user state process when it is determined that the user state process is not trusted. In this way, it is ensured that the trusted state of the dynamic measurement verification module of the process that performs trusted verification on the user state process is trusted, thereby improving the security and credibility of dynamic trusted verification.

[0141] Optionally, the metric verification module 401 is specifically used for:

[0142] Based on the measurement verification policy configured by the policy configuration management module, the user state process is subjected to trusted measurement verification; wherein the measurement verification policy includes a second verification cycle and a control policy for the user state process.

[0143] Furthermore, the device also includes:

[0144] The first sending module is used to send the memory address and the first verification cycle of the process dynamic measurement verification module to the platform security processor, so that the platform security processor performs a trusted measurement verification on the process dynamic measurement verification module according to the memory address and the first verification cycle.

[0145] Optionally, the first sending module includes:

[0146] A first sending submodule, configured to send the memory address to the platform security processor by calling a driver and a create_measure_task interface provided by the platform security processor;

[0147] The second sending submodule is used to send the first verification cycle to the platform security processor by calling the driver and update_measure_task interface provided by the platform security processor.

[0148] Furthermore, the device also includes:

[0149] The third processing module is configured to not perform trusted measurement verification on the user-mode process if the process dynamic measurement verification module is not trusted.

[0150] Furthermore, the device also includes:

[0151] The second sending module is used to send a processing function to the platform security processor by calling the register_measure_exception_handler interface, so that when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, it prohibits the process dynamic measurement verification module from performing trusted measurement verification on the user state process by calling back the processing function, and / or outputs an alarm notification that the process dynamic measurement verification module is untrustworthy.

[0152] like Figure 5 As shown, an embodiment of the present application also provides a dynamic trusted verification device for a process, including a transceiver 510, a memory 520, a processor 500, and a computer program stored in the memory 520 and running on the processor 500, wherein the transceiver 510 is connected to the processor 500 and the memory 520 via a bus interface, and when the processor 500 executes the computer program, the various processes of the embodiment of the dynamic trusted verification method for a process applied to the platform security processor as described above are implemented, or the various processes of the embodiment of the dynamic trusted verification method for a process applied to the process dynamic measurement verification module as described above are implemented, and the same technical effect can be achieved. In order to avoid repetition, it will not be repeated here.

[0153] It should be noted that in Figure 5 In the embodiment, the bus architecture may include any number of interconnected buses and bridges, specifically one or more processors represented by processor 500 and various circuits of memory represented by memory 520 are linked together. The bus architecture may also link together various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. The bus interface provides an interface. The transceiver 510 may be a plurality of components, namely, a transmitter and a transceiver, providing a unit for communicating with various other devices on a transmission medium. For different terminals, the user interface 530 may also be an interface capable of externally connecting to required internal devices, and the connected devices include but are not limited to a keypad, a display, a speaker, a microphone, a joystick, and the like. The processor 500 is responsible for managing the bus architecture and general processing, and the memory 520 may store data used by the processor 500 when performing operations.

[0154] Those skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware, or may be accomplished by instructing related hardware through a computer program, wherein the computer program includes instructions for executing part or all of the steps of the above method; and the computer program may be stored in a readable storage medium, and the storage medium may be any form of storage medium.

[0155] In addition, the embodiment of the present application also provides a computer-readable storage medium, on which a program is stored, and when the program is executed by the processor, each process of the embodiment of the dynamic trusted verification method for a process applied to the platform security processor as described above, or each process of the embodiment of the dynamic trusted verification method for a process applied to the process dynamic measurement verification module as described above, and can achieve the same technical effect, in order to avoid repetition, it will not be repeated here. Among them, the computer-readable storage medium, such as a read-only memory (Read-Only Memory, referred to as ROM), a random access memory (Random Access Memory, referred to as RAM), a disk or an optical disk, etc.

[0156] In addition, it should be noted that in the device and method of the present application, it is obvious that each component or each step can be decomposed and / or recombined. These decompositions and / or recombinations should be regarded as equivalent schemes of the present application. In addition, the steps of performing the above-mentioned series of processes can be naturally performed in the order of description or in chronological order, but it is not necessary to perform them in chronological order, and some steps can be performed in parallel or independently of each other. For those of ordinary skill in the art, it can be understood that all or any steps or components of the method and device of the present application can be implemented in any computing device (including processors, storage media, etc.) or a network of computing devices, with hardware, firmware, software or a combination thereof, which can be realized by those of ordinary skill in the art using their basic programming skills after reading the description of the present application.

[0157] Therefore, the purpose of the present application can also be achieved by running a program or a group of programs on any computing device. The computing device can be a known general device. Therefore, the purpose of the present application can also be achieved by simply providing a program product containing a program code that implements the method or device. In other words, such a program product also constitutes the present application, and a storage medium storing such a program product can also constitute the present application. Obviously, the storage medium can be any known storage medium or any storage medium developed in the future.

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

[0159] The above is a preferred embodiment of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles described in the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.

Claims

1. A dynamic trusted verification method for a process, characterized in that: Applied to a platform security processor, the platform security processor is a processor inside a central processing unit (CPU) of a device and independent of a main processor of the CPU, the method comprising: When the process dynamic measurement verification module is loaded, the platform security processor is used as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module; If it is determined that the process dynamic measurement verification module is credible, the dynamic trusted chain is transmitted to the process dynamic measurement verification module, so that the process dynamic measurement verification module performs a trusted measurement verification on the user state process; When the process dynamic measurement verification module is loaded, the platform security processor is used as the dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module, including: Receiving a memory address and a first verification cycle of the process dynamic measurement verification module; Calculating a reference value of the process dynamic measurement verification module according to the memory address; According to the first verification cycle, periodic measurement verification is performed on the process dynamic measurement verification module based on the reference value to determine the trustworthy state of the process dynamic measurement verification module.

2. The method according to claim 1, characterized in that Receiving the memory address and the first verification cycle of the process dynamic measurement verification module includes: Receive the memory address sent by the process dynamic measurement verification module by calling the driver and create_measure_task interface provided by the platform security processor; The first verification cycle is received, which is sent by the process dynamic measurement verification module by calling the driver and update_measure_task interface provided by the platform security processor.

3. The method according to claim 1, characterized in that The method further comprises: In the case where it is determined that the process dynamic measurement verification module is not trustworthy, the process dynamic measurement verification module is prohibited from performing trustworthy measurement verification on the user state process.

4. The method according to claim 3, characterized in that The method further comprises: Obtain the processing function registered by the process dynamic measurement verification module by calling the register_measure_exception_handler interface; When it is determined that the process dynamic measurement verification module is not trustworthy, prohibiting the process dynamic measurement verification module from performing trustworthy measurement verification on the user state process includes: By calling back the processing function, the process dynamic measurement verification module is controlled to prohibit the trusted measurement verification of the user state process.

5. The method according to claim 4, characterized in that The method further comprises: When it is determined that the process dynamic measurement verification module is not credible, an alarm notification that the process dynamic measurement verification module is not credible is output by calling back the processing function.

6. A dynamic trusted verification method for a process, characterized in that: Applied to a process dynamic measurement verification module, the method comprises: When the platform security processor determines that the process dynamic measurement verification module is credible, the user state process is verified for credible measurement; wherein the platform security processor is a processor inside the CPU of the device and independent of the main processor of the CPU, If it is determined that the user state process is credible, allowing the user state process to continue executing; If it is determined that the user state process is not trustworthy, terminating the execution of the user state process; The method further comprises: The memory address and the first verification cycle of the process dynamic measurement verification module are sent to the platform security processor, so that the platform security processor performs a trusted measurement verification on the process dynamic measurement verification module according to the memory address and the first verification cycle.

7. The method according to claim 6, characterized in that Perform trustworthy measurement verification on user-mode processes, including: Based on the measurement verification policy configured by the policy configuration management module, the user state process is subjected to trusted measurement verification; wherein the measurement verification policy includes a second verification cycle and a control policy for the user state process.

8. The method according to claim 6, characterized in that Sending the memory address and the first verification cycle of the process dynamic measurement verification module to the platform security processor includes: Sending the memory address to the platform security processor by calling the driver and create_measure_task interface provided by the platform security processor; The first verification cycle is sent to the platform security processor by calling a driver and an update_measure_task interface provided by the platform security processor.

9. The method according to claim 6, characterized in that The method further comprises: When the process dynamic measurement verification module is not trustworthy, the trustworthy measurement verification is not performed on the user-mode process.

10. The method according to claim 9, characterized in that The method further comprises: The register_measure_exception_handler interface is called to send a processing function to the platform security processor, so that when the platform security processor determines that the process dynamic measurement verification module is untrustworthy, the platform security processor prohibits the process dynamic measurement verification module from performing trusted measurement verification on the user-mode process by calling back the processing function, and / or outputs an alarm notification that the process dynamic measurement verification module is untrustworthy.

11. A dynamic trusted verification device for a process, comprising a transceiver, a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that: When the processor executes the computer program, the processor implements the dynamic trusted verification method for a process as described in any one of claims 1 to 5, or the dynamic trusted verification method for a process as described in any one of claims 6 to 10.

12. A dynamic trusted verification device for a process, characterized in that: Applied to a platform security processor, the platform security processor is a processor inside a CPU of a device and independent of a main processor of the CPU, the device comprises: A measurement verification module, used to use the platform security processor as a dynamic measurement trusted root to perform trusted measurement verification on the process dynamic measurement verification module when the process dynamic measurement verification module is loaded; A first processing module is used to transfer a dynamic trusted chain to the process dynamic measurement verification module when it is determined that the process dynamic measurement verification module is credible, so that the process dynamic measurement verification module performs a trusted measurement verification on the user state process; Wherein, the measurement verification module includes: A receiving submodule, configured to receive a memory address and a first verification cycle of the process dynamic measurement verification module; A calculation submodule, used to calculate a reference value of the process dynamic measurement verification module according to the memory address; The measurement verification submodule is used to perform periodic measurement verification on the process dynamic measurement verification module based on the reference value according to the first verification period to determine the trustworthy state of the process dynamic measurement verification module.

13. A dynamic trusted verification device for a process, characterized in that: Applied to a process dynamic measurement verification module, the device comprises: A measurement verification module, used to perform trusted measurement verification on the user-mode process when the platform security processor determines that the process dynamic measurement verification module is credible; the platform security processor is a processor inside the CPU of the device and independent of the main processor of the CPU; A first processing module, configured to allow the user state process to continue executing if it is determined that the user state process is credible; A second processing module, configured to terminate the execution of the user state process when it is determined that the user state process is not trustworthy; The device also includes: The first sending module is used to send the memory address and the first verification cycle of the process dynamic measurement verification module to the platform security processor, so that the platform security processor performs trusted measurement verification on the process dynamic measurement verification module according to the memory address and the first verification cycle.

14. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the computer program implements the dynamic trusted verification method for a process as claimed in any one of claims 1 to 5, or the dynamic trusted verification method for a process as claimed in any one of claims 6 to 10.

Citation Information

Patent Citations

  • Dynamic measurement method based on a dual-architecture trusted computing platform

    CN109918915A

  • Measurement method and device for obtaining safe starting

    CN111651769A