Codificador y decodificador Base64
Codificador y decodificador Base64 gratuito, compatible con UTF-8 y con opción base64url apta para URL. Funciona en tu navegador, no se sube nada.
Cómo usar el codificador y decodificador Base64
- Elige si quieres Codificar texto en Base64 o Decodificar Base64 para recuperar el texto.
- Escribe o pega tu entrada en el cuadro de texto. Se admiten letras con tilde, la ñ, alfabetos no latinos y emojis.
- Si el resultado se va a usar en una URL, un nombre de archivo o un JSON Web Token, activa la opción Apto para URL (base64url) para obtener la variante base64url.
- Lee el resultado y cópialo. Si estás decodificando y la entrada no es Base64 válido, un mensaje de error te lo indica en lugar de devolver caracteres sin sentido.
¿Qué es Base64?
Base64 es una forma de representar bytes arbitrarios usando solo 64 caracteres ASCII imprimibles: las mayúsculas A–Z, las minúsculas a–z, los dígitos 0–9 y los dos símbolos + y /. El carácter = se usa como relleno al final. Existe porque muchos sistemas se diseñaron para transportar texto, no datos binarios en bruto. El cuerpo de un correo, las cabeceras HTTP, los documentos XML y JSON o las data URL esperan caracteres que sobrevivan a copias, registros y transmisiones sin alterarse.
El algoritmo trabaja con grupos de tres bytes (24 bits) y los divide en cuatro valores de 6 bits, cada uno de los cuales corresponde a uno de los 64 caracteres. Por eso la salida en Base64 siempre ocupa alrededor de un 33 % más que la entrada: cada 3 bytes se convierten en 4 caracteres. Cuando la longitud de la entrada no es múltiplo de tres, se añaden uno o dos signos = para que la longitud de la salida sea múltiplo de cuatro. Por ejemplo, Hi se codifica como SGk= y Hello como SGVsbG8=.
Texto, bytes y UTF-8
Base64 codifica bytes, no caracteres, así que antes hay que convertir el texto en bytes. Esta herramienta usa UTF-8, la codificación de casi todas las páginas web y API modernas. Así, café se convierte en Y2Fmw6k= y un emoji como 👍 (cuatro bytes en UTF-8) se codifica correctamente y vuelve a ser el mismo emoji al decodificarlo. Muchos scripts rápidos que usan la antigua función btoa() del navegador fallan con cualquier carácter fuera de Latin-1; esta herramienta no tiene esa limitación.
Base64 estándar frente a base64url
El Base64 estándar usa + y /, que tienen un significado especial en las URL y las rutas de archivo. La variante apta para URL, llamada base64url, sustituye + por - y / por _, y normalmente elimina el relleno =. Es el formato que usan los JSON Web Tokens (JWT), muchos parámetros de OAuth y los acortadores de URL. Activa la opción cuando necesites ese formato y déjala desactivada para adjuntos de correo, data URL o archivos de configuración que esperan Base64 estándar.
Base64 no es cifrado
Es el malentendido más habitual. Base64 es una codificación: no tiene clave ni secreto, y cualquiera puede revertirla al instante. Codificar una contraseña, una clave de API o datos personales en Base64 no los protege en absoluto. La autenticación HTTP Basic, por ejemplo, envía usuario:contraseña en Base64, y por eso solo debe usarse sobre HTTPS. Si necesitas confidencialidad, usa un cifrado real (como AES) o un hash de contraseñas (como Argon2 o bcrypt), no Base64.
Privacidad
Toda la codificación y decodificación se hace localmente en tu navegador con JavaScript. El texto que introduces nunca se envía a un servidor, ni se guarda ni se registra, así que puedes inspeccionar tokens o valores de configuración con tranquilidad. Esta herramienta solo trabaja con texto; no admite subir archivos.
Preguntas frecuentes
¿Por qué el texto decodificado parece una serie de símbolos al azar?
Probablemente la cadena Base64 representa datos binarios, como una imagen, un archivo comprimido o contenido cifrado, y no texto. Al decodificarla se obtienen bytes válidos, pero no forman texto UTF-8 con sentido. También puede ocurrir si el texto original se codificó con un juego de caracteres distinto de UTF-8.
¿Por qué la herramienta dice que mi Base64 no es válido?
Un Base64 válido contiene solo los 64 caracteres permitidos más el relleno = opcional, y su longitud debe encajar en grupos de 4 caracteres. Las causas habituales son caracteres sobrantes copiados por error, una cadena cortada o una cadena base64url (con - y _) decodificada sin activar la opción apta para URL.
¿Puedo codificar imágenes u otros archivos?
No. Esta herramienta está pensada solo para texto. Para incrustar una imagen en HTML o CSS necesitas una herramienta que lea los bytes del archivo y genere una data URL.
¿Es seguro guardar contraseñas en Base64?
No. Cualquiera puede decodificar Base64 en una fracción de segundo. Las contraseñas deben guardarse con un algoritmo de hash lento y específico, como Argon2, scrypt o bcrypt.
¿Qué diferencia hay entre Base64 con y sin relleno?
El relleno = solo sirve para que la longitud de la salida sea múltiplo de cuatro; no aporta información. La mayoría de los decodificadores pueden reconstruir los datos sin él. base64url suele omitirlo porque = es a su vez un carácter reservado en las URL.
Herramientas relacionadas
- Codificador y decodificador de URL Codificador y decodificador de URL gratis. Codifica parámetros o URL completas, decodifica secuencias %XX y trata + como espacio en tu navegador.
- Formateador y validador JSON Formateador y validador JSON gratuito que embellece, minifica y comprueba JSON en tu navegador, con los errores de sintaxis indicados por línea y columna.
- Generador de UUID Generador de UUID gratis para las versiones 4 y 7. Crea hasta 1000 a la vez, en mayúsculas o sin guiones, y cópialos o descárgalos en .txt.