Ofuscación de direcciones de correo
CifradoTodo se ejecuta en tu navegador: no se sube nada
Convierte una dirección de correo en formas que se leen con normalidad y se raspan inútilmente. La idea es sencilla: escribe `me@example.com` como `me@…` (es decir, entidades HTML) y el navegador lo representa exactamente igual que antes: quien lo lee lo ve, lo pulsa y lo copia sin ninguna diferencia. Un rastreador de spam, en cambio, recoge una ristra de caracteres de entidad y, salvo que decodifique entidades específicamente, la dirección nunca llega a su base de datos. Es el enfoque menos intrusivo para este problema desde hace veinte años. ⚠️ Pero detiene a los rastreadores corrientes que cosechan direcciones y no es una medida de seguridad: un rastreador que decodifique entidades HTML la obtiene igual. No lo trates como protección de una dirección que de verdad necesites mantener privada; la única opción real ahí es no publicarla en claro (usa un formulario de contacto).
Funciones
- Cinco formas a la vez: entidades decimales, entidades hexadecimales, una etiqueta <a> lista para pegar, codificación porcentual y escapes JS
- Modo «codificar solo @ y .»: la página muestra la dirección en claro mientras un rastreador ya no ve una utilizable
- Un enlace completo listo para pegar, con la dirección dentro del href codificada también
- Cada fila se copia por separado, sin seleccionar a mano de una cadena larga
- Se ejecuta por completo en el navegador; la dirección no se sube a ningún sitio
Cómo se usa
- Pega o escribe la dirección de correo en el campo de entrada
- Marca «codificar solo @ y .» si quieres que el código fuente siga siendo legible
- Copia la fila del enlace listo para pegar en el código de tu página
- Comprueba en un navegador que se muestra bien y que al pulsar se abre el cliente de correo
Preguntas frecuentes
- ¿Esto detiene de verdad a los rastreadores de spam?
- Detiene a bastantes, no a todos: cuenta con eso. La gran mayoría de los rastreadores usan una expresión regular simple para sacar `xxx@yyy.zzz` del HTML, y la codificación en entidades destruye ese patrón, así que se les escapa. Los rastreadores hechos específicamente para vencer la ofuscación decodifican primero las entidades HTML y no se dejan engañar. Trátalo como una medida barata con un beneficio limitado: un minuto de esfuerzo que nunca hace daño, pero no cuentes con ella para resolver el spam, y desde luego no la uses para ocultar una dirección que necesites mantener privada.
- ¿Qué sentido tiene codificar solo @ y .?
- Mantiene el cambio al mínimo. La página sigue mostrando me@example.com, porque el navegador convierte `@` otra vez en @, mientras que el código fuente ya no contiene la cadena contigua me@example.com en ningún sitio. Un beneficio práctico: buscar la dirección en tu propio código después sigue encontrando casi todo, porque `me` y `example` permanecen en texto claro, así que el mantenimiento sigue siendo comprensible. El coste es una protección algo más débil: contra un rastreador experto la diferencia es pequeña en cualquier caso.
- Después de pegar, el enlace no funciona o se ve mal
- Primero comprueba qué fila pegaste. La fila lista para pegar es un `<a href="mailto:…">…</a>` completo y puede ir directa al cuerpo de la página; si solo quieres el texto de la dirección, usa una fila de entidades. Ten en cuenta además que pegar en Markdown, en un editor de texto enriquecido o en el modo WYSIWYG de un CMS puede hacer que el editor vuelva a escapar las entidades a `&#109;`, que el navegador muestra entonces literalmente como `m`. Cambia al modo de código HTML y pega ahí.
- ¿Hay un enfoque más contundente?
- Tres opciones, de menor a mayor contundencia. Primera, no publicar la dirección en claro: usa un formulario de contacto, o pide a los visitantes que se pongan en contacto por otra vía. Segunda, sustituirla por una imagen, que los rastreadores no pueden leer pero que es incómoda de copiar en el móvil y que un lector de pantalla no puede leer en voz alta, así que tiene costes de accesibilidad. Tercera, montar la dirección con JavaScript tras la carga, que es más fuerte que las entidades pero invisible para quien tenga JS desactivado. En la práctica: la codificación en entidades basta para un sitio personal con publicaciones ocasionales, y cualquier cosa comercial debería usar un formulario.
Herramientas relacionadas
Entidades HTML
CifradoConvierte < > & y las comillas en entidades HTML y las devuelve en una sola pasada, así que &lt; da <, no un ángulo. En tu navegador.
Codificar URL
CifradoEscapa texto a la forma %XX y lo devuelve, tratando una URL completa y un valor de parámetro como trabajos distintos. Todo en tu navegador.
Visor UTF-8
CifradoMuestra bytes UTF-8, puntos de código, codificación porcentual, entidades HTML y escapes en paralelo, con caracteres y bytes contados aparte.
Base64
CifradoConvierte texto a Base64 y al revés, con UTF-8 correcto para acentos, chino y emoji. Todo se ejecuta en tu navegador: no se sube nada.
JWT (decodificar y verificar)
CifradoDivide un JWT en cabecera, payload y firma, verifica firmas HS256/384/512 con tu secreto y traduce exp y nbf a fechas. Todo en tu navegador.
Escape Unicode
CifradoConvierte texto no ASCII y emoji en escapes \uXXXX o \xXX y los devuelve, con los emoji escritos como pares suplentes correctos. En tu navegador.