Was ist Base64-Codierung? Eine vollständige Erklärung
Schnelle Antwort
Die Base64-Kodierung wandelt Binärdaten in Text mit 64 druckbaren Zeichen (A-Z, a-z, 0-9, +, /) um. Alle 3 Bytes der Eingabe werden zu 4 Base64 Zeichen. Base64 ist umkehrbar (keine Verschlüsselung) und erhöht die Datengröße um ~33 %. Verwenden Sie zum Konvertieren in Ihrem Browser unseren kostenlosen Base64 Encoder und Decoder.
Einführung
Base64 ist ein Binär-zu-Text-Codierungsschema, das Binärdaten in eine ASCII-String-Darstellung mit 64 druckbaren Zeichen umwandelt. Es ist in RFC 4648 definiert und wird häufig zum Codieren von Daten verwendet, die über Medien übertragen werden müssen, die für die Verarbeitung von Text ausgelegt sind – E-Mail-Anhänge (MIME), Daten URLs in HTML/CSS, JWT-Token-Teile und JSON-Nutzlasten, die Binärdaten enthalten. Base64 ist eine Kodierung, keine Verschlüsselung – es ist vollständig umkehrbar und erfordert keinen Schlüssel. Jeder kann Base64 entschlüsseln, daher besteht keine Vertraulichkeit.
Schritt für Schritt
-
Verstehen Sie den Zeichensatz
Base64 verwendet 64 Zeichen: A-Z (26), a-z (26), 0-9 (10), + und / (2). Das =-Zeichen wird zum Auffüllen verwendet, wenn die Eingabelänge kein Vielfaches von 3 ist. Die URL-safe-Variante ersetzt + durch - und / durch _ und lässt das Auffüllen weg.
-
Erfahren Sie, wie die Kodierung funktioniert
Base64 verarbeitet Eingaben in 3-Byte-Blöcken (24 Bit). Jeder 24-Bit-Block ist in vier 6-Bit-Gruppen aufgeteilt. Jeder 6-Bit-Wert (0-63) wird einem der 64 Zeichen zugeordnet. Wenn die Eingabe kein Vielfaches von 3 ist, wird Auffüllen (=) hinzugefügt: 1 Byte Eingabe → 2 Base64 Zeichen + ==, 2 Bytes → 3 Zeichen + =.
-
Verstehen Sie die Größe des Overheads
Base64 erhöht die Datengröße um etwa 33 % – alle 3 Bytes werden zu 4 Zeichen. Eine 1-MB-Datei wird bei Base64-Kodierung zu ~1,33 MB. Dieser Mehraufwand ist der Kompromiss für die Nur-Text-Kompatibilität.
-
Unterscheiden Sie Verschlüsselung von Verschlüsselung
Base64 ist eine Kodierung, keine Verschlüsselung. Es ist ohne Schlüssel umkehrbar – jeder kann es entschlüsseln. Base64 bietet keine Vertraulichkeit; Es konvertiert nur Binärdateien für den Transport in Text. Verwenden Sie Base64 niemals zum Speichern von Passwörtern oder Geheimnissen.
Beispiele
Text kodieren
Eingang: Hello, World!
Ausgabe: SGVsbG8sIFdvcmxkIQ==
Binärdaten kodieren (als Hex angezeigt)
Eingang: Bytes: 0x00 0x01 0x02
Ausgabe: AAEC
URL-safe Base64 (Stil JWT)
Eingang: Standard: SGVsbG8= → URL-safe: SGVsbG8 (no padding, - and _ for + and /)
Ausgabe: Wird in JWT-Tokens und URL-Parametern verwendet
Häufige Probleme
- Die Behandlung von Base64 als Verschlüsselung – Base64 ist ohne Schlüssel umkehrbar. Jeder kann es entschlüsseln. Verwenden Sie es niemals zum Schutz sensibler Daten.
- Nicht-ASCII-Zeichen – naive btoa()-Auslösungen in Unicode. Verwenden Sie TextEncoder + btoa(unescape(encodeURIComponent(text))) oder ein UTF-8-fähiges Tool.
- Padding-Entfernung – das =-Padding ist Teil der Codierung. Durch das Entfernen wird die Dekodierung unterbrochen (obwohl einige Decoder sie wiederherstellen können).
- Größenaufwand – Base64 erhöht die Datengröße um ca. 33 %. Bei großen Dateien ist dies von Bedeutung; Überlegen Sie, ob eine Kodierung erforderlich ist.
Tipps
- Verwenden Sie Base64 für Daten URLs, um kleine Bilder ohne separate HTTP-Anfrage in HTML/CSS einzubetten.
- Verwenden Sie URL-safe Base64 (ersetzen Sie + durch -, / durch _, Streifenauffüllung) für URLs- und JWT-Token.
- Base64 ist keine Verschlüsselung – verwenden Sie es aus Gründen der Transportkompatibilität, nicht aus Gründen der Vertraulichkeit.
- Verwenden Sie unseren Base64 Encoder und Decoder für die sofortige, private Konvertierung in Ihrem Browser.