Base64: qué es, para qué sirve y cómo codificar o decodificar

Guía sobre Base64: codificación binaria a texto, uso en URLs, datos en JSON y correos. Incluye cuándo usarlo y limitaciones de tamaño.

4 de febrero de 20262 min de lecturaBase64 Encode/Decode
Desarrollo

Base64 es una codificación que convierte cualquier dato binario (o secuencia de bytes) en una cadena de texto usando solo 64 caracteres ASCII. No es cifrado ni compresión: sirve para transportar o guardar binario en sitios que solo aceptan texto.

¿Para qué se usa Base64?

  • Data URLs: incrustar una imagen o un pequeño archivo en HTML o CSS como data:image/png;base64,... sin hacer una petición HTTP aparte.
  • Correo (MIME): adjuntos y contenido binario se codifican en Base64 para enviarlos en mensajes de texto.
  • APIs y JSON: cuando necesitas enviar un archivo o un binario en un JSON, a menudo se envía como string en Base64.
  • JWT: el header y el payload de un JWT son Base64URL (variante sin +, / ni =), no cifrado; cualquiera puede decodificarlos y leer el contenido.
  • URLs y firmas: hashes o tokens en parámetros de URL suelen usar Base64URL para evitar caracteres problemáticos.

Cómo funciona (a grandes rasgos)

Se toman los bytes de entrada y se agrupan de 3 en 3 (24 bits). Esos 24 bits se dividen en 4 bloques de 6 bits; cada bloque se mapea a uno de 64 caracteres (A–Z, a–z, 0–9, +, /). Si los bytes no completan un múltiplo de 3, se añade relleno con =. El resultado es una cadena más larga que el original (aproximadamente un 33% más).

Codificar y decodificar

Un codificador/decodificador Base64 online te permite pegar texto o subir un archivo, codificar a Base64 y decodificar de vuelta. Úsalo para pruebas, para revisar payloads de JWT (que son Base64URL) o para generar data URLs de prueba. En código, casi todos los lenguajes tienen funciones nativas o en la biblioteca estándar (btoa/atob en el navegador, Buffer en Node.js, etc.). Recuerda: Base64 no protege la información; si necesitas confidencialidad, usa cifrado (por ejemplo AES) además de, o en lugar de, Base64.

Preguntas frecuentes

¿Qué es Base64?
Es una forma de representar datos binarios (o cualquier secuencia de bytes) usando solo 64 caracteres ASCII (letras, números, + y /). Así se puede enviar o guardar binario en contextos que solo admiten texto, como JSON o URLs.
¿Base64 cifra o comprime?
No. Base64 es una codificación, no cifrado: cualquiera puede decodificar. Tampoco comprime; al codificar, el tamaño crece aproximadamente un 33% respecto al original. No uses Base64 para ocultar datos sensibles.
¿Para qué se usa Base64?
Incrustar imágenes o archivos en HTML/CSS (data URLs), enviar adjuntos en correo (MIME), guardar binario en JSON o XML, y en JWT (el payload y el header van en Base64URL). También para firmas o hashes en URLs.
¿Qué es Base64URL?
Variante que usa - y _ en lugar de + y / y no añade relleno con =. Así la cadena es segura para usar en URLs y parámetros sin tener que codificarla de nuevo. JWT y muchos APIs la usan.

¿Te gustó este artículo?

Compártelo con tu red

Artículo anterior

Codificar URL: por qué y cómo codificar caracteres en una URL

¿Listo para usar nuestras herramientas?

Prueba nuestras herramientas gratuitas sin registro. Formateador JSON, JWT Decoder, generador de contraseñas y más.

Ver todas las herramientas