Anleitung
- Wählen Sie „Kodieren“, um Text in Base62 umzuwandeln, oder „Dekodieren“, um Base62 wieder in Text zurückzuverwandeln.
- Wählen Sie unter „Alphabet“ die Reihenfolge, die zu Ihrem System passt: 0-9 A-Z a-z (voreingestellt) oder 0-9 a-z A-Z.
- Geben Sie Ihre Eingabe ein, fügen Sie sie ein oder öffnen Sie mit „Datei öffnen“ eine kleine Datei (bis etwa 20 KB).
- Kopieren Sie das Ergebnis oder laden Sie es als Datei herunter.
Was ist Base62?
Base62 verwendet die zehn Ziffern, die 26 Großbuchstaben und die 26 Kleinbuchstaben. Es ist das größte Alphabet, das nur aus Buchstaben und Ziffern besteht, sodass das Ergebnis in URLs, Dateinamen, Datenbankschlüsseln oder Bezeichnern im Code keine Maskierung benötigt. Jedes Zeichen trägt etwa 5,95 Bit, wodurch die Ausgabe etwa 1,34-mal so groß ist wie die Eingabe. Damit ist Base62 fast so kompakt wie Base64, kommt aber ohne +, /, =, - oder _ aus.
Da 62 keine Zweierpotenz ist, behandelt dieses Tool die gesamte Eingabe als eine große Zahl und wandelt sie zur Basis 62 um, wie bei Base58 und Base36. Jedes führende Nullbyte wird als führende 0 geschrieben, damit es beim Hin- und Rückweg erhalten bleibt. Die Eingabe ist auf etwa 20 KB begrenzt, weil die Berechnung bei großen Datenmengen langsam wird.
Es gibt keinen einheitlichen Base62-Standard
Anders als für Base64 gibt es für Base62 keinen RFC, und die Implementierungen unterscheiden sich so, dass ihre Ausgaben nicht miteinander kompatibel sind:
- Alphabetreihenfolge. Dieses Tool bietet
0-9A-Za-z(voreingestellt) und0-9a-zA-Z. Manche anderen Bibliotheken stellen die Buchstaben vor die Ziffern. - Führende Nullen. Manche Implementierungen behalten wie dieses Tool eine
0pro führendem Nullbyte bei, andere verwerfen sie, und Formate mit fester Länge füllen das Ergebnis auf eine bestimmte Breite auf. - Was kodiert wird. Viele Base62-Funktionen kodieren eine Ganzzahl, etwa eine Datenbank-ID, statt einer Bytefolge. Andere teilen die Daten in Blöcke fester Größe auf.
Wenn ein String aus einem anderen System hier nur Zeichensalat ergibt, probieren Sie die andere Option unter „Alphabet“. Schlägt es weiterhin fehl, verwendet das System vermutlich ein anderes Verfahren.
Wo Base62 verwendet wird
URL-Kürzer wandeln eine fortlaufende ID in einen kurzen Code um: Sieben Base62-Zeichen decken mehr als 3,5 Billionen Werte ab. Sortierbare IDs wie KSUID verwenden eine feste Base62-Form mit 27 Zeichen, und viele Dienste setzen Base62 für API-Schlüssel und Tokens ein, weil ein Doppelklick den ganzen String markiert und er sich überall einfügen lässt. Um eine einzelne Ganzzahl umzuwandeln, verwenden Sie den Zahlensystem-Umrechner oder ein paar Zeilen Code:
// JavaScript: Ganzzahl (BigInt) in Base62
const A = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
function toBase62(n) {
let s = '';
do { s = A[Number(n % 62n)] + s; n /= 62n; } while (n > 0n);
return s;
}
toBase62(123456789n); // '8M0kX'
Spezifikation
| Alphabet | 0-9 A-Z a-z |
|---|---|
| Ausgabegröße | Etwa 134 % (Großzahl-Umrechnung) |
| Auffüllung | Keine |
| Standard | Kein formaler Standard |
| Groß-/Kleinschreibung relevant | Ja |
Beispiele
| Eingabe (UTF-8) | Ausgabe |
|---|---|
Hello, World! | 1wJfrzvdbtXUOlUjUf |
Base64.is | NWxjrFq4r3rv |
你好 | 19PqtKE1t |
Häufig gestellte Fragen
Ist Base62 URL-sicher?
Warum wird mein Base62-String zu falschem Text dekodiert?
Base62-Implementierungen unterscheiden sich in Alphabetreihenfolge und Verfahren. Wechseln Sie zwischen den Alphabeten 0-9A-Za-z und 0-9a-zA-Z. Funktioniert keines davon, wurde der String vermutlich aus einer Ganzzahl oder mit einem anderen Algorithmus erzeugt.
Unterscheidet Base62 zwischen Groß- und Kleinschreibung?
Ja. Groß- und Kleinbuchstaben stehen für unterschiedliche Werte, daher darf ein Base62-String niemals in Groß- oder Kleinbuchstaben umgewandelt werden.