Base58

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Base58 ist ein Begriff aus dem Computerbereich und beschreibt ein Verfahren zur Kodierung von positiven ganzen Zahlen. Das Alphabet von Base58 ergibt sich aus dem der Base62-Kodierung durch Weglassen der vier Zeichen 0 (Null), O (großes o), I (großes i) und l (kleines L). Gegenüber dem Alphabet der Base64-Kodierung fehlen außerdem die Zeichen + (Plus) und / (Schrägstrich).

Das resultierende Alphabet der Länge 58 lautet "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ", es besteht somit nur aus verwechslungsfreien alpha-numerischen Zeichen.

Der Vorteil von Base58 im Vergleich zu Base62 und Base64 ist, dass eine Verwechslung zwischen ähnlich aussehenden Zeichen (0, O, I, l) unabhängig vom verwendeten Schrift-Font ausgeschlossen ist. Außerdem ist wie bei Base62 (und im Gegensatz zu Base64) durch Verwendung von ausschließlich alpha-numerischen Zeichen (ohne + und /) sichergestellt, dass bei Doppelklick die gesamte Base58-Zeichenkette markiert wird, und dass bei Verwendung z. B. in E-Mails kein unerwünschter Zeilenumbruch entsteht. Der Nachteil ist eine etwas längere Zeichenfolge als bei einer Base62/Base64-Kodierung. Außerdem können zwei Zahlen, die in binärer Darstellung gleich viele Bits enthalten, in Base58-Darstellung unterschiedlich lang sein, weil 58 keine Zweierpotenz ist. Aus diesem Grund können zum Beispiel die Base58-kodierten Bitcoin-Adressen zwischen 25 bzw. 27 und 34 Zeichen lang sein.[1][2]

Verwendung[Bearbeiten]

Verwendung findet die Base58-Kodierung typischerweise dort, wo lange Integer-Zahlen in kürzere Zeichenketten umgewandelt werden sollen und eine verwechslungsfreie Erkennung der Adresse sichergestellt sein soll, zum Beispiel bei Flickr-Kurz-URLs[3] oder bei Bitcoin-Adressen.

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. https://en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses
  2. https://en.bitcoin.it/wiki/Address
  3. flickr short URLs