Decodificador Base64
Decodifica una cadena Base64 y visualiza el texto resultante. Pega el contenido codificado en el campo «Cadena Base64» para ver la salida decodificada.
Herramienta de Decodificación de Base64 a Texto
Fórmula del Decodificador Base64
Donde:
- \(v_1,v_2,v_3,v_4\) — los valores, de 0 a 63, representados por cuatro caracteres Base64.
- \(b_1,b_2,b_3\) — los tres bytes decodificados, cada uno entre 0 y 255.
Cada grupo completo de cuatro caracteres Base64 representa tres bytes. Las ecuaciones recuperan esos bytes invirtiendo la forma en que Base64 los divide en valores de seis bits; un grupo final con relleno produce menos bytes.
Decodificador Base64 – Ejemplo de Cálculo
Ejemplo: la cadena Base64 predeterminada, SGVsbG8gd29ybGQh, contiene el mensaje codificado «Hello world!».
\[ \operatorname{atob}(\texttt{SGVsbG8gd29ybGQh})=\text{Hello world!} \]
Resultado: el Texto Decodificado es Hello world!.
Cómo usar el Decodificador Base64
- Pega o escribe tu contenido codificado en el campo Cadena Base64. Puedes dejar el valor predeterminado para probar el ejemplo anterior.
- Lee el resultado del Texto Decodificado. Para la entrada predeterminada, muestra
Hello world!. - Usa el control de copiado del resultado si necesitas pegar el texto decodificado en otro lugar. Si el resultado dice «Cadena Base64 no válida», revisa la entrada en busca de caracteres que no pertenecen al Base64 estándar.
La calculadora elimina los espacios en blanco del principio y del final de tu entrada antes de decodificar. Puedes pegar una cadena completa sin añadir comillas ni una etiqueta como base64:; esos caracteres adicionales pasarían a formar parte de la entrada.
Qué significa decodificar Base64
Base64 es una forma de representar bytes mediante un conjunto limitado de caracteres de texto: letras, dígitos, + y /, con = usado a veces como relleno al final. Se utiliza con frecuencia cuando los datos deben pasar por un formato basado en texto, como una respuesta de API o un mensaje de correo electrónico. La decodificación invierte esa representación; no descifra los datos ni cambia lo que significan los bytes originales.
Esta calculadora utiliza la función atob() del navegador. Su salida es una cadena en la que cada carácter representa un byte decodificado. El texto ASCII normal, incluido el ejemplo predeterminado, se muestra por tanto como se espera. Si los datos originales eran un archivo, datos comprimidos u otro formato no textual, el resultado puede contener caracteres ilegibles en lugar de texto comprensible.
Para texto fuera de ASCII, la distinción entre bytes y caracteres importa. UTF-8 usa varios bytes para muchas letras acentuadas, símbolos y emojis, pero esta herramienta no realiza una conversión UTF-8 separada después de la decodificación Base64. Una cadena Base64 válida que contiene texto UTF-8 puede, en consecuencia, producir una salida de aspecto ilegible. Esa apariencia no significa necesariamente que el Base64 en sí sea inválido.
Límites de entrada y consejos prácticos
Esta herramienta espera un Base64 que la función atob() del navegador acepte. El Base64 estándar suele terminar en uno o dos caracteres de relleno =, aunque el navegador también puede aceptar un grupo final válido sin relleno. La falta de relleno por sí sola no es una señal fiable de error. Si la decodificación falla, busca signos de puntuación copiados, una cadena incompleta o caracteres de un formato de codificación diferente.
El Base64 seguro para URL normalmente sustituye - por + y _ por /. Esta calculadora no convierte esos caracteres automáticamente. Si tu fuente usa explícitamente Base64 seguro para URL, realiza esas sustituciones antes de introducirlo. Asimismo, si el valor codificado está incrustado en una URL, extrae primero la porción Base64; usa el Decodificador de URL cuando la URL contenga caracteres con codificación porcentual.
Si necesitas convertir texto en Base64 en lugar de decodificarlo, usa el Codificador Base64. Para inspeccionar valores de bytes en otra notación, el Conversor Hexadecimal y el Conversor Binario cubren esas representaciones. Ninguna de estas conversiones protege el contenido sensible: Base64 es una codificación, no una medida de seguridad.
Preguntas frecuentes
¿Cómo puedo decodificar Base64 a mano?
Busca el valor de cada carácter en el alfabeto Base64 y escribe cada valor como seis bits binarios. Une los bits y divídelos en bytes de ocho bits. Por ejemplo, TQ== contiene los valores 19 y 16, que dan los bits 01001101: un byte con el valor ASCII de M. Los dos signos = indican que el grupo final contiene solo un byte.
¿Cuántos bytes producirá una cadena Base64?
Para una cadena con relleno, cuenta los caracteres, divide entre cuatro, multiplica por tres y luego resta el número de signos = del final. Por ejemplo, ocho caracteres que terminan en un = representan cinco bytes. Esto cuenta bytes, no caracteres mostrados: un carácter UTF-8 puede ocupar varios bytes, y los datos binarios pueden no mostrarse como texto legible.
¿Los espacios o saltos de línea invalidan el Base64?
El decodificador Base64 del navegador generalmente ignora los espacios en blanco ASCII, incluidos espacios, tabulaciones y saltos de línea, incluso dentro de la cadena codificada. Otros caracteres invisibles copiados de un documento pueden provocar un error. Si una entrada falla inesperadamente, prueba a eliminar el formato y comprobar si hay caracteres de aspecto similar, como un guion tipográfico en lugar de un guion normal.
¿Cómo recupero letras acentuadas o emojis de un Base64 decodificado?
Primero decodifica el Base64 en bytes y luego interpreta esos bytes con la codificación de texto usada por la fuente, normalmente UTF-8. Esta calculadora muestra cada byte como un carácter en lugar de realizar ese segundo paso. En JavaScript, puedes pasar los valores de bytes decodificados a TextDecoder con UTF-8. Si la fuente usó otra codificación de caracteres, selecciona esa codificación en su lugar.
¿Puedo pegar una URL de datos completa en el decodificador?
No. Para una URL de datos como data:text/plain;base64,SGk=, pega solo la porción después de la coma: SGk=. El prefijo describe el contenido y no forma parte de los datos Base64. Comprueba también que la URL contenga realmente ;base64; algunas URLs de datos almacenan texto mediante codificación porcentual.
¿Por qué un resultado decodificado con éxito contiene símbolos extraños o caracteres en blanco?
Una decodificación Base64 con éxito solo confirma que se recuperaron los bytes; no garantiza que esos bytes formen texto legible. Un archivo decodificado puede contener bytes de control, incluido un byte cero, que aparecen en blanco o se comportan de forma extraña al copiarse. Para inspeccionar ese contenido de forma fiable, usa una herramienta orientada a bytes, como un visor hexadecimal, en lugar de una vista de texto.
¿En qué se diferencia Base64 de la codificación hexadecimal?
Ambas representan bytes como texto sin cifrarlos. El hexadecimal usa dos caracteres por byte y es cómodo para inspeccionar valores de bytes individuales. Base64 empaqueta los mismos datos de forma más compacta: un grupo completo de tres bytes se convierte en cuatro caracteres, sin contar los saltos de línea ni el formato circundante. Elige el formato que requiera el sistema que recibe los datos.