

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á.

# função AES\$1ENCRYPT
<a name="AES_ENCRYPT"></a>

A função AES\$1ENCRYPT é usada para criptografar dados usando o algoritmo Advanced Encryption Standard (AES).

## Sintaxe
<a name="AES_ENCRYPT-syntax"></a>

```
aes_encrypt(expr, key[, mode[, padding[, iv[, aad]]]])
```

## Argumentos
<a name="AES_ENCRYPT-arguments"></a>

 *expr*   
O valor binário a ser criptografado.

 *chave*   
A senha a ser usada para criptografar os dados.  
Comprimentos de chave de 16, 24 e 32 bits são suportados.

 *modo*   
Especifica qual modo de criptografia de bloco deve ser usado para criptografar mensagens.   
Modos válidos: ECB (eletrônico CodeBook), GCM (modo Galois/Counter), CBC (Cipher-Block Chaining).

 *acolchoamento*   
Especifica como preencher mensagens cujo tamanho não seja múltiplo do tamanho do bloco.   
Valores válidos: PKCS, NONE, DEFAULT.   
O preenchimento DEFAULT significa PKCS (Padrões de Criptografia de Chave Pública) para ECB, NONE para GCM e PKCS para CBC.  
As combinações suportadas de (*modo*, *preenchimento*) são ('ECB', 'PKCS'), ('GCM', 'NONE') e ('CBC', 'PKCS').

 *iv*   
Vetor de inicialização opcional (IV). Compatível apenas com os modos CBC e GCM.   
Valores válidos: 12 bytes para GCM e 16 bytes para CBC.

 *anúncio*   
Dados autenticados adicionais (AAD) opcionais. Compatível apenas com o modo GCM. Isso pode ser qualquer entrada de formato livre e deve ser fornecido tanto para criptografia quanto para decodificação.

## Tipo de retorno
<a name="AES_ENCRYPT-returm-type"></a>

A função AES\$1ENCRYPT retorna um valor criptografado de *expr* usando AES em determinado modo com o preenchimento especificado.

## Exemplos
<a name="AES_ENCRYPT-example"></a>

O exemplo a seguir demonstra como usar a função AES\$1ENCRYPT do Spark SQL para criptografar com segurança uma sequência de dados (nesse caso, a palavra “Spark”) usando uma chave de criptografia especificada. O texto cifrado resultante é então codificado em Base64 para facilitar o armazenamento ou a transmissão.

```
SELECT base64(aes_encrypt('Spark', 'abcdefghijklmnop'));
  4A5jOAh9FNGwoMeuJukfllrLdHEZxA2DyuSQAWz77dfn
```

O exemplo a seguir demonstra como usar a função AES\$1ENCRYPT do Spark SQL para criptografar com segurança uma sequência de dados (nesse caso, a palavra “Spark”) usando uma chave de criptografia especificada. O texto cifrado resultante é então representado em formato hexadecimal, o que pode ser útil para tarefas como armazenamento, transmissão ou depuração de dados.

```
SELECT hex(aes_encrypt('Spark', '0000111122223333'));
 83F16B2AA704794132802D248E6BFD4E380078182D1544813898AC97E709B28A94
```

O exemplo a seguir demonstra como usar a função AES\$1ENCRYPT do Spark SQL para criptografar com segurança uma sequência de dados (nesse caso, “Spark SQL”) usando uma chave de criptografia, um modo de criptografia e um modo de preenchimento especificados. O texto cifrado resultante é então codificado em Base64 para facilitar o armazenamento ou a transmissão.

```
SELECT base64(aes_encrypt('Spark SQL', '1234567890abcdef', 'ECB', 'PKCS'));
 3lmwu+Mw0H3fi5NDvcu9lg==
```