Unified management method, device and equipment for confidential containers

By introducing a confidential container architecture based on k8s and kata into container services, using confidential computing technology to create an execution environment protected by CPU TEE, solving the problem of susceptible leakage or tampering of sensitive data and code in container services, achieving higher security.

CN119668775APending Publication Date: 2025-03-21CHINA UNITED NETWORK COMM GRP CO LTD +2

Patent Information

Application Number
CN202411745117.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-03-21

AI Technical Summary

Technical Problem

Container services are prone to leakage or tampering during the calculation process, and the container services are low in security.

Method used

Through a confidential container architecture based on k8s and kata, a lightweight trusted execution environment (TEE) pod is created using confidential computing technology to run the container in an execution environment protected by CPU TEE, providing processor microarchitecture-level memory access control and isolation mechanism for encryption and integrity protection.

Benefits of technology

Effectively prevent leakage or tampering with sensitive data and code during the calculation process, significantly improving the security of container services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119668775A_ABST
    Figure CN119668775A_ABST
Patent Text Reader

Abstract

The invention provides a unified management method, device and equipment for confidential containers, and the method comprises the steps: on the basis of a container cluster management system k8s and a virtualization container technology kata, based on sev, scv, tdx, tpm, tpcm, vtpm, vtpcm and the like, calling a security container kata run to create a VM on a k8s platform; the secret container is pulled up by the kata runtime through the kata-agent; the attestation-agent of the kata virtual machine generates a remote proof Quote with a hardware executable environment, and the remote proof Quote is sent to the host-attestation-agent; the host-attestation-agent is used for sending a remote certificate (Quote) with a hardware executable environment to the CA (Certificate Authority); after the CA receives the remote proof Quote with the hardware executable environment, trusted remote verification type judgment is carried out; and the CA performs container security verification according to the judgment result of the credible remote verification type judgment, so that a processor micro-architecture level memory access control and isolation mechanism can be provided, encryption and integrity protection can be provided at the memory level, and sensitive data and codes are prevented from being leaked or tampered in the calculation process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of cloud computing technology, and in particular to a method, device and equipment for unified management of confidential containers. Background Art

[0002] Containers are services that run on images. Images package the environment dependencies of applications so that containers can run on different nodes to produce the same expected results. This feature makes them the smallest schedulable management unit. Container Cluster Management System (Kuberentes, k8s) is an open source container orchestration platform for automating the deployment, expansion and management of containerized applications.

[0003] In related technologies, sandbox is a security mechanism that allows programs to run in a relatively independent and isolated environment so that they do not affect external programs and ensure system security. Pod is the smallest resource management component in k8s, and Pod is also the resource object that minimizes the running of containerized applications. In order to ensure the security of container services, container services are implemented based on lightweight Sandbox Pods implemented with common virtualization technology.

[0004] However, sensitive data and codes are easily leaked or tampered with during the computing process of container services, and the security of container services is low. Summary of the invention

[0005] The present application provides a method, apparatus and device for unified management of confidential containers to solve the technical problems that sensitive data and codes of container services are easily leaked or tampered with during the computing process of container services and the security of container services is low.

[0006] In a first aspect, the present application provides a method for unified management of confidential containers, including:

[0007] The image service image_service pulls the image from the local storage;

[0008] The image_service service selects the image processing method based on the parameters passed in by the user;

[0009] According to the processing method, encrypting the image;

[0010] Based on the container cluster management system k8s and the virtualized container technology kata, the secure container kata runtime is called to create a VM;

[0011] Kata runtime pulls up the confidential container through kata-agent;

[0012] The attestation-agent of the kata virtual machine generates a remote attestation quote with a hardware executable environment and sends it to the host-attestation-agent;

[0013] The host-attestation-agent sends the remote attestation quote with the hardware executable environment to the CA trusted authentication platform;

[0014] After receiving the remote certification quote with the hardware executable environment, the CA trusted authentication platform determines the trusted remote verification type;

[0015] The CA trusted authentication platform performs container security verification according to the judgment result of the trusted remote verification type judgment.

[0016] Optionally, the processing method includes processing parameters, and the processing parameters include encryption method, signature method and encryption\signature algorithm;

[0017] The encryption methods include tpm, tpcm, csv, sev and openssl;

[0018] The signature methods include tpm, tpcm, csv and openssl;

[0019] The encryption / signature algorithms include symmetric encryption RSA algorithm, asymmetric encryption ASE algorithm and national secret algorithm.

[0020] Optionally, based on the container cluster management system k8s and the virtualized container technology kata, call the secure container kataruntime to create a VM, including:

[0021] Use sev technology or csv technology to statically measure the loaded ovmf, kernel, initrd and cmdline to create a VM;

[0022] The trusted platform module tpm technology or the trusted platform control module tpcm technology is adopted to register the baseline remote attestation report into the attestation_port_pools of the CA trusted attestation platform to create a VM.

[0023] Optionally, the attestation-agent of the kata virtual machine generates a remote attestation quote with a hardware executable environment, including:

[0024] If sev technology or csv technology is used, hypercall is called to obtain the remote attestation quote including attestation-report and chip-id content;

[0025] If tpm or tpcm technology is used, call tpm-tool or tpcm-tool to obtain the remote attestation quote of rsa key encapsulation.

[0026] Optionally, the CA trusted authentication platform performs container security verification according to the judgment result of the trusted remote verification type judgment, including:

[0027] If the judgment result is csv, sev or tdx type, the CA trusted authentication platform sends the remote attestation quote to the hardware supplier verification platform for verification;

[0028] If the judgment result is tpm or tpcm type, the CA trusted authentication platform performs container security verification according to the remote attestation quote.

[0029] Optionally, the CA trusted authentication platform performs container security verification according to the remote attestation quote, including:

[0030] The CA trusted authentication platform calls the attention-service service and performs remote attestation by comparing the baseline remote attestation report in the attention-port-pool with the remote attestation quote to achieve security verification.

[0031] Optionally, after the CA trusted authentication platform performs container security verification according to the judgment result of the trusted remote verification type, the method further includes:

[0032] If the security verification is successful, the public key corresponding to the container image is obtained from key-pools for decryption or signature verification;

[0033] If the decryption is successful or the signature verification is successful, the confidential container is launched by decrypting the container image.

[0034] In a second aspect, the present application provides a unified management device for confidential containers, including:

[0035] The encryption processing module is used to: the image service image_service pulls the image from the local storage; the image_service service selects the image processing method according to the parameters input by the user; and encrypts the image according to the processing method;

[0036] Create a module to call the secure container kata runtime to create a VM based on the container cluster management system k8s and the virtualized container technology kata;

[0037] Pull up module, used by kata runtime to pull up confidential containers through kata-agent;

[0038] The processing module is used for the attestation-agent of the kata virtual machine to generate a remote attestation quote with a hardware executable environment and send it to the host-attestation-agent;

[0039] A sending module, used for the host-attestation-agent to send the remote attestation quote with the hardware executable environment to the CA trusted authentication platform;

[0040] A judgment module, used for the CA trusted authentication platform to judge the trusted remote authentication type after receiving the remote certification quote with the hardware executable environment;

[0041] The verification module is used for the CA trusted authentication platform to perform container security verification according to the judgment result of the trusted remote verification type.

[0042] Optionally, the processing method includes processing parameters, and the processing parameters include encryption method, signature method and encryption\signature algorithm;

[0043] The encryption methods include tpm, tpcm, csv, sev and openssl;

[0044] The signature methods include tpm, tpcm, csv and openssl;

[0045] The encryption / signature algorithms include symmetric encryption RSA algorithm, asymmetric encryption ASE algorithm and national secret algorithm.

[0046] Optionally, the creation module is specifically used to:

[0047] Use sev technology or csv technology to statically measure the loaded ovmf, kernel, initrd and cmdline to create a VM;

[0048] The trusted platform module tpm technology or the trusted platform control module tpcm technology is adopted to register the baseline remote attestation report into the attestation_port_pools of the CA trusted attestation platform to create a VM.

[0049] Optionally, the processing is specifically used for:

[0050] If sev technology or csv technology is used, hypercall is called to obtain the remote attestation quote including attestation-report and chip-id content;

[0051] If tpm or tpcm technology is used, call tpm-tool or tpcm-tool to obtain the remote attestation quote of rsa key encapsulation.

[0052] Optionally, the verification module is specifically used to:

[0053] If the judgment result is csv, sev or tdx type, the CA trusted authentication platform sends the remote attestation quote to the hardware supplier verification platform for verification;

[0054] If the judgment result is tpm or tpcm type, the CA trusted authentication platform performs container security verification according to the remote attestation quote.

[0055] Optionally, the verification module is further specifically used for:

[0056] The CA trusted authentication platform calls the attention-service service and performs remote attestation by comparing the baseline remote attestation report in the attention-port-pool with the remote attestation quote to achieve security verification.

[0057] In a third aspect, the present application provides a confidential container unified management device, including: at least one processor and a memory;

[0058] The memory stores computer-executable instructions;

[0059] The at least one processor executes the computer-executable instructions stored in the memory, so that the at least one processor executes the confidential container unified management method as described in the first aspect and various possible designs of the first aspect.

[0060] In a fourth aspect, the present application provides a computer-readable storage medium, which stores computer execution instructions. When a processor executes the computer execution instructions, it implements the unified management method for confidential containers as described in the first aspect and various possible designs of the first aspect.

[0061] In a fifth aspect, the present application provides a computer program product, including a computer program. When the computer program is executed by a processor, it implements the unified management method of confidential containers as described in the first aspect and various possible designs of the first aspect.

[0062] The present application provides a unified management method, device and equipment for confidential containers, wherein the method is based on the management of containers by k8s and kata, and the confidential container architecture is based on the Kata Containers project. The lightweight Sandbox Pod implemented based on ordinary virtualization technology is replaced by a lightweight trusted execution environment (Trusted execution environment, TEE) Pod implemented based on confidential computing technology, and the entire Pod of the tenant and the containers therein are run in an execution environment protected by the central processing unit (Central Processing Unit, CPU) TEE. The implementation method of confidential computing at the container technology level is standardized, and the underlying implementation details of various CPU TEEs are shielded. It can provide processor microarchitecture-level memory access control and isolation mechanism, provide encryption and integrity protection at the memory level, prevent the leakage or tampering of sensitive data and code during the calculation process, and improve the security of container services. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0064] Figure 1A A schematic diagram of the architecture of a unified management system for confidential containers provided in an embodiment of the present application;

[0065] Figure 1B A schematic diagram of another unified confidential container management system architecture provided in an embodiment of the present application;

[0066] Figure 2 A flowchart of a method for unified management of confidential containers provided in an embodiment of the present application;

[0067] Figure 3A A schematic diagram of the steps of container safety verification provided in an embodiment of the present application;

[0068] Figure 3B A schematic diagram of a system architecture for encrypting or signing a container image provided in an embodiment of the present application;

[0069] Figure 3C A schematic diagram of the steps of a method for unified management of confidential containers provided in an embodiment of the present application;

[0070] Figure 4 A schematic diagram of the structure of a unified management device for confidential containers provided in an embodiment of the present application;

[0071] Figure 5 A schematic diagram of the structure of a confidential container unified management device provided in an embodiment of the present application.

[0072] The above drawings show clear embodiments of the present disclosure, which will be described in more detail below. These drawings and text descriptions are not intended to limit the scope of the present disclosure in any way, but to illustrate the concepts of the present disclosure to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION

[0073] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0074] The terms "first", "second", "third", and "fourth", etc. (if any) in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product, or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products, or devices.

[0075] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards, and provide corresponding operation entrances for users to choose to authorize or refuse.

[0076] Sensitive data and code in container services are easily leaked or tampered with during the computing process, and the security of container services is low. In order to solve the above technical problems, the embodiments of the present application provide a unified management method, device and equipment for confidential containers, which provides a processor microarchitecture-level memory access control and isolation mechanism, and provides encryption and integrity protection at the memory level.

[0077] Optionally, the goal of the Cloud Confidential Container project is to standardize the implementation of confidential computing at the container technology level based on the management of containers by k8s and kata, shield the underlying implementation details of various CPU TEEs (AMD SEV, Intel SGX, and Intel TDX), and provide processor microarchitecture-level memory access control and isolation mechanisms, as well as encryption and integrity protection at the memory level to prevent the leakage or tampering of sensitive data and code during the computing process.

[0078] Among them, the confidential container architecture is based on the Kata Containers project. The biggest difference is that the lightweight Sandbox Pod implemented based on ordinary virtualization technology is replaced by a lightweight TEE Pod based on confidential computing technology, and the tenant's entire Pod and the containers therein are run in an execution environment protected by CPU TEE.

[0079] Optional, Figure 1A A schematic diagram of a unified management system architecture for confidential containers provided in an embodiment of the present application. The unified management system architecture for confidential containers is the above-mentioned confidential container architecture based on the Kata Containers project.

[0080] Optionally, Figure 1A VM_A and VM_B in the figure refer to different virtual machines.

[0081] in, Figure 1A In the CA trusted authentication platform, uuid_A can correspond to VM_A, and uuid_B can correspond to VM_B.

[0082] Optional, Figure 1B A schematic diagram of another unified confidential container management system architecture provided in an embodiment of the present application.

[0083] like Figure 1B The unified management system for confidential containers shown is based on the k8s platform and the Linux operating system, and uses tpm, swtpm, csv, sev, tdx and related software stacks openssl and tpm-tool to implement trusted computing and confidential computing of containers.

[0084] Based on Figure 1BThe unified management system for confidential containers shown in the figure is based on the kata container of the K8S platform. It integrates the relevant trusted computing related tpm, vtpm, tpcm and vtpcm technologies, and integrates sev, csv, and tdx confidential computing technologies. It implements image decryption and signature verification before the container is started, ensures environmental security through remote proof during startup, and encrypts memory with ksev csv to ensure running data security. The tee objects involved in the whole solution are mainly containers. The specific implementation includes two parts: image encryption and secure container startup.

[0085] It is understandable that the structure illustrated in the embodiment of the present application does not constitute a specific limitation on the architecture of the unified management system for confidential containers. In other feasible implementations of the present application, the above architecture may include more or fewer components than shown in the figure, or combine certain components, or split certain components, or arrange the components differently, which can be determined according to the actual application scenario and is not limited here. Figure 1A The components shown may be implemented in hardware, software, or a combination of software and hardware.

[0086] In addition, the network architecture and business scenarios described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. Ordinary technicians in this field can know that with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.

[0087] The technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.

[0088] Figure 2 A flow chart of a unified management method for confidential containers provided in an embodiment of the present application. The embodiment of the present application can be applied to Figure 1A or Figure 1B The unified management system of confidential containers in the system can be determined by the specific execution subject according to the actual application scenario. Figure 2 As shown, the method comprises the following steps:

[0089] S201: The image service image_service pulls the image from the local storage.

[0090] S202: the image_service service selects a processing method for the image according to the parameters input by the user.

[0091] S203: Encrypt the image according to the processing method.

[0092] S204: Based on the container cluster management system k8s and the virtualized container technology kata, call the secure container kataruntime to create a VM.

[0093] Optionally, the optional method of step S204 is: using sev technology or csv technology to perform static measurement on the loaded ovmf, kernel, initrd and cmdline to create a VM; or, using trusted platform module tpm technology or trusted platform control module tpcm technology to register the baseline remote attestation report into the attestation_port_pools of the CA trusted authentication platform to create a VM.

[0094] S205: Kata runtime pulls up the confidential container through kata-agent.

[0095] S206: The attestation-agent of the kata virtual machine generates a remote attestation quote with a hardware executable environment and sends it to the host-attestation-agent.

[0096] Optionally, the attestation-agent of the kata virtual machine generates a remote attestation quote with a hardware executable environment, including: if step S204 adopts sev technology or csv technology, hypercall is called to obtain a remote attestation quote including attestation-report and chip-id content; if step S204 adopts tpm technology or tpcm technology, tpm-tool or tpcm-tool is called to obtain a remote attestation quote encapsulated by an rsa key.

[0097] S207: host-attestation-agent sends the remote attestation quote with the hardware executable environment to the CA trusted attestation platform.

[0098] S208: After receiving the remote certification quote with the hardware executable environment, the CA trusted authentication platform determines the trusted remote verification type.

[0099] S209: The CA trusted authentication platform performs container security verification based on the judgment result of the trusted remote verification type.

[0100] Optionally, Figure 3A A schematic diagram of the steps of container security verification provided in an embodiment of the present application, such as Figure 3AAs shown, the CA trusted authentication platform performs container security verification based on the judgment result of the trusted remote authentication type, including: if the judgment result is csv, sev or tdx type, the CA trusted authentication platform sends the remote attestation quote to the hardware vendor verification platform for verification; if the judgment result is tpm or tpcm or openssl type, the CA trusted authentication platform performs container security verification based on the remote attestation quote.

[0101] Optionally, the CA trusted authentication platform performs container security verification based on the remote attestation quote, including: the CA trusted authentication platform calls the attention-service service, performs remote attestation by comparing the baseline remote attestation report in the attention-port-pool with the remote attestation quote, so as to achieve security verification.

[0102] Specifically, during the container startup process, a remote attestation report will be obtained and then pushed to the CA trusted platform. After the CA trusted platform obtains the remote attestation of the current container, it determines the type of remote attestation. If it is tpm, tpcm, vtpm or vtpcm, local verification is adopted. Otherwise, if it is csv, sev or tdx, remote verification is adopted. If it is local verification, the corresponding baseline remote report is queried from the attention-ports-pools table in the CA management center's database according to the uuid of the container, and then compared with the current remote report. If they are equal, the environment is trusted, otherwise it is untrustworthy. If it is remote verification, the current remote attestation is sent to the remote verification center for verification. The verification result is returned to the container as a basis for judging image processing.

[0103] In order to achieve unified management of confidential containers in the embodiments of this application, container image encryption (signing) is required. The main purpose is to achieve the process of uploading container images to the image warehouse, encrypting (signing) the images, and managing the decryption (signature verification) keys.

[0104] Optionally, after the CA trusted authentication platform performs container security verification based on the judgment result of the trusted remote verification type, it also includes: if the security verification is successful, obtaining the public key corresponding to the container image from the key-pools for decryption or signature verification; if the decryption is successful, or the signature verification is successful, pulling up the confidential container by decrypting the container image.

[0105] Optionally, before calling the secure container kataruntime to create a VM based on the container cluster management system k8s and the virtualized container technology kata, the following is also included:

[0106] The image service image_service pulls the image from the local storage; the image_service service selects the image processing method based on the parameters passed in by the user; and encrypts the image based on the processing method.

[0107] Optionally, Figure 3B A schematic diagram of a system architecture for encrypting or signing a container image provided in an embodiment of the present application.

[0108] Optionally, in Figure 3B In the example, Image_A (which may also be expressed as image_a), Image_B (which may also be expressed as image_b), etc. may all represent examples of different containers.

[0109] Image encryption: Container images can be encrypted or signed when stored on a trusted platform. Encryption ensures that the image is converted into ciphertext, and only the public key that is legally obtained can decrypt the image.

[0110] Image signature: When container images are stored on a trusted platform, you can choose a signature algorithm to ensure the integrity of the container image. Only by legally obtaining the private key can the integrity of the image be verified.

[0111] The image processing method can only be one of encryption and signing, and then the encryption (signature) method is selected. Through the confidential container processing process, confidential container image management can be achieved. The encryption method can be selected from tpm, tpcm, csv, sev and openssl. The signature method can be selected from tpm, tpcm, csv, sev and openssl. The encryption algorithms that can be selected include symmetric encryption rsa, asymmetric encryption ase and national encryption, etc., which mainly depends on the encryption algorithm supported by the technology stack where the selected encryption method is located.

[0112] like Figure 3B As shown, the steps for encrypting a container image are as follows:

[0113] Step 1.1: Figure 3B In the label (1), the image service image_service pulls the image from the local storage.

[0114] Step 1.2, image_service service selects the image processing method according to the parameters passed by the user. There are three main parameters: encryption method, signature method, encryption (signature) algorithm. The encryption methods that can be selected are: tpm, tpcm, csv, sev and openssl, the signature methods that can be selected are: tpm, tpcm, csv and openssl, and the encryption algorithms that can be selected are symmetric encryption rsa asymmetric encryption ase and national encryption (mainly depending on the encryption algorithm supported by the technology stack of the selected encryption method).

[0115] Step 1.3: If you choose the tpm rsa encryption algorithm to encrypt the container image_a, as shown above, Figure 3B Number (2) pushes the container image to the key management center. The key-agent service of the key management center calls tpm2_createek to first create the master key of the RSA algorithm, and then creates an encryption key pair (rsa_ak.pub rsa_ak.priv) through tpm2_create.

[0116] Step 1.4: Encrypt the container image_a using the public key rsa_ak.pub created in step 1.3 to generate the encrypted image container image encrpt_image_a. Figure 3B The bid number (4.2) or Figure 3B The number (4.1) pushes encrpt_image_a to the container image repository. Figure 3B Winning number (3) pushes the private key to the CA trusted authentication platform, and then saves it to the item of the corresponding image uuid in key_pools.

[0117] When storing container images on a trusted platform, you can choose to encrypt or sign them. Encryption ensures that the image is converted into ciphertext, and only legally obtained public keys can decrypt the image. Signatures ensure the integrity of container images, and only legally obtained private keys can verify the integrity of the image.

[0118] Based on the above introduction to container image encryption or signing, a feasible way of image processing is introduced:

[0119] The cloud platform image service image_service pulls the image from the storage; encrypts (signs) the image through the public key (private key) generated by the key management center; pushes the image to the image warehouse; and stores the public key (private key) required for decryption (signature verification) to the CA trusted authentication platform.

[0120] Optionally, Figure 3C A schematic diagram of the steps of a method for unified management of confidential containers provided in an embodiment of the present application is shown in FIG. Figure 3C As shown, the embodiment of the present application can be Figure 3C The steps in the diagram implement different ways of encryption and signing, and realize container image encryption.

[0121] like Figure 3CAs shown, in some possible implementations, the cloud platform image-service image service obtains the image image from the storage and obtains the input image processing parameters; according to the input parameters, select encryption or signature. If it is encryption (signature), select one of tpm, tpcm, sev, csv, and openssl as the encryption (signature) method. Then select one of the encryption algorithms (symmetric, asymmetric, and national encryption) according to the parameters. For example, if encryption is selected, the encryption method is tpm, and the encryption algorithm is rsa. The key management center generates a key pair according to the selection of the above steps. If the encryption (signature) method is openedsl, the public key (private key) is transmitted to the image service, otherwise the image needs to be transmitted to the key management center. For example: the key management center key-agent service calls tpm2_createek to first create the master key of the rsa algorithm, and then creates an encryption key pair (rsa_ak.pub and rsa_ak.priv) through tpm2_create. Then, according to the encryption (signature), the image is encrypted (signed) to generate an encrypted (signed) image. For example, according to the selection in the previous step, the key-agent service calls the tpm-tool tool to import the public key rsa_ak.pub to encrypt the container image and generate the encrypted image encrpt_image. Push the encrypted (signed) image to the image repository. For example, according to the selection in the previous step, the key management center pushes encrpt_image to the container image repository. Pass the decrypted (signature-verified) public key (private key) to the CA trusted verification center. For example, according to the selection in the previous step, the key management center pushes the private key to the CA trusted authentication platform and then saves it to the item of the corresponding image uuid in key_pools.

[0122] Optionally, the processing method includes processing parameters, and the processing parameters include encryption method, signature method and encryption\signature algorithm; encryption methods include tpm, tpcm, csv, sev and openssl; signature methods include tpm, tpcm, csv and openssl; encryption\signature algorithms include symmetric encryption rsa algorithm, asymmetric encryption ase algorithm and national secret algorithm.

[0123] Here is a possible way to run the machine container:

[0124] The unified confidential container based on k8s and kata computing unified csv, sev, tdx, tpm, tpcm related technologies is as follows:

[0125] First, construct the worker node of the k8s cluster. The optional host types are sev, csv and tdx to implement the encrypted kata virtual machine. Create a confidential container in the encrypted kata virtual machine. For image encryption and decryption (signature verification) and related remote proof, the optional technology stacks are tpm, tpcm, csv, sev and openssl.

[0126] Among them, implementing container encryption requires remote verification during the container startup process, and using kata and confidential computing technology to achieve resource isolation and memory encryption during operation after startup. The above two aspects ensure the security and reliability of the container.

[0127] Optionally, the remote authentication technologies available in the boot process are vtpm, vtpcm, sev, csv, and tdx.

[0128] Optionally, after startup, cooperate with kata to ensure resource isolation and memory encryption calculations for sev, csv and tdx.

[0129] See also Figure 1A and Figure 1A As shown in the numbers, the specific process is as follows:

[0130] Step 2.1, as shown in Figure 1, based on k8s and kata, containerd calls kata runtime to create a VM.

[0131] If the trusted method is selected, csv or sev technology is selected. The creation process will perform static measurement and security checks on the loaded ovmf, kernel, initrd, and cmdline. If tpm or tpcm technology is used, the baseline remote attestation report will be registered in the attestation_port_pools of the CA trusted authentication platform.

[0132] Step 2.2, as shown in the process of figure number 2, kata runtime pulls up the confidential container through kata-agent. First, as shown in the process of figure number 3, the attestation-agent of the kata virtual machine generates a quote with a hardware executable environment and sends it to the host-attestation-agent.

[0133] If you choose csv or sev type of trusted remote authentication, hypercall uses hag or sev-tool to call commands to obtain remote attestation quotes including attestation-report, chip-id, etc. If you choose tpm or tpcm type of trusted remote authentication, call tpm-tool or tpcm-tool to obtain rsa key-encapsulated remote attestation quotes and send the remote report to the CA trusted authentication center.

[0134] Step 2.3, as shown in the process of figure number 4, after the CA-agent of the CA trusted authentication platform receives the remote attestation quote, it determines the trusted remote verification type. If it is the csv sev tdx type, the remote attestation quote is sent to the remote-ca trusted authentication platform (hardware vendor verification platform) for verification as shown in the process of figure number 6. If it is the tpm or tpcm trusted verification type, the attention-service service is called as shown in the process of figure number 5, and remote attestation is performed by comparing the baseline remote report in the attention-port-pool. If the remote attestation passes, the public key (decryption) or decryption or signature verification corresponding to the container image is obtained from the key-pools as shown in the process of figure number 7, and sent to the attention-agent service of the VM and saved to the specified location.

[0135] Step 2.4: If the remote attestation in step 2.3 is successful, the image-rs service will pull the container image from the image repository as shown in figure 8, and obtain the public key (private key) from the location specified in step 2.3 to decrypt (verify the signature) the container image. If the decryption (verification) is successful, the confidential container is pulled up by decrypting the container image.

[0136] Based on the above methods, the implementation of confidential computing at the container technology level is standardized, and the underlying implementation details of various CPU TEEs (AMD SEV, Intel SGX, and Intel TDX) are shielded. It can provide processor microarchitecture-level memory access control and isolation mechanisms, provide encryption and integrity protection at the memory level, and prevent the leakage or tampering of sensitive data and code during the computing process. The cloud confidential container architecture is based on the Kata Containers project. The biggest difference is that the lightweight Sandbox Pod implemented based on ordinary virtualization technology is replaced with a lightweight TEE Pod implemented based on confidential computing technology, and the tenant's entire Pod and the containers therein are run in an execution environment protected by the CPU TEE.

[0137] Trusted Computing is based on hardware trust roots and is built step by step with a complete trust chain. It integrates trusted measurement, sealed storage, remote attestation and other functions to improve the confidentiality and integrity of the virtualization platform. Its core mechanism is the external CA certification center's certification of the server status in the containerized platform, thereby managing the state changes of the container and avoiding malicious tampering. The trusted platform module (sev, csv, tdx) provides security for the virtualization platform, especially the security of its container environment.

[0138] Figure 4 A schematic diagram of the structure of a unified confidential container management device provided in an embodiment of the present application is shown in FIG. Figure 4 As shown, the device of the embodiment of the present application includes: an encryption processing module 401, a creation module 402, a pull-up module 403, a processing module 404, a sending module 405, a judgment module 406 and a verification module 407. Among them, the confidential container unified management device here can be a server or a terminal device, or a chip or integrated circuit that realizes the functions of a server or a terminal device. It should be noted here that the division of the encryption processing module 401, the creation module 402, the pull-up module 403, the processing module 404, the sending module 405, the judgment module 406 and the verification module 407 is only a division of logical functions. Physically, the two can be integrated or independent.

[0139] The encryption processing module is used to: image service image_service pulls the image from local storage; image_service service selects the image processing method according to the parameters input by the user; and encrypts the image according to the processing method;

[0140] Create a module to call the secure container kata runtime to create a VM based on the container cluster management system k8s and the virtualized container technology kata;

[0141] Pull up module, used by kata runtime to pull up confidential containers through kata-agent;

[0142] The processing module is used for the attestation-agent of the kata virtual machine to generate a remote attestation quote with a hardware executable environment and send it to the host-attestation-agent;

[0143] The sending module is used by the host-attestation-agent to send the remote attestation quote with the hardware executable environment to the CA trusted attestation platform;

[0144] The judgment module is used for the CA trusted authentication platform to judge the trusted remote authentication type after receiving the remote certification quote with the hardware executable environment;

[0145] The verification module is used by the CA trusted authentication platform to perform container security verification based on the judgment result of the trusted remote verification type.

[0146] Optionally, create a module specifically for:

[0147] Use sev technology or csv technology to perform static measurement on loaded ovmf, kernel, initrd and cmdline;

[0148] Using the trusted platform module tpm technology or the trusted platform control module tpcm technology, the baseline remote attestation report is registered in the attestation_port_pools of the CA trusted authentication platform.

[0149] Optionally, the processing is specifically for:

[0150] If sev technology or csv technology is used, hypercall is called to obtain the remote attestation quote including attestation-report and chip-id content;

[0151] If tpm or tpcm technology is used, call tpm-tool or tpcm-tool to obtain the remote attestation quote of rsa key encapsulation.

[0152] Optionally, the verification module is specifically used for:

[0153] If the judgment result is csv, sev or tdx type, the CA trusted authentication platform sends the remote attestation quote to the hardware supplier verification platform for verification;

[0154] If the judgment result is tpm or tpcm type, the CA trusted authentication platform will perform container security verification based on the remote attestation quote.

[0155] Optionally, the verification module is further specifically used for:

[0156] The CA trusted authentication platform calls the attention-service service and performs remote attestation by comparing the baseline remote attestation report and remote attestation quote in the attention-port-pool to achieve security verification.

[0157] Optionally, the processing method includes processing parameters, and the processing parameters include encryption method, signature method and encryption\signature algorithm;

[0158] Encryption methods include tpm, tpcm, csv, sev and openssl;

[0159] Signature methods include tpm, tpcm, csv and openssl;

[0160] The encryption\signature algorithms include symmetric encryption RSA algorithm, asymmetric encryption ASE algorithm and national secret algorithm.

[0161] refer to Figure 5 , which shows a schematic diagram of a structure of a confidential container unified management device suitable for implementing the embodiment of the present disclosure, and the confidential container unified management device can be a terminal device or a server. The terminal device can include but is not limited to mobile terminals such as mobile phones, laptops, digital broadcast receivers, personal digital assistants (PDAs), tablet computers (Portable Android Devices, PADs), portable multimedia players (PMPs), vehicle terminals (such as vehicle navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 5 The confidential container unified management device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0162] like Figure 5 As shown, the confidential container unified management device may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 501, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 502 or a program loaded from a storage device 508 to a random access memory (RAM) 503. Various programs and data required for the operation of the confidential container unified management device are also stored in RAM 503. The processing device 501, ROM 502, and RAM 503 are connected to each other via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0163] Typically, the following devices may be connected to the I / O interface 505: input devices 506 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; output devices 507 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 508 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 509. The communication device 509 may allow the confidential container unified management device to communicate with other devices wirelessly or by wire to exchange data. Although Figure 5 The confidentiality container unified management device having various devices is shown, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed alternatively.

[0164] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device 509, or installed from a storage device 508, or installed from a ROM 502. When the computer program is executed by the processing device 501, the above-mentioned functions defined in the method of the embodiment of the present disclosure are executed.

[0165] It should be noted that the computer-readable medium disclosed above may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.

[0166] The above-mentioned computer-readable medium may be included in the above-mentioned unified management device for confidential containers; or it may exist independently without being assembled into the unified management device for confidential containers.

[0167] The above-mentioned computer-readable medium carries one or more programs. When the above-mentioned one or more programs are executed by the confidential container unified management device, the confidential container unified management device executes the method shown in the above-mentioned embodiment.

[0168] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0169] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

[0170] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0171] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the application disclosed herein. This application is intended to cover any variations, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The specification and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.

[0172] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims

1. A method for unified management of confidential containers, characterized in that: include: The image service image_service pulls the image from the local storage; The image_service service selects the image processing method based on the parameters passed in by the user; According to the processing method, encrypting the image; Based on the container cluster management system k8s and the virtualized container technology kata, the secure container kata runtime is called to create a virtual machine VM; Kata runtime pulls up the confidential container through kata-agent; The attestation-agent of the kata virtual machine generates a remote attestation quote with a hardware executable environment and sends it to the host-attestation-agent; The host-attestation-agent sends the remote attestation quote with the hardware executable environment to the CA trusted authentication platform; After receiving the remote certification quote with the hardware executable environment, the CA trusted authentication platform determines the trusted remote verification type; The CA trusted authentication platform performs container security verification according to the judgment result of the trusted remote verification type judgment.

2. The method according to claim 1, characterized in that The processing method includes processing parameters, and the processing parameters include encryption method, signature method and encryption\signature algorithm; The encryption methods include tpm, tpcm, csv, sev and openssl; The signature methods include tpm, tpcm, csv and openssl; The encryption / signature algorithms include symmetric encryption RSA algorithm, asymmetric encryption ASE algorithm and national secret algorithm.

3. The method according to claim 1, characterized in that Based on the container cluster management system k8s and the virtualized container technology kata, the secure container kata runtime is called to create a virtual machine VM, including: Use sev technology or csv technology to statically measure the loaded ovmf, kernel, initrd and cmdline to create a virtual machine VM; The trusted platform module tpm technology or the trusted platform control module tpcm technology is adopted to register the baseline remote attestation report into the attestation_port_pools of the CA trusted attestation platform to create a virtual machine VM.

4. The method according to claim 3, characterized in that: The attestation-agent of the kata virtual machine generates a remote attestation quote with a hardware executable environment, including: If sev technology or csv technology is used, hypercall is called to obtain the remote attestation quote including attestation-report and chip-id content; If tpm or tpcm technology is used, call tpm-tool or tpcm-tool to obtain the remote attestation quote of rsa key encapsulation.

5. The method according to claim 4, characterized in that The CA trusted authentication platform performs container security verification according to the judgment result of the trusted remote verification type judgment, including: If the judgment result is csv, sev or tdx type, the CA trusted authentication platform sends the remote attestation quote to the hardware supplier verification platform for verification; If the judgment result is tpm or tpcm type, the CA trusted authentication platform performs container security verification according to the remote attestation quote.

6. The method according to claim 5, characterized in that The CA trusted authentication platform performs container security verification according to the remote attestation quote, including: The CA trusted authentication platform calls the attention-service service and performs remote attestation by comparing the baseline remote attestation report in the attention-port-pool with the remote attestation quote to achieve security verification.

7. The method according to any one of claims 1 to 6, characterized in that: After the CA trusted authentication platform performs container security verification according to the judgment result of the trusted remote verification type, the method further includes: If the security verification is successful, the public key corresponding to the container image is obtained from key-pools for decryption or signature verification; If the decryption is successful or the signature verification is successful, the confidential container is launched by decrypting the container image.

8. A confidential container unified management device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the confidential container unified management method as described in any one of claims 1 to 7.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the unified management method for confidential containers as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Virtual machine measurement and confidential calculation authentication method, equipment, system and storage medium

    CN117453343A

  • Zero-trust remote authentication service deployment system based on confidential virtual machine

    CN118171257A

  • Sensitive load-oriented low-coupling confidential container architecture

    CN119003178A

  • Secure authentication using attestation tokens and inviolable quotes to validate request origins

    US20230131060A1

Cited By

  • Remote verification method, device, system and equipment for confidential calculation, medium and product

    CN120128426A

  • Encrypted disk creation method and data persistence storage method and device

    CN120449219A

  • Trusted data space deployment method and device, electronic equipment, medium and product

    CN121580390A