Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Base 64

Frage Internet

Mitglied: Bigwilli

Bigwilli (Level 1) - Jetzt verbinden

18.11.2002, aktualisiert 20.11.2002, 12542 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!

Mit freundlichen Grüßen

Martin Strecker
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Server 2016 Core als VM auf Win10 1607 - geht nicht

(2)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Off Topic
Mein Arbeitsplatz wurde Outgesourced (42)

Frage von Schroedingers.Katze zum Thema Off Topic ...

Windows Server
gelöst Windows Server Sicherung wirre Meldungen (21)

Frage von DKowalke zum Thema Windows Server ...

Windows 10
gelöst GPO wird bei manchen Rechnern nicht übernommen (20)

Frage von Hanuta zum Thema Windows 10 ...

Mac OS X
gelöst Netzlaufwerke MAC OS Sierra (16)

Frage von Hendrik2586 zum Thema Mac OS X ...