Skip to content

Commit

Permalink
README.md: clarify the TCB Measurement and Trusted Foundation (#10)
Browse files Browse the repository at this point in the history
Signed-off-by: Lu, Ken <[email protected]>
  • Loading branch information
kenplusplus authored Dec 13, 2023
1 parent e5efbf3 commit 582eae5
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 6 deletions.
7 changes: 6 additions & 1 deletion .github/cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@
"PCKID",
"pccs",
"pckcache",
"sysfs"
"sysfs",
"UEFI",
"ACPI",
"MRTD",
"CCEL",
"Bootloader"
]
}
37 changes: 32 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,36 @@
# CC Trusted API

The project helps to access and process the trusted primitives (measurement, eventlog,
quote) in the confidential computing environment. It supports multiple language flavors.

It also provides backend tools, IMA templates, services to produce the diverse TCBs
according to deployment.
CC Trusted API helps the diverse applications to access and process the trust states
which was represented by integrity measurement, event record, report/quote in the confidential
computing environment.

![](docs/cc-trusted-api-overview.png)

## TCB Measurement

The diverse application in confidential computing could be firmware or monolithic application
in Confidential VM(CVM), micro service or macro service on Kubernetes. Although
different type application might get the trust states measured in different Trusted
Computing Base (TCB), but the definition and structure of integrity measurement,
event record follows [TCG PC Client Platform Firmware Profile Specification](https://trustedcomputinggroup.org/wp-content/uploads/TCG_PCClient_PFP_r1p05_v23_pub.pdf)

![](docs/cc-trusted-api-usage.png)
| TCB | Measured By | Specification |
| --- | -------- | ------------- |
| TEE | Vendor Secure Module like Intel TDX module, SEV secure processor | Vendor Specification like [Intel TDX Module Specification](https://cdrdv2-public.intel.com/733575/intel-tdx-module-1.5-base-spec-348549002.pdf) |
| Firmware | [EFI_CC_MEASUREMENT_PROTOCOL](https://github.com/tianocore/edk2/blob/master/MdePkg/Include/Protocol/CcMeasurement.h) | [UEFI Specification 2.10](https://uefi.org/specs/UEFI/2.10/) |
| Boot Loader | [EFI_CC_MEASUREMENT_PROTOCOL](https://github.com/tianocore/edk2/blob/master/MdePkg/Include/Protocol/CcMeasurement.h) | Grub2/Shim |
| OS | Integrity Measurement Architecture (IMA)) | [Specification]((https://sourceforge.net/p/linux-ima/wiki/Home/)) |
| Cloud Native | Confidential Cloud Native Primitives (CCNP) | [Repository](https://github.com/intel/confidential-cloud-native-primitives) |

## Trusted Foundation

Normally Trusted Platform Module(TPM) provides root of trust for PC client platform.
In confidential computing environment, vTPM (virtual TPM) might be provided different
vendor or CSP, which root of trust should be hardened by vendor secure module. Some
vendor also provided simplified solution:

| | Intel | vTPM |
| --- | --- | --- |
| Integrity Measurement Register | RTMR/MRTD | PCR |
| Event Log ACPI table | CCEL | TPM2 |
Binary file added docs/cc-trusted-api-usage.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 582eae5

Please sign in to comment.