Gliora

Criptografía

Concepto de Desarrollo web en Utilidades, conectado con sus herramientas y conceptos vecinos.

Actualizado el 31 de agosto de 2026

La criptografía es la ciencia de proteger información transformándola de forma que solo quien tenga la clave correcta pueda leerla o verificarla. Es la tecnología invisible que hace posible el comercio online, la banca digital y la comunicación privada: cada vez que ves el candado en la barra del navegador, hay algoritmos criptográficos trabajando en segundo plano para garantizar que nadie entre el servidor y tú pueda leer o modificar la conexión.

Cifrado simétrico

En el cifrado simétrico, la misma clave cifra y descifra los datos. Es muy rápido e ideal para cifrar grandes volúmenes de información.

Texto plano + clave → [AES] → Texto cifrado
Texto cifrado + clave → [AES] → Texto plano

El algoritmo estándar hoy es AES (Advanced Encryption Standard):

VarianteLongitud de claveUso típico
AES-128128 bitsComunicaciones con menor carga computacional
AES-256256 bitsEstándar de facto; cifrado de discos, VPNs, TLS

El principal desafío del cifrado simétrico es el problema de distribución de claves: ¿cómo compartes la clave de forma segura con la otra parte sin que nadie la intercepte? La respuesta está en el cifrado asimétrico.

Cifrado asimétrico (clave pública)

El cifrado asimétrico usa un par de claves matemáticamente relacionadas:

  • Clave pública: la compartes libremente. Cualquiera puede usarla para cifrar un mensaje destinado a ti.
  • Clave privada: la guardas en secreto. Solo tú puedes descifrar lo que fue cifrado con tu clave pública.
Texto plano + clave pública → [RSA] → Texto cifrado
Texto cifrado + clave privada → [RSA] → Texto plano

Los algoritmos más comunes:

AlgoritmoBase matemáticaTamaño de clave seguroNota
RSAFactorización de números primos2048–4096 bitsMaduro y ampliamente soportado
ECDH / ECDSACurvas elípticas256 bits (equiv. RSA-3072)Estándar moderno en TLS 1.3
Ed25519Curva elíptica Edwards256 bitsFirmas rápidas; usado en SSH y Signal

En la práctica, HTTPS combina ambos tipos: usa cifrado asimétrico (ECDH) para intercambiar de forma segura una clave de sesión temporal, y a partir de ahí cifra toda la comunicación con AES, que es mucho más rápido.

Funciones hash criptográficas

Una función hash transforma cualquier entrada en una cadena de longitud fija. A diferencia del cifrado, es un proceso de un único sentido: no se puede revertir.

"contraseña123" → [SHA-256] → "ef92b778bafe..." (64 caracteres hex)

Propiedades fundamentales:

  • Determinista: la misma entrada siempre produce el mismo hash.
  • Avalancha: cambiar un solo carácter cambia por completo el hash.
  • Resistente a preimagen: dado el hash, es computacionalmente inviable obtener la entrada original.
  • Resistente a colisiones: es muy difícil encontrar dos entradas distintas que produzcan el mismo hash.

Los más usados hoy:

AlgoritmoLongitud del hashEstado
MD5128 bitsObsoleto — no usar para seguridad
SHA-1160 bitsObsoleto — vulnerable a colisiones desde 2017
SHA-256256 bitsSeguro; estándar en TLS, firmas digitales, Bitcoin
SHA-3256–512 bitsDiseño alternativo a SHA-2; mayor resistencia teórica
bcryptVariablePara contraseñas: lento por diseño, con factor de coste ajustable
Argon2VariableGanador de la competición Password Hashing Competition (2015); preferible a bcrypt para nuevos proyectos

Para contraseñas nunca uses SHA-256 directamente: su velocidad facilita los ataques de fuerza bruta. Usa bcrypt, scrypt o Argon2. Para más detalles sobre hashes, consulta el artículo sobre hash SHA.

Firma digital: autenticidad e integridad

La firma digital garantiza que un mensaje lo envió quien dice haberlo enviado y que no fue alterado en tránsito:

  1. El emisor calcula el hash del mensaje.
  2. Cifra ese hash con su clave privada (esto produce la firma).
  3. El receptor descifra la firma con la clave pública del emisor y compara el resultado con el hash del mensaje recibido. Si coinciden, la firma es válida.

Las firmas digitales son la base de los certificados TLS/SSL, el protocolo JWT, la firma de código (apps en tiendas) y la factura electrónica.

Criptografía en la vida cotidiana

  • HTTPS: TLS 1.3 usa ECDH para el intercambio de claves, AES-256-GCM para el cifrado de la sesión y SHA-256 para garantizar la integridad.
  • Contraseñas: los servicios web almacenan un hash salado (bcrypt o Argon2), nunca la contraseña en texto plano. Para gestionar contraseñas, puedes usar el generador de contraseñas seguras.
  • VPN: WireGuard usa Curve25519 (ECDH), ChaCha20 (cifrado simétrico) y Poly1305 (autenticación) para cifrar todo el tráfico de red. Ver VPN.
  • Criptomonedas: Bitcoin usa SHA-256 para el minado y ECDSA sobre la curva secp256k1 para firmar transacciones.
  • Correo electrónico cifrado: PGP/GPG usa cifrado asimétrico RSA o ECC para cifrar correos y firma con la clave privada del remitente.
  • Autenticación en APIs: JWT combina cifrado asimétrico (RS256) o simétrico (HS256) para crear tokens verificables sin necesidad de consultar la base de datos en cada petición.

Esta información es orientativa y no constituye asesoramiento de seguridad para entornos de producción. La implementación criptográfica correcta requiere el uso de bibliotecas auditadas (libsodium, OpenSSL, Bouncy Castle) y no debe realizarse desde cero.

Conceptos relacionados

También en Desarrollo web

Preguntas frecuentes

¿Qué diferencia hay entre cifrado simétrico y asimétrico?
En el cifrado simétrico, la misma clave cifra y descifra los datos: es muy rápido pero requiere compartir la clave de forma segura. En el cifrado asimétrico hay dos claves: una pública (que puedes compartir libremente) y una privada (que guardas en secreto). Lo que cifra la clave pública solo lo puede descifrar la privada, y viceversa.
¿Por qué no se guardan las contraseñas en texto plano?
Si la base de datos es comprometida, el atacante obtendría todas las contraseñas directamente. En su lugar se aplica una función de hash con sal (bcrypt, Argon2, scrypt): el hash no se puede revertir y la sal evita los ataques de diccionario con tablas precomputadas (rainbow tables).
¿Qué es el cifrado de extremo a extremo?
En el cifrado de extremo a extremo (E2E), los mensajes se cifran en el dispositivo del emisor y solo se descifran en el del receptor. El servidor intermediario transporta datos cifrados que no puede leer. WhatsApp, Signal e iMessage usan E2E por defecto.

Ver todas las herramientas de Utilidades.