WO2024060756A1 - 计算机设备及其运行方法、安全芯片 - Google Patents
计算机设备及其运行方法、安全芯片 Download PDFInfo
- Publication number
- WO2024060756A1 WO2024060756A1 PCT/CN2023/103448 CN2023103448W WO2024060756A1 WO 2024060756 A1 WO2024060756 A1 WO 2024060756A1 CN 2023103448 W CN2023103448 W CN 2023103448W WO 2024060756 A1 WO2024060756 A1 WO 2024060756A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- chip
- access
- security
- access request
- processing chip
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/74—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
Definitions
- This application relates to the field of confidential computing technology, and in particular to a computer device and its operating method, and a security chip.
- Confidential computing is a technology that protects data in use by performing computations in a hardware-based trusted execution environment. Since the calculation process is performed in a trusted execution environment (TEE), the data involved in the calculation process can be protected. Confidential computing can protect the security of data in use. The key point is to rely on the trust chain of the trusted execution environment, and this trust chain needs to rely on the trust root in the processing chip that performs the calculation.
- This application provides a computer device, its operating method, and a security chip.
- This application makes the credibility of the root of trust in the security chip no longer subject to the credibility of the processing chip manufacturer, and gets rid of the current situation that the construction of a trusted execution environment is limited to the processing chip manufacturer, thus improving the credibility of confidential calculations. degree.
- the technical solutions provided by this application are as follows:
- this application provides a computer device.
- the computer equipment includes: a processing chip and a security chip; the security chip is used to run the trusted root, and starts the processing chip based on the trusted root and performs trusted control on the processing chip; the processing chip includes a trusted execution environment, and the trusted execution environment is based on the trustworthy root. Building a trust root, a trusted execution environment is used to perform confidential computations.
- the security chip and the processing chip are set up separately, which realizes the decoupling of the security chip and the processing chip.
- the security of the security chip can be guaranteed and endorsed by the manufacturer of the security chip. In this way, the trustworthiness of the root of trust in the security chip is no longer subject to the trustworthiness of the processing chip manufacturer, and it breaks away from the current situation in which the construction of a trusted execution environment is limited to the processing chip manufacturer, thereby improving the reliability of confidential computing. level of trust, and can eliminate users’ distrust of processing chip manufacturers.
- the security chip Since the security chip is decoupled from the processing chip, the security chip can be connected to different types of processing chips, which improves the compatibility of the entire computer device with multiple chips, which is conducive to promoting the development of large-scale confidential computing application scenarios and promoting confidential computing security. Ecological standardization process.
- the trusted root includes one or more of the following: startup root, metric root, and encryption root.
- Boot root is used to secure boot the processing chip.
- Metric roots are used to prove to remote users that the running status of computer equipment is safe and trustworthy, that is, to achieve remote certification.
- the encryption root is used to encrypt the memory space of the trusted execution environment to ensure that clear text data will not be leaked in the memory.
- the security chip is specifically used to use the trusted root to obtain a firmware image used by the startup processing chip, and after the processing chip is powered on, use the firmware image to guide the processing chip to start up.
- an access control mechanism and/or a communication protection mechanism can be set up in the computer device to ensure the security and trustworthiness of the trusted root and the security and trustworthiness of the communication between the security chip and the processing chip. The following describes the access control mechanism and communication protection mechanism respectively.
- the processing chip includes a first access control module.
- the first access control module is used to receive an access request to the trusted root, forward the access request to the security chip when the access request has access rights, and forward the access request to the security chip when the access request does not have access rights.
- the security chip is also used to respond to access requests.
- the security chip includes a second access control module.
- the second access control module is configured to receive an access request to a trusted root, respond to the access request when the access request has access permission, and deny the access request when the access request does not have access permission.
- the processing chip includes a third access control module
- the security chip includes a fourth access control module.
- the third access control module is used to receive an access request to the trusted root, obtain the permission indication information of the access request, and forward the access request and its permission indication information to the security chip; the fourth access control module is used to indicate the access request in the permission indication information.
- the access permission is granted, the access request is responded to; when the permission indication information indicates that the access request does not have the access permission, the access request is denied.
- the trusted root is the trusted root of the trusted execution environment, for the trusted root, the trusted execution environment has a higher security level, and the trusted root can be accessed by the trusted execution environment. Therefore, the trusted root comes from the trusted execution environment. Access requests from the trusted execution environment have access rights, while access requests from outside the trusted execution environment do not have access rights.
- Authentication of access requests through the access control mechanism can ensure that access from the trusted execution environment is valid and block access from outside the trusted execution environment, ensuring the security and trustworthiness of the trusted root.
- the communication protection mechanism can be implemented through the cooperation of the processing chip and the security chip.
- the processing chip includes a first communication protection module
- the security chip includes a second communication protection module
- the second communication protection module matches the first communication protection module.
- the first communication protection module and the second communication protection module jointly protect the communication between the security chip and the processing chip.
- the first communication protection module performs a first communication protection measure on the communication content between the security chip and the processing chip
- the second communication protection module performs a second communication protection measure on the communication content between the security chip and the processing chip.
- the communication protection measure matches the first communication protection measure.
- the second communication protection module performs a first communication protection measure on the communication content between the security chip and the processing chip; the first communication protection module performs a second communication protection measure on the communication content between the security chip and the processing chip, and the second communication protection module performs a second communication protection measure on the communication content between the security chip and the processing chip.
- the communication protection measure matches the first communication protection measure.
- one or more strategies can be used between the first communication protection module and the second communication protection module to ensure the security of communication between the security chip and the processing chip.
- the first communication protection module and the second communication protection module are specifically used to protect the communication between the security chip and the processing chip based on the key policy, so as to ensure the communication between the security chip and the processing chip. Confidentiality.
- the first communication protection module and the second communication protection module are specifically configured to protect the communication between the security chip and the processing chip based on at least one of the signature policy and the timestamp policy to ensure the security chip and processing.
- the integrity of communication between chips prevents the communication content between the security chip and the processing chip from being forged and tampered with.
- the security chip is also used in the remote attestation process.
- the security chip can implement a remote attestation process using metric roots.
- the security chip is also used to receive a metric value generated by the processing chip during the startup process, receive a security verification request for the trusted execution environment, generate a metric report based on the metric value, and feed back the metric report based on the security verification request. .
- the computer device also includes a memory chip
- the processing chip includes a memory encryption module.
- the security chip is also used to encrypt the memory.
- the security chip can enable a remote attestation process using a cryptographic root.
- the security chip is also used to generate a key using a trusted root and provide the key to the memory encryption module;
- the memory encryption module is used to encrypt the memory data using the key and provide the encrypted key to the memory chip.
- memory data, and/or, obtain encrypted memory data from the memory chip, and use the key to decrypt the encrypted memory data;
- the memory chip is used to store the encrypted memory data, and/or, provide the memory encryption module with Provides encrypted memory data.
- this application provides a method for operating a computer device.
- Computer equipment includes: processing chips and security chips.
- the operating method of the computer equipment includes: the security chip runs the trusted root, and starts the processing chip based on the trusted root and performs trusted control on the processing chip; the processing chip builds a trusted execution environment based on the trusted root, and the trusted execution environment is used for Perform confidential calculations.
- the security chip starts the processing chip based on the trusted root, including: the security chip uses the trusted root to obtain a firmware image used to start the processing chip; after the processing chip is powered on, the security chip uses the firmware image to boot the processing chip.
- the trusted root includes one or more of the following: startup root, metric root, and encryption root.
- the processing chip includes a first access control module
- the operating method of the computer device also includes: the first access control module receives an access request to the trusted root, forwards the access request to the security chip when the access request has access rights, and rejects the access request when the access request does not have access rights; the security chip responds to the access request.
- the security chip includes a second access control module
- the operating method of the computer device also includes: the second access control module receives an access request to the trusted root, and responds to the access request when the access request has access rights, When the access request does not have access rights, Access request denied.
- the processing chip includes a third access control module
- the security chip includes a fourth access control module
- the running method of the computer device also includes: the third access control module receives an access request to the trusted root, and obtains the permission of the access request. Instruction information forwards the access request and its permission indication information to the security chip; the fourth access control module responds to the access request when the permission indication information indicates that the access request has access permission, and when the permission indication information indicates that the access request does not have access permission , access request denied.
- access requests from the trusted execution environment have access rights, and access requests from outside the trusted execution environment do not have access rights.
- the processing chip includes a first communication protection module
- the security chip includes a second communication protection module
- the second communication protection module matches the first communication protection module.
- the operating method of the computer device also includes: the first communication protection module and The second communication protection module jointly protects the communication between the security chip and the processing chip.
- both the first communication protection module and the second communication protection module protect the communication between the security chip and the processing chip based on the key policy.
- both the first communication protection module and the second communication protection module protect the communication between the security chip and the processing chip based on at least one of the signature policy and the timestamp policy.
- the running method of the computer device also includes: the security chip receives the metric value generated by the processing chip during the startup process; the security chip receives the security verification request for the trusted execution environment; the security chip generates a metric report based on the metric value, and Feedback metrics reporting based on security verification requests.
- the computer device also includes: a memory chip, and the processing chip includes a memory encryption module.
- the running method of the computer device also includes: the security chip uses a trusted root to generate a key and provides the key to the memory encryption module; the memory encryption module uses The key encrypts the memory data and provides the encrypted memory data to the memory chip; the memory chip stores the encrypted memory data.
- the computer device also includes: a memory chip, and the processing chip includes a memory encryption module.
- the operating method of the computer device also includes: the security chip uses a trusted root to generate a key, and provides the key to the memory encryption module; the memory chip provides the memory to the memory.
- the encryption module provides encrypted memory data; the memory encryption module uses a key to decrypt the encrypted memory data.
- this application provides a security chip, which is the security chip in the first aspect of this application and any possible implementation thereof.
- this application provides a computer device, including a memory and a processor.
- the memory stores program instructions
- the processor runs the program instructions to execute the method provided in the second aspect of this application and any possible implementation thereof. .
- the present application provides a computer-readable storage medium.
- the computer-readable storage medium is a non-volatile computer-readable storage medium.
- the computer-readable storage medium includes program instructions. When the program instructions are executed on the container management device When running on the container management device, the container management device is caused to execute the method provided in the second aspect of this application and any possible implementation manner thereof.
- the present application provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute the method provided in the second aspect of the present application and any possible implementation thereof.
- Figure 1 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
- Figure 2 is a schematic structural diagram of another computer device provided by an embodiment of the present application.
- Figure 3 is a schematic structural diagram of yet another computer device provided by an embodiment of the present application.
- Figure 4 is a schematic structural diagram of yet another computer device provided by an embodiment of the present application.
- Figure 5 is a schematic structural diagram of yet another computer device provided by an embodiment of the present application.
- Figure 6 is a schematic structural diagram of yet another computer device provided by an embodiment of the present application.
- Figure 7 is a schematic structural diagram of yet another computer device provided by an embodiment of the present application.
- Figure 8 is a schematic diagram of the process of secure startup of a computer device provided by an embodiment of the present application.
- Figure 9 is a schematic diagram of the process of implementing remote certification by a computer device provided by an embodiment of the present application.
- FIG10 is a schematic diagram of a process of implementing memory encryption in a computer device provided in an embodiment of the present application.
- Figure 11 is a schematic structural diagram of yet another computer device provided by an embodiment of the present application.
- Figure 12 is a flow chart of a method of operating a computer device provided by an embodiment of the present application.
- Figure 13 is a flowchart of another method of operating a computer device provided by an embodiment of the present application.
- Confidential computing is a technology based on the capabilities of hardware and software to build and run a trusted execution environment that is isolated from an untrusted environment, guarantee its confidentiality, and perform calculations in it to protect the data in use.
- confidential computing is defined as: Confidential computing is a technology that protects data in use by performing computations in a hardware-based trusted execution environment.
- Trusted control refers to the control operation performed on the object to be measured based on the trusted measurement results. Therefore, trusted control can also be called control.
- trusted control can also be called control.
- the measurement of the object to be measured passes, the original state of the object to be measured can be maintained, or operations expected to be performed before the object to be measured can be performed with confidence.
- security measures can be taken for the object to be measured. For example, you can control the computer to reset, or you can control the object to be measured to restart to avoid security threats to the computer caused by the reasons that cause the measurement to fail.
- Root of trust A module composed of highly reliable hardware, firmware and software whose behavior is always predictable. It is a component that contains one or more specific security functions, such as measurement, storage, reporting, Verify or update. The root of trust is the basis for a system to ensure security and trustworthiness. In existing confidential computing solutions, there are three main types of trusted roots involved: boot root for secure boot, reporting root for remote attestation, and encryption root for memory encryption.
- Measurement is the process of verifying the security of the measurement object.
- the process of trustworthiness generally includes two processes: calculation and verification.
- Calculation refers to using a predetermined algorithm to calculate the software code or configuration file of the measurement object, such as calculating the hash value of the software code.
- Verification refers to comparing the calculation result with the pre-stored metric benchmark of the metric object. If the calculation result conforms to the metric benchmark, it is determined that the metric object complies with security, and vice versa.
- the measurement object is the subject whose trustworthy measurement is performed, and the subject who performs the trustworthy measurement operation on the measurement object is the measurement subject.
- Core root of trust for measurement It is the executable code used to establish the root of trust. By running the core root of trust, the root of trust can be established.
- the trustworthy credential root core is the first piece of code executed after the trusted computing platform is powered on.
- the processing chip includes a trusted execution environment and a normal execution environment (also called a rich execution environment (REE)).
- Trusted execution environment and ordinary execution environment are concepts proposed by the Global Platform (GP).
- the trusted execution environment and the ordinary execution environment are obtained by dividing two independent execution environments on a mobile terminal device based on the original hardware and software of the mobile terminal device. Among them, the trusted execution environment has its own operating system, and security applications are deployed in the trusted execution environment.
- the ordinary execution environment cannot access the resources of the trusted execution environment without authorization.
- the ordinary execution environment and the trusted execution environment isolate device resources and run in isolation through the sharing of physical devices and software scheduling within the hardware.
- the processing chip may be a processor, such as a central processing unit (CPU).
- Confidential computing can protect the security of data in use, and its application scenarios are very wide, especially in the field of cloud computing.
- Common applications include Enclave-based encrypted data analysis, copyright protection, genetic data processing, key protection, key management systems, privacy-preserving machine learning, and confidential databases.
- Others such as blockchain privacy computing, blockchain, trusted artificial intelligence (AI), privacy edge computing, etc., can all be built on the basis of confidential computing technology to better serve application scenarios.
- Confidential computing technology is an innovative data isolation and encryption processing technology that can protect sensitive data from the server chip hardware layer even if privileged software such as OS kernel, hypervisor, and even BIOS have been damaged or even malicious.
- the trust chain of the trusted execution environment is based on the root of trust built into the processing chip.
- the trustworthiness of the root of trust is subject to the trustworthiness of the processing chip manufacturer, causing the trustworthiness of confidential computing to be affected by the trustworthiness of the processing chip manufacturer.
- this also results in existing confidential computing solutions that are usually strongly bound to the processing chip provider and difficult to be compatible with each other.
- application development in a confidential computing trusted execution environment requires a processing chip. Manufacturer approval and certification are required. This limits the use of chips from different manufacturers in one system or cluster at the same time, restricting the development of large-scale confidential computing.
- FIG. 1 is a schematic diagram of a computer device 10 provided by an embodiment of the present application.
- the computer device 10 includes: a processing chip 101 and a security chip 102 .
- the security chip 102 is used to run the trusted root 1021, start the processing chip 101 based on the trusted root 1021, and perform security control on the processing chip 101.
- the processing chip 101 includes a trusted execution environment 1011, which is built based on the trusted root 1021.
- the trusted execution environment 1011 is used to perform confidential calculations. Among them, since the trusted execution environment 1011 needs to use a trust chain, and the trust chain is built based on the trusted root 1021, it can be considered that the trusted execution environment 1011 is built based on the trusted root 1021.
- the security chip 102 and the processing chip 101 are set up separately, realizing the decoupling of the security chip 102 and the processing chip 101.
- the security of the security chip 102 can be guaranteed and endorsed by the manufacturer of the security chip 102.
- the trustworthiness of the root of trust 1021 in the security chip 102 is no longer subject to the trustworthiness of the processing chip 101 manufacturer, and it gets rid of the current situation in which the construction of the trusted execution environment 1011 is limited to the processing chip 101 manufacturer, thus improving the This increases the credibility of confidential computing and eliminates users' distrust of processing chip 101 manufacturers.
- the security chip 102 Since the security chip 102 is decoupled from the processing chip 101, the security chip 102 can be connected to different types of processing chips 101, which improves the compatibility of the entire computer device 10 with multiple chips and is conducive to promoting the development of large-scale confidential computing application scenarios. And promote the standardization process of confidential computing security ecosystem.
- an access control mechanism and/or a communication protection mechanism can be set up in the computer device 10 to ensure the security and trustworthiness of the trusted root 1021 and the security and reliability of the communication between the security chip and the processing chip 101.
- the implementation principle of the access control mechanism is: after receiving an access request to the trusted root 1021, authenticate the access request, allow access when the access request has access permission, and allow access when the access request does not Access is denied when access is available.
- the access control mechanism when implementing the access control mechanism, it can be implemented in the processing chip 101, or in the security chip 102, or through cooperation between the processing chip 101 and the security chip 102. The implementation processes of these three implementation situations are described below:
- the access control mechanism is implemented in the processing chip 101 .
- the processing chip 101 includes a first access control module 1012 .
- the first access control module 1012 is configured to receive an access request to the trusted root 1021, forward the access request to the security chip 102 when the access request has access permission, and reject the access request when the access request does not have access permission.
- the security chip 102 is also used to receive the access request and respond to the access request.
- the access control mechanism is implemented in the security chip 102.
- the security chip 102 includes a second access control module 1022.
- the second access control module 1022 is used to receive an access request to the trusted root 1021, respond to the access request when the access request has access rights, and reject the access request when the access request does not have access rights.
- the access request received by the security chip 102 may be sent by the processing chip 101.
- the access control mechanism is implemented through the cooperation of the processing chip 101 and the security chip 102 .
- the processing chip 101 includes a third access control module 1013
- the security chip 102 includes a fourth access control module 1023 .
- the third access control module 1013 is configured to receive an access request to the trusted root 1021, obtain the access request permission indication information, and forward the access request and its permission indication information to the security chip 102.
- the fourth access control module 1023 is configured to receive an access request and its access permission, respond to the access request when the permission indication information indicates that the access request has access permission, and reject the access request when the permission indication information indicates that the access request does not have access permission. .
- the trusted root 1021 is the trusted root 1021 of the trusted execution environment 1011, for the trusted root 1021, the trusted execution environment 1011 has a higher security level, and the trusted root 1021 can be used by the trusted execution environment. 1011 access, therefore, access requests from the trusted execution environment 1011 have access rights, and access requests from outside the trusted execution environment 1011 do not have access rights.
- Authentication of access requests through the access control mechanism can ensure that access from the trusted execution environment 1011 is valid and block access from outside the trusted execution environment 1011, ensuring the security and trustworthiness of the trusted root 1021. This is especially obvious when the computer device 10 is deployed in the cloud.
- the computer device 10 is usually managed by a cloud administrator.
- the cloud administrator has higher authority, but this is not excluded. Cloud administrators can make the root of trust 1021 insecure.
- the access request from the cloud administrator can be regarded as an access request from the ordinary execution environment 1014. Through this access control mechanism, the cloud administrator can be denied access to the trusted root 1021. Therefore, it can effectively Ensure the security and trustworthiness of trusted root 1021.
- the access permission may or may not be carried in the access request.
- access rights can be determined by the sender of the access request. For example, access rights can be set in advance for each component (such as computing resources, memory areas, peripherals, etc.) in the computer device 10.
- the access rights set for it can be read first, and Send the access permission in the access request.
- the access permission can also be set in advance for each component in the computer device 10, and any component can send its access permission to the component that needs to authenticate its access request.
- the access permissions of all components can be recorded in the designated location of the computer device 10.
- the access permissions of the access request can be obtained from the designated location according to the sender of the access request. Obtain the access rights for the access request.
- access permissions can also be represented by permission identifiers, and different assignments of permission identifiers represent different access permissions. For example, when the assigned value of the authority identifier is 0, it can be determined that the access authority to the trusted root 1021 is present; when the assigned value of the authority identifier is 1, it can be determined that the access authority to the trusted root 1021 is not present.
- the communication protection mechanism can be implemented through the cooperation of the processing chip 101 and the security chip 102 .
- the processing chip 101 includes a first communication protection module 1015
- the security chip 102 includes a second communication protection module 1024 .
- the second communication protection module 1024 matches the first communication protection module 1015.
- the first communication protection module 1015 and the second communication protection module 1024 are used to protect the communication between the security chip 102 and the processing chip 101 .
- the first communication protection module performs a first communication protection measure on the communication content between the security chip and the processing chip;
- the second communication protection module performs a second communication protection measure on the communication content between the security chip and the processing chip.
- the communication protection measure matches the first communication protection measure.
- the second communication protection module performs a first communication protection measure on the communication content between the security chip and the processing chip; the first communication protection module performs a second communication protection measure on the communication content between the security chip and the processing chip, and the second communication protection module performs a second communication protection measure on the communication content between the security chip and the processing chip.
- the communication protection measure matches the first communication protection measure.
- the matching of the first communication protection module 1015 and the second communication protection module 1024 means that they can protect the communication between the processing chip 101 and the security chip 102 according to the pre-negotiated encrypted communication protocol.
- one or more strategies can be used between the first communication protection module 1015 and the second communication protection module 1024 to ensure the security of the communication between the security chip 102 and the processing chip 101 .
- the first communication protection module 1015 and the second communication protection module 1024 can protect the communication between the security chip 102 and the processing chip 101 based on the key policy to ensure that the security chip 102 and the processing chip 101 Confidentiality of communications between. That is, when communicating between the security chip 102 and the processing chip 101, one of the first communication protection module 1015 and the second communication protection module 1024 can use the encryption key to encrypt the communication content.
- the first communication protection module 1015 and Another one of the second communication protection modules 1024 may use a decryption key that matches the encryption key to decrypt the communication content to ensure the security of the communication content during the communication process.
- the first communication protection module 1015 and the second communication protection module 1024 can also protect the communication between the security chip 102 and the processing chip 101 based on at least one of the signature policy and the timestamp policy to ensure that the security chip The integrity of the communication between the security chip 102 and the processing chip 101 prevents the communication content between the security chip 102 and the processing chip 101 from being forged and tampered with.
- one of the first communication protection module 1015 and the second communication protection module 1024 can use some methods to sign the communication content, and the other of the first communication protection module 1015 and the second communication protection module 1024 can verify The signature, when verified, confirms that the communication content has not been forged or tampered with.
- the first communication protection module 1015 can use a hash algorithm to perform a hash operation on the data to be sent, and then use an asymmetric private key to encrypt the hash result to generate a signature.
- the second communication protection module 1024 can verify the signature using the corresponding public key.
- one of the first communication protection module 1015 and the second communication protection module 1024 can use some methods to add a timestamp to the communication content, and the other of the first communication protection module 1015 and the second communication protection module 1024 One can verify the validity of the timestamp. When verifying that the timestamp is valid, it is determined that the communication content has not been forged or tampered with.
- the first communication protection module 1015 and the second communication protection module 1024 can implement communication protection through the transport layer security protocol (transport layer security, TLS) or the secure socket layer (secure sockets layer, SSL) security protocol. mechanism.
- transport layer security protocol transport layer security, TLS
- secure socket layer secure sockets layer, SSL
- the trusted root 1021 includes one or more of the following: startup root 1021a, metric root 1021b (also called reporting root), and encryption root 1021c (also called storage root).
- the boot root 1021a is used to securely boot the processing chip 101.
- the metric root 1021b is used to prove to remote users that the running status of the computer device 10 is safe and trustworthy, that is, to implement remote certification.
- the encryption root 1021c is used to encrypt the memory space of the trusted execution environment 1011 to ensure that data will not be leaked in plain text in the memory.
- the startup root 1021a, the metric root 1021b, and the encryption root 1021c all run in the security chip 102, which is external to the processing chip 101.
- the startup root 1021a, the metric root 1021b and the encryption root 1021c are all external to the processing chip 101, so that the security of the startup root 1021a, the metric root 1021b and the encryption root 1021c can be guaranteed and endorsed by the manufacturer of the security chip 102 , and is no longer limited by the manufacturer of the processing chip 101.
- FIG. 7 the startup root 1021a, the metric root 1021b, and the encryption root 1021c all run in the security chip 102, which is external to the processing chip 101.
- the startup root 1021a, the metric root 1021b and the encryption root 1021c are all external to the processing chip 101, so that the security of the startup root 1021a, the metric root 1021b and the encryption root 1021c can be guaranteed and endorsed by the manufacturer of the security chip 102 , and is no longer limited
- FIG. 7 illustrates that the boot root 1021a, metric root 1021b, and encryption root 1021c are all running in the security chip 102, it is not excluded that parts of the boot root 1021a, metric root 1021b, and encryption root 1021c can also run. Outside the security chip 102 (eg in the processing chip 101). For example, the boot root 1021a and the metric root 1021b can run in the security chip 102, and the encryption root 1021c can run in the processing chip 101.
- Persons of ordinary skill in the art know that as business requirements change, the deployment method of the startup root 1021a, the measurement root 1021b, and the encryption root 1021c can be adjusted according to the business requirements, which are not specifically limited in the embodiments of this application.
- the security chip 102 is specifically used to use the boot root 1021a to obtain the firmware image used by the boot processing chip 101 after power-on, and use the firmware image to boot the processing chip 101 to start.
- the security chip 102 is first reset and powered on, and then the security chip 102 builds the trusted root 1021 by running the trusted metric root core. Then, use the boot root 1021a to verify the latest version of the firmware image 1031. When the latest version of the firmware image 1031 passes the verification, it is determined that the latest version of the firmware image 1031 is used to boot the processing chip 101 for startup.
- the latest version of the firmware image 1031 fails the verification, it is determined to use the older version of the backup firmware image 1031 to boot the processing chip 101 to ensure that the computer device 10 can start. Then, the system of the computer device 10 including the processing chip 101 is powered on, and the determined firmware image is used to boot the processing chip 101 to start.
- the system firmware 1016 is securely booted, and then the software of the computer device 10 (such as the operating system of the trusted execution environment 1011 (TEE OS, also known as the secure operating system), the operating system LibOS of the ordinary execution environment 1014 (also known as the ordinary operating system) , such as the Linux kernel), virtual machine operating system, etc.), and after the verification ensures that the software has not been tampered with, the trusted system software is loaded, thereby enabling the startup of the entire computer device 10.
- the trusted metric root core is the first line of code run after the security chip 102 is powered on, which can be stored in the read-only memory (ROM) of the security chip 102 .
- the firmware image 1031 may be stored in the flash memory (Flash) 103 of the computer device 10 .
- Verifying the firmware image is mainly to verify its integrity to ensure that the confidential computing firmware has not been tampered with, and after determining that the confidential computing firmware has not been tampered with, load trusted firmware.
- the firmware can be confidential computing firmware, such as basic input/output system (BIOS), bootloader, ATF, etc.
- BIOS basic input/output system
- bootloader ATF
- the secure startup should be extended to the integrity of each secure application.
- the computer device 10 also needs to verify the security application and load a trusted security application after ensuring that the security application has not been tampered with.
- the operation of booting the processing chip 101 using the determined firmware image may be performed by the boot boot module 1017 in the processing chip 101 .
- the startup sequence of each component during the safe boot process is shown in the direction of the bold black arrow in Figure 8.
- the implementation of remote attestation by the metric root 1021b includes: the security chip 102 receives the metric value generated by the processing chip 101 during the startup process, and when receiving the security verification request for the trusted execution environment 1011, generates a metric report based on the metric value, and Feedback metrics reporting based on security verification requests.
- the security chip 102 receives the metric value generated by the processing chip 101 during the startup process, and when receiving the security verification request for the trusted execution environment 1011, generates a metric report based on the metric value, and Feedback metrics reporting based on security verification requests.
- the security chip 102 receives the metric value generated by the processing chip 101 during the startup process, and when receiving the security verification request for the trusted execution environment 1011, generates a metric report based on the metric value, and Feedback metrics reporting based on security verification requests.
- the security chip 102 receives the metric value generated by the processing chip 101 during the startup process, and when receiving the security verification request for the trusted execution environment 1011, generates a
- the remote user can verify the metric value stored in the root of trust 1021 through a cryptographic challenge at any time to confirm that the operating status of the computer device 10 is safe and trustworthy.
- the remote certification process will be triggered.
- the metric root 1021b serves as the reporting root of the computer device 10, can generate a metric report for remote challenges based on the saved metric values, and provide remote certification services.
- the metric report is provided by the server (the dotted line arrow in Figure 9 is the sending direction of the metric report).
- the remote server can verify the metric report to ensure the security of the trusted execution environment 1011.
- the computer device 10 When encrypting the memory space of the trusted execution environment 1011, as shown in FIG10, the computer device 10 also includes a memory chip 104, and the processing chip 101 includes a memory encryption module 1018.
- the security chip 102 is also used to generate a key using the trusted root 1021, and provide the key to the memory encryption module 1018 through an encrypted channel.
- the memory encryption module 1018 is used to encrypt the memory data using the key, and provide the encrypted memory data to the memory chip 104, and/or obtain the encrypted memory data from the memory chip 104, and use the key to decrypt the encrypted memory data.
- the memory encryption module 1018 After the memory encryption module 1018 decrypts the memory data, it can provide the decrypted memory data to the trusted execution environment 1011, so that the trusted execution environment 1011 performs confidential computing based on the data.
- the memory chip 104 is used to receive and store the encrypted memory data, and/or provide the encrypted memory data to the memory encryption module 1018. In this way, it can be ensured that the data always remains in a ciphertext state after leaving the processing chip 101.
- the memory encryption module can be a memory encryption engine (memory encryption engine, MEE), which is used to perform hardware encryption and decryption operations on the memory space that needs to be encrypted.
- MEE memory encryption engine
- the memory chip 104 may include an encrypted memory area and a normal memory area.
- the encrypted memory area is a memory space that needs to be encrypted.
- one or more security applications can usually be deployed in the trusted execution environment 1011, and each security application can correspond to an encrypted area in the encrypted memory area.
- the encryption root 1021c can generate different keys for different security applications, and the memory encryption module can use the security application's own key to perform encryption on the data used by the security application itself. Encryption or decryption operations to ensure the security of data used by each security application.
- the dotted arrow represents the key transmission direction
- the dotted arrow represents the data transmission direction.
- the security chip 102 and the processing chip 101 are provided separately, which realizes the decoupling of the security chip 102 and the processing chip 101.
- the security of the security chip 102 can be provided by the security chip 102. guaranteed and endorsed by the manufacturer. In this way, the trustworthiness of the root of trust 1021 in the security chip 102 is no longer subject to the trustworthiness of the processing chip 101 manufacturer, and it gets rid of the current situation in which the construction of the trusted execution environment 1011 is limited to the processing chip 101 manufacturer, thus improving the This increases the credibility of confidential computing and eliminates users' distrust of processing chip 101 manufacturers.
- the security chip 102 Since the security chip 102 is decoupled from the processing chip 101, the security chip 102 can be connected to different types of processing chips 101, which improves the compatibility of the entire computer device 10 with multiple chips and is conducive to promoting the development of large-scale confidential computing application scenarios. And promote the standardization process of confidential computing security ecosystem.
- FIG. 11 is a schematic diagram of another computer device 10 provided by an embodiment of the present application.
- the computer device 10 may also include: a memory 105 , a communication interface 106 and a bus 107 .
- the processing chip 101, the security chip 102, the memory 105, and the communication interface 106 realize communication connections between each other through the bus 107.
- the processing chip 101 may include a general processing chip 101 and/or a dedicated hardware chip.
- the general processing chip 101 may include: a central processing unit (CPU), a microprocessor or a graphics processing unit (GPU).
- the CPU is, for example, a single-core processor (single-CPU) or a multi-core processor (multi-CPU).
- a dedicated hardware chip is a high-performance processing hardware module. Specialized hardware chips include at least one of a digital signal processor, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a network processor (NP) One item.
- the processing chip 101 may also be an integrated circuit chip with signal processing capabilities. During the implementation process, some or all of the functions implemented by the processing chip 101 in this application can be completed by instructions in the form of hardware integrated logic circuits or software in the processing chip 101 .
- the memory 105 is used to store computer programs, which include an operating system 105a and executable codes (ie, program instructions) 105b.
- the memory 105 is, for example, a read-only memory or other type of static storage device that can store static information and instructions, or a random access memory or other type of dynamic storage device that can store information and instructions, or an electrically erasable programmable memory device.
- the memory 105 is used to store outbound port queues, etc.
- the memory 105 exists independently, for example, and is connected to the processing chip 101 through a bus 107 . Or the memory 105 and the processing chip 101 are integrated together.
- Memory 105 may store executable code. When the executable code stored in the memory 105 is executed by the processing chip 101, the processing chip 101 is used for some or all of the functions implemented by the processing chip 101 in this application. For example, processing chip 101 performs confidential calculations.
- the memory 105 may also include operating systems and other software modules and data required for running processes.
- the communication interface 106 uses a transceiver module such as but not limited to a transceiver to implement communication with other devices or communication networks.
- the communication interface 106 may be any one or any combination of the following devices: a network interface (such as an Ethernet interface), a wireless network card, and other devices with network access functions.
- Bus 107 is any type of communication bus used to interconnect internal devices of computer device 10 (eg, memory 105, processing chip 101, communication interface 106).
- system bus e.g., system bus.
- the embodiment of the present application takes the above-mentioned devices inside the computer device 10 as being interconnected through the bus 107 as an example.
- the above-mentioned devices inside the computer device 10 may also use other connection methods besides the bus 107 to communicate with each other.
- the above-mentioned devices inside the computer device 10 are interconnected through internal logical interfaces.
- the computer device 10 may also include a flash memory 103 and a memory chip 104, etc.
- the above-mentioned plurality of devices can be respectively arranged on independent chips, or at least part or all of them can be arranged on the same chip. Whether each device is independently installed on different chips or integrated on one or more chips often depends on the needs of product design.
- the embodiments of this application do not limit the specific implementation forms of the above devices.
- the descriptions of the processes corresponding to each of the above drawings have different emphases. For parts that are not detailed in a certain process, you can refer to the relevant descriptions of other processes.
- each component of the computer device may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
- software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
- the computer program product that provides a program development platform includes one or more computer instructions. When these computer program instructions are loaded and executed on the computer device 10, the functions in the components of the computer device provided by the embodiments of the present application are fully or partially implemented, such as Realize the function of the processing chip or realize the function of the security chip.
- computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another.
- computer instructions may be transmitted over a wired connection from a website, computer, server or data center. (such as coaxial cable, optical fiber, digital subscriber line or wireless (such as infrared, wireless, microwave, etc.) to transmit to another website, computer, server or data center.
- the computer-readable storage medium stores information that provides a program development platform Computer program instructions.
- the structure of the above computer device is an exemplary description of the structure of the computer device provided in the embodiment of the present application, and does not constitute a limitation on the structure of the computer device.
- a person of ordinary skill in the art will know that as business needs change, the structure of the computer device can be adjusted according to application requirements, and the embodiment of the present application does not list them one by one.
- the embodiment of the present application also provides a method for operating a computer device.
- the computer device includes: a processing chip and a security chip.
- the computer device may be the computer device provided in the above embodiment.
- the computer device may be the computer device shown in any one of Figures 1 to 11.
- the method for operating the computer device includes:
- Step 1201 The security chip runs the trusted root, starts the processing chip based on the trusted root, and performs trustworthy control on the processing chip.
- the trusted root includes one or more of the following: a startup root, a metric root, and a cryptographic root.
- the implementation process of the security chip starting the processing chip based on the trusted root includes: the security chip uses the trusted root to obtain a firmware image used to start the processing chip; after the processing chip is powered on, the security chip uses the firmware image to boot the processing chip.
- Step 1202 The processing chip builds a trusted execution environment based on the trusted root, and the trusted execution environment is used to perform confidential calculations.
- an access control mechanism and/or a communication protection mechanism can be set up in the computer device to ensure the security and trustworthiness of the trusted root and the security and trustworthiness of the communication between the security chip and the processing chip. The following describes the access control mechanism and communication protection mechanism respectively.
- the processing chip includes a first access control module.
- the operating method of the computer device may also include:
- Step 1203 The first access control module receives the access request to the trusted root, forwards the access request to the security chip when the access request has access permission, and rejects the access request when the access request does not have access permission.
- Step 1204 The security chip responds to the access request.
- the security chip includes a second access control module.
- the method of operating the computer device may also include:
- Step 1205 The second access control module receives the access request to the trusted root, responds to the access request when the access request has access permission, and rejects the access request when the access request does not have access permission.
- the processing chip includes a third access control module
- the security chip includes a fourth access control module.
- the operating method of the computer device may also include:
- Step 1206 The third access control module receives an access request to the trusted root, obtains permission indication information of the access request, and forwards the access request and its permission indication information to the security chip.
- Step 1207 The fourth access control module responds to the access request when the permission indication information indicates that the access request has access permission, and rejects the access request when the permission indication information indicates that the access request does not have access permission.
- access requests from the trusted execution environment have access rights, and access requests from outside the trusted execution environment do not have access rights.
- the processing chip includes a first communication protection module
- the security chip includes a second communication protection module
- the second communication protection module matches the first communication protection module.
- the operating method of the computer device also includes: the first communication protection module and the second communication protection module jointly protect the communication between the security chip and the processing chip.
- the operating method of the computer device also includes: step 1208, the first communication protection module performs the first communication protection measure on the communication content between the security chip and the processing chip; step 1209, the second communication protection The module performs a second communication protection measure on the communication content between the security chip and the processing chip, and the second communication protection measure matches the first communication protection measure.
- the operating method of the computer device further includes: the second communication protection module performs the first communication protection measure on the communication content between the security chip and the processing chip; the first communication protection module performs the first communication protection measure on the communication content between the security chip and the processing chip. A second communication protection measure is executed, and the second communication protection measure matches the first communication protection measure.
- both the first communication protection module and the second communication protection module protect the communication between the security chip and the processing chip based on the key policy.
- the first communication protection measure may be encryption
- the second communication protection measure may be decryption.
- both the first communication protection module and the second communication protection module protect the communication between the security chip and the processing chip based on at least one of the signature policy and the timestamp policy.
- the first communication protection measure may be signing and adding a time stamp
- the second communication protection measure may be verifying the signature and time stamp.
- the communication protection mechanism can be used in combination with the access control mechanism, and the communication protection mechanism can be used in combination with any implementation method of the access control mechanism.
- Figure 13 here is a schematic diagram of the first implementation of the communication protection mechanism and the access control mechanism.
- the operating method of the computer device may also include a remote certification process.
- the operating method of the computer device may also include:
- Step 1210 The security chip receives and processes the metric value generated by the chip during the startup process.
- Step 1211 The security chip receives a security verification request for the trusted execution environment.
- Step 1212 The security chip generates a metric report based on the metric value, and feeds back the metric report based on the security verification request.
- the computer equipment also includes: memory chips.
- the processing chip includes a memory encryption module.
- the method of operating the computer device may also include a memory encryption and decryption process. As shown in Figure 13, the operating method of the computer device may also include the following memory encryption process:
- Step 1213 The security chip uses the trusted root to generate a key and provide the key to the memory encryption module.
- Step 1214 The memory encryption module uses the key to encrypt the memory data and provides the encrypted memory data to the memory chip.
- Step 1215 The memory chip stores the encrypted memory data.
- the operating method of the computer device may also include the following memory decryption process:
- Step 1213 The security chip uses the trusted root to generate a key and provide the key to the memory encryption module.
- Step 1216 The memory chip provides the encrypted memory data to the memory encryption module.
- Step 1217 The memory encryption module uses the key to decrypt the encrypted memory data.
- the security chip and the processing chip are set up separately, which realizes the decoupling of the security chip and the processing chip.
- the security of the security chip can be performed by the manufacturer of the security chip. Guarantees and endorsements. In this way, the trustworthiness of the root of trust in the security chip is no longer subject to the trustworthiness of the processing chip manufacturer, and it breaks away from the current situation in which the construction of a trusted execution environment is limited to the processing chip manufacturer, thereby improving the reliability of confidential computing. level of trust, and can eliminate users’ distrust of processing chip manufacturers.
- the security chip Since the security chip is decoupled from the processing chip, the security chip can be connected to different types of processing chips, which improves the compatibility of the entire computer device with multiple chips, which is conducive to promoting the development of large-scale confidential computing application scenarios and promoting confidential computing security. Ecological standardization process.
- An embodiment of the present application also provides a security chip.
- the security chip is used to run a root of trust, start the processing chip based on the root of trust, and perform trustworthy control of the processing chip.
- the security chip is specifically used to use a trusted root to obtain the firmware image used by the boot processing chip, and perform the boot operation on the processing chip. After power-on, use the firmware image boot processing chip to start.
- the trusted root includes one or more of the following: startup root, metric root, and encryption root.
- the security chip is also used to respond to access requests.
- the computer device may include a security chip and a processing chip.
- the processing chip is configured to receive an access request to a trusted root. When the access request has access permission, forward the access request to the security chip. When the access request does not have access permission, When access permission is granted, the access request is denied. At this time, if the access request received by the security chip is an access request with access permission, it can respond to the access request.
- the security chip includes a second access control module.
- the second access control module is used to receive an access request to the trusted root, respond to the access request if the access request has access rights, and reject the access request if the access request does not have access rights.
- the processing chip includes a third access control module
- the security chip includes a fourth access control module.
- the third access control module is used to receive the access request to the trusted root, obtain the permission indication information of the access request, and forward the access request and its permission indication information to the security chip; the fourth access control module is used to indicate the access request in the permission indication information.
- the access permission is granted, the access request is responded to; when the permission indication information indicates that the access request does not have the access permission, the access request is denied.
- access requests from the trusted execution environment have access rights, and access requests from outside the trusted execution environment do not have access rights.
- the security chip can also implement a communication protection mechanism to protect its communication content.
- the processing chip includes a first communication protection module
- the security chip includes a second communication protection module
- the second communication protection module matches the first communication protection module
- the first communication protection module and the second communication protection module are Yu Lianhe protects the communication between the security chip and the processing chip.
- the first communication protection module and the second communication protection module are specifically used to protect the communication between the security chip and the processing chip based on the key policy.
- first communication protection module and the second communication protection module are specifically configured to protect the communication between the security chip and the processing chip based on at least one of the signature policy and the timestamp policy.
- the security chip is also used to receive the metric value generated by the processing chip during the startup process, receive the security verification request for the trusted execution environment, generate a metric report based on the metric value, and feed back the metric report based on the security verification request.
- the computer device further includes a memory chip
- the processing chip includes a memory encryption module.
- the security chip is further used to generate a key using a trusted root and provide the key to the memory encryption module;
- the memory encryption module is used to encrypt memory data using the key and provide the encrypted memory data to the memory chip, and/or obtain the encrypted memory data from the memory chip and decrypt the encrypted memory data using the key;
- the memory chip is used to store the encrypted memory data and/or provide the encrypted memory data to the memory encryption module.
- the security chip and the processing chip are set up separately, which realizes the decoupling of the security chip and the processing chip.
- the security of the security chip can be guaranteed and endorsed by the manufacturer of the security chip. .
- the trustworthiness of the root of trust in the security chip is no longer subject to the trustworthiness of the processing chip manufacturer, and it breaks away from the current situation in which the construction of a trusted execution environment is limited to the processing chip manufacturer, thus improving the reliability of confidential computing. level of trust, and can eliminate users’ distrust of processing chip manufacturers.
- the security chip Since the security chip is decoupled from the processing chip, the security chip can be connected to different types of processing chips, which improves the compatibility of the entire computer device with multiple chips, which is conducive to promoting the development of large-scale confidential computing application scenarios and promoting confidential computing security. Ecological standardization process.
- Embodiments of the present application also provide a computer-readable storage medium.
- the computer-readable storage medium may be a non-volatile computer-readable storage medium.
- the computer-readable storage medium includes program instructions. When the program instructions are stored on a computer device, When running, the computer device is caused to execute the running method of the computer device provided by the embodiment of the present application.
- Embodiments of the present application also provide a computer program product containing instructions.
- the computer program product When the computer program product is run on a computer, it causes the computer to execute the operating method of the computer device provided by the embodiment of the present application.
- the information including but not limited to user equipment information, user personal information, etc.
- data including but not limited to data used for analysis, stored data, displayed data, etc.
- signals involved in this application All are authorized by the user or fully authorized by all parties. rights, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.
- the terms “first”, “second” and “third” are only used for description purposes and cannot be understood as indicating or implying relative importance.
- the term “at least one” refers to one or more, and the term “plurality” refers to two or more, unless expressly limited otherwise.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
Description
Claims (28)
- 一种计算机设备,其特征在于,所述计算机设备包括:处理芯片和安全芯片;所述安全芯片用于运行可信根,并基于所述可信根启动所述处理芯片和对所述处理芯片进行可信控制;所述处理芯片包括可信执行环境,所述可信执行环境基于所述可信根构建,所述可信执行环境用于执行机密计算。
- 根据权利要求1所述的计算机设备,其特征在于,所述安全芯片具体用于使用所述可信根获取启动所述处理芯片使用的固件镜像,并在所述处理芯片上电后,使用所述固件镜像引导所述处理芯片启动。
- 根据权利要求1或2所述的计算机设备,其特征在于,所述可信根包括以下一种或多种:启动根、度量根和加密根。
- 根据权利要求1至3任一所述的计算机设备,其特征在于,所述处理芯片包括第一访问控制模块;所述第一访问控制模块用于接收对所述可信根的访问请求,在所述访问请求具有访问权限时,向所述安全芯片转发所述访问请求,在所述访问请求不具有访问权限时,拒绝所述访问请求;所述安全芯片还用于对所述访问请求进行响应。
- 根据权利要求1至3任一所述的计算机设备,其特征在于,所述安全芯片包括第二访问控制模块;所述第二访问控制模块用于接收对所述可信根的访问请求,在所述访问请求具有访问权限时,对所述访问请求进行响应,在所述访问请求不具有访问权限时,拒绝所述访问请求。
- 根据权利要求1至3任一所述的计算机设备,其特征在于,所述处理芯片包括第三访问控制模块,所述安全芯片包括第四访问控制模块;所述第三访问控制模块用于接收对所述可信根的访问请求,获取所述访问请求的权限指示信息,向所述安全芯片转发所述访问请求及其权限指示信息;所述第四访问控制模块用于在所述权限指示信息指示访问请求具有访问权限时,对所述访问请求进行响应,在所述权限指示信息指示访问请求不具有访问权限时,拒绝所述访问请求。
- 根据权利要求4至6任一所述的计算机设备,其特征在于,来自所述可信执行环境的访问请求具有访问权限,来自所述可信执行环境外的访问请求不具有访问权限。
- 根据权利要求1至7任一所述的计算机设备,其特征在于,所述处理芯片包括第一通信保护模块,所述安全芯片包括第二通信保护模块,所述第二通信保护模块与所述第一通信保护模块匹配,所述第一通信保护模块和所述第二通信保护模块用于联合对所述安全芯片和所述处理芯片之间的通信进行保护。
- 根据权利要求8所述的计算机设备,其特征在于,所述第一通信保护模块和所述第二通信保护模块具体用于基于密钥策略,对所述安全芯片和所述处理芯片之间的通信进行保护。
- 根据权利要求9所述的计算机设备,其特征在于,所述第一通信保护模块和所述第二通信保护模块具体还用于基于签名策略和时间戳策略中的至少一个,对所述安全芯片和所述处理芯片之间的通信进行保护。
- 根据权利要求1至10任一所述的计算机设备,其特征在于,所述安全芯片还用于接收所述处理芯片在启动过程中生成的度量值,接收对所述可信执行环境的安全 验证请求,基于所述度量值生成度量报告,并基于所述安全验证请求反馈所述度量报告。
- 根据权利要求1至11任一所述的计算机设备,其特征在于,所述计算机设备还包括内存芯片,所述处理芯片包括内存加密模块;所述安全芯片还用于使用所述可信根生成密钥,向所述内存加密模块提供所述密钥;所述内存加密模块用于使用所述密钥对内存数据进行加密,并向所述内存芯片提供经过加密的内存数据,和/或,从所述内存芯片获取经过加密的内存数据,并使用所述密钥对经过加密的内存数据进行解密;所述内存芯片用于存储经过加密的内存数据,和/或,向所述内存加密模块提供经过加密的内存数据。
- 一种计算机设备的运行方法,其特征在于,所述计算机设备包括:处理芯片和安全芯片,所述方法包括:所述安全芯片运行可信根,并基于所述可信根启动所述处理芯片和对所述处理芯片进行可信控制;所述处理芯片基于所述可信根构建可信执行环境,所述可信执行环境用于执行机密计算。
- 根据权利要求13所述的方法,其特征在于,所述安全芯片基于所述可信根启动所述处理芯片,包括:所述安全芯片使用所述可信根获取启动所述处理芯片使用的固件镜像;所述安全芯片在所述处理芯片上电后,使用所述固件镜像引导所述处理芯片启动。
- 根据权利要求13或14所述的方法,其特征在于,所述可信根包括以下一种或多种:启动根、度量根和加密根。
- 根据权利要求13至15任一所述的方法,其特征在于,所述处理芯片包括第一访问控制模块,所述方法还包括:所述第一访问控制模块接收对所述可信根的访问请求,在所述访问请求具有访问权限时,向所述安全芯片转发所述访问请求,在所述访问请求不具有访问权限时,拒绝所述访问请求;所述安全芯片对所述访问请求进行响应。
- 根据权利要求13至15任一所述的方法,其特征在于,所述安全芯片包括第二访问控制模块,所述方法还包括:所述第二访问控制模块接收对所述可信根的访问请求,在所述访问请求具有访问权限时,对所述访问请求进行响应,在所述访问请求不具有访问权限时,拒绝所述访问请求。
- 根据权利要求13至15任一所述的方法,其特征在于,所述处理芯片包括第三访问控制模块,所述安全芯片包括第四访问控制模块,所述方法还包括:所述第三访问控制模块接收对所述可信根的访问请求,获取所述访问请求的权限指示信息,向所述安全芯片转发所述访问请求及其权限指示信息;所述第四访问控制模块在所述权限指示信息指示访问请求具有访问权限时,对所述访问请求进行响应,在所述权限指示信息指示访问请求不具有访问权限时,拒绝所述访问请求。
- 根据权利要求16至18任一所述的方法,其特征在于,来自所述可信执行环境的访问请求具有访问权限,来自所述可信执行环境外的访问请求不具有访问权限。
- 根据权利要求13至19任一所述的方法,其特征在于,所述处理芯片包括第一通信保护模块,所述安全芯片包括第二通信保护模块,所述第二通信保护模块与所述第一通信保护模块匹配,所述方法还包括:所述第一通信保护模块与所述第二通信保护模块联合对所述安全芯片和所述处理芯片之间的通信进行保护。
- 根据权利要求20所述的方法,其特征在于,所述第一通信保护模块和所述第二通信保护模块均基于密钥策略,对所述安全芯片和所述处理芯片之间的通信进行保护。
- 根据权利要求21所述的方法,其特征在于,所述第一通信保护模块和所述第二通信保护模块均基于签名策略和时间戳策略中的至少一个,对所述安全芯片和所述处理芯片之间的通信进行保护。
- 根据权利要求13至22任一所述的方法,其特征在于,所述方法还包括:所述安全芯片接收所述处理芯片在启动过程中生成的度量值;所述安全芯片接收对所述可信执行环境的安全验证请求;所述安全芯片基于所述度量值生成度量报告,并基于所述安全验证请求反馈所述度量报告。
- 根据权利要求13至23任一所述的方法,其特征在于,所述计算机设备还包括:内存芯片,所述处理芯片包括内存加密模块,所述方法还包括:所述安全芯片使用所述可信根生成密钥,向所述内存加密模块提供所述密钥;所述内存加密模块使用所述密钥对内存数据进行加密,并向所述内存芯片提供经过加密的内存数据;所述内存芯片存储经过加密的内存数据。
- 根据权利要求13至24任一所述的方法,其特征在于,所述计算机设备还包括:内存芯片,所述处理芯片包括内存加密模块,所述方法还包括:所述安全芯片使用所述可信根生成密钥,向所述内存加密模块提供所述密钥;所述内存芯片向所述内存加密模块提供经过加密的内存数据;所述内存加密模块使用所述密钥对经过加密的内存数据进行解密。
- 一种安全芯片,其特征在于,所述安全芯片为权利要求1至12任一所述的安全芯片。
- 一种计算机可读存储介质,其特征在于,包括程序指令,当所述程序指令在计算机设备上运行时,使得所述计算机设备执行如权利要求13至25任一所述的方法。
- 一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求13至25任一所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP23867051.7A EP4567649A1 (en) | 2022-09-19 | 2023-06-28 | Computer device and running method thereof, and security chip |
US19/082,381 US20250217492A1 (en) | 2022-09-19 | 2025-03-18 | Computer Device, Operating Method Thereof, and Security Chip |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211139911.3A CN117763553A (zh) | 2022-09-19 | 2022-09-19 | 计算机设备及其运行方法、安全芯片 |
CN202211139911.3 | 2022-09-19 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US19/082,381 Continuation US20250217492A1 (en) | 2022-09-19 | 2025-03-18 | Computer Device, Operating Method Thereof, and Security Chip |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024060756A1 true WO2024060756A1 (zh) | 2024-03-28 |
Family
ID=90316734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/103448 WO2024060756A1 (zh) | 2022-09-19 | 2023-06-28 | 计算机设备及其运行方法、安全芯片 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20250217492A1 (zh) |
EP (1) | EP4567649A1 (zh) |
CN (2) | CN119066658A (zh) |
WO (1) | WO2024060756A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118964162B (zh) * | 2024-10-16 | 2025-01-14 | 浙江大学 | 芯粒系统信任度计算方法、安全保护方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210141940A1 (en) * | 2019-11-13 | 2021-05-13 | Sensoriant, Inc. | Method and system for enhancing the integrity of computing with shared data and algorithms |
CN114600102A (zh) * | 2020-01-29 | 2022-06-07 | 华为技术有限公司 | 用于保护共享对象的装置和方法 |
CN114692159A (zh) * | 2020-12-29 | 2022-07-01 | 华为技术有限公司 | 计算机系统、可信功能组件及运行方法 |
CN114692160A (zh) * | 2020-12-29 | 2022-07-01 | 华为技术有限公司 | 计算机安全可信启动的处理方法及装置 |
CN114936365A (zh) * | 2022-01-27 | 2022-08-23 | 华为技术有限公司 | 一种机密数据的保护系统、方法以及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103646214B (zh) * | 2013-12-18 | 2016-08-31 | 国家电网公司 | 一种在配电终端中建立可信环境的方法 |
CN104243168A (zh) * | 2014-10-09 | 2014-12-24 | 浪潮电子信息产业股份有限公司 | 一种基于Java智能卡的可信移动模块 |
-
2022
- 2022-09-19 CN CN202410971135.6A patent/CN119066658A/zh active Pending
- 2022-09-19 CN CN202211139911.3A patent/CN117763553A/zh active Pending
-
2023
- 2023-06-28 EP EP23867051.7A patent/EP4567649A1/en active Pending
- 2023-06-28 WO PCT/CN2023/103448 patent/WO2024060756A1/zh active Application Filing
-
2025
- 2025-03-18 US US19/082,381 patent/US20250217492A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210141940A1 (en) * | 2019-11-13 | 2021-05-13 | Sensoriant, Inc. | Method and system for enhancing the integrity of computing with shared data and algorithms |
CN114600102A (zh) * | 2020-01-29 | 2022-06-07 | 华为技术有限公司 | 用于保护共享对象的装置和方法 |
CN114692159A (zh) * | 2020-12-29 | 2022-07-01 | 华为技术有限公司 | 计算机系统、可信功能组件及运行方法 |
CN114692160A (zh) * | 2020-12-29 | 2022-07-01 | 华为技术有限公司 | 计算机安全可信启动的处理方法及装置 |
CN114936365A (zh) * | 2022-01-27 | 2022-08-23 | 华为技术有限公司 | 一种机密数据的保护系统、方法以及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117763553A (zh) | 2024-03-26 |
CN119066658A (zh) | 2024-12-03 |
US20250217492A1 (en) | 2025-07-03 |
EP4567649A1 (en) | 2025-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10721080B2 (en) | Key-attestation-contingent certificate issuance | |
KR102504519B1 (ko) | 네트워킹된 장치들을 갖는 컴퓨터 구동 시스템의 반가상 보안 위협 보호 | |
RU2762141C2 (ru) | Абстрактная идентификация анклава | |
EP2866166B1 (en) | Systems and methods for enforcing third party oversight data anonymization | |
US8171295B2 (en) | Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable process | |
CN107077574B (zh) | 用于客户端设备的信任服务 | |
US20140066015A1 (en) | Secure device service enrollment | |
US8090946B2 (en) | Inter-system binding method and application based on hardware security unit | |
CN113785548A (zh) | 用于实施数据中心中的有效载荷安全性策略的证明服务 | |
CN105379223A (zh) | 用于移动应用管理的对移动应用的身份的验证 | |
CN113726726B (zh) | 一种基于边缘计算的电力物联网可信免疫体系及度量方法 | |
EP3832511A1 (en) | Security processor configured to authenticate user and authorize user for user data and computing system including the same | |
CN110390201A (zh) | 计算机系统以及初始化计算机系统的方法 | |
US20250217492A1 (en) | Computer Device, Operating Method Thereof, and Security Chip | |
US9692641B2 (en) | Network connecting method and electronic device | |
US9660863B2 (en) | Network connecting method and electronic device | |
US12265632B2 (en) | Systems and methods for key distribution of low end SPDM devices | |
KR20150089696A (ko) | 접근제어와 우선순위기반 무결성 검증 시스템 및 그 방법 | |
Pedone et al. | Trusted computing technology and proposals for resolving cloud computing security problems | |
US12153681B2 (en) | Systems and methods for identifying firmware versions using SPDM alias certificates | |
US20240297871A1 (en) | Systems and methods for cloning bmc profiles in a cluster environment | |
WO2025086129A1 (en) | Methods and mechanisms for unified remote attestation for confidential applications in the cloud | |
US20240296227A1 (en) | Systems and methods to prevent cloning on spdm-enabled devices | |
CN120151042A (zh) | 用于安全部署模型的方法、装置、设备和存储介质 | |
Pedone | and Proposals for Resolving Cloud |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23867051 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2023867051 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2023867051 Country of ref document: EP Effective date: 20250303 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWP | Wipo information: published in national office |
Ref document number: 2023867051 Country of ref document: EP |