Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ADR 0002: AWS Nitro Enclaves, TLS-in-Enclave, us-east-1

  • Status: Accepted
  • Date: 2026-08-09

Context

Maskura’s core value proposition is operator-resistant confidentiality: plaintext and secrets must be hidden from Maskura operators and cloud host administrators. The trusted execution environment must:

  • Not expose plaintext to the parent EC2 instance.
  • Terminate TLS inside the enclave (parent is an opaque byte relay).
  • Support remote attestation for customer verification.
  • Be available in a region with reasonable latency for US customers.

Decision

Use AWS Nitro Enclaves with TLS termination inside the enclave (ACM for Nitro Enclaves with NGINX/PKCS#11). Deploy in us-east-1 initially. Parent EC2 runs a minimal TCP/vsock relay that never sees plaintext. KMS enforces PCR-based attestation conditions before releasing gateway secrets.

Consequences

  • No Cloudflare proxying for data-plane traffic (would expose plaintext outside the enclave).
  • ARM Graviton instances (m7g.xlarge) preferred for cost/performance; validate arm64 Wasmtime before provisioning.
  • Local development uses a virtualized parent/enclave pair with clearly marked dev attestation roots.
  • Documentation must record PCRs and release manifests for customer verification via maskura.