Guía

Para qué sirve Base64 (y por qué no es cifrado)

Cómo convierte Base64 cualquier dato en texto, paso a paso, y en qué situaciones se usa realmente.

Por el equipo de BinaFácil · Actualizado el 29 de septiembre de 2026

El problema que resuelve

Muchos sistemas se diseñaron para transportar texto, no datos binarios arbitrarios: el correo electrónico, los formularios web, los formatos JSON y XML o las propias URLs. Si intentas meter directamente los bytes de una imagen en uno de esos canales, algunos bytes se interpretan como caracteres de control o se corrompen por el camino. Base64 soluciona esto convirtiendo cualquier secuencia de bytes en texto formado solo por caracteres «seguros».

El alfabeto de 64 caracteres

Base64 usa 64 símbolos: las 26 letras mayúsculas (A–Z), las 26 minúsculas (a–z), los 10 dígitos (0–9) y dos símbolos más, + y /. Cada símbolo representa un número del 0 al 63, es decir, exactamente 6 bits. Además se usa = como relleno.

Cómo funciona, paso a paso

Codifiquemos la palabra «Sol»:

  1. Pasar a bytes: S = 83, o = 111, l = 108.
  2. Escribirlos en binario: 01010011 01101111 01101100 (24 bits en total).
  3. Reagrupar en bloques de 6: 010100 110110 111101 101100.
  4. Convertir cada bloque a su número: 20, 54, 61, 44.
  5. Buscar cada número en el alfabeto: 20 = U, 54 = 2, 61 = 9, 44 = s.

Resultado: U29s. Tres bytes de entrada se convierten siempre en cuatro caracteres de salida.

El relleno con «=»

¿Qué pasa si el número de bytes no es múltiplo de 3? Se completan los bits que faltan con ceros y se añaden signos = al final para indicar cuántos bytes eran de relleno: un = si sobraban 2 bytes y == si sobraba 1. Por ejemplo, «Hola» (4 bytes) se codifica como SG9sYQ==.

Para qué se usa en la práctica

  • Imágenes incrustadas: las data URLs del tipo data:image/png;base64,iVBOR… permiten meter una imagen pequeña directamente en HTML o CSS.
  • Correo electrónico: los adjuntos viajan codificados en Base64 dentro del mensaje.
  • APIs y JSON: para enviar archivos o datos binarios dentro de un campo de texto.
  • Autenticación HTTP básica: el usuario y la contraseña se envían como usuario:contraseña codificado en Base64.
  • Tokens JWT: sus tres partes usan una variante llamada Base64URL, que cambia + y / por - y _ para poder ir en una URL.

Por qué Base64 no es cifrado

Es un error frecuente pensar que un texto en Base64 está «protegido» porque no se puede leer a simple vista. No lo está: Base64 es una codificación, no un cifrado. No usa ninguna clave y cualquiera puede decodificarlo al instante. El caso de la autenticación básica lo demuestra: si esa cabecera viaja sin HTTPS, cualquiera que la intercepte puede leer la contraseña.

Si necesitas que un dato sea secreto, hay que cifrarlo con un algoritmo de verdad (como AES) y una clave. Y si lo que necesitas es comprobar que un dato no ha cambiado, lo adecuado es una función hash.

El coste: ocupa más

Como cada 3 bytes se convierten en 4 caracteres, el resultado ocupa aproximadamente un 33 % más que el original. Por eso no conviene usar Base64 para incrustar imágenes grandes en una página web: es mejor enlazarlas como archivos normales.

Compruébalo tú mismo Codificador Base64 Abrir la herramienta →

Sobre este proyecto

BinaFácil es un proyecto independiente de herramientas gratuitas. Nació como un conversor sencillo de decimal a binario y ha ido creciendo con más herramientas gratuitas de matemáticas y computación, pensadas para estudiantes, programadores y cualquiera con curiosidad.

Todas las herramientas funcionan enteramente en tu navegador, son gratuitas, no requieren cuenta y no guardan tus datos en ningún servidor. ¿Preguntas, ideas o algo que no funciona como debería? Escribe a contacto@binafacil.com