Todos los artículos de SSL SSL y certificados

Criptografía de clave pública: cómo funciona realmente el cifrado SSL

La criptografía de clave pública (también llamada criptografía asimétrica) es la base de SSL/TLS. Usa un par de claves matemáticamente relacionadas — una pública, una privada — para cifrar datos, verificar identidades y establecer conexiones seguras. Cada conexión HTTPS depende de ella.

El concepto de par de claves

Clave públicaClave privada
Quién la tieneTodos (está en el certificado)Solo el propietario del servidor
Puede cifrar
Puede descifrarSolo lo que la clave privada cifróSolo lo que la clave pública cifró
¿Compartirla?Sí — ese es el propósitoNunca

La magia: los datos cifrados con la clave pública solo pueden descifrarse con la clave privada correspondiente. Y viceversa. Las dos claves están matemáticamente vinculadas, pero no puedes derivar la clave privada a partir de la pública.

Cómo se usa en SSL/TLS

La criptografía de clave pública cumple tres propósitos en cada conexión HTTPS:

1. Intercambio de claves — establecer un secreto compartido

Durante la negociación TLS, el servidor y el navegador necesitan acordar una clave de sesión compartida para cifrar el tráfico. No pueden enviar esta clave en texto plano — alguien podría interceptarla.

Solución: Intercambio de claves Diffie-Hellman (específicamente ECDHE en TLS moderno). Ambas partes contribuyen valores aleatorios, y las matemáticas les permiten calcular el mismo secreto compartido sin nunca transmitirlo. La clave privada del servidor firma su contribución, probando la identidad del servidor.

2. Autenticación — probar la identidad

El certificado SSL del servidor contiene su clave pública. El certificado está firmado por una Autoridad Certificadora. Durante la negociación, el servidor prueba que posee la clave privada correspondiente. Esto prueba que el servidor es quien dice ser el certificado.

Sin este paso, cualquiera podría hacerse pasar por google.com.

3. Firmas digitales — probar la integridad de los datos

La clave privada puede crear una firma digital — una prueba matemática de que un dato específico fue firmado por el titular de la clave y no ha sido modificado. Los mensajes de la negociación TLS se firman para prevenir la manipulación.

Cifrado simétrico vs asimétrico

Asimétrico (clave pública)Simétrico (clave de sesión)
ClavesDos (pública + privada)Una (secreto compartido)
VelocidadLento (~1000x más lento)Rápido
Usado paraIntercambio de claves + autenticaciónCifrar los datos reales
AlgoritmosRSA, ECDSA, ECDHEAES-GCM, ChaCha20
En TLSSolo durante la negociaciónDespués de la negociación (todo el tráfico)

HTTPS usa ambos: cifrado asimétrico para la negociación (probar identidad, intercambiar claves), luego cifrado simétrico para la transferencia real de datos (porque es mucho más rápido).

Los algoritmos detrás de SSL

RSA

El algoritmo de clave pública más antiguo todavía en uso (1977). Basado en la dificultad de factorizar números primos grandes. Usado tanto para firmas como para intercambio de claves, aunque el intercambio de claves RSA (sin Diffie-Hellman) no proporciona secreto perfecto hacia adelante y fue eliminado de TLS 1.3.

ECDSA (Algoritmo de Firma Digital de Curvas Elípticas)

Algoritmo de firma moderno que usa matemáticas de curvas elípticas. Una clave ECC de 256 bits proporciona seguridad equivalente a una clave RSA de 3072 bits — claves más pequeñas, firmas más rápidas. GetHTTPS usa ECDSA P-256 por defecto.

ECDHE (Curvas Elípticas Diffie-Hellman Efímeras)

El mecanismo de intercambio de claves usado en TLS moderno. «Efímero» significa que se genera un nuevo par de claves para cada conexión — proporcionando secreto perfecto hacia adelante. Usado tanto en TLS 1.2 como en 1.3.

AES-GCM

El cifrado simétrico usado después de la negociación para cifrar el tráfico real. AES (Advanced Encryption Standard) con GCM (Galois/Counter Mode) proporciona tanto cifrado como autenticación. Acelerado por hardware en CPUs modernas vía instrucciones AES-NI.

Cómo GetHTTPS usa la criptografía de clave pública

Cuando usas GetHTTPS:

  1. Tu navegador genera un par de claves usando la Web Crypto API — las mismas primitivas criptográficas que TLS usa
  2. La clave pública va en un CSR enviado a Let’s Encrypt
  3. La clave privada permanece en la memoria de tu navegador — nunca se transmite
  4. Let’s Encrypt firma la clave pública y devuelve tu certificado
  5. Descargas tanto el certificado (público) como la clave privada a tu servidor

Que la clave privada exista solo en la memoria del navegador es por lo que GetHTTPS es más privado que las herramientas que generan claves en un servidor remoto.

Preguntas frecuentes

¿Pueden los computadores cuánticos romper la criptografía de clave pública?

Los computadores cuánticos actuales no pueden. Pero un computador cuántico suficientemente potente ejecutando el algoritmo de Shor podría romper RSA y ECC. La industria se está preparando con la criptografía post-cuántica — nuevos algoritmos (ML-KEM, ML-DSA) resistentes a ataques cuánticos. TLS los adoptará en modo híbrido (clásico + post-cuántico) sin cambiar cómo funcionan los certificados.

¿Por qué no usar solo cifrado asimétrico para todo?

Velocidad. Las operaciones asimétricas son aproximadamente 1000x más lentas que las simétricas. Cifrar una página web con RSA sería imprácticamente lento. En su lugar, TLS usa criptografía asimétrica solo para la negociación (~1ms), luego cambia a simétrica (AES) para los datos — que funciona a velocidad de hardware.

¿Una clave ECC de 256 bits es realmente segura?

256 bits de ECC proporciona ~128 bits de seguridad — lo que significa que un atacante necesitaría aproximadamente 2^128 operaciones para romperla. Eso es más operaciones que átomos en el universo observable. Es seguro para el futuro previsible (excluyendo computadores cuánticos, que requieren algoritmos completamente diferentes).

¿Cuál es la diferencia entre cifrar y firmar?

Cifrar: Proteger la confidencialidad. Cifrar con la clave pública del destinatario → solo su clave privada puede descifrar. Firmar: Probar la autenticidad. Firmar con tu clave privada → cualquiera con tu clave pública puede verificar que provino de ti y no fue modificado. Los certificados TLS usan firmas; la transferencia de datos TLS usa cifrado.

Artículos relacionados

SSL y certificados 2026-05-07
Cómo funciona SSL/TLS: el handshake TLS explicado
Un recorrido visual del handshake TLS: cómo tu navegador y un servidor establecen una conexión cifrada en milisegundos. Cubre TLS 1.2, TLS 1.3, reanudación de sesión y secreto perfecto hacia adelante.
SSL y certificados 2026-05-07
Certificados ECC vs RSA: ¿cuál deberías elegir?
Compara certificados ECC (ECDSA P-256) y RSA (2048/4096 bits). Las claves ECC son más pequeñas y rápidas. Aprende por qué GetHTTPS usa ECC por defecto y cuándo RSA todavía tiene sentido.
SSL y certificados 2026-05-08
¿Qué es un certificado SSL?
Un certificado SSL es un archivo digital que autentica un sitio web y habilita conexiones HTTPS cifradas. Aprende qué contiene un certificado, cómo funciona, cómo obtener uno gratis y por qué todo sitio lo necesita.
SSL y certificados 2026-05-07
¿Qué es un CSR (Solicitud de Firma de Certificado)?
Un CSR es un mensaje enviado a una Autoridad Certificadora para solicitar un certificado SSL. Aprende qué contiene un CSR, cómo se genera y por qué GetHTTPS lo maneja automáticamente.
Obtén un certificado SSL gratuito en tu navegador
Sin instalación, sin cuenta. Tu clave privada nunca sale de tu dispositivo.
Obtener certificado