Base32-, Base58- und Ascii85-Konverter
Kodieren Sie Text oder rohe Bytes als Base32, Base58, Ascii85 oder Z85, oder dekodieren Sie eine dieser Kodierungen zurück, mit dem jeweils eigenen Alphabet und den eigenen Auffüllregeln. Die Berechnungstabelle zeigt, wie aus den ersten Bytes Zeichen werden. Base64 behandelt der Text-Encoder & -Decoder. Läuft in Ihrem Browser; nichts wird hochgeladen.
Buchstaben A–Z und Ziffern 2–7, fünf Bit pro Zeichen, mit = auf ein Vielfaches von acht Zeichen aufgefüllt. Beim Dekodieren spielt die Groß- und Kleinschreibung keine Rolle.
So wurde es berechnet
Die Bytes werden als Bits geschrieben und in Gruppen zu fünf zerlegt. Jede Gruppe ist eine Zahl von 0 bis 31 und wählt ein Zeichen aus.
| Bits | Wert | Zeichen |
|---|---|---|
| 01001 | 9 | J |
| 00001 | 1 | B |
| 10010 | 18 | S |
| 10110 | 22 | W |
| 11000 | 24 | Y |
| 11011 | 27 | 3 |
| 00011 | 3 | D |
| 01111 | 15 | P |
| 00101 | 5 | F |
| 10000 | 16 | Q |
| 10000 | 16 | Q |
| 00101 | 5 | F |
| 01110 | 14 | O |
| 11011 | 27 | 3 |
| 11011 | 27 | 3 |
| 10010 | 18 | S |
Die ersten 16 Zeilen werden angezeigt.
So verwenden Sie den Base-Kodierungskonverter
- 1. Wählen Sie eine Kodierung. Base32, Base32 mit dem erweiterten Hex-Alphabet, Base58 mit dem Bitcoin-Alphabet, Ascii85 in der Form von Adobe oder Z85. Ein Hinweis unter dem Menü beschreibt die gewählte Kodierung.
- 2. Geben Sie an, was die Daten sind. Text wird als UTF-8-Bytes gelesen. Hex-Bytes erlaubt es, beliebige Binärdaten zu kodieren, etwa einen Schlüssel, indem Sie sie als Paare wie
86 4f d2 6feingeben. - 3. Kodieren oder dekodieren. Das Kodieren ergibt Text aus dem Alphabet der Kodierung. Das Dekodieren wandelt ihn zurück in Bytes, angezeigt als Text oder Hex. Leerzeichen und Zeilenumbrüche in der Eingabe werden ignoriert.
- 4. Prüfen Sie die Optionen. Base32 kann mit oder ohne
=-Auffüllung geschrieben werden. Ascii85 kann in<~und~>eingeschlossen werden und vier Null-Bytes alszschreiben.
Wofür diese Kodierungen da sind
Keine davon ist Verschlüsselung. Jede macht aus Bytes, die nicht druckbar sein müssen, Text, der in eine E-Mail, eine URL, einen QR-Code oder eine Konfigurationsdatei eingefügt werden kann. Und jeder, der den Namen der Kodierung kennt, kann sie rückgängig machen. Sie unterscheiden sich im verwendeten Alphabet und darin, wie viel länger der Text als die Daten ist.
| Kodierung | Zeichen | Länge im Verhältnis zu den Bytes | Hello, World wird zu |
|---|---|---|---|
| Base32 (RFC 4648) | 32 | 8 ÷ 5 so lang | JBSWY3DPFQQFO33SNRSA==== |
| Base32 mit erweitertem Hex-Alphabet | 32 | 8 ÷ 5 so lang | 91IMOR3F5GG5ERRIDHI0==== |
| Base58 (Bitcoin) | 58 | etwa 1,37-fach | 2NEpo7TZsLBYdvo5V |
| Ascii85 (Adobe) | 85 | 5 ÷ 4 so lang | <~87cURD_*#4DfTZ)~> |
| Z85 (ZeroMQ) | 85 | 5 ÷ 4 so lang | nm=QNz.92jz/PV8 |
Base32
Base32 zerlegt die Bytes in 5-Bit-Gruppen und schreibt jede als eines von 32 Zeichen, A–Z und 2–7. Es verwendet nur die Ziffern 2 bis 7 und lässt 0, 1 und 8 weg, die O, I und B ähneln. Außerdem ignoriert es die Groß- und Kleinschreibung, sodass Menschen es vorlesen oder abtippen können. Das Auffüllzeichen = rundet die Länge auf ein Vielfaches von acht auf. RFC 4648 enthält Testvektoren wie foobar → MZXW6YTBOI======. Geheimnisse von Authenticator-Apps und Tor-Onion-Adressen sind Base32.
Base58
Base58 behandelt die gesamte Eingabe als eine große Zahl und schreibt sie im 58er-System. Dabei fehlen 0, O, I und l sowie die Zeichen + und /, sodass sich das Ergebnis per Doppelklick kopieren lässt und schwer zu verlesen ist. Jedes führende Null-Byte wird als erstes Zeichen 1 geschrieben. Das Bitcoin-Alphabet ist eines von mehreren Base58-Alphabeten. Die von Ripple und Flickr verwendeten ordnen die Zeichen anders, prüfen Sie daher, welches Ihre Daten verwenden. Bitcoin-Adressen fügen eine Prüfsumme und ein Versionsbyte hinzu, ein Verfahren namens Base58Check, das dieses Tool nicht berechnet.
Ascii85 und Z85
Beide lesen vier Bytes als 32-Bit-Zahl und schreiben sie als fünf Ziffern im 85er-System, daher sind sie nur 25 Prozent länger als die Daten. Adobes Ascii85, verwendet in PostScript und PDF, nutzt die Zeichen von ! bis u, kürzt vier Null-Bytes als z ab und schließt die Daten meist in <~ und ~> ein. Eine abschließende Gruppe von einem bis drei Bytes ergibt ein Zeichen mehr, als sie Bytes hat. Z85, in ZeroMQs RFC 32 definiert, verwendet ein anderes 85-Zeichen-Alphabet, das so gewählt ist, dass Anführungszeichen und Backslashes im Quelltext vermieden werden. Es hat keine z-Abkürzung und keine kurze Schlussgruppe, daher muss die Eingabe aus einem Vielfachen von vier Bytes bestehen. Das Beispiel der Spezifikation sind die acht Bytes 86 4f d2 6f b5 59 f7 5b, die zu HelloWorld kodiert werden. Es gibt weitere Base85-Alphabete, etwa das aus RFC 1924, das Git verwendet; passen Sie das Alphabet daher an seine Quelle an.
Häufig gestellte Fragen
- Ist Base32 oder Base58 eine Verschlüsselung?
- Nein. Es sind Kodierungen: Jeder kann sie umkehren, weil das Alphabet und die Regeln öffentlich sind. Sie machen Daten druckbar und leichter zu kopieren, nicht geheim.
- Warum lässt Base58 einige Zeichen weg?
- Um Verwechslungen und Symbole zu vermeiden. Es lässt 0 (Null), O (großes O), I (großes I) und l (kleines L) weg, die in vielen Schriftarten verwechselt werden können, sowie + und /, die die Auswahl per Doppelklick stören. Es bleiben 58 Zeichen.
- Wie dekodiere ich eine Base32-Zeichenfolge?
- Wählen Sie Base32, wechseln Sie zu Dekodieren und fügen Sie die Zeichenfolge ein. Die Groß- und Kleinschreibung spielt keine Rolle, und die abschließenden =-Zeichen sind optional. Wenn Sie einen Fehler erhalten, der Zeichen nennt, ist die Zeichenfolge wahrscheinlich Base32 mit erweitertem Hex-Alphabet, Base64 oder eine andere Kodierung.
- Worin unterscheiden sich Ascii85 und Z85?
- Beide verwenden fünf Zeichen für vier Bytes, aber ihre Alphabete unterscheiden sich. Ascii85 verwendet die Zeichen von ! bis u, hat eine z-Abkürzung für Nullen und kann von <~ und ~> umgeben sein. Z85 verwendet ein quelltextsicheres Alphabet und keine Abkürzungen.
- Warum verlangt Z85 ein Vielfaches von vier Bytes?
- Die Z85-Spezifikation sieht keine Auffüllung vor. Ihre Daten müssen aus ganzen 4-Byte-Gruppen bestehen und ihr Text aus einem Vielfachen von fünf Zeichen. Ergänzen Sie die Bytes selbst oder verwenden Sie Ascii85, das eine kurze Schlussgruppe verarbeitet.
- Wie kodiere ich eine Base64-Zeichenfolge?
- Diese Seite macht kein Base64. Der Text-Encoder & -Decoder wandelt Text in Base64, URLs und HTML-Entitäten um und zurück, und die Seite zur XOR-Chiffre kann Hex-Bytes als Base64 anzeigen.