AES topic

Symmetric encryption: one key encrypts and decrypts.

Fortis.aes() opens an AesBuilder, and the mode you pick decides the type you get back. Block and stream modes produce an AesStandardCipher over an AesPayload; the authenticated modes (GCM, CCM) produce an AesAuthCipher over an AesAuthPayload, which carries the authentication tag alongside the ciphertext. The distinction is in the type, not in a runtime flag, so a mode that cannot authenticate never offers a tag to read.

Keys are FortisAesKey — 128, 192 or 256 bits, generated or restored from bytes, PEM or Base64. IVs and nonces are generated per operation and travel inside the payload, so there is no second value to store or transmit.

Classes

AesAuthCipher AES
A cipher for AES authenticated modes: AesMode.gcm, AesMode.ccm.
AesAuthModeBuilder AES
Sealed base for authenticated-mode builders (AesMode.gcm, AesMode.ccm).
AesAuthPayload AES
The output of an AES authenticated encryption operation (AesMode.gcm, AesMode.ccm).
AesBuilder AES
Builder for AES key generation and cipher configuration.
AesCbcModeBuilder AES
Builder for AesMode.cbc. Exposes padding.
AesCcmModeBuilder AES
Builder for AesMode.ccm. Exposes aad, ivSize, and tagSize.
AesCipher AES
A symmetric AES cipher that encrypts and decrypts with the same key.
AesEcbCipher AES
A cipher for AES in AesMode.ecb mode.
AesEcbModeBuilder AES
Builder for AesMode.ecb. Exposes padding.
AesGcmModeBuilder AES
Builder for AesMode.gcm. Exposes aad and ivSize.
AesModeBuilder AES
Sealed base for mode-specific AES builders.
AesPayload AES
The output of an AES non-authenticated encryption operation (AesMode.cbc, AesMode.ctr, AesMode.cfb, AesMode.ofb).
AesStandardCipher AES
A cipher for AES modes that use an IV but do not authenticate: AesMode.cbc, AesMode.ctr, AesMode.cfb, AesMode.ofb.
AesStreamModeBuilder AES
Builder for stream modes (AesMode.ctr, AesMode.cfb, AesMode.ofb). No user-configurable padding — stream modes don't use padding.
FortisAesKey AES
An AES symmetric key used for both encryption and decryption.

Enums

AesMode AES
The AES cipher mode of operation.
AesPadding AES
The padding scheme for AES block modes (AesMode.ecb, AesMode.cbc).