El código de esta página no ha arrancado.

Abrir index.html directamente desde una carpeta bloquea los módulos de JavaScript, así que no pasará nada al elegir un archivo. En vez de eso, sirve la carpeta por http:

powershell -ExecutionPolicy Bypass -File serve.ps1

Abre después http://localhost:8080/.

Codificador y decodificador Base64 — y URL, entidades HTML, hexadecimal y escapes

Base64, codificación porcentual, entidades HTML, hexadecimal y escapes con barra invertida, en los dos sentidos. Nada se pega en el servidor de nadie.

Idioma: Español
Ver el código
Tus textos se procesan en tu navegador. No se suben para procesarlos.

Cada codificación de aquí es aritmética sobre una cadena de texto, hecha aquí, en esta página. Los códecs están escritos a mano y viven en src/encode.js; y no hay nada más. Esta herramienta no tiene ninguna función de red, nada que pedir y nada que enviar, lo cual importa aquí más que en casi ningún otro sitio: lo que la gente pega en un decodificador de Base64 en línea es un token, y pegar un token en la web de otra persona es entregárselo.

Comprobación en directo: comprobando…

Sin conexión: comprobando…

No hace falta que nos creas. Abre las herramientas de desarrollo, ponte en la pestaña «Red» y decodifica algo. No verás ni una petición que lleve un carácter de lo que has pegado. O desconéctate de internet y decodifícalo igualmente.

1 Elige la codificación

En qué sentido

2 Pégalo

vacío

3 Llévate el resultado

Todavía nada.

 

Ver como Markdown

Cómo codificar o decodificar Base64 sin subirlo

  1. Elige la codificación. Base64 en los dos alfabetos, codificación porcentual para un valor suelto o para una URL entera, las cinco entidades HTML, bytes en hexadecimal y los escapes con barra invertida de un literal de cadena. La nota bajo el menú dice para qué sirve cada una.
  2. Elige el sentido. Codificar toma texto plano y produce la forma codificada; Decodificar devuelve la forma codificada al texto plano. El resultado sigue tu escritura, así que cambiar de sentido es un clic y nada que volver a teclear.
  3. Pégalo, o suelta el archivo. Vale cualquier cosa que puedas seleccionar y copiar. Un archivo soltado sobre el selector lo lee tu propio navegador y lo pone en la caja: aquí no hay ningún paso de subida que omitir.
  4. Lee el error, si lo hay. Un decodificador que falla aquí dice qué encontró — un carácter que el Base64 no usa, relleno donde no toca, bytes que no son texto — en vez de devolver algo plausible y equivocado.
  5. Llévate el resultado. Cópialo, o descárgalo como archivo de texto. Los contadores bajo la caja dicen cuántos bytes entraron y cuántos salieron.

La versión larga

¿Base64 es un cifrado? No, y la diferencia importa en la práctica. Codificar, cifrar y hashear resuelven tres problemas distintos: lo primero lo deshace cualquiera, lo segundo quien tiene la clave, lo tercero nadie. Cuál es cuál, y cómo reconocerlos a simple vista.

Preguntas

¿Se sube mi texto a alguna parte?

No. Cada codificador y cada decodificador de esta página es una función que corre en tu propio navegador, en tu propio equipo. Esta herramienta no tiene ninguna función de red: nunca pide nada y nunca envía nada, y la Content-Security-Policy de la página nombra todas las direcciones que puede contactar, ninguna de las cuales es nuestra. Esa es la razón para usarla con un token de acceso o una cookie de sesión: pegar cualquiera de esas cosas en el decodificador de otra persona es entregársela.

¿El Base64 de aquí es el mismo Base64 que en todas partes?

Sí: se comprueba contra los vectores de prueba del RFC 4648 y no contra sí mismo. Los dos alfabetos se decodifican, así que un JWT escrito con - y _ se lee tan bien como uno escrito con + y /, y la entrada partida a 64 caracteres se junta por ti. La codificación va por bytes UTF-8, así que una letra acentuada o un emoji sobrevive a la ida y vuelta.

¿Base64 es un cifrado?

No, y tomarlo por uno es el error clásico. Base64 es una ortografía: los mismos bytes, escritos en un alfabeto que sobrevive a una URL, a un correo o a una cadena JSON. Cualquiera puede leerlo de vuelta — esta página lo hace en un milisegundo —, así que no esconde nada y no protege nada. Si lo que tienes es secreto, necesita cifrado de verdad antes de codificarse, no en su lugar.

¿Por qué falló la decodificación?

Porque lo pegado no es exactamente lo que se le dijo al códec que era, y el error dice en qué sentido: un carácter fuera del alfabeto Base64, relleno donde no toca, un signo de porcentaje sin dos dígitos hexadecimales detrás, o bytes que sí se decodifican desde Base64 pero no son texto UTF-8 — lo que suele significar que el original era un archivo y no una cadena. El atob del navegador habría devuelto algo plausible en su lugar; que te lo digan es todo el sentido de pegar algo en un decodificador.

¿Cuál es la diferencia entre las dos codificaciones de dirección web?

Un valor suelto, o la dirección entera. Codificar un valor escapa todo aquello a lo que una URL da significado — las barras, los signos de interrogación, los ampersands —, que es lo que quieres para un solo parámetro de la cadena de consulta. Codificar una URL entera deja la dirección funcionando: las barras y el ? se quedan, y solo se escapan los caracteres que una URL no puede llevar de ninguna manera. Usar lo primero sobre una dirección entera rompe la dirección; usar lo segundo sobre un valor pierde dónde acaba el valor.

¿De qué tamaño puede ser el archivo?

Aquí no hay ningún límite puesto, porque no hay ningún servidor pagándolo. El techo práctico es tu propio equipo: unos cuantos megabytes de texto van bien, y con un documento muy largo la página espera una pausa en tu escritura antes de recodificar, en vez de pelearse contigo por el teclado.

¿Es gratis? ¿Necesito una cuenta?

Es gratis, y no hay cuenta, ni inicio de sesión, ni versión de prueba, ni límite de cuánto pegas. El sitio lleva publicidad, que es lo que lo paga, y a los anuncios no se les da nada sobre tu texto.

¿Funciona sin conexión?

Sí. Carga la página una vez, desconéctate de internet y verás que sigue funcionando. Esa es además la forma más sencilla de demostrar que no se sube nada: una herramienta que mandara tu texto fuera a decodificar se pararía en cuanto desenchufaras.