Si te interesa la seguridad online, seguro que has oído hablar de Encrypted Client Hello (ECH) en los últimos meses. Es una tecnología que ya se está activando por defecto en navegadores como Firefox y Chrome. Viene a tapar el último gran agujero de privacidad en la navegación HTTPS, pero como todo lo que toca el cifrado, también tiene sus matices. Vamos a ver qué es, por qué se está imponiendo ahora y qué implicaciones puede tener.
El problema con el SNI
Imagina que mandas una carta con un sobre cerrado (el contenido de la web, cifrado), pero en el exterior escribes con letras enormes el nombre del destinatario. Cualquiera que vea el sobre sabe a quién le escribes. Eso es el Server Name Indication (SNI) : un campo necesario en el handshake de TLS que indica qué sitio web quieres visitar. Hasta hace poco, ese campo viajaba en texto plano en la primera comunicación entre tu navegador y el servidor.
Este tipo de exposición de información en texto plano es similar a lo que ocurre con otras malas prácticas de seguridad, como dejar datos sensibles visibles en buscadores. Si quieres profundizar en cómo los atacantes pueden descubrir vulnerabilidades sin necesidad de romper cifrados, te recomendamos leer sobre Google Dorking y cómo expone secretos digitales.
El resultado: tu proveedor de internet, el administrador del WiFi del aeropuerto o cualquiera que entre en la red podía saber qué páginas visitabas, aunque el contenido estuviera cifrado. Y eso ha sido así durante años.
La solución: Encrypted Client Hello (ECH)
Encrypted Client Hello (ECH) es la evolución necesaria. Su objetivo es cifrar ese saludo inicial, incluyendo el SNI, para que nadie pueda espiar tus destinos. Es una extensión del protocolo TLS que ha ido madurando y que ahora está empezando a activarse de forma masiva.

¿Por qué ahora?
Porque grandes actores como Cloudflare y Fastly (que gestionan el tráfico de millones de sitios) ya lo soportan, y los navegadores han empezado a activarlo por defecto. En Firefox, las flags correspondientes se han vuelto estables y se están habilitando gradualmente para todos los usuarios. En Chrome ocurre algo similar. Esto significa que, sin que te des cuenta, es probable que ya estés usando ECH en muchas de tus conexiones.
¿Cómo funciona a nivel técnico?
Antes de conectar, tu navegador consulta un registro DNS especial (tipo HTTPS) que contiene una clave pública del sitio al que quieres ir.
En el handshake, el navegador envía dos Client Hello: uno externo (en texto plano) con un nombre de servidor genérico, y otro interno (cifrado con esa clave pública) que contiene el nombre real del sitio.
El servidor recibe el paquete, descifra la capa interna con su clave privada y continúa la conexión normal.
Para un observador externo, parece que te conectas a un sitio genérico, no al que realmente visitas. Es una doble capa que protege el destino real.

¿Qué implica esto en el día a día?
Para la mayoría de los usuarios, la transición es transparente: la web sigue funcionando igual, pero con más privacidad. Sin embargo, esta mayor privacidad también puede afectar a herramientas que dependían de ver el SNI para funcionar.
Por ejemplo, algunos sistemas de control parental, firewalls corporativos o bloqueadores de anuncios a nivel de red (como Pi-hole) solían basarse en el SNI para filtrar contenido. Con ECH, ese SNI deja de ser visible, por lo que esas herramientas pierden parte de su efectividad. No es que dejen de funcionar del todo, pero sí que tienen que adaptarse a otros métodos, como el bloqueo a nivel de DNS.
Estado actual: ¿dónde se está normalizando?
Firefox
Soporte estable desde hace meses; se activa por defecto en versiones recientes (puedes verificarlo en about:config buscando network.dns.echconfig.enabled y network.dns.use_https_rr_as_altsvc).
Chrome/Chromium
Lo ha ido implementando progresivamente. En versiones recientes, si el servidor lo soporta, lo usa.
CDNs:
Cloudflare, Fastly y otros ya ofrecen ECH de forma predeterminada para sus clientes. Esto cubre una enorme cantidad de sitios web.
Puedes comprobar si tu navegador ya lo usa visitando este enlace (te indicará el estado de ECH en tu conexión).

¿Qué implica para desarrolladores y administradores?
Si tienes un sitio web, lo más probable es que, si usas un CDN, ECH ya esté funcionando sin que toques nada. Si administras tu propio servidor, deberás actualizar tu software (Nginx, Apache, etc.) a versiones que soporten ECH, generar las claves correspondientes y publicar los registros HTTPS en tu DNS. Es una configuración no trivial, pero cada vez más documentada.
Resumiendo
Encrypted Client Hello (ECH) es una de esas mejoras silenciosas que están convirtiendo la web en un lugar más seguro. La transición ya está en marcha y, aunque pueda suponer algún ajuste para sistemas de filtrado tradicionales, el balance es claramente positivo para la privacidad de los usuarios.
¿Ya habías oído hablar de ECH? ¿Has notado algún cambio en tu navegador o en tus herramientas de seguridad? Te leemos en comentarios.
