# A few notes on AWS Nitro Enclaves: KMS integration

DevFeed: [A few notes on AWS Nitro Enclaves: KMS integration](<https://devfeed.tech/articles/a-few-notes-on-aws-nitro-enclaves-kms-integration-7661.md>)

Original publisher: [Read original article](<https://blog.trailofbits.com/2026/08/05/a-few-notes-on-aws-nitro-enclaves-kms-integration/>)

Author: "Paweł Płatek"

Published: 2026-08-05T11:00:00Z

Content type: article

Language: en

Sources: [The Trail of Bits Blog](<https://devfeed.tech/sources/the-trail-of-bits-blog.md>), [The Trail of Bits Blog](<https://devfeed.tech/sources/the-trail-of-bits-blog-2.md>)

Topics: [Cryptography](<https://devfeed.tech/topics/cryptography.md>), [AWS IAM](<https://devfeed.tech/topics/aws-iam.md>)

Tags: [application-security](<https://devfeed.tech/tags/application-security.md>), [aws](<https://devfeed.tech/tags/aws.md>), [cryptographic](<https://devfeed.tech/tags/cryptographic.md>), [cryptography](<https://devfeed.tech/tags/cryptography.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [iam](<https://devfeed.tech/tags/iam.md>), [integration](<https://devfeed.tech/tags/integration.md>), [policy](<https://devfeed.tech/tags/policy.md>), [trusted-execution-environment](<https://devfeed.tech/tags/trusted-execution-environment.md>)

## AI overview

The article examines security and operational risks in integrating AWS Nitro Enclaves with KMS, including attestation, key policies, and encrypted key handling.

## Source excerpt

Nitro Enclaves and Key Management Service (KMS) feel like a natural fit: since the KMS can verify attestation documents generated by the enclaves, developers can offload key management tasks from their applications to the AWS-managed service. But integrating an external service with your trusted enclaves comes with new threats, even if that service comes from the same provider. In this blog post--the third in our series on Nitro Enclaves, following our posts on attack surface and images and attestation--we catalog passive and active attack classes against the enclave-KMS communication channel, and cover the operational risks that persist even when the cryptography is correct. Intro to KMS The KMS is an AWS service that provides a unified public API for creating and managing keys backed by HSMs to the broader AWS ecosystem. There are three main key types supported by KMS that devs need to care about: Customer-managed keys (CMK) Data keys (DK, symmetric) Data key pairs (asymmetric) CMKs never leave KMS. You request KMS to perform cryptographic operations (like encryption or signing) for you. Data keys and key pairs are generated in KMS, are not stored in KMS, and are intended for programmatic uses. For symmetric keys, the KMS gives you a plaintext key and the same key encrypted to CMK. Your application performs encryptions, removes the plaintext key, and stores the key encrypted to a CMK along the ciphertexts; this pattern is called envelope encryption. For asymmetric keys, the KMS gives you a plaintext key pair and the private key encrypted to CMK. Your application creates signatures or encrypts data, deletes the private key, and keeps the public key and encrypted private key (along with signatures/ciphertexts). Both types of data keys can be used with Decrypt operation to get plaintext keys again. S t o r a g e s t { o E r _ e d ( k E , _ C d } k , C ) E n c l a v G e e { n d e k C D p r , = e l a E e c a t _ n r i e d c y n D k ( p t a = d t e t e k ( { x a n , c d t