Codificación Base 64: qué es y cómo funciona
La codificación Base 64 se basa en el uso de los caracteres US-ASCII (no acentuados) para codificar cualquier tipo de información mediante un código de 8 bits.
¿Qué es la codificación Base 64?
En un principio, los protocolos de correo electrónico se diseñaron para que enviaran mensajes de sólo texto. Pero como los sistemas de correo electrónico varían en gran medida, la transferencia de datos binarios solía tener como resultado el cambio del contenido del mensaje, convirtiendo el mensaje original en un documento ilegible.
El formato Base 64 se usa para enviar y recibir correos electrónicos, y puede transmitir cualquier tipo de documento binario (como, por ejemplo, una aplicación, un archivo de vídeo o audio) como un archivo adjunto del mensaje de correo electrónico, codificándolo en forma de caracteres básicos. La codificación Base 64 incrementa en un 33% el volumen de todos los datos codificados.
¿Cómo funciona la codificación Base 64?
El concepto de la codificación Base 64 consiste en el uso de 4 caracteres imprimibles (en formato US-ASCII) para codificar cualquiera de los 3 bytes (3x8 bits = 24 bits).
La codificación Base 64 utiliza un alfabeto de 64 caracteres imprimibles para representar 6 bits de datos. Los 64 símbolos del alfabeto se eligieron porque son universalmente legibles, y también porque no tienen ningún significado especial en los principales protocolos de correo electrónico (en particular, en el protocolo SMTP).
ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwkyz 123456789+/.
Si leemos los datos binarios de izquierda a derecha, se crean grupos de 24 bits mediante la combinación de bloques de tres bytes de datos cada uno. Luego, cada grupo de 24 bits se divide en 4 grupos de 6 bits, cada uno de ellos correspondiente a 4 caracteres del alfabeto Base 64.
La codificación Base 64 se utiliza para datos que forman un múltiplo de 24 bits. Si la cantidad de datos que deben ser codificados no es un múltiplo de 24 bits, la cadena Base 64 resultante debe terminar en cadenas del signo igual ("=") que van del 0 al 3, a fin de llegar a un múltiplo de 24. Este 65º carácter puede utilizarse únicamente al final de los datos codificados.
Para garantizar la compatibilidad con los sistemas de correo electrónico, los datos Base 64 se formatean con retornos de carro para que ninguna línea sea mayor a 76 caracteres.