A interface é Seal(key, nonce, plaintext, aad) → ciphertext ‖ tag e Open(key, nonce, ciphertext ‖ tag, aad) → plaintext or failure; a descriptografia não retorna absolutamente nada quando a verificação da tag falha. AEADs padrão: AES-GCM, ChaCha20-Poly1305, AES-CCM, AES-GCM-SIV (RFC 8452) e AES-OCB (RFC 7253), todos com tags de 128 bits no uso comum.
A regra do nonce decide a segurança: a maioria dos AEADs exige um nonce que nunca se repita com a mesma chave, e uma repetição no AES-GCM ou no ChaCha20-Poly1305 revela o XOR dos textos claros e permite falsificações. Use contadores ou nonces aleatórios longos (o XChaCha20-Poly1305 tem 192 bits), respeite os limites de uso da chave ou escolha um modo resistente a uso indevido, como o AES-GCM-SIV.
O TLS 1.3 só usa cipher suites AEAD; a criptografia de conteúdo do JWE (A128GCM, A256GCM, A128CBC-HS256), o HPKE, o age, os tokens PASETO do tipo local, o QUIC e o SSH (chacha20-poly1305@openssh.com, aes256-gcm@openssh.com) são todos construídos sobre AEADs.