AEAD, o Authenticated Encryption with Associated Data, es un esquema de cifrado simétrico que combina la confidencialidad (cifrado) con la integridad y autenticidad (MAC - Message Authentication Code) en una única operación criptográfica. A diferencia del cifrado meramente confidencial, AEAD no solo protege los datos para que no puedan ser leídos por terceros no autorizados, sino que también asegura que los datos no han sido alterados y provienen de una fuente auténtica. Además, permite incluir 'Associated Data' (AD) —datos adicionales que no se cifran, pero cuya integridad y autenticidad también son verificadas, lo cual es útil para metadatos como encabezados de paquetes o direcciones IP.
En el mundo real, AEAD es el estándar de facto para la mayoría de los protocolos de comunicación seguros modernos. Ejemplos concretos incluyen: TLS 1.2 y 1.3, que utilizan suites de cifrado AEAD como AES-GCM (Galois/Counter Mode) y ChaCha20-Poly1305 para proteger el tráfico web. IPsec, el conjunto de protocolos para asegurar las comunicaciones IP, también emplea modos AEAD. Sistemas de almacenamiento en la nube, bases de datos y sistemas operativos utilizan AEAD para cifrar datos en reposo y en tránsito, garantizando que la información sensible no solo sea confidencial sino también íntegra y auténtica. Por ejemplo, AWS KMS y Azure Key Vault soportan operaciones con AEAD.
Para un Arquitecto de Sistemas, la elección de un esquema AEAD es crucial para la postura de seguridad de cualquier aplicación o infraestructura distribuida. Su importancia radica en que elimina la necesidad de implementar y gestionar por separado el cifrado y la autenticación, reduciendo la superficie de error y vulnerabilidades comunes (como ataques de relleno o manipulación de texto cifrado). Al seleccionar AEAD, un arquitecto debe considerar el rendimiento (throughput y latencia), la resistencia criptográfica del algoritmo subyacente (ej. AES-GCM vs. ChaCha20-Poly1305), y la disponibilidad de implementaciones seguras en las bibliotecas criptográficas de su stack tecnológico. La capacidad de proteger 'Associated Data' es un factor clave para la seguridad de protocolos, permitiendo incluir metadatos críticos en la verificación de integridad sin necesidad de cifrarlos, optimizando el rendimiento y simplificando el diseño de protocolos seguros.