La decodificación Base64 es el proceso inverso de la codificación Base64: convierte una cadena ASCII codificada en Base64 de vuelta a los datos binarios o texto originales. Cada 4 caracteres Base64 se decodifican en 3 bytes de datos originales. El decodificador busca cada carácter en el alfabeto Base64, reconstruye los grupos originales de 6 bits y los reensambla en bytes de 8 bits.
Los datos codificados en Base64 son reconocibles por su uso de letras mayúsculas y minúsculas, dígitos, y +/ (estándar) o -_ (seguro para URL), frecuentemente terminando con uno o dos caracteres de relleno =. Aparece con frecuencia en tokens JWT, adjuntos de correo electrónico, data URI, respuestas de API y archivos de configuración — en cualquier lugar donde datos binarios o estructurados deban estar incrustados en un contexto solo de texto.
¿Por qué usar esta herramienta?
Este decodificador maneja Base64 estándar y URL-safe, corrige automáticamente el relleno faltante y decodifica completamente en su navegador sin enviar datos a servidores.
⚡
Corrección automática de relleno
Muchas fuentes producen Base64 sin caracteres = finales. Esta herramienta calcula y añade automáticamente el relleno faltante antes de decodificar, previniendo excepciones InvalidCharacterError.
🛡️
Ambas variantes soportadas
Detecta y maneja automáticamente Base64 estándar (+/) y Base64 URL-safe (-_), para que pueda pegar tokens de cualquier fuente sin conversión manual.
🔒
Completamente del lado del cliente
La decodificación ocurre localmente en su navegador usando la API nativa atob. Sus datos — que pueden contener secretos o contenido sensible — nunca abandonan su dispositivo.
🌐
Salida Unicode
Decodifica correctamente texto codificado UTF-8 de vuelta a Unicode completo, incluyendo caracteres multibyte, emoji y scripts CJK.
Cómo usar este decodificador Base64 online
Sin cuenta, sin subida, sin instalación. Pega tu cadena Base64 en el campo de entrada y el resultado decodificado aparece al instante. Todo funciona en tu navegador — tus datos nunca salen de tu dispositivo.
1
Pega tu cadena Base64
Copia cualquier cadena codificada en Base64 — un JWT, una respuesta de API, un encabezado de adjunto de correo o un archivo de configuración — y pégala en el campo de entrada. Las variantes estándar y URL-safe se detectan automáticamente.
2
Detección automática y reparación
El decodificador identifica si tu entrada usa Base64 estándar (+/) o URL-safe (-_) y corrige automáticamente el relleno = faltante. No es necesario normalizar la cadena manualmente antes de decodificar.
3
Inspecciona la salida
El texto decodificado aparece en el campo de salida. Si los datos originales eran texto UTF-8, se muestran como caracteres legibles. Los datos binarios se muestran tal cual. Aparece un mensaje de error si la entrada contiene caracteres inválidos que no se pueden decodificar.
4
Copia o usa el resultado
Haz clic en Copiar para tomar la salida decodificada, o úsala directamente en tu flujo de trabajo. ¿Necesitas recodificar el resultado? Cambia a la herramienta Codificador Base64 con un solo clic.
Cómo funciona la decodificación
Cada carácter Base64 se mapea a un valor de 6 bits (0–63). Cuatro caracteres consecutivos proveen 24 bits, que se decodifican en 3 bytes de datos originales. El ejemplo a continuación muestra cómo "TWFu" se decodifica de vuelta a "Man":
Ejemplo "Man" → TWFu → "Man"
Car.
Índice
6 bits
T
19
010011
W
22
010110
F
5
000101
u
46
101110
Los cuatro grupos de 6 bits (010011 010110 000101 101110) se concatenan a 24 bits, luego se dividen en tres bytes de 8 bits: 01001101 (M=77), 01100001 (a=97), 01101110 (n=110).
Entendiendo el relleno
La codificación Base64 agrupa los bytes de entrada en conjuntos de 3. Cuando la longitud de entrada no es divisible por 3, se añaden caracteres de relleno (=) para completar el grupo final. Al decodificar, estos caracteres = se eliminan y el decodificador sabe descartar los bits cero adicionales añadidos durante la codificación.
Original
Codificado
Regla de relleno
A
QQ==
1 byte → 2 padding chars
AB
QUI=
2 bytes → 1 padding char
ABC
QUJD
3 bytes → no padding needed
Casos de uso comunes
Inspeccionar cargas útiles JWT
Los tokens JWT consisten en tres segmentos codificados en Base64 URL-safe. Decodificar el segundo segmento (carga útil) revela las reclamaciones: ID de usuario, roles, tiempo de expiración y otros metadatos — sin necesitar una clave de firma.
Leer respuestas de API
Las APIs REST frecuentemente devuelven datos binarios (contenidos de archivos, miniaturas, material criptográfico) codificados en Base64 en respuestas JSON. Decodifique el campo para leer los datos originales.
Decodificar contenido de correo
Los cuerpos y adjuntos de correo MIME están codificados en Base64. Decodificarlos revela el contenido de texto original o permite reconstruir adjuntos binarios.
Extraer secretos de Kubernetes
Kubernetes almacena valores secretos como Base64 en manifiestos YAML. Decodificarlos revela las contraseñas, tokens y claves reales almacenados en el clúster — útil para depuración y auditoría.
Depurar configuración
Las variables de entorno y secretos de pipeline CI/CD frecuentemente están codificados en Base64 para almacenamiento seguro en archivos de configuración YAML o JSON. Decodifíquelos para verificar los valores reales durante la depuración.
Decodificar URIs de datos
Las URIs de datos incrustan recursos codificados en Base64 directamente en HTML/CSS. Decodifique la porción Base64 para extraer la imagen original, fuente u otro recurso incrustado.
Errores comunes
Estas son las causas más frecuentes de errores de decodificación Base64 en la práctica:
✕
Relleno faltante
Las cadenas Base64 deben tener una longitud múltiplo de 4. Muchas APIs y bibliotecas JWT eliminan los = finales por compacidad. Añada el relleno: el conteo de = faltantes es (4 - longitud % 4) % 4.
✕
Caracteres URL-safe no convertidos
Base64 URL-safe usa - y _ en lugar de + y /. Si pasa Base64 URL-safe directamente a atob() o base64.b64decode(), fallará. Siempre reemplace - → + y _ → / antes de decodificar con bibliotecas estándar.
✕
Espacios en blanco y saltos de línea
Los certificados PEM, datos MIME y Base64 copiado y pegado frecuentemente contienen saltos de línea cada 76 caracteres. Elimine todos los espacios en blanco antes de decodificar para evitar InvalidCharacterError.
✕
Salida binaria vs texto
Base64 puede codificar cualquier dato binario, no solo texto. Si los datos originales eran un archivo binario (imagen, PDF), decodificarlo como texto UTF-8 producirá basura. Use el método de salida binaria apropiado para cargas útiles no textuales.
Ejemplos de código
Cómo decodificar una cadena Base64 en lenguajes y entornos populares:
JavaScript (browser)
// Standard Base64
const decoded = decodeURIComponent(escape(atob(encoded)))
// URL-safe Base64 (restore padding first)
function decodeUrlSafe(str) {
const padded = str.replace(/-/g, '+').replace(/_/g, '/')
const pad = padded.length % 4
return decodeURIComponent(escape(atob(padded + '='.repeat(pad ? 4 - pad : 0))))
}
Múltiples herramientas pueden decodificar Base64, pero difieren en privacidad, velocidad y comodidad.
Esta herramienta
Basada en el navegador, instantánea, privada. Sin datos enviados a ningún servidor. Maneja Base64 estándar y URL-safe, corrige automáticamente el relleno y funciona sin conexión.
CLI (base64 -d)
Rápido para scripts y archivos grandes. Requiere una terminal. Necesita normalización manual para entradas URL-safe (-_ → +/).
Herramientas de propósito general
Curl, Postman, DevTools del navegador y conversores online pueden decodificar Base64. La comodidad varía; algunos envían datos a servidores remotos.
Preguntas frecuentes
¿Por qué la decodificación me da caracteres basura?
La causa más común es decodificar datos binarios (imágenes, archivos comprimidos) como texto UTF-8 — los bytes binarios frecuentemente no forman secuencias Unicode válidas. Otra causa es decodificar Base64 URL-safe (-_) con un decodificador estándar que espera +/. Verifique qué variante usa su fuente.
¿Qué es InvalidCharacterError?
Este error del navegador de atob() ocurre cuando la entrada contiene caracteres fuera del alfabeto Base64, como caracteres URL-safe (- o _), espacios en blanco, saltos de línea o caracteres no ASCII. Elimine espacios en blanco y convierta caracteres URL-safe antes de llamar a atob().
¿Cómo sé si mi Base64 es URL-safe o estándar?
Busque caracteres - o _: si están presentes, es Base64 URL-safe. Base64 estándar usa + y /. Base64 URL-safe también omite típicamente los caracteres de relleno =. Los tokens JWT siempre usan Base64 URL-safe.
¿Puede la decodificación Base64 fallar silenciosamente?
Sí. Algunos decodificadores ignoran silenciosamente los caracteres inválidos en lugar de lanzar un error, produciendo salida incorrecta. Siempre valide que sus datos decodificados coincidan con el formato esperado (JSON, encabezado de imagen, etc.) en lugar de asumir que el decodificador tuvo éxito.
¿Hay un límite de tamaño para la decodificación Base64?
Esta herramienta basada en navegador puede manejar cadenas Base64 de hasta unos pocos megabytes antes de que la interfaz se vuelva lenta. Para archivos muy grandes (cadenas Base64 de múltiples MB), use una herramienta CLI o decodificador del lado del servidor.
¿Por qué Base64 termina con uno o dos signos =?
= es el carácter de relleno. Base64 codifica 3 bytes en 4 caracteres. Si la longitud de los datos originales no es múltiplo de 3, se añaden uno o dos caracteres = para que la longitud total de salida sea múltiplo de 4. Un = significa 2 bytes de entrada en el último grupo; dos == significa 1 byte de entrada.
¿Puedo decodificar archivos binarios, imágenes o PDFs?
Sí, pero la salida serán datos binarios sin procesar que pueden no mostrarse correctamente como texto. Para contenido binario, es mejor usar el URI de datos directamente en una etiqueta '<'img'>' o '<'a'>', o guardar los bytes decodificados en un archivo mediante un script.
¿Hay un límite de tamaño para la decodificación?
Esta herramienta funciona completamente en el navegador sin límite del lado del servidor. Los límites prácticos dependen de la memoria de tu navegador. Las cadenas Base64 muy grandes (más de unos pocos MB) se manejan mejor con una herramienta CLI como base64 -d (Linux/macOS) o certutil -decode (Windows).