HTTP vs HTTPS: Diferencias, Seguridad y Por Qué Debes Usar HTTPS

Cada vez que visitas una página web, tu navegador se conecta usando HTTP o HTTPS. La "S" al final significa Secure (seguro), y marca la diferencia entre enviar tus datos en texto plano o cifrados. Desde 2018, Google marca los sitios HTTP como "No seguros", y HTTPS es ahora un factor de ranking SEO. En esta guía explicamos todo lo que necesitas saber sobre la diferencia entre HTTP y HTTPS, cómo funciona el cifrado TLS, y por qué deberías usar HTTPS en todos tus proyectos web.

¿Qué es HTTP?

HTTP (HyperText Transfer Protocol) es el protocolo que usa la web para comunicarse. Cuando escribes una URL en tu navegador, este envía una petición HTTP al servidor, y el servidor responde con el contenido de la página. Es el fundamento sobre el que se construyó toda la web.

El problema es que HTTP no cifra los datos. Todo viaja en texto plano: contraseñas, cookies, datos personales, números de tarjeta — todo es legible por cualquiera que intercepte la conexión. Esto incluye tu ISP, administradores de redes WiFi públicas, y cualquier atacante en la misma red.

En una conexión WiFi de café, por ejemplo, cualquier persona con un sniffer de paquetes puede ver todo lo que envías por HTTP. Esto es especialmente peligroso en formularios de login, donde las contraseñas viajan sin protección. Para ocultar tu actividad en redes públicas, usa siempre HTTPS combinado con una VPN.

¿Qué es HTTPS?

HTTPS (HTTP Secure) es HTTP sobre una conexión cifrada con TLS (Transport Layer Security, anteriormente SSL). Los datos se cifran antes de enviarse, de modo que incluso si alguien intercepta la conexión, solo verá datos incomprensibles. Puedes verificar qué puertos tiene abiertos tu servidor con un escaneo de puertos.

HTTPS no solo cifra los datos — también verifica la identidad del servidor mediante un certificado digital, asegurando que te conectas al sitio real y no a un impostor. Esto protege contra ataques de man-in-the-middle, donde un atacante se interpone entre tu y el servidor legítimo. Aprende más sobre seguridad online en nuestra guía.

Hoy en día, más del 95% del tráfico web en Colombia y el mundo usa HTTPS. Los navegadores modernos muestran una advertencia explícita para sitios HTTP.

Diferencias clave entre HTTP y HTTPS

CaracterísticaHTTPHTTPS
Puerto80443
CifradoNingunoTLS/SSL
Datos en tránsitoTexto plano (legible)Cifrados (ilegibles)
CertificadoNo requiereRequiere certificado SSL
VelocidadLigeramente más rápido (sin cifrado)HTTP/2 solo disponible en HTTPS (más rápido)
SEOPenalizado por GoogleFactor de ranking positivo
NavegadorMarcado "No seguro"Candado verde ✓
IntegridadSe puede modificar en tránsitoProtegido contra modificación
AutenticidadNo verificableVerificada por certificado

Cómo funciona el handshake TLS

La conexión HTTPS comienza con un handshake TLS — una negociación entre tu navegador y el servidor para establecer una conexión cifrada. Este proceso ocurre en milisegundos y es transparente para el usuario:

  1. Client Hello: Tu navegador envía la versión de TLS soportada y una lista de cifrados disponibles. También incluye extensiones como Server Name Indication (SNI) para sitios con múltiples dominios en un servidor
  2. Server Hello: El servidor responde con la versión de TLS elegida, el cifrado seleccionado y su certificado digital. Este certificado es emitido por una Autoridad Certificadora (CA) de confianza
  3. Verificación del certificado: Tu navegador verifica que el certificado fue emitido por una CA de confianza, que no ha expirado, y que corresponde al dominio que estás visitando. Si algo falla, verás una advertencia
  4. Intercambio de claves: Ambas partes generan una clave de sesión compartida usando Diffie-Hellman o mecanismos similares. Esta clave se usa para cifrar toda la comunicación posterior
  5. Conexión cifrada: A partir de este momento, todos los datos se cifran con la clave de sesión. Incluso si alguien intercepta los paquetes, no podrá leerlos sin la clave

Todo este proceso ocurre en milisegundos y es transparente para el usuario. El cifrado simétrico (con la clave de sesión) es mucho más rápido que el asimétrico, por eso TLS solo lo usa para el intercambio de claves.

Tipos de certificados SSL

Por nivel de validación

Por cobertura

La mayoría de sitios pueden usar un certificado DV gratuito de Let's Encrypt. Los certificados OV y EV son necesarios solo para organizaciones que necesitan verificación de identidad.

Cómo obtener un certificado SSL gratis

Let's Encrypt ofrece certificados DV gratuitos, válidos por 90 días y renovables automáticamente:

# Con Certbot (recomendado)
sudo certbot --nginx -d miip.link -d www.miip.link

# Con acme.sh
acme.sh --issue -d miip.link --nginx

# Con Cloudflare (para sitios en CF)
# Cloudflare ofrece SSL gratis en todos los planes

La mayoría de hosting modernos (Cloudflare Pages, Vercel, Netlify, GitHub Pages) incluyen HTTPS automáticamente sin configuración adicional. Si tu hosting no ofrece SSL, considera cambiar a uno que sí lo haga.

HTTPS y SEO

Google ha confirmado que HTTPS es un factor de ranking desde 2014, y su importancia solo ha aumentado:

Si tu sitio está en HTTP, estás perdiendo tráfico y confianza. La migración a HTTPS es gratuita y directa. Para más consejos de seguridad online, consulta nuestro artículo dedicado. Para más consejos de optimización, consulta nuestro blog.

Cómo migrar de HTTP a HTTPS

Migrar a HTTPS es un proceso que debe hacerse correctamente para no perder posicionamiento SEO:

  1. Obtener un certificado SSL — Let's Encrypt es gratis y fácil de instalar
  2. Instalar el certificado en tu servidor web
  3. Configurar redirección — todo el tráfico HTTP → HTTPS (redirección 301 permanente)
  4. Actualizar URLs internas — cambiar http:// por https:// en todos los links, imágenes, scripts y CSS
  5. Actualizar el canonical — los tags link rel="canonical" deben apuntar a HTTPS
  6. Actualizar el sitemap — todas las URLs con HTTPS en el sitemap.xml
  7. Actualizar Google Search Console — añadir la propiedad HTTPS como nueva propiedad
  8. Actualizar Google Analytics — cambiar la URL de la propiedad a HTTPS
  9. Actualizar HSTS — añadir el header Strict-Transport-Security para obligar HTTPS
  10. Verificar mixed content — asegurar que no hay recursos HTTP en páginas HTTPS

Redirección HTTP → HTTPS en nginx

server {
    listen 80;
    server_name miip.link www.miip.link;
    return 301 https://$server_name$request_uri;
}

Redirección HTTP → HTTPS en Apache

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

HSTS header

# Obligar HTTPS por 1 año
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

HSTS le dice al navegador que siempre debe usar HTTPS para tu dominio, incluso si el usuario escribe http://. Después de configurarlo, puedes enviar tu dominio a la lista HSTS preload para que los navegadores lo incluyan de fábrica.

HTTP/2 y HTTP/3

HTTP/2 solo funciona sobre HTTPS en la práctica (todos los navegadores lo exigen). Sus ventajas sobre HTTP/1.1 son significativas:

HTTP/3 usa QUIC (sobre UDP) y es aún más rápido, especialmente en conexiones inestables. QUIC resuelve el problema de head-of-line blocking de TCP, donde un paquete perdido bloquea todos los demás.

Errores comunes de HTTPS

Usa herramientas como DNS lookup para verificar la configuración DNS de tu dominio, y un escaneo de puertos para confirmar que solo los puertos necesarios están abiertos. También puedes consultar la información Whois del dominio.

HTTPS en APIs y servicios web

HTTPS no es solo para páginas web. Las APIs y servicios web también deben usar cifrado:

La API de miip.link usa HTTPS para proteger las consultas de los usuarios, y deberías hacer lo mismo con cualquier servicio que expongas a Internet, especialmente en puertos sensibles.

Preguntas frecuentes

¿HTTPS hace mi sitio más lento?

No. Con HTTP/2 (que solo funciona sobre HTTPS), tu sitio puede ser más rápido que HTTP gracias a la multiplexación y compresión de headers. El overhead del handshake TLS es mínimo (1-2ms) y solo ocurre en la primera conexión. Las conexiones posteriores usan sesiones TLS resumidas que son prácticamente instantáneas.

¿Necesito HTTPS si mi sitio no tiene formularios?

Sí. Google marca todos los sitios HTTP como "No seguros", y los datos de referencia se pierden sin HTTPS. Además, HTTPS protege la integridad del contenido — sin HTTPS, un ISP podría inyectar anuncios o modificar tu página. En redes WiFi públicas, los atacantes pueden inyectar malware en páginas HTTP.

¿Let's Encrypt es seguro?

Sí. Los certificados de Let's Encrypt son tan seguros como los de CA pagas. El cifrado TLS es idéntico independientemente del emisor del certificado. La única diferencia es que Let's Encrypt no incluye validación de organización (OV/EV), pero para la gran mayoría de sitios, un certificado DV es suficiente.

¿Puedo usar un certificado wildcard?

Sí, con Let's Encrypt usando DNS-01 challenge, o comprándolo a una CA. Los certificados wildcard cubren todos los subdominios (*.ejemplo.com). Son útiles cuando tienes muchos subdominios y no quieres gestionar certificados individuales para cada uno.

¿Qué pasa si mi certificado expira?

Los navegadores muestran una pantalla de error que dice "Su conexión no es segura". Los usuarios no podrán acceder a tu sitio (a menos que hagan clic en "Continuar bajo su riesgo", lo cual no deberían hacer). Configura renovación automática y monitoreo para que esto nunca ocurra.

¿Cómo verifico si mi sitio usa HTTPS correctamente?

Visita tu sitio y verifica que aparezca el candado en la barra de direcciones. También puedes usar herramientas online como SSL Labs Server Test para un análisis detallado de tu configuración TLS. Si quieres verificar la configuración DNS de tu dominio, usa nuestra herramienta de DNS lookup.

¿Tu sitio usa HTTPS?

Visita miip.link — nuestro sitio usa HTTPS y HTTP/2 para máxima velocidad y seguridad. Verifica tu configuración DNS o escanea tus puertos para asegurar tu servidor.