araç köşesi

Base32 codieren und decodieren

Text in Base32 umwandeln oder eine Base32-Zeichenfolge decodieren, auch 2FA/TOTP-Schlüssel

Ihre Daten bleiben bei Ihnen. Die Umwandlung läuft im Browser; nichts wird an einen Server gesendet.

So funktioniert es

Schreiben Sie links Ihren Text oder fügen Sie die Base32-Zeichenfolge ein, die Sie decodieren möchten, und wählen Sie unter Richtung „Codieren“ oder „Decodieren“; das Ergebnis erscheint sofort rechts. Aus „foobar“ wird mit dem Alphabet nach RFC 4648 MZXW6YTBOI======: Sechs Byte werden zu zehn Zeichen, die sechs Gleichheitszeichen am Ende füllen die Zeichenfolge auf ein Vielfaches von acht auf. Beim Decodieren stören Kleinbuchstaben, Leerzeichen und Bindestriche nicht; ein Einrichtungsschlüssel für die Zwei-Faktor-Anmeldung wie „jbsw y3dp ehpk 3pxp“ lässt sich unverändert einfügen. Sind die decodierten Bytes kein lesbarer Text – bei 2FA-Schlüsseln ist das immer so –, zeigt das Werkzeug sie als Hex an statt Zeichensalat auszugeben und vermerkt das in der Ergebniszeile. Enthält die Zeichenfolge ein Zeichen außerhalb des Alphabets (im RFC-Alphabet fehlen 0, 1, 8 und 9), rät das Werkzeug nicht, sondern nennt die Position. Ihr Text wird im Browser verarbeitet und nirgendwohin gesendet.

Dieses Werkzeug ist auch als base32 decodieren, base32 codieren, base32 decoder online, totp schluessel decodieren, base32 in text umwandeln bekannt.

Was ist Base32?

Base32 schreibt Binärdaten mit nur 32 verschiedenen Zeichen. Die Daten werden in 5-Bit-Stücke zerlegt; jedes Stück ist eine Zahl von 0 bis 31 und steht für ein Zeichen des Alphabets, fünf Byte (40 Bit) ergeben also genau acht Zeichen. Maßgeblich ist RFC 4648. Weil Groß- und Kleinschreibung keine Rolle spielt und leicht verwechselbare Zeichen fehlen, dient Base32 für abgetippte Schlüssel, 2FA-Einrichtungscodes und Dateisysteme ohne Unterscheidung von Groß- und Kleinbuchstaben.

Was ist TOTP (zeitbasiertes Einmalpasswort)?

TOTP ist das Verfahren hinter dem sechsstelligen Code, den eine Authenticator-App alle 30 Sekunden anzeigt (RFC 6238). Bei der Einrichtung teilen App und Website einen geheimen Schlüssel, der im QR-Code steckt oder als Base32-Zeichenfolge eingetippt wird. Danach berechnen beide Seiten aus diesem Schlüssel und der Uhrzeit unabhängig voneinander denselben Code. Wer den Schlüssel kennt, erzeugt gültige Codes – die Base32-Zeichenfolge ist deshalb wie ein Passwort zu schützen.

Was ist der Unterschied zwischen Base32 und Base58?

Beide vermeiden verwechselbare Zeichen, arbeiten aber verschieden. Base32 teilt die Daten in feste 5-Bit-Gruppen: Jedes Zeichen gehört zu einer festen Stelle der Daten, es gibt Blöcke und Füllzeichen, Groß- und Kleinschreibung zählt nicht. Base58 liest die ganzen Daten als eine große Zahl und schreibt sie zur Basis 58; das Ergebnis ist kürzer, unterscheidet aber Groß- und Kleinschreibung und ist ohne Bitgruppen bei langen Eingaben langsamer. 2FA-Schlüssel nutzen Base32, Bitcoin-Adressen und IPFS-Kennungen Base58.

2FA-Schlüssel decodieren: was Sie sehen und worauf Sie achten sollten

Der Einrichtungsschlüssel, den Sie statt des QR-Codes in eine Authenticator-App oder einen Passwortmanager eintippen, ist Base32: Alphabet nach RFC 4648, meist ohne Füllzeichen und in Vierergruppen geschrieben. Beim Decodieren kommt kein Wort und kein Passwort heraus, sondern 10 oder 20 zufällige Bytes, die das Werkzeug als Hex zeigt. Das ist richtig so: Der Schlüssel ist der Startwert, aus dem die sechsstelligen Codes berechnet werden.

Wer diesen Schlüssel kennt, kann Ihre Codes erzeugen – behandeln Sie ihn wie ein Passwort. Diese Seite kann ihn nicht versenden, trotzdem gehört er nicht in Bildschirmfotos, E-Mail-Entwürfe oder Notiz-Apps. Das Decodieren ist vor allem eine Kontrolle, ob der Schlüssel richtig abgeschrieben wurde: Eine falsche Länge oder ein fremdes Zeichen fällt sofort auf.

Welches Alphabet brauchen Sie?

Besteht die Zeichenfolge nur aus Großbuchstaben und den Ziffern 2 bis 7, ist es Base32 nach RFC 4648 – so arbeiten 2FA-Schlüssel, manche Dateinamen und DNS-Einträge. Kommen 0, 1, 8 oder 9 vor, handelt es sich wahrscheinlich um base32hex oder Crockford. base32hex erhält die Sortierreihenfolge: Sortierte Bytes ergeben gleich sortierte Zeichenfolgen, deshalb wird es für Datenbankschlüssel gewählt.

Crockford-Base32 ist zum Vorlesen und Abtippen gedacht. Es lässt I, L und O weg, die leicht mit 1 und 0 verwechselt werden, und verzichtet auf U, damit keine unerwünschten Wörter entstehen. Beim Decodieren liest es I und L als 1 und O als 0; ein am Telefon falsch verstandener Code führt so trotzdem zu den richtigen Bytes. Crockford kennt keine Füllzeichen, die Einstellung dafür wirkt hier nicht.

  • RFC 4648: ABCDEFGHIJKLMNOPQRSTUVWXYZ234567
  • base32hex: 0123456789ABCDEFGHIJKLMNOPQRSTUV
  • Crockford: 0123456789ABCDEFGHJKMNPQRSTVWXYZ

Häufige Fragen

Wie decodiere ich eine Base32-Zeichenfolge?

Fügen Sie die Zeichenfolge links ein und wählen Sie „Decodieren“. Ist das Ergebnis lesbarer Text, sehen Sie den Text, sonst die Bytes als Hex. Kleinbuchstaben, Leerzeichen und fehlende Gleichheitszeichen am Ende sind kein Problem.

Was ist der Unterschied zwischen Base32 und Base64?

Base64 nutzt 64 Zeichen und ist kürzer: 3 Byte werden zu 4 Zeichen. Base32 nutzt nur Großbuchstaben und Ziffern, 5 Byte werden zu 8 Zeichen – rund 20 % länger. Dafür spielt Groß- und Kleinschreibung keine Rolle, es lässt sich vorlesen und macht in Dateinamen keine Probleme. Deshalb sind 2FA-Schlüssel Base32.

Wozu dienen die Gleichheitszeichen am Ende, darf ich sie löschen?

Base32 arbeitet in Blöcken zu 5 Byte. Ist der letzte Block kürzer, füllen Gleichheitszeichen die Zeichenfolge auf ein Vielfaches von 8 Zeichen auf. Dieses Werkzeug decodiert mit und ohne Füllzeichen, viele Anwendungen (auch 2FA-Apps) schreiben sie gar nicht. Prüfen Sie, ob das empfangende System sie erwartet.

Was bedeutet der Fehler „ergeben keine ganzen Bytes“?

Bei Base32 kann der letzte Block nie 1, 3 oder 6 Zeichen lang sein, weil diese Längen keiner Byte-Zahl entsprechen. Sehen Sie diesen Fehler, ist beim Kopieren ein Zeichen verloren gegangen oder hinzugekommen. Kopieren Sie die Zeichenfolge erneut aus der Quelle.