Lección 1 de 4 · 9 min
Cifrado simétrico, cifrado asimétrico, y funciones hash
Tres herramientas criptográficas distintas garantizan tres cosas distintas. Confundirlas es la fuente más común de una falsa sensación de seguridad.
La gente suele decir “está cifrado” como si eso resolviera una cuestión de seguridad. No es así, porque el cifrado no es una sola cosa. Esta lección cubre los tres pilares detrás de casi toda afirmación de protección digital: el cifrado simétrico, el cifrado asimétrico, y las funciones hash. Cada una garantiza algo distinto, y saber cuál está en juego te dice qué se está protegiendo en realidad.
Cifrado simétrico: una clave compartida
El Centro de Aprendizaje de Cloudflare describe el cifrado simétrico de forma sencilla: “solo hay una clave, y todas las partes que se comunican usan la misma clave (secreta) tanto para cifrar como para descifrar.” El Estándar de Cifrado Avanzado (AES) es hoy el ejemplo estándar, habiendo reemplazado al más antiguo Estándar de Cifrado de Datos (DES) después de que la corta longitud de clave de DES lo volviera vulnerable a la fuerza bruta. El cifrado simétrico es rápido y es lo que realmente revuelve la mayor parte de tus datos, ya sea un archivo en el disco o el cuerpo de una página web cargada por HTTPS. Su problema central es la distribución: ambas partes necesitan la misma clave secreta, y hacerle llegar esa clave a la otra parte sin que nadie más la vea es justo el problema que resuelve el cifrado asimétrico.
Cifrado asimétrico: dos claves que funcionan como un par
En el cifrado asimétrico, o de clave pública, hay dos claves vinculadas matemáticamente: “una clave se usa para cifrar, y una clave distinta se usa para descifrar”, según Cloudflare. La clave de cifrado se puede publicar para cualquiera — de ahí “clave pública” — mientras que la clave de descifrado correspondiente se mantiene privada. Los datos cerrados con la clave pública solo se pueden abrir con la clave privada. Esto es lo que permite que dos personas que nunca se han conocido acuerden un secreto compartido en una red abierta, que es justo lo que pasa al inicio de toda conexión HTTPS (la siguiente lección cubre ese saludo con detalle). RSA y la criptografía de curva elíptica son hoy los algoritmos comunes detrás de esto.
Las funciones hash: una huella digital, no una cerradura
Una función hash no es ninguna de las dos anteriores: no cierra nada, y no hay ninguna clave con la que abrirla. El NIST la define como una función que “convierte una cadena de bits de longitud arbitraria en una cadena de bits de longitud fija” — en palabras sencillas, convierte cualquier archivo o mensaje en una huella digital corta y de tamaño fijo. El NIST especifica las propiedades que debe tener una función hash aprobada: debe ser computacionalmente inviable encontrar una entrada que produzca una salida dada (unidireccionalidad), e inviable encontrar dos entradas distintas que produzcan la misma salida (resistencia a colisiones). Por eso el hash sirve para comprobar la integridad — ¿cambió este archivo? — y para proteger las contraseñas guardadas: un servicio puede comparar una contraseña con su hash guardado sin nunca conservar la contraseña real. Funciones hash más antiguas como MD5 y SHA-1 ya no se consideran seguras frente a un atacante decidido, por eso los sistemas modernos usan en su lugar las familias SHA-2 o SHA-3.
Qué garantiza realmente cada una
| Herramienta | Qué garantiza | Qué no garantiza |
|---|---|---|
| Cifrado simétrico | Confidencialidad, si la clave compartida permanece secreta | Una forma segura de intercambiar esa clave en primer lugar |
| Cifrado asimétrico | Una forma de intercambiar un secreto, y de verificar la identidad (ver la siguiente lección sobre firmas) | Velocidad; es mucho más lento que el cifrado simétrico para grandes cantidades de datos |
| Hashing | Integridad: prueba de que los datos no se alteraron, y una forma de comprobar secretos sin guardarlos | Confidencialidad; un hash no está diseñado para revertirse, pero tampoco está diseñado para ocultar el tamaño o la presencia de los datos |
Cómo se combinan en la práctica
Casi nada usa solo una de estas herramientas. Una conexión segura típica usa el cifrado asimétrico un momento, para acordar un secreto compartido, y luego cambia al cifrado simétrico rápido para los datos reales, mientras el hash funciona todo el tiempo para asegurarse de que nada de lo enviado se alteró en el camino. Reconocer estos tres papeles es lo que hace que el resto de este curso — firmas, certificados, TLS, y el cifrado de extremo a extremo — tenga sentido como combinaciones de este mismo pequeño conjunto de herramientas, en vez de magia por separado.
Lo esencial
- El cifrado simétrico usa una clave compartida tanto para cifrar como para descifrar; es rápido pero necesita una forma de compartir la clave con seguridad.
- El cifrado asimétrico usa una clave pública y una clave privada como par, resolviendo el problema de distribución de claves que tiene el cifrado simétrico.
- El hashing produce una huella digital de tamaño fijo de los datos; protege la integridad y los secretos guardados, no la confidencialidad — no hay ninguna clave para abrir un hash.
- Los sistemas reales combinan las tres: cifrado asimétrico para acordar un secreto, cifrado simétrico por velocidad, hashing para detectar alteraciones.
- Los algoritmos más antiguos (DES, MD5, SHA-1) tienen debilidades conocidas; AES y las familias SHA-2/SHA-3 son los estándares actuales.
Ponte a prueba
1. ¿Cuál es la característica que define al cifrado simétrico?
- Usa una clave pública y una clave privada
- Usa una única clave secreta compartida tanto para cifrar como para descifrar — Correcto.
- No se puede usar para grandes cantidades de datos
- Nunca necesita ninguna clave
El cifrado simétrico depende de una sola clave compartida que ambas partes ya tienen; el reto es distribuir esa clave con seguridad.
2. ¿Qué problema resuelve el cifrado asimétrico que el cifrado simétrico no puede resolver por sí solo?
- Hacer más rápido el cifrado
- Permitir que dos partes acuerden un secreto compartido sin haberse conocido antes — Correcto.
- Hacer que las contraseñas sean más fáciles de recordar
- Evitar que los datos se eliminen alguna vez
La criptografía de clave pública permite compartir una clave pública abiertamente mientras que solo la clave privada correspondiente puede descifrar, lo que permite un intercambio seguro de claves en una red abierta.
3. ¿Por qué no se puede usar una función hash para mantener un mensaje en secreto?
- Los hashes siempre son demasiado cortos para contener un mensaje
- Un hash es unidireccional por diseño; no hay ninguna clave para revertirlo a los datos originales — Correcto.
- Las funciones hash son ilegales para usarse en cifrado
- Los hashes solo funcionan con imágenes, no con texto
Las funciones hash están construidas para que recuperar la entrada original a partir de la salida sea computacionalmente inviable — esa propiedad (unidireccionalidad) las hace útiles para comprobaciones de integridad y almacenamiento de contraseñas, no para la confidencialidad.
4. ¿Qué par de algoritmos se consideran obsoletos por sus debilidades conocidas?
- AES y RSA
- DES y MD5 — Correcto.
- SHA-2 y la criptografía de curva elíptica
- TLS y HTTPS
La corta longitud de clave de DES y las debilidades de colisión de MD5 hacen que los sistemas modernos usen en su lugar AES y las familias SHA-2/SHA-3.
Ponlo en práctica con FireAI
Pon esta lección en práctica en tu propia computadora.
- Inspección profunda, sin descifrar nada — Obtén detalle real sobre una conexión segura sin que FireAI lea nunca lo que hay dentro.
- Qué se queda en tu Mac, y las únicas veces que FireAI se conecta por su cuenta — Lee la lista completa de lo que envía FireAI, en vez de confiar en la palabra de un firewall.
Fuentes
- Cloudflare Learning Center: What is encryption?
- NIST Computer Security Resource Center Glossary: hash function
Ponlo en práctica en tu Mac
Prueba todas las funciones gratis durante 17 días, sin tarjeta.