Base 64

Mitglied: Bigwilli

Bigwilli (Level 1) - Jetzt verbinden

18.11.2002, aktualisiert 20.11.2002, 13124 Aufrufe, 2 Kommentare

Was ist Sinn und Aufgabe von Base 64??

Hallo Admins!

Da ich mich gerade mit Base 64 beschäftige, möchte ich gerne wissen, was Sinn und Aufgabe von Base 64 ist.
Kann mir jemand in groben Zügen in ein paar Sätzen eine Definition dieser Codierung geben?
Mitglied: Frank
19.11.2002 um 17:13 Uhr
base64 ist ein textbasiertes Format, welches der Übertragung von Binärdaten dient. Es ist in der RFC 2045 beschrieben und gehört zu den MIME-Richtlinien. Deshalb wird es manchmal auch als MIME-Codierung bezeichnet. Die Übertragung von binären Dateien mittels E-Mail zum Beispiel macht eine solche Konvertierung notwendig, da E-Mail ein textbasiertes Übertragungsformat ist. Durch die Verwendung verschiedener Zeichensätze auf den verschiedenen Servern, über welche diese Mail geleitet wird, könnten die angehängten Daten zerstört werden. Um das zu verhindern, gibt es base64. base64 benutzt einen sehr eingeschränkten Zeichensatz von 64 Zeichen, wie der Name schon vermuten lässt. Dieser Zeichensatz besteht aus folgenden Zeichen:

"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"

Dazu kommt ein "=" für das sogenannte Padding. Diese Auswahl ist so getroffen, weil diese Zeichen in nahezu jedem Zeichensatz der Computerwelt vorkommen. Die Auswahl der Zeichen macht base64 robuster als beispielsweise "uuencode"(welches einen anderen Zeichensatz verwendet).

Sehen wir uns den Zeichensatz näher an. Er enthält keine Steuerzeichen und beginnt mit "A". Das bedeutet der Charcode dieses Zeichens ist also 0. Die Anzahl von 64 Zeichen ermöglicht es dem Zeichensatz, 6 Bit pro Zeichen zu repräsentieren (der Logarithmus aus 64 zur Basis 2). Das bedeutet andersherum betrachtet, dass ein Zeichen eines base64-codierten Datensroms nur 6 Bit repräsentiert und nicht 8. Somit ist eine base64-codierte Datei immer rund 1/3 größer als das Original, denn der Speicherbedarf eines Zeichens ist nach wie vor 8 Bit, auch wenn es nur 6 Bit repräsentiert. Dafür hat man jedoch die Sicherheit, dass kein Bit verlorengeht. Und Sicherheit hat immer ihren Preis.

Kommen wir zur Umrechnung. base64 bearbeitet die Daten immer auf binärer Ebene. Ebenso ist es dem Verfahren egal, ob die Original-Datei mit 8, 10 oder 16 Bit großen Stücken arbeitet. Bei der Codierung wird der Bitstrom der Datei analysiert, immer nach 6 Bit abgeschnitten und in ein Zeichen des base64-Zeichensatzes umgewandelt.

Nun könnte man denken, der base64 Strom liest sich wie ein einziges langes Wort ohne Punkt und Komma. Dem ist auch (fast) so. Die RFC 2045: MIME (Multipurpose Internet Mail Extensions) Teil 1 (http://rfc.fh-koeln.de/rfc/html/rfc2045.html#23) schreibt vor, dass der Strom in maximal 76 Zeichen lange Einheiten (Zeilen) unterteilt werden muss. Da base64 ein auf binärer Ebene arbeitendes Format ist, müssen die im Originaltext enthaltenen Zeilentrenner in eine Form gebracht werden. Das Problem ist, dass die Zeilenumbruchformate von Windows, Unix und Macintosh basierten Systemen unterschiedlich sind. Es besteht sogar ein Unterschied auf gleichen Systemen. Der Internet Explorer zum Beispiel erzeugt in Textareas den windows-typischen "rn"-Umbruch. Browser basierend auf der Gecko-Engine (Netscape 6, Mozilla) erzeugen dagegen nur ein Unix-typisches "n". Schon alleine deshalb sollten alle Zeilenumbrüche auf ein einheitliches Maß gebracht werden.
Bitte warten ..
Mitglied: Bigwilli
20.11.2002 um 07:48 Uhr
Vielen Dank für diese perfekte, fachkundige Antwort! Es hat mir sehr geholfen und hat mich meinem Ziel bedeutend weitergebracht!

mfG

Martin Strecker
Bitte warten ..
Heiß diskutierte Inhalte
Router & Routing
Cisco RIPv1 RIPv2
MrLabelFrageRouter & Routing26 Kommentare

Hallo Zusammen, ich muss nochmal auf eine schon behandelte Frage eingehen. Bitte jemand, der auch den Cisco Paket Tracer ...

Schulung & Training
IT Ausbildung
gelöst IntershipFrageSchulung & Training20 Kommentare

Hallo Leute, ist diese Ausbildung etwas für den IT-Einstig? Willkommen bei der GFN! Arbeitsuchende Berufstätige Kostenträger Über uns Jobs ...

LAN, WAN, Wireless
RJ45 Buchsen Verbindung
gelöst DennisAdm1nFrageLAN, WAN, Wireless16 Kommentare

Ich habe als Aufgabe bekommen die LAN-Verbindung in einem Haus zu fixen, dabei ist mir aufgefallen, dass der RJ45-Stecker ...

LAN, WAN, Wireless
Suche Access Point Wandhalterung
gelöst EZimmerFrageLAN, WAN, Wireless11 Kommentare

Einen schöne guten Tag, wir haben uns bei einer Ausschreibung beteiligt und sind nun auch der Suche nach folgendem ...

Windows 10
Windows10 Hilfsprogramme endgültig löschen
istike2FrageWindows 109 Kommentare

Hallo, wir sind gerade dabei mit Windows OOBE ein Image vorzubereiten. Wir würden gerne Xbox, HP Hilfsprogramme, Cortana usw. ...

IDE & Editoren
IDE Entwicklung, schreiben
gelöst IntershipFrageIDE & Editoren9 Kommentare

Hallo Leute, zur Zeit befasse ich mich mit dem Schreiben einer eigenen IDE. Hat jemand so etwas schon mal ...

Ähnliche Inhalte
Batch & Shell
DSOFile.dll für 64-Bit
DanielBodenseeFrageBatch & Shell3 Kommentare

Hallo zusammen, ich muss PDF-Dateien aus einem alten Projekt auslesen, damals wurde mittels der DSOFile.DLL von Microsoft dem PDF-File ...

Windows Installation

Dualboot: zu vorhandenem Windows 7 64 bit Windows 10 64 bit installieren

RakoriumFrageWindows Installation2 Kommentare

Halllo zusammen, ich weiß Win 7 wird nicht mehr aktuallisiert, aber ich benötige es ganauso weiter wie es im ...

Windows 10

Umstieg von Win7-64-Enterprise auf Win-10-64-Enterprise: Welche Optionen habe ich?

gelöst Critter-LBSFrageWindows 105 Kommentare

Hallo, mich interessiert, welche Optionen ich außer manuellem Upgrade (Maschine für Maschine, online oder mit Datenträger) habe. Aktuell diskutieren ...

Microsoft Office

Access 2013 64 bit Setup benötigt

xbast1xFrageMicrosoft Office3 Kommentare

Hallo zusammen, ich bin auf der Suche nach einem Access 2013 64 bit Setup, da bestimmte Anwendungen bei uns ...

Windows 10

Windows 10 nur noch als 64 Bit

killtecInformationWindows 1011 Kommentare

Microsoft stellt Windows 10 nur noch als 64 Bit Bereit - Endlich :)

Windows 7

Windows 7 64 bit mit dauernder Systemreparatur

Fitzel69FrageWindows 78 Kommentare

Hallo zusammen, anbei folgende Situation wir haben ca. 50 PCs ( alle von HP) mit Windows 7 / 64 ...

Berechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid CloudSmall Business ITSmall Business IT