Codificador / Decodificador Base64
Codifica texto o archivos en Base64 y decodifícalos: alfabeto estándar o URL-safe, relleno, saltos cada 76 caracteres y vista previa de imágenes. En tu navegador.
Tus datos de entrada y archivos no salen del navegador
Escriba texto para codificar o pegue Base64 para decodificar, o suelte un archivo abajo.
Arrastra y suelta un archivo aquí
Si seleccionas un archivo, se usará en lugar del texto.
Aquí aparecerá el resultado codificado o decodificado.
En esta página
Convierte texto o cualquier archivo a Base64 y viceversa sin subir nada. La codificación la hace en tu navegador un módulo WebAssembly compilado desde Rust; las imágenes decodificadas se previsualizan y los datos binarios se descargan con la extensión correcta.
Funcionalidad detallada
El texto se convierte primero en bytes con la codificación elegida (UTF-8, UTF-16LE, UTF-16BE, ASCII o ISO-8859-1) y luego se codifica con el alfabeto estándar RFC 4648 (+ y /) o con el alfabeto URL-safe (- y _) que usan los JWT y los parámetros de URL. El relleno = puede ser obligatorio, opcional o eliminarse, y la salida puede cortarse en líneas de 76 caracteres, como exige MIME en el correo.
Al decodificar, la herramienta analiza los bytes resultantes. El texto legible aparece en el campo de salida; las imágenes PNG, JPEG, GIF, WebP, BMP, ICO, TIFF y SVG se muestran como vista previa con su tamaño en píxeles; PDF, ZIP, GZIP, MP3, MP4 y ejecutables se reconocen por su firma. Todo lo que no sea texto se guarda con Descargar y la extensión adecuada, por ejemplo decoded.png.
Puedes elegir un archivo o arrastrarlo a la página; mientras haya un archivo seleccionado, el campo de texto se ignora. El archivo se lee en bloques de 1 MiB en un Web Worker con barra de progreso y botón Cancelar, pero se mantiene entero en memoria, así que el límite práctico es la RAM del dispositivo. Los resultados muy largos se muestran recortados y se guardan completos con Descargar.
Ejemplos prácticos
Texto a Base64: Hello, World! se codifica como SGVsbG8sIFdvcmxkIQ==; en UTF-8, Привет pasa a 0J/RgNC40LLQtdGC (12 bytes de entrada, 16 caracteres de salida).
URL-safe sin relleno: <<???>> da PDw/Pz8+Pg== con el alfabeto estándar y PDw_Pz8-Pg con URL-safe (-_) y Sin relleno, el formato de los segmentos JWT.
Entrada sin relleno: SGk falla con el relleno Requerido por defecto; cambia Relleno a Opcional y se decodifica como Hi.
Base64 a imagen: al pegar el Base64 de un PNG (empieza por iVBORw0KGgo) aparece la imagen con su tamaño, por ejemplo 1×1 px, y Descargar la guarda como decoded.png.
Cómo usar esta herramienta
Introduce texto o elige un archivo
Escribe o pega texto en Entrada (texto), o arrastra un archivo a la página o pulsa Elegir archivo. El archivo seleccionado tiene prioridad sobre el texto.
Ajusta las opciones
Elige Codificación del texto (normalmente UTF-8), Alfabeto (Estándar (+/) o URL-safe (-_)), Relleno y, para correo MIME, Salto de línea en 76 caracteres.
Codifica o decodifica
Pulsa Codificar para obtener Base64 o Decodificar para recuperar texto, una vista previa de imagen o un archivo binario. Si hay un error, el mensaje indica la causa, como un carácter no válido o un relleno incorrecto.
Copia o descarga el resultado
Copiar lleva la salida al portapapeles y Descargar la guarda como archivo. Intercambiar pasa la salida a la entrada para comprobar la conversión inversa.
Consejos y mejores prácticas
- Base64 aumenta el tamaño en torno a un 33%: cada 3 bytes se convierten en 4 caracteres. Es una codificación, no un cifrado; cualquiera puede decodificarla.
- Quita el prefijo
data:image/png;base64,de un data URI antes de decodificar: el decodificador solo acepta la parte Base64. - La cabecera y el payload de un JWT usan el alfabeto URL-safe sin relleno: elige URL-safe (-_) y relleno Opcional, y
eyJhbGciOiJIUzI1NiJ9se decodifica como{"alg":"HS256"}. - Deja activado Permitir espacios/saltos de línea para decodificar Base64 con saltos de correos o archivos PEM; desactívalo para comprobar que la entrada es una sola línea limpia.
- La codificación importa:
éesw6k=en UTF-8 pero6Q==en ISO-8859-1, así que decodifica con la misma que usaste al codificar. - Después de abrir la página una vez, sigue funcionando sin conexión.