klyn.cryptography.Cipher.aesEncrypt
method
public static aesEncrypt(plainText as String, key as String, mode as String = "GCM", keyEncoding as String = "base64", iv as String = null, ivEncoding as String = "base64", aad as String = null) as AESCipherText throws CryptoException:
Description

Encrypts text with AES.

Supported modes are GCM, CBC and CTR.

Defaults are optimized for the common case:

  • mode = "GCM"
  • keyEncoding = "base64" so it works directly with KeyGenerator
  • random IV generation when iv is omitted
Parameters
  • plainText Source text interpreted as UTF-8.
  • key AES key material.
  • mode AES mode: `GCM`, `CBC` or `CTR`.
  • keyEncoding Key encoding: `base64`, `base64url`, `hex` or `utf8`.
  • iv Optional IV/nonce.
  • ivEncoding IV encoding when `iv` is provided.
  • aad Optional additional authenticated data for `GCM`.
Returns

Structured AES payload.

Throws
  • CryptoException when the inputs are invalid. ```klyn import klyn.cryptography key = AESKeyGenerator().generateKey() payload = Cipher.aesEncrypt("hello", key) print(payload.cipherTextBase64) ```