
¿Qué es la criptografía simétrica? Una guía completa
Definición
La criptografía simétrica es la familia de esquemas en los que se utiliza la misma clave secreta para aplicar y revertir la función criptográfica. Esta operación puede consistir en cifrar, calcular una etiqueta de integridad y autenticación, o ambas cosas a la vez. Ese diseño de clave única es el motor silencioso que hay detrás de la protección diaria de los datos. Cuando pasas una tarjeta, envías un mensaje en una aplicación de chat segura o abres un archivo cifrado en tu ordenador portátil, la criptografía simétrica es casi siempre la que se encarga del trabajo pesado. Protege las transacciones bancarias, cifra los datos almacenados en los dispositivos y transporta el mayor parte del tráfico dentro de sesiones de navegación seguras.
La criptografía simétrica es uno de los dos enfoques principales de la criptografía moderna. El otro, la criptografía asimétrica (también conocida comúnmente como criptografía de clave pública), utiliza un par de claves en lugar de una sola; puedes leer más al respecto en nuestro artículo sobre el tema. Esta guía se centra exclusivamente en la criptografía simétrica: cómo funciona, los algoritmos que la definen, en qué aspectos destaca, en cuáles tiene limitaciones y cómo se comporta frente a las amenazas cuánticas emergentes. Si primero quieres adquirir una base más amplia, empieza porlo que es la criptografía y cómo protege los datos; después, vuelve aquí para profundizar en el tema de la clave única.
Cómo funciona la criptografía simétrica
La criptografía simétrica utiliza una misma clave para ambas partes de una comunicación. El remitente procesa el texto en claro (ya sea cifrándolo o calculando una etiqueta de autenticación para él) utilizando un secreto compartido, y el destinatario aplica la función inversa (descifra el texto cifrado o verifica la etiqueta) utilizando el mismo secreto. No interviene ninguna segunda clave. Si, dentro de un sistema criptográfico, la clave utilizada para el cifrado y el descifrado es la misma, se denomina a dicho sistema «sistema criptográfico simétrico».
Entonces, ¿cuántas claves utiliza la criptografía simétrica? Una. Esa única clave compartida constituye todo el sistema, y ambas partes deben disponer de ella antes de que pueda iniciarse cualquier comunicación segura.
Un sencillo ejemplo lo aclara todo. Empecemos por el cifrado simétrico. Supongamos que Alicia quiere enviar un mensaje privado a Bob. Alicia y Bob acuerdan primero una clave compartida. Alicia aplica esa clave a su texto en claro mediante el algoritmo de cifrado y obtiene el texto cifrado, que envía a través de la red pública. Bob recibe el texto cifrado, aplica la misma clave y recupera el mensaje original. Cualquiera que intercepte el texto cifrado sin la clave solo verá datos sin sentido.
Para la autenticación, el esquema utilizado se conoce comúnmente como «código de autenticación de mensajes» (MAC). Una vez que Alicia y Bob acuerdan una clave compartida, Alicia utiliza la clave y el mensaje para calcular una etiqueta que es «única» para ambos, y envía tanto el mensaje como la etiqueta a Bob. A continuación, Bob puede ejecutar el mismo algoritmo para calcular la etiqueta utilizando la clave compartida. El mensaje se autentica si ambas etiquetas coinciden.
En el fondo, estos procesos se basan en permutaciones y otras operaciones matemáticas sencillas. En el caso del cifrado simétrico, la función de cifrado utiliza permutaciones para cifrar un mensaje, y también utiliza la misma permutación —que depende de la clave— para descifrarlo. Una propiedad sencilla pero fundamental de estas operaciones es que dos caracteres iguales en la entrada se corresponden con caracteres diferentes en la salida. En otras palabras, una misma letra del texto en claro no siempre aparece igual en el mensaje cifrado. Por ejemplo, «SSS» no se cifraría como tres caracteres iguales. Esa variabilidad es deliberada: es una de las razones por las que el texto cifrado resulta difícil de descifrar sin la clave. Si los patrones se mantuvieran constantes, un atacante podría descifrar el mensaje estudiando su estructura, sin necesidad de ninguna clave.
Algoritmos comunes de criptografía simétrica
La criptografía simétrica abarca dos grandes familias de herramientas: algoritmos que cifran los datos para garantizar su confidencialidad y funciones con clave que verifican que un mensaje no haya sido manipulado.
Algoritmos de cifrado simétrico
El algoritmo de cifrado simétrico más utilizado en la actualidad es el AES (Advanced Encryption Standard). El AES es el estándar mundial vigente para el cifrado simétrico y admite tres longitudes de clave: 128 bits, 192 bits y 256 bits. Las claves más largas ofrecen una mayor resistencia a los ataques de fuerza bruta, y el AES-256 es habitual en los casos en los que se requiere la máxima protección.
ChaCha20 es otro estándar moderno, muy apreciado por su velocidad y su alto nivel de seguridad, especialmente en dispositivos que carecen de hardware específica para AES. Suele combinarse con un paso de autenticación de mensajes (en concreto, con un esquema MAC denominado Poly1305) para proteger al mismo tiempo tanto la confidencialidad como la integridad.
El DES (Data Encryption Standard) es el legado de este grupo. En su día fue el algoritmo simétrico dominante. Hoy en día, sin embargo, el DES se considera peligroso: su clave, de tan solo 56 bits, es muy fácil de descifrar con la potencia informática actual. Cabe mencionar aquí que la variante Triple DES, que triplica el tamaño de la clave, también se considera obsoleta. Ninguna de estas variantes debería utilizarse en ningún sistema nuevo.
Estos algoritmos se clasifican en dos categorías estructurales:
- Los cifrados por bloquescifran los datos en fragmentos de tamaño fijo denominados «bloques». El AES es un cifrado por bloques. Los cifrados por bloques son la opción más habitual en las aplicaciones empresariales y suelen ejecutarse en un modo de funcionamiento que determina cómo se encadenan los bloques sucesivos.
- Los cifrados de flujocifran los datos bit a bit o byte a byte. ChaCha20 es un cifrado de flujo muy valorado, ideal para flujos de datos continuos, como la transmisión de contenidos multimedia o el tráfico de red en tiempo real.
Códigos de autenticación de mensajes
El cifrado por sí solo protege la confidencialidad, pero no garantiza que un mensaje haya llegado sin alteraciones. Esa es la función de los códigos de autenticación de mensajes (MAC), una forma de función hash con clave. Es decir, son funciones que toman un mensaje y una clave, y generan un valor que se comporta de forma aleatoria y que, aparentemente, no guarda relación con sus datos de entrada. El resultado breve del MAC se denomina «etiqueta». En la práctica, esta etiqueta es única tanto para el mensaje como para la clave, lo que vincula la clave y el mensaje. El destinatario vuelve a calcular la etiqueta con la misma clave y comprueba que coincide. La etiqueta no podría calcularse sin la clave, lo que demuestra que el remitente disponía de ella; además, si la clave o el mensaje se han alterado mínimamente, la etiqueta resultante es muy diferente. De este modo se verifica tanto la integridad como la autenticidad del mensaje.
Entre los ejemplos más comunes se encuentran HMAC (código de autenticación de mensajes basado en hash), GMAC (que se combina de forma natural con AES en los modos autenticados) y Poly1305 (que se combina con ChaCha20). En la práctica, los sistemas modernos suelen combinar el cifrado y la autenticación, de modo que una única operación oculta el mensaje y demuestra al mismo tiempo que no ha sido manipulado durante la transmisión. Este método combinado se denomina «cifrado autenticado con datos asociados» (AEAD).
Ventajas de la criptografía simétrica
La criptografía simétrica se ha ganado su papel protagonista por dos razones: la rapidez y la sencillez.
La velocidad es la principal ventaja. La criptografía simétrica es más rápida de ejecutar (tanto en el cifrado como en el descifrado), ya que las operaciones son mucho más sencillas que enla criptografía asimétrica. Las claves más cortas y las operaciones matemáticas más sencillas se traducen directamente en un mayor rendimiento, razón por la cual los algoritmos simétricos son la opción predeterminada para cifrar grandes volúmenes de datos.
La simplicidad es la segunda ventaja. Los sistemas simétricos son los más fáciles de entender y de implementar. Requieren menos recursos computacionales que los métodos asimétricos, lo que los hace muy adecuados para entornos con recursos limitados, como IoT , los sistemas embebidos y hardware alimentado por batería, hardware la potencia de procesamiento y la energía son limitadas. Por el contrario, la menor velocidad de la criptografía asimétrica puede ralentizar los procesos de red, sobrecargar la memoria y agotar las baterías más rápidamente.
Retos y limitaciones
El único punto fuerte de la criptografía simétrica —una clave compartida— es también la fuente de su principal punto débil: la gestión de claves.
Para que dos partes puedan comunicarse, ambas deben disponer de la misma clave, y esa clave debe intercambiarse, ya sea en persona o a través de algún canal. Lo difícil es garantizar la seguridad de ese intercambio. Si el canal utilizado para compartir la clave se ve comprometido, todo el sistema queda comprometido. Una clave interceptada permite al atacante cifrar, descifrar o autenticar todos los mensajes de forma silenciosa.
Los métodos de gestión de claves anteriores a la criptografía moderna (antes, por ejemplo, de mediados de la década de 1990) solían ser inseguros y costosos, y estaban a su vez expuestos a los ataques de los adversarios. Los métodos históricos, como el correo seguro o los mensajeros de confianza, eran vulnerables a la interceptación y al compromiso de la seguridad, y la geografía agravaba aún más la situación. Para empezar, dos partes situadas en continentes diferentes no pueden establecer fácilmente un canal seguro para intercambiar una clave.
Hay otros dos problemas que agravan esta situación. En primer lugar, en entornos con múltiples participantes, una sola clave comprometida puede poner en peligro todo el sistema, y puede resultar difícil incluso saber si una clave ha sido comprometida y quién lo ha hecho. En segundo lugar, el número de claves necesarias aumenta considerablemente a medida que se incorporan más participantes, lo que puede hacer que el modelo resulte inmanejable sin una estrategia más inteligente. Existen dos soluciones prácticas para este problema: una que aprovecha la criptografía asimétrica y otra que utiliza un servidor centralizado en combinación con la criptografía simétrica, lo cual se explica con más detalle a continuación. Gestión de claves simétricas desde un servidor central
Consideremos la magnitud del problema de la distribución de claves. Dado que el mismo secreto protege ambos extremos de una conversación, cada par de partes que desee comunicarse necesita su propia clave única. Dos partes necesitan una clave. Diez partes necesitan 45. Veinte partes necesitan 190. La cifra general crece con el cuadrado de la población. Una red de unos pocos miles de puntos finales alcanza millones de claves, cada una de las cuales debe generarse, entregarse, almacenarse, rotarse y, finalmente, destruirse. Nadie gestiona una malla plana de claves simétricas por pares a gran escala, porque se derrumba bajo su propio peso.
La solución habitual consiste en centralizar las claves en un servidor de confianza. En lugar de establecer las sesiones por sí mismas, las partes confían en un servidor de confianza para que establezca sesiones con otras partes en su nombre. De este modo, cada parte solo necesita disponer de una única clave, compartida con el servidor central, en lugar de mantener una clave distinta con cada una de las demás partes. Ese servidor centralizado se denomina Centro de Distribución de Claves (KDC) y debe ser lo suficientemente potente como para poder gestionar toda esta carga de trabajo. Kerberos, el sistema de autenticación integrado en Microsoft Active Directory, es la versión para entornos de producción derivada de este modelo y sigue desempeñando exactamente esta función en la actualidad.
Un KDC bien gestionado clasifica las claves por función en una jerarquía de dos niveles:
- Las claves a largo plazose encuentran en la parte superior. Cada cliente comparte una clave maestra con el servidor. También se denominan «claves de cifrado de claves» (KEK), ya que su finalidad es proteger otras claves, no los datos de los usuarios. Autentifican al cliente y envuelven las claves de corta duración, y se renuevan con poca frecuencia, ya que sustituir una de ellas suele implicar volver a registrar al cliente.
- Las claves de sesiónse encuentran en la parte inferior. Estas claves de cifrado de datos (DEK) protegen el tráfico propiamente dicho. El servidor genera una nueva para cada conversación; las partes la utilizan una sola vez y, a continuación, la descartan.
La razón para separarlas es el control de la exposición: la clave secreta más valiosa y más difícil de sustituir es la que menos trabajo realiza, mientras que las claves de sesión desechables absorben la mayor parte del tráfico. Si se filtra una clave de sesión, el daño se limita a una sola sesión. Una forma útil de entender esta distinción es pensar que las claves a largo plazo establecen la confianza, mientras que las claves de sesión soportan la carga.
Cuando dos clientes que no comparten ninguna clave entre sí necesitan comunicarse, el servidor actúa como intermediario para establecer una clave de sesión entre ellos. En el modelo clásico, el servidor genera una nueva clave de sesión aleatoria y la envía a ambas partes cifrada con sus respectivas claves de largo plazo, de modo que ningún intruso pueda verla en claro. Hay dos detalles de diseño que no son opcionales:
- el intercambio debe incluir elementos de frescura (nonces o marcas de tiempo) para que un atacante no pueda reproducir un mensaje antiguo de configuración de claves, y
- Los billetes deben tener una vigencia limitada para que caduquen por sí solos.
La centralización de las claves también concentra el riesgo. El almacén del KDC contiene una clave a largo plazo para cada cliente, por lo que cualquiera que acceda a esa base de datos puede suplantar la identidad de todos los clientes y descifrar todas las sesiones gestionadas. La defensa es exigente. Para mantener el material de clave sin procesar alejado de la memoria habitual o del disco, deben adoptarse las siguientes medidas:
- las claves de larga duración se almacenan en un módulo Hardware (HSM),
- restringir y registrar cada acceso administrativo a la tienda, y
- Planifica con antelación cómo cambiarías las llaves de toda la población en caso de que la tienda sufriera alguna vez un robo.
Un HSM inspira confianza precisamente porque está basado en hardware probado y certificado, ejecuta un sistema operativo centrado en la seguridad y oculta y protege de forma activa el material criptográfico.
Ámbitos en los que se utiliza actualmente la criptografía simétrica
La criptografía simétrica está presente en todas partes; a veces funciona por sí sola y, a menudo, en combinación con la criptografía asimétrica. Entre sus aplicaciones cotidianas se incluyen:
- Banca y pagos.Cifrado de la información de las tarjetas de crédito y de otros datos de carácter personal (PII) necesarios para las transacciones.
- Datos en reposo.Cifrado de los datos almacenados en un dispositivo cuando no se están transfiriendo, como los archivos de un ordenador portátil o las copias de seguridad de un servidor.
- Sesiones web seguras.Dentro TLS, se utiliza la criptografía asimétrica para cifrar una clave simétrica de un solo uso, que a su vez se encarga de cifrar y descifrar el contenido real de esa sesión de navegación. La protección de los datos en masa es simétrica.
- Mensajería cifrada.Los sistemas de chat para móviles utilizan criptografía asimétrica para verificar la identidad de los participantes al inicio de una conversación y, a continuación, pasan a utilizar criptografía simétrica para cifrar el contenido de la conversación.
- Túneles VPN.Una vez establecido un túnel seguro, el tráfico que circula por él se transmite mediante cifrado simétrico.
En varios de estos ejemplos se repite un patrón: la criptografía asimétrica se encarga de la delicada tarea de establecer y autenticar una clave simétrica compartida, y la criptografía simétrica se encarga a continuación de cifrar el volumen principal de datos de forma rápida y eficiente. Este enfoque mixto ofrece lo mejor de ambos mundos, ya que combina la seguridad del intercambio de claves públicas con la velocidad del cifrado con una sola clave. Para obtener un análisis detallado de cómo difieren y se complementan ambos enfoques, consulta nuestra comparación entre la criptografía simétrica y la asimétrica.
La criptografía simétrica y la amenaza cuántica
La computación cuántica se considera generalmente una amenaza existencial para los algoritmos asimétricos, como RSA, ECC y Diffie-Hellman, que, según las previsiones de los expertos, podrían ser descifrados en un plazo de entre 5 y 15 años aproximadamente, una vez que se disponga de un ordenador cuántico con capacidad criptográfica. La criptografía simétrica se encuentra en una posición mucho más sólida.
Los algoritmos criptográficos simétricos se ven afectados solo en menor medida por el algoritmo cuántico de Grover. Si los parámetros son lo suficientemente grandes, siguen siendo seguros frente a los ordenadores cuánticos por el momento, ya que no se ha desarrollado ningún algoritmo cuántico eficiente capaz de resolver de forma eficaz los problemas matemáticos subyacentes. El algoritmo de Grover podría, en teoría, como máximo reducir a la mitad la resistencia efectiva de una clave simétrica, y ese límite teórico no tiene en cuenta la considerable memoria cuántica que requeriría un ataque de este tipo. En la práctica, esto significa que basta con duplicar el tamaño de la clave para recuperar la seguridad teórica. Medir el impacto real de este ataque y determinar cuánto deben aumentar las claves (o si es necesario aumentarlas en absoluto) sigue siendo un ámbito de investigación activo.
Duplicar la clave permite garantizar, sin lugar a dudas, que el cifrado seguirá siendo, como mínimo, tan seguro como lo es actualmente. Se trata de una solución muy sencilla en comparación con tener que cambiar el algoritmo por completo. El paso de AES-128 a AES-256 puede realizarse sin problemas, ya que AES-256 ya está ampliamente implantado. Por eso se considera que la criptografía simétrica es relativamente resistente a la computación cuántica, en marcado contraste con los algoritmos asimétricos, que no cuentan con una solución rápida comparable y requieren fundamentos matemáticos completamente nuevos.
Esta resiliencia está respaldada por la comunidad de normalización en general. El Instituto Nacional de Estándares y Tecnología de EE. UU. (NIST), en su Informe sobre criptografía poscuántica (NIST IR 8105), señala que el algoritmo de Grover acelera los ataques contra los cifrados simétricos y que el uso de claves de mayor tamaño constituye una contramedida eficaz. En consonancia con ese punto de vista, la iniciativa de normalización de la criptografía poscuántica del NIST se ha centrado en sustituir los algoritmos de clave pública vulnerables, en lugar de los simétricos, lo que refleja el consenso de que las claves simétricas de tamaño adecuado siguen siendo seguras. Dicho esto, la resiliencia no es motivo para la complacencia. Las organizaciones deben seguir obteniendo visibilidad sobre todos sus activos criptográficos para poder identificar configuraciones débiles y prepararse para el cambio. Comprender la criptografía poscuántica es el punto de partida para esa preparación.
Cómo Keyfactor ayudarte Keyfactor
La criptografía simétrica nunca funciona de forma aislada. Se integra en un amplio panorama criptográfico de algoritmos, claves y bibliotecas repartidas por toda la empresa, y ese panorama es notoriamente difícil de visualizar. software compilado software los algoritmos que utiliza; la criptografía puede encontrarse en los ejecutables de las aplicaciones, en los sistemas operativos, en las CPU o hardware independientes; y los algoritmos y las implementaciones obsoletos suelen persistir durante años porque nadie sabe que están ahí.
Keyfactor las organizaciones a controlar ese panorama. La detección y el inventario criptográfico constituyen la base:Keyfactor es una herramienta de gestión de la seguridad que genera automáticamente un inventario de todos los algoritmos criptográficos presentes en cualquier programa de software. AgileSec se utiliza para «detectar» elementos criptográficos que se han quedado obsoletos y han perdido eficacia con el paso del tiempo, sacando a la luz implementaciones débiles o mal configuradas —como el DES obsoleto o claves gestionadas de forma inadecuada— que, de otro modo, permanecerían ocultas. También realiza pruebas específicas para detectar errores de configuración habituales, como la identificación de certificados autofirmados que no pertenecen a una autoridad de certificación reconocida.
Para los equipos que desarrollan aplicaciones,Bouncy Castle proporcionan bibliotecas bien probadas con soporte para el cifrado simétrico, lo que ayuda a los desarrolladores a implementar la criptografía de forma correcta, en lugar de copiar fragmentos de código poco fiables de Internet. Al simplificar la PKI, automatizar la gestión del ciclo de vida de los certificados y permitir a las organizacionesalcanzar la «agilidad criptográfica», Keyfactor posible una transición fluida entre algoritmos cuando cambian los estándares. Tal y como la propia empresa describe su misión:Keyfactor confianza digital al mundo hiperconectado al capacitar a las organizaciones para crear y mantener conexiones seguras y fiables en todos los dispositivos, cargas de trabajo y máquinas».
El hilo conductor es la gestión de la postura criptográfica: no se puede proteger lo que no se ve. Detectar, inventariar y gestionar de forma continua todos los algoritmos en uso, incluidas las implementaciones simétricas, es lo que garantiza la eficacia del cifrado a medida que evolucionan las amenazas y las normas.
Keyfactor los equipos de seguridad visibilidad
y control sobre las identidades
y la criptografía que protegen cada
interacción digital, para que su negocio
siga funcionando sin interrupciones.
¿Tienes dudas sobre la criptografía simétrica? Tenemos las respuestas.
La criptografía simétrica utiliza una sola clave. Se emplea la misma clave para procesar los datos en ambos extremos, por lo que también se denomina criptografía de clave única o de clave compartida. Las operaciones matemáticas más sencillas en las que se basa este enfoque de clave única hacen que sea más rápido que los métodos asimétricos, pero requiere que ambas partes compartan la clave de forma segura con antelación.
La criptografía simétrica utiliza una clave compartida tanto por el remitente como por el destinatario, mientras que la criptografía asimétrica utiliza un par de claves (una pública y otra privada). La criptografía simétrica es más rápida y más adecuada para el cifrado de grandes volúmenes de datos y la autenticación; la asimétrica es más adecuada para el intercambio de claves y la verificación de identidad a través de un canal no seguro. Para obtener un análisis detallado, consulta nuestra comparación entre la criptografía simétrica y la asimétrica.
El algoritmo simétrico más utilizado en la actualidad es el AES (Advanced Encryption Standard), que admite longitudes de clave de 128, 192 y 256 bits. ChaCha20 es otro estándar moderno muy apreciado por su velocidad. El DES (Data Encryption Standard) fue el estándar anterior, pero ahora se considera obsoleto debido a la escasa longitud de su clave, de solo 56 bits.
Se considera que la criptografía simétrica es más resistente a los ataques cuánticos que la criptografía asimétrica. El algoritmo de Grover podría, en teoría, reducir a la mitad la resistencia efectiva de la clave, pero esto se soluciona utilizando claves de mayor tamaño, como el AES-256. Actualmente no existe ningún ataque cuántico eficaz capaz de romper el cifrado simétrico con parámetros lo suficientemente grandes.
Dado que ambas partes necesitan la misma clave, esta debe compartirse a través de un canal seguro antes de que pueda iniciarse la comunicación, y una clave interceptada pone en peligro todo el sistema. Este reto crece de forma cuadrática a medida que aumenta el número de partes, ya que cada par necesita una clave única. Dos partes necesitan una clave compartida, diez partes necesitan 45 y veinte partes necesitan 190.
El cifrado simétrico protege las comunicaciones, cifra los archivos almacenados en los dispositivos, protege las sesiones de navegación web como parte del TLS y es la base de las aplicaciones de mensajería cifrada. En la mayoría de estos casos, el cifrado simétrico se encarga de los datos a gran escala, mientras que el cifrado asimétrico gestiona el establecimiento inicial de la clave.
Los cifrados por bloques cifran los datos en fragmentos de tamaño fijo denominados «bloques», mientras que los cifrados de flujo cifran los datos bit a bit o byte a byte. AES es un cifrado por bloques; ChaCha20 es un cifrado de flujo. Los cifrados por bloques son más habituales en aplicaciones empresariales.
Sí, y lo hacen con frecuencia. En un enfoque combinado, la criptografía asimétrica permite intercambiar de forma segura una clave simétrica de un solo uso, que luego se utiliza para cifrar los datos propiamente dichos. TLS , las VPN y las aplicaciones de mensajería cifrada utilizan este método híbrido para equilibrar la velocidad y la seguridad.