

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Fungsi AES\$1ENCRYPT
<a name="AES_ENCRYPT"></a>

Fungsi AES\$1ENCRYPT digunakan untuk mengenkripsi data menggunakan algoritma Advanced Encryption Standard (AES).

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

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

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

 *expr*   
Nilai biner untuk mengenkripsi.

 *kunci*   
Passphrase yang digunakan untuk mengenkripsi data.  
Panjang kunci 16, 24 dan 32 bit didukung.

 *modus*   
Menentukan modus blok cipher yang harus digunakan untuk mengenkripsi pesan.   
Mode yang valid: ECB (Elektronik CodeBook), GCM (Mode Galois/Penghitung), CBC (Rantai Blok Sandi).

 *bantalan*   
Menentukan cara pad pesan yang panjangnya bukan kelipatan dari ukuran blok.   
Nilai yang valid: PKCS, NONE, DEFAULT.   
Padding DEFAULT berarti PKCS (Standar Kriptografi Kunci Publik) untuk ECB, NONE untuk GCM dan PKCS untuk CBC.  
Kombinasi yang didukung dari (*mode*, *padding*) adalah ('ECB', 'PKCS'), ('GCM', 'NONE') dan ('CBC', 'PKCS').

 *iv*   
Vektor inisialisasi opsional (IV). Hanya didukung untuk mode CBC dan GCM.   
Nilai yang valid: panjang 12-byte untuk GCM dan 16 byte untuk CBC.

 *aad*   
Data otentikasi tambahan opsional (AAD). Hanya didukung untuk mode GCM. Ini dapat berupa input bentuk bebas dan harus disediakan untuk enkripsi dan dekripsi.

## Jenis pengembalian
<a name="AES_ENCRYPT-returm-type"></a>

Fungsi AES\$1ENCRYPT mengembalikan nilai *expr* terenkripsi menggunakan AES dalam mode yang diberikan dengan padding yang ditentukan.

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

Contoh berikut menunjukkan cara menggunakan fungsi Spark SQL AES\$1ENCRYPT untuk mengenkripsi string data dengan aman (dalam hal ini, kata “Spark”) menggunakan kunci enkripsi tertentu. Ciphertext yang dihasilkan kemudian dikodekan Base64 untuk membuatnya lebih mudah untuk menyimpan atau mengirimkan.

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

Contoh berikut menunjukkan cara menggunakan fungsi Spark SQL AES\$1ENCRYPT untuk mengenkripsi string data dengan aman (dalam hal ini, kata “Spark”) menggunakan kunci enkripsi tertentu. Ciphertext yang dihasilkan kemudian direpresentasikan dalam format heksadesimal, yang dapat berguna untuk tugas-tugas seperti penyimpanan data, transmisi, atau debugging.

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

Contoh berikut menunjukkan cara menggunakan fungsi Spark SQL AES\$1ENCRYPT untuk mengenkripsi string data dengan aman (dalam hal ini, “Spark SQL”) menggunakan kunci enkripsi tertentu, mode enkripsi, dan mode padding. Ciphertext yang dihasilkan kemudian dikodekan Base64 untuk membuatnya lebih mudah untuk menyimpan atau mengirimkan.

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