Base64 ist ein Positionsnummernsystem mit einer Basis von 64 druckbaren ASCII-Zeichen (American Standard Code for Information Interchange). Das System wird beispielsweise verwendet, um Binärdateien per E-Mail zu präsentieren. Alle Base64-Varianten verwenden die Zeichen A-Z, a-z und 0-9, insgesamt 62 Zeichen, die fehlenden zwei Zeichen werden in Implementierungssystemen durch andere Zeichen ersetzt. Alle drei ursprünglichen Bytes werden mit vier Zeichen codiert.
Geschichte von Base64
Am Anfang konnte nur Text per E-Mail versendet werden (RFC 822). Im Laufe der Zeit war es notwendig, neben dem Text auch Audio-, Video- und Grafikdateien, Anwendungen usw. zu übertragen. Es bestand die Notwendigkeit, eine Binärdatei in Text umzuwandeln. Base64 wurde der damals bestehenden UUE-Codierung (Uuencode) hinzugefügt, die in der MIME-Spezifikation (Multipurpose Internet Mail Extensions) (RFC 2045-2049) verwendet wird.
MIME ist ein Standard zur Beschreibung von Kopfzeilen in elektronischen Nachrichten. Seine Verwendung ermöglicht es Ihnen, mehrere Anhänge in einem Brief zu versenden, z. B. Archiv- und Textdateien oder HTML-Seiten. Ein MIME-fähiges E-Mail-Programm extrahiert das Archiv frei aus einer Textdatei, zeigt die Nachricht an und parst die HTML-Tags. Beispielsweise führt Outlook Express automatisch in eine HTML-Seite eingebettete Skripts aus.
Base64 wurde in der Ära der Sieben-, Sechs- und Drei-Bit-Bytes geboren. Alte Kodierungen unterstützten den Acht-Bit-Standard nicht, daher ging ein Teil der Informationen bei der Übertragung vom alten System auf das neue verloren. Oft ließ der Mailserver beim Versenden von Briefen ein zusätzliches Achtelbit fallen oder übermittelte Videos und Bilder nicht. Um solche Probleme zu beseitigen, wurden Codierungen zum Umwandeln von Binärcode in Text entwickelt. Das beliebteste und effektivste System ist Base64, das aufgrund seiner Einfachheit überall verwendet wird.
Ein Algorithmus namens "Encoding for Printing" wurde erstmals 1987 beschrieben, Base64 erschien im Juni 1992. Die Versionen dieses Systems sind Base16, Base32, Base36, Base58, Base85, Base91 und Base122. Spätere Standards werden im IT-Bereich aktiv verwendet.
Interessante Tatsache
Einige Systeme verwenden Base58 zum Codieren von URLs, das sich von Base64 durch das Fehlen von Zeichen im endgültigen Text unterscheidet, die von einer Person mehrdeutig wahrgenommen werden können. 0 (Null), O (großes lateinisches o), I (großes lateinisches i), l (kleines lateinisches L) sind ausgeschlossen. Ebenfalls ausgenommen sind die Zeichen + (Plus) und / (Slash), die bei der Codierung einer URL zu einer falschen Interpretation der Adresse führen können.
Base64 bietet umkehrbare und wiederherstellbare Codierung. Der Dienst übersetzt die Zeichen der 8-Bit-Codetabelle in Zeichen, die während der Übertragung von Informationen in Netzwerken und zwischen Geräten erhalten bleiben.