BTSPACE WAGLE

Texto y desarrollo

Codificador y decodificador (URL, Base64, Unicode) (gratis)

Decodifica texto con porcentajes y Base64 al instante, en tu navegador

Pega el texto y se detecta la codificación y se decodifica por ti, incluidas las direcciones coreanas rotas.

Usar la herramientaCómo funciona

Archivo → Base64 / URI de datos

Todo se convierte dentro de este navegador; tu texto y tus archivos nunca se envían a un servidor ni se guardan. Codificar no es cifrar.

Cómo usar el codificador y decodificador

  1. Si no estás seguro de lo que tienes, deja seleccionada la «Detección automática» y pega el texto arriba. Averigua si es URL (%xx), secuencias Unicode (\uXXXX), entidades HTML (< y similares) o Base64, y lo decodifica al momento.
  2. Para elegir tú mismo, escoge el método (URL, Base64, entidades HTML, secuencias Unicode) y el sentido (codificar o decodificar). El resultado aparece debajo mientras escribes, junto con el recuento de caracteres y bytes.
  3. La codificación de URL te deja elegir un solo valor o una dirección completa, la codificación Base64 ofrece caracteres seguros para URL y omitir el = final, y HTML y Unicode te permiten decidir hasta dónde convertir el texto no ASCII.
  4. Usa el botón de copiar para llevarte el resultado, o envíalo de vuelta a la entrada para convertirlo una vez más. En el cuadro de archivos de abajo, un archivo de hasta 3 MB puede convertirse en Base64 o en una URI de datos y copiarse.

Cómo se decodifican las direcciones coreanas rotas

Cuando un texto no ASCII entra en una dirección, los bytes UTF-8 de cada letra se escriben como % más dos dígitos hexadecimales, lo que se llama codificación porcentual. Por ejemplo, la letra coreana 안 son los tres bytes UTF-8 EC 95 88, así que se convierte en %EC%95%88. La mayoría de los sitios usan UTF-8, pero algunos sitios coreanos antiguos aún generan direcciones EUC-KR (CP949), donde la palabra 한글 se escribe %C7%D1%B1%DB. La misma forma %xx decodificada como UTF-8 sale rota.

Para cada tramo de bytes %xx consecutivos, esta herramienta prueba primero UTF-8 y, si no es válido, prueba EUC-KR. Las direcciones que mezclan ambos se tratan tramo a tramo, y un fragmento que no se decodifica en ninguno se deja como está mientras la herramienta te indica cuántos quedan. Las direcciones codificadas dos veces, como %2525, se decodifican hasta tres veces cuando la opción está activada. Todo ocurre dentro de tu navegador.

Guía rápida de cada método

La codificación de URL sustituye por %xx los caracteres que tienen un significado en una dirección (? & = # / y similares) y los caracteres no seguros, como las letras no ASCII. encodeURI de JavaScript trata una dirección completa y deja en paz los caracteres estructurales, mientras que encodeURIComponent trata un solo valor y convierte también los caracteres estructurales. Usar encodeURI para un término de búsqueda en una consulta puede dejar sin tocar un & o un = y cortar el valor, así que ahí lo correcto es la opción de un solo valor. En las cadenas de consulta, a veces el espacio se escribe como +, por eso la decodificación ofrece la opción «tratar + como espacio».

Base64 convierte cada 3 bytes en 4 caracteres (letras mayúsculas y minúsculas, dígitos, + y /), así que el resultado es un 33 % más grande que el original. Cuando la longitud no es múltiplo de 3, se añade = como relleno, y la variante segura para URL usa - y _ en lugar de + y / para que quepa en direcciones y nombres de archivo. Aparece en los adjuntos de correo, en las URI de datos (data:image/png;base64,…) y en las dos primeras partes de un JWT, pero no es cifrado y cualquiera puede revertirlo.

Las entidades HTML como &lt; (<), &gt; (>), &amp; (&) y &quot; (") muestran caracteres que tienen un significado especial en HTML. También pueden escribirse por su número Unicode, como &#44544; o &#xAE00;. La decodificación de aquí trata las entidades con nombre más comunes y todas las numéricas, y deja intactos los nombres que no están en la lista.

Las secuencias Unicode escriben un carácter por su código, como \uAC00, y son habituales en las cadenas de JavaScript y JSON. Los caracteres con números grandes, como los emoji, se escriben como un par sustituto, como \uD83D\uDE00, o con llaves, como \u{1F600}. La decodificación lee \uXXXX, \u{…}, \xXX y U+XXXX.

Consejos para obtener buenos resultados

  • Codificar no es cifrar. Cualquiera puede revertir una contraseña o un token convertidos, así que nunca pegues secretos en lugares públicos.
  • Elige «Un solo valor» al codificar algo como un término de búsqueda y «Una dirección completa» al tratar una dirección entera.
  • Si un resultado decodificado sigue viéndose mal, el original puede ser un dato binario o de otro juego de caracteres. Un resultado Base64 que no es texto se muestra en hexadecimal y puede guardarse como archivo.
  • Decodificar un enlace o un registro antes de compartirlo muestra si hay información personal (nombres, teléfonos, tokens) escondida dentro de la dirección.
  • Si la detección automática se equivoca, elige tú el método. Una palabra corta en inglés puede parecer de vez en cuando Base64.

Preguntas frecuentes

¿Por qué una dirección coreana se ve como %EC%95%88?

En una dirección solo son seguras las letras, los dígitos y unos pocos símbolos, así que el texto no ASCII se escribe con codificación porcentual: los bytes UTF-8, cada uno como % más dos dígitos hexadecimales. Por ejemplo, la letra coreana 안 son los tres bytes UTF-8 EC 95 88, así que se convierte en %EC%95%88. Las barras de direcciones de los navegadores suelen mostrarla decodificada, pero al copiarla sale esta forma.

¿Qué son las direcciones como %C7%D1%B1%DB que salen rotas?

Algunos sitios coreanos antiguos codifican con EUC-KR (CP949) en lugar de UTF-8, así que la palabra 한글 aparece como %C7%D1%B1%DB. Para cada tramo de bytes %xx consecutivos, esta herramienta prueba primero UTF-8 y recurre a EUC-KR, de modo que las direcciones que mezclan ambos aún pueden leerse.

¿Base64 hace que los datos sean seguros?

No. Base64 es solo una forma de escribir bytes como texto y cualquiera puede revertirlo al instante. Codificar una contraseña o un token en Base64 no lo protege; los secretos necesitan cifrado real o control de acceso.

¿Qué diferencia hay entre encodeURI y encodeURIComponent?

encodeURI codifica una dirección completa y deja en paz los caracteres estructurales como : / ? # & =, mientras que encodeURIComponent codifica un solo valor y convierte también esos caracteres a %xx. Usa la opción de un solo valor para un valor de consulta, como un término de búsqueda, y la de dirección completa para una dirección entera.

¿Mi texto o mi archivo se envía a algún sitio?

No. Todo se convierte dentro de este navegador y no se envía ni se guarda nada en un servidor. La conversión de archivos admite archivos de hasta 3 MB.

Notas y limitaciones

Esta herramienta es una ayuda de referencia para la conversión. La detección automática adivina por la forma y puede equivocarse, y la restauración de EUC-KR solo funciona con los juegos de caracteres que admite tu navegador. Tu texto y tus archivos nunca se envían a un servidor ni se guardan. BTSPACE WAGLE es un sitio de información no oficial.