Español
Cómo codificar y decodificar Base64
Este codificador y decodificador Base64 funciona en las dos direcciones a la vez. Escribe texto normal a la izquierda y el Base64 aparece a la derecha; pega Base64 a la derecha y el texto decodificado aparece a la izquierda. Hello se convierte en SGVsbG8=, y al pegar SGVsbG8= recuperas Hello.
Los mismos dos cuadros manejan otros cuatro formatos: binario, hexadecimal, codificación URL y entidades HTML. Cuando pegas algo a la derecha, la herramienta lo analiza y cambia al formato que corresponde, así que una cadena de ceros y unos se lee como binario sin que tengas que elegir nada. Si pegas por error una cadena codificada en el cuadro de texto normal, te ofrece decodificarla.
Qué hace realmente Base64
Base64 convierte cualquier secuencia de bytes en 64 caracteres seguros (A–Z, a–z, 0–9, + y /), para que los datos binarios puedan pasar por sistemas pensados para texto: correo electrónico, JSON, atributos HTML, variables de entorno. Toma 3 bytes (24 bits), los divide en cuatro trozos de 6 bits y escribe un carácter por cada trozo.
Cuando la entrada no es múltiplo de 3 bytes, el final se rellena con signos =: Ma es TWE= y M es TQ==. Base64 no es cifrado. Cualquiera lo decodifica en un segundo, así que nunca des por oculta una contraseña en Base64.
¿Estándar o apto para URL?
Los caracteres + y / rompen las URL y los nombres de archivo, así que la variante apta para URL usa - y _ en su lugar y normalmente quita el relleno. Los bytes FB FF son +/8= en Base64 estándar y -_8 en la versión apta para URL. Los tokens JWT y muchas claves de API usan la versión apta para URL. Al decodificar no tienes que elegir: se aceptan los dos alfabetos, con o sin relleno, y se ignoran los espacios y saltos de línea.
Marca Saltos de línea cada 76 cuando necesites una salida estilo MIME para el cuerpo de un correo o certificados PEM.
Caracteres habituales en cada formato
Todo se convierte pasando por UTF-8, la codificación que usan casi todas las webs y API. Por eso la é ocupa dos bytes y un emoji cuatro. Las herramientas que se saltan este paso estropean las letras con tilde, que es la queja más habitual sobre los decodificadores Base64 online.
| Carácter | Base64 | Binario | Hex | URL |
|---|---|---|---|---|
| A | QQ== | 01000001 | 41 | A |
| a | YQ== | 01100001 | 61 | a |
| espacio | IA== | 00100000 | 20 | %20 |
| & | Jg== | 00100110 | 26 | %26 |
| é | w6k= | 11000011 10101001 | C3 A9 | %C3%A9 |
| € | 4oKs | 11100010 10000010 10101100 | E2 82 AC | %E2%82%AC |
De texto a binario y de binario a texto
Elige Binario y cada byte de tu texto se escribe como 8 bits. Hi se convierte en 01001000 01101001. Desactiva Espacio entre bytes para obtener una cadena continua.
Para traducir de binario a texto, pega los bits en el cuadro de la derecha. Los grupos de 8 se leen como bytes. Algunas webs muestran ASCII con 7 bits (1001000 1101001); mientras los grupos estén separados por espacios, se completan con un cero inicial y se leen bien. Sin espacios, el total tiene que ser múltiplo de 8, y el mensaje de error te dice cuántos bits ha encontrado para que localices el dígito que falta.
El hexadecimal funciona igual, con dos dígitos por byte. Al decodificar se eliminan prefijos y separadores como 0x, \x, dos puntos y comas, así que puedes pegar directamente desde un depurador o un array de C.
Codificar y decodificar URL
La codificación URL sustituye los caracteres no seguros por % y dos dígitos hexadecimales: un espacio pasa a ser %20 y la é, %C3%A9. Elige el alcance adecuado:
- Componente codifica todo salvo letras, dígitos y - _ . ! ~ * ' ( ). Úsalo para un único valor de consulta, como ?q=rock%20%26%20roll. Si usaras aquí URL completa, el & se quedaría tal cual y partiría tu parámetro en dos.
- URL completa deja intactos : / ? # & =, así que una dirección entera sigue siendo clicable.
- Espacios como + imita cómo envían los datos los formularios HTML. Márcalo al decodificar texto copiado del envío de un formulario o de una URL de búsqueda; si no, los signos + se quedan en el resultado.
Entidades HTML
El modo HTML escapa los cinco caracteres que pueden romper el marcado: & < > " y '. Así <b> se convierte en <b> y se muestra como texto en lugar de poner negrita. Al decodificar entiende entidades con nombre como é y , y también numéricas como € (€).
De imagen a data URI en Base64
Suelta un archivo en el cuadro de abajo para obtener su Base64, listo como data URI, como cadena sola, como etiqueta <img> o como fondo CSS. El indicador de tamaño muestra el coste. Base64 añade un tercio, así que solo compensa con cosas pequeñas como un icono de 1 KB, donde ahorrarse una petición HTTP pesa más que los bytes extra. Para una foto de 200 KB es mejor un archivo de imagen normal: es más pequeño, se guarda en caché y no infla tu HTML ni tu CSS.
| Tamaño del archivo | Tamaño en Base64 |
|---|---|
| 1 KB (1024 bytes) | 1368 caracteres |
| 10 KB | 13.656 caracteres |
| 50 KB | 68.268 caracteres |
| 1 MB | 1.398.104 caracteres |
También funciona al revés. Pega Base64 o un data URI a la derecha y, si no es texto, la herramienta lee los primeros bytes para averiguar el tipo de archivo (PNG, JPEG, GIF, WebP, PDF, ZIP, MP3 y más), muestra una vista previa si es una imagen y ofrece descargarlo con la extensión correcta.
No se sube nada. Aquí eso importa más de lo normal, porque las cadenas que la gente decodifica suelen ser claves de API, tokens de sesión y adjuntos de correo.
Preguntas frecuentes
¿Cómo decodifico Base64?
Pega el Base64 en el cuadro de la derecha y el texto decodificado aparece a la izquierda al instante. Por ejemplo, SGVsbG8= se decodifica como Hello. Si el resultado es una imagen o un PDF en lugar de texto, aparece un botón de Guardar como archivo.
¿Cómo convierto texto a binario?
Elige Binario y escribe tu texto a la izquierda. Cada byte se convierte en 8 bits, así que Hi pasa a ser 01001000 01101001. Las letras que no son del inglés, como la é, ocupan dos o más bytes en UTF-8 y, por tanto, 16 bits o más.
¿Cómo traduzco código binario a texto?
Elige Binario y pega los ceros y unos en el cuadro de la derecha. Los grupos de 8 bits se leen como bytes, así que 01001000 01101001 se lee Hi. También funcionan grupos de 7 bits separados por espacios; se completan con un 0 inicial.
¿Cómo convierto una imagen en un data URI Base64?
Suelta la imagen en el cuadro de archivos de abajo y copia el resultado. Un PNG se convierte en data:image/png;base64,iVBORw0KGgo… que puedes pegar en un img src o en un fondo CSS. Cuenta con que ocupe alrededor de un 33% más que el archivo.
¿Por qué Base64 ocupa un 33% más que el original?
Base64 escribe cada 3 bytes como 4 caracteres, así que 30 KB de imagen se convierten en unos 40 KB de texto. Los saltos de línea MIME cada 76 caracteres añaden cerca de un 2,6% más. Por eso los data URI solo tienen sentido con archivos pequeños.
¿Qué diferencia hay entre Base64 y Base64 apto para URL?
El Base64 apto para URL cambia + por - y / por _, y a menudo quita el relleno =, para que el texto pueda ir en una URL o un nombre de archivo. Los tokens JWT lo usan. Este decodificador acepta los dos alfabetos automáticamente.
¿Cómo decodifico una URL con %20 y %3A?
Elige URL y pega el texto a la derecha. %20 pasa a ser un espacio y %3A dos puntos, así que https%3A%2F%2Fexample.com se lee https://example.com. Marca Espacios como + si el texto viene de un formulario, donde los espacios se escriben como +.
¿Se envía mi texto o mi archivo a un servidor?
No. Toda la codificación y decodificación se hace en tu navegador con JavaScript, así que es seguro para claves de API, tokens y archivos privados.