Codificacion Base64
Codificar y decodificar Base64
Entrada
Resultado
Base64: convertir datos binarios en texto legible
Base64 es el metodo que convierte cualquier dato binario en una cadena de caracteres ASCII. Se usa para adjuntos de correo electronico, para incrustar imagenes directamente en CSS o HTML, para tokens de autenticacion de API y en muchas otras situaciones donde hay que hacer pasar datos binarios por un canal que solo acepta texto.
La codificacion Base64 hace los archivos mas grandes?
Si, y ese es el precio a pagar: la salida codificada es aproximadamente un 33 % mas grande que el original. La razon es sencilla: 3 bytes de datos se representan como 4 caracteres ASCII. Es un compromiso que conviene tener en cuenta, sobre todo con archivos grandes.
Como funciona Base64 por dentro
Base64 toma 3 bytes (24 bits) de datos binarios y los divide en cuatro grupos de 6 bits. Cada grupo se asigna a uno de los 64 caracteres posibles: A-Z, a-z, 0-9, + y /. Si el tamano de los datos no es multiplo de 3, se agregan caracteres de relleno (=) al final. El resultado: cualquier dato binario se puede representar como texto ASCII imprimible, listo para viajar por correo electronico, JSON o cualquier formato de texto.
Donde se usa Base64 de verdad
Los sistemas de correo electronico (MIME) lo usan para transmitir adjuntos como texto. En la web, se incrustan imagenes pequenas directamente en CSS o HTML mediante data URIs codificadas en Base64 -- asi te ahorras una peticion HTTP extra. La autenticacion de API utiliza Base64 con frecuencia en cabeceras Basic Auth para codificar credenciales. Y es imprescindible cada vez que necesitas meter datos binarios en formatos de texto como JSON o XML.
Base64 frente a otras codificaciones: cual elegir
Base64 anade un 33 % de sobrecarga, pero es seguro y universalmente soportado. Base32 tiene mas overhead (60 %), pero no distingue entre mayusculas y minusculas, lo que puede ser util en ciertos contextos. La codificacion hexadecimal duplica el tamano directamente (100 % de sobrecarga), pero es la preferida para depuracion. Base64 URL-safe sustituye + y / por - y _ para evitar problemas en las URL. En resumen, elige la codificacion que mejor encaje con tu caso de uso.