← Todas las herramientas

Codificar y Decodificar Base64

Codifica y decodifica Base64 al instante en tu navegador. Aprende qué es Base64, por qué añade un 33% de tamaño y por qué es codificación, no cifrado.

Qué es Base64 y por qué existe

Base64 es un esquema de codificación de binario a texto. Toma bytes en bruto -el tipo de datos que componen imágenes, archivos comprimidos, claves criptográficas o cualquier otra cosa que no sea texto legible simple- y los reescribe usando un alfabeto pequeño y seguro de 64 caracteres imprimibles: las 26 letras mayúsculas A-Z, las 26 letras minúsculas a-z, los diez dígitos 0-9 y dos símbolos extra, normalmente + y /. Se usa un signo igual para el relleno al final. Como cada carácter que produce es ASCII corriente, el resultado puede viajar a través de sistemas que solo fueron diseñados para manejar texto.

Esa es la razón completa por la que se inventó Base64. Muchos protocolos antiguos -el correo electrónico es el ejemplo clásico- dan por hecho que el contenido que transportan es texto. Si les entregas binario en bruto, algunos bytes se corrompen, se eliminan o se interpretan como caracteres de control, y los datos llegan dañados. Base64 esquiva el problema convirtiendo los bytes en una forma que cualquier canal seguro para texto dejará pasar intacta. Los datos originales pueden luego reconstruirse con exactitud en el otro extremo.

Flujo abstracto y brillante de datos binarios transformándose en un flujo de caracteres de texto en índigo oscuro con luz cian y dorada
Base64 reconfigura los bytes en bruto en un flujo de caracteres seguro y compatible con texto.

Cómo funciona la conversión

Mecánicamente, Base64 agrupa la entrada en bloques de tres bytes -es decir, 24 bits- y luego vuelve a cortar esos mismos 24 bits en cuatro grupos de seis bits cada uno. Seis bits pueden representar 64 valores posibles, que es exactamente por lo que el alfabeto tiene 64 caracteres. Así, tres bytes de entrada siempre se convierten en cuatro caracteres de salida. Cuando la longitud de la entrada no es un múltiplo exacto de tres, el codificador rellena el grupo final con uno o dos caracteres = para que un decodificador sepa dónde terminan los datos reales.

Esta proporción de cuatro por tres es también de donde proviene la famosa penalización de tamaño: la salida de Base64 es aproximadamente un 33 % más grande que los datos originales. Si el texto codificado se divide en líneas de ancho fijo, como suelen exigir los estándares de correo, pagas un pequeño porcentaje adicional por los saltos de línea. La sobrecarga es el precio de la compatibilidad y, para la mayoría de los usos, es un intercambio justo.

Dónde te topas con Base64

Una vez que sabes qué buscar, Base64 aparece por todas partes en la informática cotidiana:

  • URIs de datos. Una imagen o una fuente pequeña puede incrustarse directamente en HTML o CSS con una URI data:, escribiendo el contenido del archivo como Base64. El navegador lo decodifica en línea, ahorrando una petición de red aparte.
  • Archivos adjuntos de correo. MIME, el estándar que permite al correo transportar archivos, se apoya en Base64 para mover los adjuntos binarios a través de un sistema de correo solo de texto sin daños.
  • Autenticación HTTP Basic. La conocida cabecera Authorization: Basic ... es solo un nombre de usuario y una contraseña unidos por dos puntos y codificados en Base64, que es exactamente por lo que la autenticación Basic siempre debe ejecutarse sobre HTTPS.
  • Tokens y configuración. Los JSON Web Tokens (tokens web JSON), los certificados, las claves SSH e innumerables valores de configuración se almacenan o transmiten como Base64 para que sobrevivan al copiar y pegar y al almacenamiento basado en texto.

Codificar no es cifrar

Esto es lo más importante de entender, y hace tropezar tanto a principiantes como a desarrolladores experimentados por igual. Base64 no es cifrado y no ofrece ninguna seguridad en absoluto. No hay clave secreta, ni contraseña, ni nada privado en ello. La transformación es totalmente pública y completamente reversible: cualquiera que vea una cadena Base64 puede decodificarla de vuelta a los bytes originales en un segundo, usando una herramienta exactamente como esta.

Por eso Base64 es un mal escondite para contraseñas, claves de API o cualquier valor sensible. Que una cadena simplemente parezca revuelta no la hace protegida. El cifrado, en cambio, transforma los datos con una clave secreta de modo que solo quien posea esa clave pueda leerlos. Ambos resuelven problemas distintos: el cifrado protege la confidencialidad, Base64 protege la compatibilidad. A menudo se usan juntos -podrías cifrar datos con AES y luego codificar en Base64 el texto cifrado para que pueda viajar por un canal de texto-, pero uno nunca sustituye al otro.

Una imagen abstracta disolviéndose en un flujo fluido de caracteres brillantes y reensamblándose, en azul marino índigo con cian y dorado
Codificar y decodificar son perfectamente reversibles, y no ofrecen ningún secreto.

Codificar frente a decodificar

Las dos direcciones son simples imágenes especulares. Codificar toma tu texto o binario original y produce la cadena de caracteres Base64. Decodificar toma una cadena Base64 y reconstruye los bytes originales exactos. Nuestra herramienta hace ambas cosas directamente en tu navegador: nada de lo que escribes o pegas se envía jamás a un servidor, así que la operación es completamente local y privada. Eso hace seguro decodificar un token que estés depurando o codificar un fragmento que quieras incrustar, sin que tus datos abandonen la página.

Para conversiones relacionadas, consulta nuestra herramienta de codificación/decodificación de URL para el percent-encoding, o el decodificador de JWT cuando necesites inspeccionar los segmentos Base64 dentro de un token. Las encontrarás junto al resto de nuestras herramientas para desarrolladores.

Preguntas frecuentes

¿Es Base64 una forma de cifrado?

No. Base64 es una codificación, no cifrado. No usa ninguna clave y es totalmente reversible por cualquiera, así que no ofrece ninguna seguridad. Usa cifrado real, como AES o RSA, para proteger datos sensibles.

¿Por qué Base64 hace más grandes los datos?

Base64 convierte cada tres bytes de entrada en cuatro caracteres de salida, lo que añade aproximadamente un 33 % al tamaño. Si la salida se divide en líneas de longitud fija, los saltos de línea añaden algún porcentaje más encima.

¿Qué caracteres usa Base64?

El alfabeto estándar son las 26 letras mayúsculas, las 26 letras minúsculas, los dígitos del 0 al 9, más los símbolos más y barra, con el signo igual usado para el relleno al final.

¿Puedo almacenar contraseñas con seguridad en Base64?

No. Base64 solo cambia cómo se ven los datos, no quién puede leerlos. Cualquiera puede decodificarlos al instante. Las contraseñas deben hashearse con un algoritmo robusto, y los secretos deben cifrarse.

¿Es privada esta herramienta de Base64?

Sí. La codificación y la decodificación ocurren por completo en tu navegador. Nada de lo que introduces se sube ni se envía a ningún servidor, así que tus datos permanecen en tu propio dispositivo.

¿Cuál es la diferencia entre codificar y decodificar?

Codificar convierte texto o binario original en una cadena Base64. Decodificar invierte eso, devolviendo una cadena Base64 a los bytes originales exactos. Son operaciones especulares.