1
- [ ![ Python Code Scan] ( https://github.com/cc-api/cc-trusted- api/actions/workflows/pylint.yaml/badge.svg )] ( https://github.com/cc-api/cc-trusted -api/actions/workflows/pylint.yaml )
2
- [ ![ Document Scan] ( https://github.com/cc-api/cc-trusted- api/actions/workflows/doclint.yaml/badge.svg )] ( https://github.com/cc-api/cc-trusted -api/actions/workflows/doclint.yaml )
3
- [ ![ Python License Check] ( https://github.com/cc-api/cc-trusted- api/actions/workflows/pylicense.yaml/badge.svg )] ( https://github.com/cc-api/cc-trusted -api/actions/workflows/pylicense.yaml )
4
- [ ![ VMSDK Python Test] ( https://github.com/cc-api/cc-trusted- api/actions/workflows/vmsdk-test-python.yaml/badge.svg )] ( https://github.com/cc-api/cc-trusted -api/actions/workflows/vmsdk-test-python.yaml )
1
+ [ ![ Python Code Scan] ( https://github.com/cc-api/evidence- api/actions/workflows/pylint.yaml/badge.svg )] ( https://github.com/cc-api/evidence -api/actions/workflows/pylint.yaml )
2
+ [ ![ Document Scan] ( https://github.com/cc-api/evidence- api/actions/workflows/doclint.yaml/badge.svg )] ( https://github.com/cc-api/evidence -api/actions/workflows/doclint.yaml )
3
+ [ ![ Python License Check] ( https://github.com/cc-api/evidence- api/actions/workflows/pylicense.yaml/badge.svg )] ( https://github.com/cc-api/evidence -api/actions/workflows/pylicense.yaml )
4
+ [ ![ VMSDK Python Test] ( https://github.com/cc-api/evidence- api/actions/workflows/vmsdk-test-python.yaml/badge.svg )] ( https://github.com/cc-api/evidence -api/actions/workflows/vmsdk-test-python.yaml )
5
5
6
- # CC Trusted API
6
+ # Evidence API
7
7
8
- CC Trusted API helps the diverse applications to access and process the trust states
8
+ Evidence API helps the diverse applications to access and process the trust states
9
9
which was represented by integrity measurement, event record, report/quote in the confidential
10
10
computing environment.
11
11
12
- ![ ] ( docs/cc-trusted -api-overview.png )
12
+ ![ ] ( docs/evidence -api-overview.png )
13
13
14
14
## 1. TCB Measurement
15
15
@@ -19,14 +19,14 @@ different type application might get the trust states measured in different Trus
19
19
Computing Base (TCB), the definition and structure of integrity measurement register and
20
20
event log follows the below specifications.
21
21
22
- ![ ] ( docs/cc-trusted -api-usage.png )
22
+ ![ ] ( docs/evidence -api-usage.png )
23
23
| TCB | Measured By | Specification |
24
24
| --- | -------- | ------------- |
25
25
| Initial TEE | Trusted Security Manager (TSM), such as Intel TDX module, SEV secure processor | Vendor Specification such as [ Intel TDX Module 1.5 ABI Specification] ( https://cdrdv2.intel.com/v1/dl/getContent/733579 ) |
26
26
| Firmware | EFI_CC_MEASUREMENT_PROTOCOL </br > CCEL ACPI Table </br > EFI_TCG2_PROTOCOL </br > TCG ACPI Table | [ UEFI Specification 2.10] ( https://uefi.org/specs/UEFI/2.10/38_Confidential_Computing.html#virtual-platform-cc-event-log ) </br > [ ACPI Specification 6.5] ( https://uefi.org/specs/ACPI/6.5/05_ACPI_Software_Programming_Model.html#cc-event-log-acpi-table ) </br > [ TCG EFI Protocol Specification] ( https://trustedcomputinggroup.org/resource/tcg-efi-protocol-specification/ ) </br > [ TCG ACPI Specification] ( https://trustedcomputinggroup.org/resource/tcg-acpi-specification/ ) |
27
27
| Boot Loader | EFI_CC_MEASUREMENT_PROTOCOL </br > EFI_TCG2_PROTOCOL | Grub2/Shim |
28
28
| OS | Integrity Measurement Architecture (IMA) | [ Specification] ( https://sourceforge.net/p/linux-ima/wiki/Home/ ) |
29
- | Cloud Native | Confidential Cloud Native Primitives (CCNP ) | [ Repository] ( https://github.com/cc-api/confidential-cloud-native-primitives ) |
29
+ | Cloud Native | Container Integrity Measurement Agent (CIMA ) | [ Repository] ( https://github.com/cc-api/container-integrity-measurement-agent ) |
30
30
31
31
## 2. Trusted Foundation
32
32
@@ -44,8 +44,8 @@ vendor also provided simplified solution:
44
44
45
45
## 3. APIs
46
46
47
- CC Trusted APIs aims to collect confidential primitives (i.e., measurement, event log, quote) for zero-trust design, supporting multiple deployment environments (firmware/VM/cloud native cluster).
48
- The [ APIs] ( common/python/cctrusted_base /api.py ) are designed to be vendor agnostic and TCG compliant APIs. The APIs will keep evolving on demand.
47
+ Evidence APIs aims to collect confidential primitives (i.e., measurement, event log, quote) for zero-trust design, supporting multiple deployment environments (firmware/VM/cloud native cluster).
48
+ The [ APIs] ( common/python/evidence_api /api.py ) are designed to be vendor agnostic and TCG compliant APIs. The APIs will keep evolving on demand.
49
49
50
50
| API | Description | Parameters | Response |
51
51
| --- | ------------- | ----- | ----- |
@@ -65,7 +65,7 @@ Choose correct SDK according to your environment. Installation guide can be foun
65
65
| --- | --------------- | -- |
66
66
| Firmware SDK | Firmware Application | |
67
67
| [ VM SDK] ( https://github.com/cc-api/cc-trusted-vmsdk ) | Confidential Virtual Machine | [ Guide] ( https://github.com/cc-api/cc-trusted-vmsdk/blob/main/README.md ) |
68
- | [ Confidential Cloud Native Primitives (CCNP )] ( https://github.com/cc-api/confidential-cloud-native-primitives ) | Confidential Cluster/Container | [ Guide] ( https://github.com/cc-api/confidential-cloud-native-primitives/blob/main/deployment/README.md ) |
68
+ | [ Container Integrity Measurement Agent (CIMA )] ( https://github.com/cc-api/container-integrity-measurement-agent ) | Confidential Cluster/Container | [ Guide] ( https://github.com/cc-api/confidential-cloud-native-primitives/blob/main/deployment/README.md ) |
69
69
70
70
## 5. How to use the APIs
71
71
@@ -172,27 +172,27 @@ cctrusted.cvm DEBUG Successful parse TDREPORT.
172
172
cctrusted.cvm INFO Using report data directly to generate quote
173
173
cctrusted.cvm DEBUG Successful open device node /dev/tdx_guest
174
174
cctrusted.cvm DEBUG Successful get Quote from /dev/tdx_guest.
175
- cctrusted_base .tdx.quote INFO ======================================
176
- cctrusted_base .tdx.quote INFO TD Quote
177
- cctrusted_base .tdx.quote INFO ======================================
178
- cctrusted_base .tdx.quote INFO TD Quote Header:
179
- cctrusted_base .binaryblob INFO 00000000 04 00 02 00 81 00 00 00 00 00 00 00 93 9A 72 33 ..............r3
180
- cctrusted_base .binaryblob INFO 00000010 F7 9C 4C A9 94 0A 0D B3 95 7F 06 07 C6 0E 85 25 ..L............%
181
- cctrusted_base .binaryblob INFO 00000020 C8 09 3C 0E A0 64 EF F1 29 6B 85 83 00 00 00 00 ..<..d..)k......
182
- cctrusted_base .tdx.quote INFO TD Quote Body:
183
- cctrusted_base .binaryblob INFO 00000000 04 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
184
- cctrusted_base .binaryblob INFO 00000010 97 90 D8 9A 10 21 0E C6 96 8A 77 3C EE 2C A0 5B .....!....w<.,.[
185
- cctrusted_base .binaryblob INFO 00000020 5A A9 73 09 F3 67 27 A9 68 52 7B E4 60 6F C1 9E Z.s..g'.hR{.`o..
175
+ evidence_api .tdx.quote INFO ======================================
176
+ evidence_api .tdx.quote INFO TD Quote
177
+ evidence_api .tdx.quote INFO ======================================
178
+ evidence_api .tdx.quote INFO TD Quote Header:
179
+ evidence_api .binaryblob INFO 00000000 04 00 02 00 81 00 00 00 00 00 00 00 93 9A 72 33 ..............r3
180
+ evidence_api .binaryblob INFO 00000010 F7 9C 4C A9 94 0A 0D B3 95 7F 06 07 C6 0E 85 25 ..L............%
181
+ evidence_api .binaryblob INFO 00000020 C8 09 3C 0E A0 64 EF F1 29 6B 85 83 00 00 00 00 ..<..d..)k......
182
+ evidence_api .tdx.quote INFO TD Quote Body:
183
+ evidence_api .binaryblob INFO 00000000 04 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
184
+ evidence_api .binaryblob INFO 00000010 97 90 D8 9A 10 21 0E C6 96 8A 77 3C EE 2C A0 5B .....!....w<.,.[
185
+ evidence_api .binaryblob INFO 00000020 5A A9 73 09 F3 67 27 A9 68 52 7B E4 60 6F C1 9E Z.s..g'.hR{.`o..
186
186
...
187
- cctrusted_base .binaryblob INFO 00000230 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
188
- cctrusted_base .binaryblob INFO 00000240 00 00 00 00 00 00 00 00 ........
189
- cctrusted_base .tdx.quote INFO TD Quote Signature:
190
- cctrusted_base .binaryblob INFO 00000000 16 1F E4 F6 8C 05 D4 8F E2 EB EB C8 32 1A CE 6C ............2..l
191
- cctrusted_base .binaryblob INFO 00000010 90 2A B5 EA 74 F5 4C 4D A2 6A 30 AC 5C A5 13 84 .*..t.LM.j0.\...
192
- cctrusted_base .binaryblob INFO 00000020 3D CB A2 31 20 43 8C 38 63 3D EE D1 7F B4 9F B5 =..1 C.8c=......
187
+ evidence_api .binaryblob INFO 00000230 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
188
+ evidence_api .binaryblob INFO 00000240 00 00 00 00 00 00 00 00 ........
189
+ evidence_api .tdx.quote INFO TD Quote Signature:
190
+ evidence_api .binaryblob INFO 00000000 16 1F E4 F6 8C 05 D4 8F E2 EB EB C8 32 1A CE 6C ............2..l
191
+ evidence_api .binaryblob INFO 00000010 90 2A B5 EA 74 F5 4C 4D A2 6A 30 AC 5C A5 13 84 .*..t.LM.j0.\...
192
+ evidence_api .binaryblob INFO 00000020 3D CB A2 31 20 43 8C 38 63 3D EE D1 7F B4 9F B5 =..1 C.8c=......
193
193
...
194
- cctrusted_base .binaryblob INFO 000010D0 44 20 43 45 52 54 49 46 49 43 41 54 45 2D 2D 2D D CERTIFICATE---
195
- cctrusted_base .binaryblob INFO 000010E0 2D 2D 0A 00 --..
194
+ evidence_api .binaryblob INFO 000010D0 44 20 43 45 52 54 49 46 49 43 41 54 45 2D 2D 2D D CERTIFICATE---
195
+ evidence_api .binaryblob INFO 000010E0 2D 2D 0A 00 --..
196
196
```
197
197
198
198
### 5.3 Sample of ` get_cc_eventlog ` API
0 commit comments