El cifrado autenticado (AE) es cualquier esquema de cifrado que garantiza simultáneamente la confidencialidad de los datos (también conocida como privacidad: el mensaje cifrado es imposible de entender sin conocer una clave secreta [ 1 ] ) y la autenticidad (en otras palabras, es infalsificable: [ 2 ] el mensaje cifrado incluye una etiqueta de autenticación que el remitente solo puede calcular si posee la clave secreta [ 1 ] ). Ejemplos de modos de cifrado que proporcionan AE son GCM y CCM . [ 1 ]
Muchos (pero no todos) los esquemas AE permiten que el mensaje contenga "datos asociados" (AD) que no se consideran confidenciales, pero sí están protegidos en cuanto a su integridad (es decir, legibles, pero a prueba de manipulaciones ). Un ejemplo típico es la cabecera de un paquete de red que contiene su dirección de destino. Para enrutar correctamente el paquete, todos los nodos intermedios en la ruta del mensaje necesitan conocer el destino, pero por razones de seguridad no pueden poseer la clave secreta. [ 3 ] Los esquemas que permiten datos asociados proporcionan cifrado autenticado con datos asociados , o AEAD . [ 3 ]
Interfaz de programación
Una interfaz de programación típica para una implementación de AE proporciona las siguientes funciones:
- Cifrado
- Entrada: texto plano , clave y, opcionalmente, un encabezado (también conocido como datos autenticados adicionales , AAD , o datos asociados , AD ) en texto plano que no se cifrará, pero que estará cubierto por la protección de autenticidad.
- Salida: texto cifrado y etiqueta de autenticación ( código de autenticación de mensajes o MAC).
- Descifrado
- Entrada: texto cifrado , clave , etiqueta de autenticación y, opcionalmente, un encabezado (si se utiliza durante el cifrado).
- Salida: texto plano , o un error si la etiqueta de autenticación no coincide con el texto cifrado o el encabezado proporcionados .
La sección de encabezado tiene como objetivo proporcionar autenticidad y protección de la integridad para los metadatos de red o almacenamiento para los que la confidencialidad no es necesaria, pero se desea la autenticidad.
Historia
La necesidad de un cifrado autenticado surgió de la observación de que combinar de forma segura los modos de operación de cifrado por bloques de confidencialidad y autenticación por separado podía ser propenso a errores y difícil. [ 4 ] [ 5 ] Esto fue confirmado por una serie de ataques prácticos introducidos en protocolos y aplicaciones de producción debido a una implementación incorrecta o a la falta de autenticación. [ 6 ]
Alrededor del año 2000, surgieron varios esfuerzos en torno a la noción de estandarizar modos que aseguraran una implementación correcta. En particular, el fuerte interés en modos potencialmente seguros surgió a raíz de la publicación de los modos CBC consciente de la integridad y paralelizable consciente de la integridad , IAPM, de Charanjit Jutla [ 7 ] en 2000 (véase OCB y cronología [ 8 ] ). Seis modos de cifrado autenticado diferentes (a saber, modo de libro de códigos de desplazamiento 2.0 , OCB 2.0; Key Wrap ; contador con CBC-MAC , CCM; cifrar, autenticar y luego traducir , EAX; cifrar y luego MAC , EtM; y modo Galois/contador , GCM) se estandarizaron en ISO/IEC 19772:2009. [ 9 ] Se desarrollaron más métodos de cifrado autenticado en respuesta a una solicitud del NIST . [ 10 ] Las funciones Sponge se pueden usar en modo dúplex para proporcionar cifrado autenticado. [ 11 ]
Bellare y Namprempre (2000) analizaron tres composiciones de primitivas de cifrado y MAC, y demostraron que cifrar un mensaje y posteriormente aplicar un MAC al texto cifrado (el enfoque de cifrado y posterior MAC ) implica seguridad contra un ataque adaptativo de texto cifrado elegido , siempre que ambas funciones cumplan las propiedades mínimas requeridas. Katz y Yung investigaron la noción bajo el nombre de "cifrado infalsificable" y demostraron que implica seguridad contra ataques de texto cifrado elegido. [ 12 ]
En 2013, se anunció el concurso CAESAR para fomentar el diseño de modos de cifrado autenticados. [ 13 ]
En 2015, ChaCha20-Poly1305 se añadió como una construcción AE alternativa a GCM en los protocolos IETF .
Variantes
Cifrado autenticado con datos asociados
El cifrado autenticado con datos asociados (AEAD) es una variante del cifrado autenticado (AE) que permite que el mensaje incluya "datos asociados" (AD, información adicional no confidencial, también conocida como "datos autenticados adicionales", AAD). Un destinatario puede verificar la integridad tanto de los datos asociados como de la información confidencial en un mensaje. AD es útil, por ejemplo, en paquetes de red donde la cabecera debe ser visible para el enrutamiento , pero la carga útil debe ser confidencial, y ambas requieren integridad y autenticidad . El concepto de AEAD fue formalizado por Rogaway (2002). [ 3 ]
AEAD de confirmación de claves
AE fue diseñado originalmente principalmente para proporcionar la integridad del texto cifrado: la validación exitosa de una etiqueta de autenticación por parte de Alice usando su clave simétrica K A indica que el mensaje no fue manipulado por un adversario Mallory que no posee K A . Los esquemas AE generalmente no proporcionan el compromiso de clave , una garantía de que el descifrado fallaría para cualquier otra clave. [ 14 ] A partir de 2021, la mayoría de los esquemas AE existentes (incluido el muy popular GCM) permiten que algunos mensajes se descifren sin un error usando más que solo la (correcta) K A ; si bien el texto plano descifrado usando una segunda clave (incorrecta) K M será incorrecto, la etiqueta de autenticación aún coincidiría con el nuevo texto plano. [ 15 ] Dado que crear un mensaje con tal propiedad requiere que Mallory ya posea tanto K A como K M , el problema podría parecer de interés puramente académico. [ 16 ] Sin embargo, en circunstancias especiales, se pueden realizar ataques prácticos contra implementaciones vulnerables. Por ejemplo, si un protocolo de autenticación de identidad se basa en el descifrado exitoso de un mensaje que utiliza una clave basada en contraseña, la capacidad de Mallory para crear un único mensaje que se descifre con éxito utilizando 1000 claves diferentes asociadas a contraseñas potenciales débiles y, por lo tanto, conocidas por ella, puede acelerar su búsqueda de contraseñas en un factor de casi 1000. Para que este ataque de diccionario tenga éxito, Mallory también necesita la capacidad de distinguir un descifrado exitoso por parte de Alice de uno fallido, debido, por ejemplo, a un diseño o implementación deficiente del protocolo que convierte al bando de Alice en un oráculo . Naturalmente, este ataque no se puede llevar a cabo en absoluto cuando las claves se generan aleatoriamente. [ 17 ]
El compromiso de clave fue estudiado originalmente en la década de 2010 por Abdalla et al. [ 18 ] y Farshim et al. [ 19 ] bajo el nombre de "cifrado robusto". [ 16 ] [ 20 ]
Para mitigar el ataque descrito anteriormente sin eliminar el "oráculo", se puede utilizar un AEAD de confirmación de clave que no permita la existencia de este tipo de mensajes manipulados. AEGIS es un ejemplo de AEAD de confirmación de clave rápido (si el conjunto de instrucciones AES está presente). [ 21 ] Es posible añadir la confirmación de clave a un esquema AEAD existente. [ 22 ] [ 23 ]
Cifrado autenticado resistente al uso indebido
El cifrado autenticado resistente al uso indebido (MRAE) tiene la propiedad adicional de que reutilizar el mismo nonce para varios mensajes no permite que un atacante recupere el texto plano. MRAE fue formalizado en 2006 por Phillip Rogaway y Thomas Shrimpton. [ 24 ] Un ejemplo de un algoritmo MRAE es AES-GCM-SIV .
Enfoques para el cifrado autenticado
Cifrado y luego MAC (EtM)

El texto plano se cifra primero y luego se genera un MAC basado en el texto cifrado resultante. El texto cifrado y su MAC se envían juntos. ETM es el método estándar según ISO/IEC 19772:2009. [ 9 ] Es el único método que puede alcanzar la definición más alta de seguridad en AE, pero esto solo se puede lograr cuando el MAC utilizado es "fuertemente infalsificable". [ 25 ]
IPSec adoptó EtM en 2005. [ 26 ] En noviembre de 2014, TLS y DTLS recibieron extensiones para EtM con RFC 7366. También existen varios conjuntos de cifrado EtM para SSHv2 (por ejemplo, hmac-sha1-etm@openssh.com).
Cifrado y MAC (E&M)

Se genera un MAC a partir del texto plano, y este se cifra sin el MAC. El MAC del texto plano y el texto cifrado se envían juntos. Se utiliza, por ejemplo, en SSH . [ 27 ] Aunque no se ha demostrado que el enfoque E&M sea fuertemente infalsificable en sí mismo, [ 25 ] es posible aplicar algunas modificaciones menores a SSH para hacerlo fuertemente infalsificable a pesar de dicho enfoque. [ 28 ]
MAC-luego-cifrado (MtE)

Se genera un MAC a partir del texto plano; luego, el texto plano y el MAC se cifran conjuntamente para producir un texto cifrado basado en ambos. El texto cifrado (que contiene un MAC cifrado) se envía. Hasta TLS 1.2, todos los conjuntos de cifrado SSL/TLS disponibles eran MtE. [ 29 ]
No se ha demostrado que MtE sea infalsificable en sí mismo. [ 25 ] Krawczyk demostró que la implementación de SSL/TLS es infalsificable , al mostrar que SSL/TLS era, de hecho, seguro debido a la codificación utilizada junto con el mecanismo MtE. [ 30 ] Sin embargo, la prueba de Krawczyk contiene suposiciones erróneas sobre la aleatoriedad del vector de inicialización (IV). El ataque BEAST de 2011 explotó el IV encadenado no aleatorio y rompió todos los algoritmos CBC en TLS 1.0 y versiones anteriores. [ 31 ]
Además, un análisis más profundo de SSL/TLS modeló la protección como MAC-luego-relleno-luego-cifrado, es decir, el texto plano se rellena primero hasta alcanzar el tamaño de bloque de la función de cifrado. Los errores de relleno a menudo dan lugar a errores detectables en el lado del receptor, lo que a su vez conduce a ataques de oráculo de relleno , como Lucky Thirteen .
Véase también
Referencias
- 1 2 3 Negro 2005 , pág. 1.
- ↑ Katz y Lindell 2020 , pág. 116.
- 1 2 3 Negro 2005 , pág. 2.
- ↑ M. Bellare; P. Rogaway; D. Wagner. "Un modo de cifrado autenticado convencional" (PDF) . NIST . Consultado el 12 de marzo de 2013.
Las personas habían tenido un desempeño bastante deficiente cuando intentaron combinar un esquema de cifrado tradicional (solo de privacidad) y un código de autenticación de mensajes (MAC).
- ↑ T. Kohno; J. Viega y D. Whiting. "El modo de cifrado autenticado CWC (datos asociados)" (PDF) . NIST . Consultado el 12 de marzo de 2013.
Es muy fácil combinar accidentalmente esquemas de cifrado seguros con MAC seguros y aun así obtener esquemas de cifrado autenticado inseguros.
- ↑ "Fallos de la criptografía de clave secreta" (PDF) . Daniel J. Bernstein. Archivado del original (PDF) el 18 de abril de 2013. Consultado el 12 de marzo de 2013 .
- ↑ Jutl, Charanjit S. (1 de agosto de 2000). "Modos de cifrado con integridad de mensaje casi libre" . Cryptology ePrint Archive: Informe 2000/039 . Actas de IACR EUROCRYPT 2001. IACR . Consultado el 16 de marzo de 2013 .
- ↑ T. Krovetz; P. Rogaway (01-03-2011). "El rendimiento del software de los modos de cifrado autenticado" (PDF) . Cifrado rápido de software 2011 (FSE 2011) . IACR .
- 1 2 "Tecnología de la información - Técnicas de seguridad - Cifrado autenticado" . 19772:2009 . ISO/IEC . Consultado el 12 de marzo de 2013 .
- ↑ "Desarrollo de modos de cifrado" . NIST . Consultado el 17 de abril de 2013 .
- ↑ El equipo de Keccak. "Duplexing The Sponge" (PDF) .
- ↑ Katz, J.; Yung, M. (2001). "Cifrado infalsificable y modos de operación seguros con texto cifrado elegido". En B. Schneier (ed.). Cifrado rápido de software (FSE): Actas de 2000. Lecture Notes in Computer Science. Vol. 1978. pp. 284–299 . doi : 10.1007/3-540-44706-7_20 . ISBN 978-3-540-41728-6.
- ↑ "CAESAR: Competencia para el cifrado autenticado: seguridad, aplicabilidad y robustez" . Consultado el 12 de marzo de 2013 .
- ^ Albertini y col. 2020 , págs. 1-2.
- ↑ "Las salamandras invisibles no son lo que piensas" . Dhole Moments . 10 de septiembre de 2024. Consultado el 21 de febrero de 2025 .
- ^ Albertini y cols. 2020 , pág. 2.
- ↑ Len, Julia; Grubbs, Paul; Ristenpart, Thomas (2021). Ataques de oráculo de particionamiento . USENET '21. págs. 195–212 .
- ↑ Abdalla, Bellare & Neven 2010 , págs .
- ^ Farshim y otros. 2013 , págs. 352–368.
- ^ Bellare y Hoang 2022 , pág. 5.
- ↑ Denis, Frank. "La familia AEGIS de algoritmos de cifrado autenticado" . cfrg.github.io .
- ↑ Gueron, Shay (2020). "Acuerdos AEAD de compromiso clave" (PDF) .
- ↑ poncho. "Key Committing AEADs" . Cryptography Stack Exchange . Consultado el 21 de febrero de 2024 .(Véase también la sección de comentarios donde se analiza una recomendación revisada de libsodium para agregar la función key-commitment).
- ↑ Rogaway, Phillip ; Shrimpton, Thomas (2006). Cifrado autenticado determinista: un tratamiento de seguridad demostrable del problema de la envoltura de claves (PDF) . EUROCRYPT . Lecture Notes in Computer Science . Vol. 4004. Springer . pp. 373–390 . doi : 10.1007/11761679_23 . Archivado (PDF) del original el 18 de diciembre de 2024. Recuperado el 22 de junio de 2025 .
- 1 2 3 "Cifrado autenticado: relaciones entre nociones y análisis del paradigma de composición genérica" . M. Bellare y C. Namprempre. Archivado del original el 23 de enero de 2018. Recuperado el 13 de abril de 2013 .
- ↑ Kent, Stephen (diciembre de 2005). "Algoritmos separados de confidencialidad e integridad" . RFC 4303 - Carga útil de seguridad encapsulada IP (ESP) . Grupo de trabajo de ingeniería de Internet (IETF) . Consultado el 12 de septiembre de 2018 .
- ↑ Lonvick, Chris M.; Ylonen, Tatu (enero de 2006). "Integridad de los datos" . RFC 4253. Grupo de trabajo de ingeniería de Internet (IETF) . Recuperado el 12 de septiembre de 2018 .
- ↑ Bellare, Mihir; Kohno, Tadayoshi; Namprempre, Chanathip. "Romper y reparar de forma demostrable el esquema de cifrado autenticado SSH: un estudio de caso del paradigma de codificación, cifrado y MAC" (PDF) . ACM Transactions on Information and System Security . Consultado el 30 de agosto de 2021 .
- ↑ Rescorla, Eric; Dierks, Tim (agosto de 2008). "Protección de carga útil de registros" . RFC 5246. Grupo de trabajo de ingeniería de Internet (IETF) . Recuperado el 12 de septiembre de 2018 .
- ↑ "El orden del cifrado y la autenticación para proteger las comunicaciones (o: ¿Qué tan seguro es SSL?)" (PDF) . H. Krawczyk . Consultado el 13 de abril de 2013 .
- ↑ Duong, Thai; Rizzo, Juliano (13 de mayo de 2011). "Aquí vienen los ninjas ⊕" (PDF) .– Libro blanco sobre el ataque de BEAST
- General
- Bellare, M.; Namprempre, C. (2000), "Cifrado autenticado: relaciones entre nociones y análisis del paradigma de composición genérica", en T. Okamoto (ed.), Avances en criptología — ASIACRYPT 2000 (PDF) , Lecture Notes in Computer Science, vol. 1976, Springer-Verlag, pp. 531–545 , doi : 10.1007/3-540-44448-3_41 , ISBN 978-3-540-41404-9
Fuentes
- Katz, J.; Lindell, Y. (2020). Introducción a la criptografía moderna . Serie de criptografía y seguridad de redes de Chapman & Hall/CRC. CRC Press. ISBN 978-1-351-13301-2. Consultado el 08-06-2023 .
- Black, J. (2005). «Cifrado autenticado» . Enciclopedia de criptografía y seguridad . Springer US. págs. 11–21 . doi : 10.1007/0-387-23483-7_15 . ISBN 978-0-387-23473-1.
- Albertini, Ange; Duong, Thai; Gueron, Shay; Kölbl, Stefan; Luykx, Atul; Schmieg, Sophie (2020). "Cómo abusar y reparar el cifrado autenticado sin compromiso de clave" (PDF) . USENIX.
- Bellare, Mihir; Hoang, Viet Tung (2022). "Esquemas eficientes para realizar cifrado autenticado" (PDF) . EUROCRYPT 2022.
- Abdalla, Michel; Bellare, Mihir; Neven, Gregory (2010). «Cifrado robusto». Teoría de la criptografía . Vol. 5978. Berlín, Heidelberg: Springer Berlin Heidelberg. doi : 10.1007/978-3-642-11799-2_28 . ISBN 978-3-642-11798-5.
- Farshim, Pooya; Libert, Benoît; Paterson, Kenneth G.; Quaglia, Elizabeth A. (2013). «Cifrado robusto, una revisión». Criptografía de clave pública – PKC 2013. Vol. 7778. Berlín, Heidelberg: Springer Berlin Heidelberg. doi : 10.1007/978-3-642-36362-7_22 . ISBN 978-3-642-36361-0.
- Chan, John; Rogaway, Phillip (2022). «Sobre la implementación del cifrado autenticado». Seguridad informática – ESORICS 2022. Vol. 13555. Cham: Springer Nature Suiza. doi : 10.1007/978-3-031-17146-8_14 . ISBN 978-3-031-17145-1.
- Criptografía de clave simétrica
- Códigos de autenticación de mensajes