Commit d8f4871
committed
feat: AWS EC2 NitroTPM attestation with TDX-aligned measurement model
Add AWS EC2 NitroTPM as a first-class attestation platform under the
account-admin-untrusted threat model, integrated like SEV-SNP rather than
with AWS-specific auth surface.
Measurement model (aligned with bare TDX):
- Boot: PCR4/7/12 for AMI/UKI identity
- Config: shared-disk MrConfigV3 measured into PCR8 (no UKI cmdline pin)
- Events: all dstack events extend SHA384 PCR14 (RTMR3 analogue; no PCR23
launch/runtime split)
- os_image_hash: prefer unified sha256(sha256sum.txt) via
VmConfig.aws_measurement + reference PCR bind; legacy PCR-hash fallback
- KMS GetAppKey: RA-TLS only (api_version=1); no recipient encryption
- GetQuote/Attest: report_data only (no platform attestation_options)
- check_kms / auth-simple: pin early mrAggregated only (boot-mr-done)
Includes Yocto AWS kernel/image support, verifier/KMS paths, SDKs, docs,
and release/smoke helpers. Empty TPM key-provider id (already on master)
keeps early MR precomputable.1 parent f2ff8cd commit d8f4871
78 files changed
Lines changed: 7795 additions & 444 deletions
File tree
- .agent
- docs
- security
- tutorials
- dstack
- crates/dstack-auth/src
- dstack-attest
- src
- dstack-types/src
- dstack-util
- src
- system_setup
- guest-agent-simulator/src
- guest-agent
- rpc/proto
- src
- kms
- auth-simple
- rpc/proto
- src
- main_service
- nsm-qvl
- src
- tests
- ra-tls
- src
- tpm-attest
- src
- tests
- tpm-qvl/src
- tpm-types/src
- tpm2/src
- verifier
- src
- vmm/src
- os/yocto
- layers/meta-dstack
- recipes-core
- dstack-guest
- images
- recipes-kernel/linux
- files
- tools
- aws
- sdk
- curl
- go/dstack
- js/src
- python/src/dstack_sdk
- rust/types/src
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
Large diffs are not rendered by default.
0 commit comments