

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Referência de dados autenticados adicionais (AAD) do corpo para o AWS Encryption SDK
<a name="body-aad-reference"></a>


|  | 
| --- |
|  As informações nesta página são uma referência para criar sua própria biblioteca de criptografia compatível com o AWS Encryption SDK. Se você não estiver criando sua própria biblioteca de criptografia compatível, provavelmente não precisará dessas informações. Para usar o AWS Encryption SDK em uma das linguagens de programação suportadas, consulte[Linguagens de programação](programming-languages.md). Para a especificação que define os elementos de uma AWS Encryption SDK implementação adequada, consulte a [AWS Encryption SDK Especificação](https://github.com/awslabs/aws-encryption-sdk-specification/) em GitHub.  | 

Você deve fornecer dados autenticados adicionais (AAD) para o [algoritmo AES-GCM](algorithms-reference.md) para cada operação de criptografia. Isso é verdadeiro para [dados de corpo](message-format.md#body-structure) com e sem moldura. Para obter mais informações sobre o AAD e como ele é usado no Galois/Counter Modo (GCM), consulte [Recomendações para modos de operação com cifra de bloco: Galois/Counter Modo (GCM) e GMAC](https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38d.pdf).

A tabela a seguir descreve os campos que formam o AAD do corpo. Os bytes são anexados na ordem mostrada.


**Estrutura do AAD do corpo**  

| Campo | Tamanho, em bytes | 
| --- | --- | 
| [Message ID](#body-aad-message-id) | 16 | 
| [Body AAD Content](#body-aad-content) | Variável. Consulte Conteúdo do AAD do copo na lista a seguir. | 
| [Sequence Number](#body-aad-sequence-number) | 4 | 
| [Content Length](#body-aad-content-length) | 8 | 

**ID da mensagem**  
O mesmo valor de [Message ID](message-format.md#header-message-id) definido no cabeçalho da mensagem.

**Conteúdo corporal do AAD**  
Um valor codificado em UTF-8 determinado pelo tipo de dados de corpo usado.  
Para [dados sem moldura](message-format.md#body-no-framing), use o valor `AWSKMSEncryptionClient Single Block`.  
Para molduras normais em [dados com moldura](message-format.md#body-framing), use o valor `AWSKMSEncryptionClient Frame`.  
Para a moldura final nos [dados com moldura](message-format.md#body-framing), use o valor `AWSKMSEncryptionClient Final Frame`.

**Número de sequência**  
Um valor de 4 bytes interpretado como um inteiro não assinado de 32 bits.  
Para [dados com moldura](message-format.md#body-framing), esse é o número sequencial da moldura.  
Para [dados sem moldura](message-format.md#body-no-framing), use o valor 1, codificado como os 4 bytes `00 00 00 01` em notação hexadecimal.

**Comprimento do conteúdo**  
O tamanho, em bytes, do texto não criptografado fornecido ao algoritmo para criptografia. É um valor de 8 bytes interpretado como um inteiro não assinado de 64 bits.