Tracking: AWS EC2 NitroTPM attestation platform support
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 20/100
Línea de trabajo
Comienza revisando Dstack-TEE/dstack#753 y Dstack-TEE/meta-dstack#79, incluidos docs/aws-attested-instance-security-evaluation.md y los resultados de CI indicados. Se considera terminado cuando primero se haya fusionado #753, se haya actualizado el submódulo para meta#79 y se hayan descartado las alertas de CodeQL preexistentes especificadas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Tracks the two PRs that add the AWS EC2 NitroTPM attestation platform to dstack (account-admin-untrusted threat model).
PRs
- Dstack-TEE/dstack#753 — core implementation: NitroTPM attestation-document parsing/verification, PCR14 launch + PCR23 runtime measurement, KMS key release without AWS KMS, verifier +
auth-simple/auth-ethsupport, and SDK updates. Basemaster, one squashed commit (504e3420). - Dstack-TEE/meta-dstack#79 — Yocto layer: the
dstack-awskernel fragment (NVMe/ENA root, EFI/GPT, serial console, TPM CRB) and thetpm2-tssguest build dep. Basemain(a1aa04e). Depends on #753.
Status
Both are rebased onto their latest base and MERGEABLE. On #753 every functional CI job is green (rust-checks, sdk-tests, kms, verifier, gateway, prek, reuse-lint); meta#79 CI is green.
Design notes for reviewers
- Integrates like AMD SEV-SNP, not with bespoke surface. A verified NitroTPM attestation has no TDX/SNP-style TCB surface, so it is normalized to
tcbStatus = "UpToDate"and passes the unchanged on-chain contract — no AWS-specific on-chain field. - AWS key release is opt-in:
aws_nitro_tpm_key_release = falseby default inkms.toml, mirroringsev_snp_key_release(fail-closed for the new, weaker mode). - App is trusted post-launch, exactly as on TDX/SNP — no compose-security filter or device sandbox; integrity rests on measurement + non-resettable PCR14. Rationale in
docs/aws-attested-instance-security-evaluation.md. GetPlatformwas folded intoAppInfo.attestationrather than adding a new endpoint.
Before merge
- Merge order: #753 first, then bump the submodule and merge meta#79.
- Dismiss the CodeQL alerts flagged on #753's diff — they are pre-existing, in files this PR doesn't touch (surfaced only because the squashed diff is large). Notably
sodiumbox/src/lib.rs:62"hard-coded cryptographic value" is the HSalsa20 zero nonce, i.e. the correct NaClcrypto_boxconstruction (false positive); the rest are pre-existing inra-rpc,http-client, andsdk/go/ratls.
Follow-ups (post-merge, optional)
- Share the X25519+AES-GCM envelope (
encrypt_for_x25519_recipientin KMS +dh_decryptin the guest) via a small lib crate — deferred becausedstack-utilis a binary crate. - Confirm whether the
tpm2-tssbuild dep in meta#79 is actually needed (the guest drives the TPM via the in-treetpm2crate over/dev/tpmrm0).
- Lenguaje dominante
- Rust
- Estrellas
- 546
- Forks
- 96
- Merge medio
- 19 h 22 min
- PR fusionados (30 d)
- 109
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de Dstack-TEE/dstack
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 30/100
Dstack-TEE/dstack#1301 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 55/100
Dstack-TEE/dstack#1300 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
Dstack-TEE/dstack#1299 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
Dstack-TEE/dstack#1298 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
Dstack-TEE/dstack#1297 ·
Todos los issues de Dstack-TEE/dstack
Issues similares
-
risk:low runtime status:in-progress type:test
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
zeroclaw-labs/zeroclaw#11023 ·
-
good first issue refactor
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
EricSpencer00/Resilient#4835 · 1 comentario ·
-
agent:ready documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
cesarferreira/stax#890 ·
-
bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100