Base64 es un sistema de numeración posicional con una base de 64 caracteres ASCII (código estándar estadounidense para el intercambio de información) imprimibles. El sistema se utiliza, por ejemplo, para presentar archivos binarios en el correo electrónico. Todas las variantes de Base64 usan los caracteres A-Z, a-z y 0-9, 62 caracteres en total, los dos caracteres que faltan se reemplazan por caracteres diferentes en los sistemas de implementación. Cada tres bytes originales se codifican con cuatro caracteres.
Historia de Base64
Al principio, solo se podía enviar texto por correo electrónico (RFC 822). Con el tiempo, junto con el texto, fue necesario transferir archivos de audio, video y gráficos, aplicaciones, etc. Hubo la necesidad de convertir un archivo binario a texto. Base64 se agregó a la codificación UUE existente en ese momento (Uuencode), que se usa en la especificación MIME (Multipurpose Internet Mail Extensions) (RFC 2045-2049).
MIME es un estándar para describir encabezados en mensajes electrónicos. Su uso le permite enviar varios archivos adjuntos en una carta, por ejemplo, archivos archivados y de texto o páginas HTML. Un programa de correo electrónico compatible con MIME extrae libremente el archivo de un archivo de texto, muestra el mensaje y analiza las etiquetas HTML. Por ejemplo, Outlook Express ejecuta automáticamente secuencias de comandos incrustadas en una página HTML.
Base64 nació en la era de los bytes de siete, seis y tres bits. Las codificaciones antiguas no admitían el estándar de ocho bits, por lo que parte de la información se perdía al transferirse del sistema anterior al nuevo. A menudo, al enviar cartas, el servidor de correo dejaba caer un octavo de bit adicional o no transmitía video e imágenes. Para eliminar tales problemas, se desarrollaron codificaciones para convertir código binario en texto. El sistema más popular y efectivo es Base64, debido a su simplicidad se usa en todas partes.
Un algoritmo llamado "codificación para imprimir" se describió por primera vez en 1987, Base64 apareció en junio de 1992. Las versiones de este sistema son Base16, Base32, Base36, Base58, Base85, Base91 y Base122. Los estándares posteriores se utilizan activamente en el campo de TI.
Dato interesante
Algunos sistemas utilizan Base58 para codificar URL, que se diferencia de Base64 por la ausencia de caracteres en el texto final que una persona pueda percibir de forma ambigua. 0 (cero), O (o latina mayúscula), I (i latina mayúscula), l (L latina minúscula) están excluidos. También se excluyen los caracteres + (más) y / (barra oblicua), que, al codificar una URL, pueden dar lugar a una interpretación incorrecta de la dirección.
Base64 proporciona codificación reversible y recuperable. El servicio traduce los caracteres de la tabla de códigos de ocho bits en caracteres que se conservan durante la transferencia de información en redes y entre dispositivos.