Text & Code / Ratgeber

Base64, Base32 oder Base58: welches Alphabet passt?

Alle drei Verfahren schreiben Bytes als druckbare Zeichen. Entscheidend ist, welches Alphabet das empfangende System verlangt.

Vom Empfänger ausgehen

Wählen Sie zuerst das vom Empfänger verlangte Format, nicht das scheinbar kürzeste. Standard-Base64 verwendet Buchstaben, Ziffern, Plus und Schrägstrich; manche Anwendungen verlangen stattdessen Base64URL. Base32 nutzt Großbuchstaben und die Ziffern 2 bis 7. Bitcoin-artiges Base58 lässt Zeichen weg, die beim Abschreiben leicht verwechselt werden, etwa Null, großes O, großes I und kleines l. Alle drei Alphabete können dieselben Bytes darstellen. Ein Empfänger für ein bestimmtes Alphabet akzeptiert die anderen aber nicht automatisch. Keines der Verfahren verschlüsselt eine Nachricht: mit dem passenden Decoder lassen sich die ursprünglichen Bytes wiederherstellen.

Ein gemeinsames Testbeispiel

Nehmen Sie den ASCII-Text Man. Seine UTF-8-Bytes sind hexadezimal 4D 61 6E. Standard-Base64 schreibt dafür TWFu. Base32 gemäß RFC 4648 schreibt JVQW4=== mit Auffüllzeichen bis zum achtstelligen Block. Das verlinkte Base58-Werkzeug gibt dieselben Bytes mit dem Bitcoin-Alphabet und ohne Gleichheitszeichen aus. Die Zeichenfolgen unterscheiden sich, weil die Alphabete Bitgruppen oder den Zahlenwert anders aufteilen; der Ausgangstext ändert sich nicht. Geben Sie Man in den eingebetteten Base32-Codierer ein und prüfen Sie den zugehörigen Decoder. Wiederholen Sie das mit Base64 und Base58 und vergleichen Sie erst die zurückgewonnenen Daten.

Dieselben drei Bytes durch drei druckbare Alphabete.
  1. UTF-8: Man → 4D 61 6E
  2. Base64: TWFu · Base32: JVQW4===
  3. Base58: anderes Alphabet; zurück zu Man decodieren

Auffüllung, Varianten und Prüfsumme

Die Spezifikationen für Base64 und Base32 behandeln Gleichheitszeichen zur Auffüllung. Einige Protokolle lassen sie absichtlich weg, andere erwarten sie zwingend. Halten Sie sich an die Regel des Empfängers. Base58 verwendet hier keine solche Auffüllung. Einfaches Base58 ist außerdem nicht Bitcoin-Base58Check: Eine Bitcoin-Adresse erhält Versionsinformationen und eine Prüfsumme, bevor sie als Base58 dargestellt wird. MultiVerto codiert UTF-8-Text; es erzeugt keine Bitcoin-Adresse und prüft keine Base58Check-Prüfsumme. Auch Standard-Base64 und Base64URL unterscheiden sich bei Zeichen, die für URLs relevant sind. Die falsche Variante kann trotz richtiger Ausgangsbytes abgelehnt werden.

Bytes statt sichtbare Zeichen prüfen

Text wird zunächst mit einer Zeichencodierung in Bytes verwandelt. Die Base32- und Base58-Textwerkzeuge von MultiVerto nutzen UTF-8; ein Buchstabe mit Akzent kann deshalb mehrere Bytes belegen. Schätzen Sie die Länge anhand der Bytes statt der sichtbaren Buchstaben. Auch ein zusätzliches Leerzeichen im Eingang ändert die Ausgabe. Bei Abweichungen notieren Sie Ausgangstext, UTF-8-Bytes, Alphabet, Auffüllregel und erwarteten Decoder. Decodieren Sie beide Ergebnisse und vergleichen Sie den wiederhergestellten Text. Soll eine beliebige Binärdatei übertragen werden, prüfen Sie, ob das System ihre Rohbytes unverändert erhält; ein Textkonverter ist nicht automatisch ein Dateiprotokoll.

Den Übertragungsvertrag einhalten

Bei MIME-Feldern, API-Token, QR-Nutzdaten oder handschriftlich übertragenen Kennungen entscheidet die jeweilige Spezifikation. Base64 ist im maschinellen Austausch verbreitet; Base32 kann für eingeschränkte Alphabete passen; Base58 wird in bestimmten Systemen für leichteres Abschreiben verwendet. Das sind Anwendungsbeispiele, keine allgemeingültigen Empfehlungen. Codierung allein schützt weder Integrität noch Herkunft. Wenn Änderungen erkannt werden müssen, braucht das umgebende Format eine Prüfsumme, Signatur oder authentifizierte Sicherung. Hinterlegen Sie ein kurzes Testbeispiel wie Man in Ihrer Integration und prüfen Sie Codierung und Decodierung genau an der Schnittstelle, an der Daten die Anwendung verlassen.

Umrechner ausprobieren

Codieren Sie Man als Base32 und prüfen Sie danach den Decoder.

Base32 gruppiert UTF-8-Bits nach RFC 4648 zu Fünfbitzeichen aus A–Z und 2–7. Wandeln Sie lokal in Ihrem Browser um.

Vollständigen Umrechner öffnen

Weitere Ratgeber

Umrechnungsratgeber

Ratgeber entdecken