Base64 transportiert Bytes als Text und verbirgt keine Geheimnisse
Base64 hilft, wenn ein Textkanal Byte-Daten übertragen soll. Es ändert deren Darstellung, nicht wer sie verstehen kann, und garantiert keine kleinere Datenmenge.
Zuerst Bytes, dann Buchstaben zählen
Standard-Base64 mit Füllzeichen stellt je 3 Bytes als 4 Zeichen dar und ergänzt die letzte Gruppe bei Bedarf mit =. Für die Länge teilen Sie die Bytezahl durch 3, runden auf und multiplizieren danach mit 4.
Ein UTF-8-Zeichen kann mehr als 1 Byte belegen. Ein kurzer arabischer Text kann daher mehr kodierte Zeichen ergeben als ein lateinischer mit gleich vielen Buchstaben.
Quellen: RFC 4648 — Base encodings, padding and security considerations
Kodierung schützt keine Vertraulichkeit
Wer den Wert besitzt, kann ihn normalerweise ohne geheimen Schlüssel dekodieren. Base64 schützt kein Passwort und versteckt keine Information in einem geteilten Link.
Behandeln Sie die Ausgabe so vertraulich wie das Original. Leserechte zu begrenzen erfordert passende Sicherheit, nicht nur ein anderes Textalphabet.
Quellen: RFC 4648 — Base encodings, padding and security considerations
Den erwarteten Byte-Inhalt kennen
Dieses Werkzeug kodiert Text als UTF-8 und dekodiert zu gültigem UTF-8-Text. Ein kodiertes Bild kann gültiges Base64 sein, aber für diesen Textdecoder ungeeignet bleiben.
Die Variante base64url in manchen Links unterscheidet sich vom Standard. Fügen oder löschen Sie keine Zeichen auf Verdacht, um Annahme zu erzwingen; klären Sie die erwartete Variante an der Quelle.
Quellen: RFC 4648 — Base encodings, padding and security considerations
Beispiel: Buchstabenanzahl bestimmt nicht die kodierte Länge
Hi! belegt 3 UTF-8-Bytes und wird zu SGkh: 4 Zeichen ohne Füllzeichen. Dekodieren liefert denselben Text ohne Passwort zurück.
Das arabische Wort مرحبا hat 5 Buchstaben, aber 10 UTF-8-Bytes. Seine Kodierung 2YXYsdit2KjYpw== enthält 16 Zeichen. Entscheidend sind die Bytes; die 2 Gleichheitszeichen bedeuten nicht, dass 2 ursprüngliche Buchstaben fehlen.