Base 64

Base 64

Base64 ist ein Begriff aus dem Computerbereich und beschreibt ein Verfahren zur Kodierung von 8-Bit-Binärdaten (z. B. ausführbare Programme, ZIP-Dateien), in eine Zeichenfolge, die nur aus wenigen, Codepage-unabhängigen ASCII-Zeichen besteht. Im Zusammenhang mit OpenPGP wird noch eine Prüfsumme (CRC-24) angehängt, dieses leicht modifizierte Verfahren trägt den Namen Radix-64.

Es findet im Internet-Standard MIME (Multipurpose Internet Mail Extensions) Anwendung und wird damit hauptsächlich zum Versenden von E-Mail-Anhängen verwendet. Nötig ist dies, um den problemlosen Transport von beliebigen Binärdaten zu gewährleisten, da SMTP in seiner ursprünglichen Fassung nur für den Versand von 7-Bit-ASCII-Zeichen ausgelegt war. Durch die Kodierung steigt der Platzbedarf des Datenstroms um 36 % (33 % durch die Kodierung selbst, weitere 3 % durch die im kodierten Datenstrom eingefügten Zeilenumbrüche).

Zur Kodierung werden die Zeichen AZ, az, 09, + und / verwendet, sowie = am Ende. Da diese Zeichen auch in EBCDIC (Extended Binary Coded Decimals Interchange Code) vorkommen (wenn auch an anderen Code-Positionen), ist damit auch ein Datenaustausch zwischen nicht-ASCII-Plattformen möglich.

Kodierung von Base64

Zur Kodierung werden jeweils drei Byte des Bytestroms (=24 bit) in vier 6-bit-Blöcke aufgeteilt. Jeder dieser 6-bit-Blöcke bildet eine Zahl zwischen 0 und 63. Diese Zahlen werden anhand der nachfolgenden Umsetzungstabelle in „druckbare ASCII-Zeichen“ umgewandelt und ausgegeben. Der Name des Algorithmus erklärt sich durch eben diesen Umstand – jedem Zeichen des kodierten Datenstroms lässt sich eine Zahl zwischen 0 und 63 zuordnen (siehe Tabelle). Mathematisch betrachtet gleicht dies einem Stellenwertsystem der Basis 64. In der Regel wird spätestens nach jeweils 76 ausgegebenen Zeichen ein Zeilenumbruch eingefügt, welcher jedoch ansonsten für die Kodierung nicht von Belang ist.

Falls die Gesamtanzahl der Eingabebytes nicht durch drei teilbar ist, wird der zu kodierende Text am Ende mit aus Nullbits bestehenden Füllbytes aufgefüllt, so dass sich eine durch drei teilbare Anzahl an Bytes ergibt. Um dem Dekodierer mitzuteilen, wie viele Füllbytes angefügt wurden, werden die 6-Bit-Blöcke, die vollständig aus Füllbytes entstanden sind, mit = kodiert. Somit können am Ende einer Base64-kodierten Datei null, ein oder zwei =-Zeichen auftreten. Anders gesagt (denn dies ist äquivalent), es werden so viele =-Zeichen angehängt, wie Füllbytes angefügt worden sind.

Wert Zeichen Wert Zeichen Wert Zeichen Wert Zeichen
0 A 16 Q 32 g 48 w
1 B 17 R 33 h 49 x
2 C 18 S 34 i 50 y
3 D 19 T 35 j 51 z
4 E 20 U 36 k 52 0
5 F 21 V 37 l 53 1
6 G 22 W 38 m 54 2
7 H 23 X 39 n 55 3
8 I 24 Y 40 o 56 4
9 J 25 Z 41 p 57 5
10 K 26 a 42 q 58 6
11 L 27 b 43 r 59 7
12 M 28 c 44 s 60 8
13 N 29 d 45 t 61 9
14 O 30 e 46 u 62 +
15 P 31 f 47 v 63 /

RFC 3548 beschreibt ebenfalls diese Kodierung, schlägt allerdings eine leicht modifizierte Variante vor, welche benutzt werden soll, falls die Zeichen + und / nicht angewendet werden können. (Zum Beispiel bei Dateinamen oder anderen Umgebungen, wo diese Zeichen eine Sonderbedeutung haben.) Diese Zeichen werden durch - (Minus, ASCII 2Dhex) und _ (Unterstrich, ASCII 5Fhex) ersetzt.

Beispiel

Polyfon zwitschernd aßen Mäxchens Vögel Rüben, Joghurt und Quark

Der UTF-8-kodierte Text wird Base64-kodiert zu:

UG9seWZvbiB6d2l0c2NoZXJuZCBhw59lbiBNw6R4Y2hlbnMgVsO2Z2VsIFLDvGJlbiwgSm9n
aHVydCB1bmQgUXVhcms=

Erkennbar ist hierbei, dass Base64 eine nicht lesbare Kodierung erstellt, im Gegensatz dazu ist ein quoted-printable-kodierter Text mit Ausnahme der Sonderzeichen zumindest teilweise lesbar.

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • base — base …   Dictionnaire des rimes

  • basé — basé …   Dictionnaire des rimes

  • base — [ baz ] n. f. • XIIe; lat. basis, mot gr. « marche, point d appui » I ♦ A ♦ 1 ♦ Partie inférieure d un corps sur laquelle il porte, il repose. ⇒ appui (point d appui), assiette, assise, 1. dessous, fond, fondement, pied. La base de l édifice… …   Encyclopédie Universelle

  • Base D'or — En mathématiques, le nombre d or, à savoir peut être utilisé comme une base de numération. Ce système est connu sous le nom base d or, ou accessoirement, phinaire (car le symbole pour le nombre d or est la lettre grecque « phi »). Tout… …   Wikipédia en Français

  • base — n Base, basis, foundation, ground, groundwork are comparable when meaning something on which another thing is reared or built or by which it is supported or fixed in place. Base may be applied to the lowest part or bottom of something without… …   New Dictionary of Synonyms

  • base — base·ball; base; base·less; base·lin·er; base·ly; base·man; base·ment; base·ness; de·base; de·base·ment; di·a·base; em·base; gnatho·base; gyno·base; im·base; iso·base; phal·lo·base; rheo·base; rim·base; scle·ro·base; sub·base; sur·base;… …   English syllables

  • base — base1 [bās] n. [ME < OFr bas < L basis,BASIS] 1. the thing or part on which something rests; lowest part or bottom; foundation 2. the fundamental or main part, as of a plan, organization, system, theory, etc. 3. the principal or essential… …   English World dictionary

  • Base — (b[=a]s), a. [OE. bass, F. bas, low, fr. LL. bassus thick, fat, short, humble; cf. L. Bassus, a proper name, and W. bas shallow. Cf. {Bass} a part in music.] 1. Of little, or less than the usual, height; of low growth; as, base shrubs. [Archaic]… …   The Collaborative International Dictionary of English

  • Base — or BASE may refer to:A base is a mixture of urine n waste so do not eat it* Base meaning bottom, the lowest part of an object* can mean negative, unfavorable or undesirable in nature. Bad; vile; malicious; evil.In mathematics: *Base (mathematics) …   Wikipedia

  • base — 1. a base de. Locución preposicional que, seguida de un sustantivo, expresa que lo denotado por este es el fundamento o componente principal: «Los [tallarines] verdes [...] están hechos a base de albahaca» (Cisneros Mestizaje [Perú 1995]).… …   Diccionario panhispánico de dudas

  • base — (Del lat. basis, y este del gr. βάσις). 1. f. Fundamento o apoyo principal de algo. 2. Conjunto de personas representadas por un mandatario, delegado o portavoz suyo. U. m. en pl.) 3. Lugar donde se concentra personal y equipo, para, partiendo de …   Diccionario de la lengua española

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”