Base64-Kodierung
Kostenloses Online-Base64-Kodierungs- und Dekodierungstool. Unterstützt die Zeichensätze UTF-8/ASCII/ISO-8859-1 mit drei Varianten: Standard, URL-Safe und MIME. Zeigt die Volumenaufblähungsrate in Echtzeit an, und die MIME-Zeilenumbrüche entsprechen dem RFC 2045-Standard.
Ähnliche Tools
Was ist Base64-Kodierung?
Base64 ist ein binär-zu-text-Kodierungsschema, das auf 64 druckbaren ASCII-Zeichen basiert und erstmals durch RFC 2045 (MIME-Standard) definiert wurde. Base64 wandelt alle 3 Bytes (24 Bit) in 4 Base64-Zeichen um (A-Z, a-z, 0-9, +, /), sodass binäre Daten sicher über Systeme übertragen werden können, die nur Text unterstützen, wie HTTP-Header, JSON-Payloads, XML-Dokumente oder URL-Abfrageparameter.
**Base64 ist keine Verschlüsselung**, es bietet nur Datenformatkonvertierung, jeder kann es leicht dekodieren. Wenn Sie sensible Daten schützen müssen, verwenden Sie ein echtes Verschlüsselungsverfahren wie AES. Typische Anwendungen von Base64 sind: HTTP Basic Authentication (`Authorization: Basic dXNlcjpwYXNz`), Header- und Payload-Segmente von JWT-Tokens (Base64URL-Format), Data URI (`data:image/png;base64,...`), MIME-Kodierung von E-Mail-Anhängen usw.
**URL-Safe Base64** (RFC 4648 §5) ersetzt die +/ des Standard-Base64 durch -_ und lässt das Padding-= im Allgemeinen weg. Dadurch kann das kodierte Ergebnis sicher in URLs, Dateipfaden oder JSON-Feldern erscheinen. JWT-Tokens, der code_verifier von OAuth PKCE und AWS Signature V4 verwenden alle die URL-Safe-Base64-Kodierung.
**Der MIME-Zeilenvorschub** ist ein RFC 2045-Standard, der festlegt, dass jede Zeile 76 Zeichen nicht überschreiten darf. Wenn Base64-Inhalt in E-Mails oder bestimmten Szenarien verwendet wird, die eine Anzeige mit Zeilenumbrüchen erfordern, fügt die MIME-Variante automatisch Zeilenumbruchzeichen (`\n`) alle 76 Zeichen ein. Dies ist das Standardformat für die Übertragung von E-Mail-Anhängen.
Das Tool verwendet die native **btoa/atob-API** des Browsers, kombiniert mit einer UTF-8-sicheren Verarbeitungslogik, um sicherzustellen, dass Multibyte-Zeichen wie Chinesisch, Japanisch und Emoji korrekt kodiert werden. Alle Berechnungen werden lokal abgeschlossen, Daten werden an keine Server gesendet. Öffnen Sie das Netzwerkfenster der Browser-Entwicklertools, um zu überprüfen, dass während des gesamten Vorgangs keine externen Anfragen gestellt werden.
Anwendungsfälle
- JWT-Debugging: Dekodieren Sie die Header- und Payload-Segmente des JWT (Base64URL-Format), um den Inhalt der Token-Ansprüche anzuzeigen
- Basic Auth: Kodieren Sie username:password als HTTP-Basic-Authentifizierungsdaten
- OAuth-Entwicklung: Generieren Sie code_verifier oder überprüfen Sie code_challenge in PKCE-Szenarien
- API-Debugging: Kodieren Sie JSON-Daten oder dekodieren Sie den Inhalt von Base64-Feldern, die von der API zurückgegeben werden
- Data-URI-Bildeinbettung: Wandeln Sie kleine Icons in das Format data:image/...;base64,... zur Einbettung in CSS/HTML um
- E-Mail-Anhang-Kodierung: Kodieren Sie binäre E-Mail-Anhänge im MIME-Base64-Format
Anleitung
- Modus auswählen: Klicken Sie auf Encode (Kodieren) oder Decode (Dekodieren), um die Verarbeitungsrichtung zu wechseln
- Variante auswählen: Standard (Standard), URL-Safe (JWT/OAuth), MIME (E-Mail-Format mit 76-Zeilenumbrüchen)
- Inhalt eingeben: Fügen Sie Text oder die Base64-Zeichenkette ein, sie wird automatisch in Echtzeit verarbeitet
- Statistiken anzeigen: Unten werden die Zeichenanzahl und die Volumenaufblähungsrate angezeigt (Kodierung erhöht das Volumen um etwa 33 %)
- Ergebnis kopieren: Kopieren Sie die Base64-Zeichenkette oder den dekodierten Text mit einem Klick
Funktionen
- Ein-Klick-Umschaltung Encode/Decode: Wechseln Sie frei zwischen Kodierungs- und Dekodierungsmodus, die Ausgabe wird direkt zur Eingabe, um zyklische Verarbeitung zu unterstützen
- Unterstützung für drei Zeichensätze: UTF-8 (Chinesisch/Japanisch/Emoji), ASCII, ISO-8859-1, professionelle Abdeckung für mehrere Szenarien
- Ausgabe in drei Varianten: Standard (Standard), URL-Safe (sicher für JWT/OAuth/PKCE), MIME (RFC 2045-Standard mit 76-Zeilenumbrüchen)
- Echtzeit-Volumenstatistik: Zeigt die Anzahl der Eingabe-/Ausgabezeichen und die Aufblähungsrate in Echtzeit an (Base64 erhöht das Volumen um etwa 33 %)
- Freundliche Fehlermeldungen: Wenn Zeichen außerhalb des Bereichs liegen, werden spezifische Fehlermeldungen anstelle eines einfachen Fehlers angezeigt
- Ziehbarer Trenner: Auf dem PC können Sie das Verhältnis der linken und rechten Bearbeitungsbereiche anpassen, um sich auf die aktuelle Aufgabe zu konzentrieren
- Unabhängige Tabs für Mobilgeräte: Telefon-/Tablet-Benutzer wechseln unabhängig zwischen Eingabe- und Ausgabebereich für ein reibungsloses Erlebnis
Codebeispiele
Base64-Kodierung in JavaScript (unterstützt Chinesisch UTF-8)
// 编码(支持 UTF-8 中文)
function b64Encode(str) {
return btoa(unescape(encodeURIComponent(str)));
}
// 解码(支持 UTF-8 中文)
function b64Decode(str) {
return decodeURIComponent(escape(atob(str)));
}
// URL-Safe 编码(用于 JWT / OAuth)
function b64UrlEncode(str) {
return btoa(unescape(encodeURIComponent(str)))
.replace(/\+/g, '-')
.replace(/\//g, '_')
.replace(/=+$/, '');
}
console.log(b64Encode('Hello 世界')); // SGVsbG8g5LiW55WM
console.log(b64Decode('SGVsbG8g5LiW55WM')); // Hello 世界Base64-Kodierung in Python
import base64
# Standard 编码(UTF-8)
encoded = base64.b64encode('Hello 世界'.encode('utf-8'))
print(encoded.decode()) # SGVsbG8g5LiW55WM
# Standard 解码
decoded = base64.b64decode(encoded).decode('utf-8')
print(decoded) # Hello 世界
# URL-Safe 编码(用于 JWT / OAuth)
url_safe = base64.urlsafe_b64encode('Hello 世界'.encode('utf-8'))
print(url_safe.decode()) # SGVsbG8g5LiW55WM(无 padding 需手动去除)
# 去除 padding(JWT 标准做法)
url_safe_no_pad = url_safe.decode().rstrip('=')
print(url_safe_no_pad)Base64-Kodierung in Java
import java.nio.charset.StandardCharsets;
import java.util.Base64;
public class Base64Example {
public static void main(String[] args) {
String text = "Hello 世界";
// Standard 编码
String encoded = Base64.getEncoder()
.encodeToString(text.getBytes(StandardCharsets.UTF_8));
System.out.println(encoded); // SGVsbG8g5LiW55WM
// Standard 解码
String decoded = new String(
Base64.getDecoder().decode(encoded), StandardCharsets.UTF_8);
System.out.println(decoded); // Hello 世界
// URL-Safe 编码(用于 JWT / URL)
String urlSafe = Base64.getUrlEncoder().withoutPadding()
.encodeToString(text.getBytes(StandardCharsets.UTF_8));
System.out.println(urlSafe);
// MIME 编码(76字符换行)
String mime = Base64.getMimeEncoder()
.encodeToString(text.getBytes(StandardCharsets.UTF_8));
}
}Häufig gestellte Fragen
Ist Base64-Kodierung dasselbe wie Verschlüsselung?
Nein. Base64 wandelt Text nur in eine andere reversible Darstellungsform um; jeder kann ihn zurück zum Originaltext dekodieren. Wenn es sich um sensible Daten handelt (Passwörter, Tokens), verwenden Sie ein echtes Verschlüsselungsverfahren wie AES. Base64 eignet sich nur für die Datenformatkonvertierung und erleichtert die Übertragung binärer Daten über Textsysteme.
AES-VerschlüsselungstoolWie stark erhöht sich das Volumen nach der Base64-Kodierung?
Die Base64-Kodierung erhöht das Volumen der Originaldaten um etwa 33 %. Dies liegt daran, dass alle 3 Bytes (24 Bit) in 4 Base64-Zeichen kodiert werden. Beispielsweise wird ein Text von 100 Bytes nach der Kodierung etwa 133 Bytes groß sein. Unten im Tool wird die Aufblähungsrate in Echtzeit angezeigt, damit Sie die Datengröße bewerten können. Beispiel: `Hello` → `SGVsbG8=` (Volumen +33 %).
Base64-Statistik-ToolWas ist der Unterschied zwischen den drei Varianten: Standard, URL-Safe und MIME?
Standard ist das Standard-Base64, das die Zeichen A-Z, a-z, 0-9, +, / verwendet. URL-Safe ersetzt +/ durch -_, was es für URL-Parameter und JWT-Tokens geeignet macht. MIME fügt alle 76 Zeichen Zeilenumbrüche ein, entspricht dem E-Mail-Übertragungsstandard RFC 2045 und eignet sich für E-Mail-Anhänge und mehrzeiligen Text.
URL-Safe Base64MIME Base64Wie dekodiert man den Header oder Payload eines JWT?
JWT verwendet die Base64URL-Kodierung (URL-Safe-Variante). Nach Auswahl des URL-Safe-Modus fügen Sie einfach das erste Segment (Header) oder das zweite Segment (Payload) des JWT ein, um es zu dekodieren. Beachten Sie, dass das dritte Segment des JWT die Signatur ist und hier nicht dekodiert oder verifiziert werden sollte.
JWT-ToolWas ist das Padding (Auffüllung) bei Base64?
Die Länge des Base64-Kodierungsergebnisses muss ein Vielfaches von 4 sein. Wenn die Eingabelänge kein Vielfaches von 3 ist, wird mit dem Zeichen = aufgefüllt. Die URL-Safe-Variante verwendet kein Padding. Das Tool verarbeitet Padding automatisch und entfernt auch beim Dekodieren automatisch die =-Zeichen.
Base64-Padding-ToolWarum unterstützen btoa und atob in JavaScript kein Chinesisch?
btoa und atob sind native Browser-APIs, die mit dem Latin-1-Zeichensatz (ISO-8859-1) arbeiten, wobei jedes Zeichen 1 Byte belegt. Chinesische Zeichen belegen in UTF-8 3 Bytes, daher führt eine direkte Übergabe zu einem Fehler. Die Lösung besteht darin, zuerst encodeURIComponent zu verwenden, um Chinesisch in das %xx-Format der UTF-8-Byte-Sequenz umzuwandeln, dann unescape zu verwenden, um es in eine Latin-1-Zeichenkette umzuwandeln, und schließlich btoa zum Kodieren zu verwenden.
Was ist das Data URI Scheme? Wie bettet man Bilder mit Base64 ein?
Data URI ist ein URI-Format, das es ermöglicht, Daten direkt in eine URL einzubetten, mit der Syntax: `data:[<mediatype>][;base64],<data>`. Zum Beispiel: `data:image/png;base64,iVBORw0KGgo...`. Es wird oft verwendet, um kleine Icons, CSS-Hintergrundbilder usw. einzubetten und die Anzahl der HTTP-Anfragen zu reduzieren. Aber Base64 erhöht das Volumen um 33 %, daher eignet es sich nur für kleine Dateien; große Dateien sollten normale URLs verwenden.
Data URI-ToolBase64 zu BildGlossar
- RFC 4648
- Offizieller Standard für die Base16-/Base32-/Base64-Kodierung, veröffentlicht von der IETF. Definiert zwei Alphabete: Standard-Base64 und URL-Safe-Base64 sowie Regeln für Padding, Zeilenumbrüche, Behandlung von Nicht-Alphabet-Zeichen usw. Er ist der de facto aktuelle Standard für die Base64-Kodierung und ersetzt die frühere RFC 3548.URL-Safe-Base64-ToolBase64-Padding-Tool
- RFC 2045 (MIME)
- Multipurpose Internet Mail Extensions (MIME)-Standard. Er war der Erste, der Base64 als Kodierungsmethode für die E-Mail-Inhaltsübertragung einführte. Er legt fest, dass die Base64-Kodierung pro Zeile 76 Zeichen nicht überschreiten und mit CRLF getrennt werden darf, bekannt als MIME-Base64-Variante.MIME-Base64-Tool
- Base64URL (URL-Safe Base64)
- URL-sichere Variante, definiert in RFC 4648 §5. Ersetzt das + des Standard-Base64 durch - und das / durch _ und lässt das Padding-Zeichen = im Allgemeinen weg. Es wird häufig in Szenarien wie JWT-Tokens, OAuth PKCE, URL-Parametern und Dateinamen verwendet.URL-Safe-Base64-ToolJWT-Tool
- MIME Base64
- Base64-Variante, die dem RFC 2045-Standard entspricht und alle 76 Zeichen ein Zeilenumbruchzeichen (CRLF) einfügt. Sie wird hauptsächlich für die Übertragung von E-Mail-Anhängen verwendet, da das frühe SMTP-Protokoll Beschränkungen für die Länge einer einzelnen Zeile hatte.MIME-Base64-Tool
- Padding (Auffüllung)
- Die Länge des Base64-Kodierungsergebnisses muss ein Vielfaches von 4 sein. Wenn die Anzahl der Eingabebytes kein Vielfaches von 3 ist, wird das Ende mit dem Zeichen = aufgefüllt. Standard-Base64 verwendet Padding, Base64URL lässt es im Allgemeinen weg.Base64-Padding-Tool
- Base64-Alphabet
- Der Satz von 64 Zeichen, die bei der Base64-Kodierung verwendet werden. Das Standard-Base64-Alphabet ist: A-Z (26), a-z (26), 0-9 (10), +, /, insgesamt 64 Zeichen plus das Auffüllzeichen =.
- btoa / atob
- Native Browser-APIs für die Base64-Kodierung/Dekodierung. btoa (binary to ASCII) wird zum Kodieren verwendet, atob (ASCII to binary) zum Dekodieren. Beachten Sie, dass diese APIs nur den Latin-1-Zeichensatz unterstützen. Für die Verarbeitung von Chinesisch müssen Sie sie mit UTF-8-Transkodierung kombinieren.
- Data URI Scheme
- Ein URI-Format, das es ermöglicht, kleine Dateien direkt in eine URL einzubetten, im Format data:[<mediatype>][;base64],<data>. Es wird oft verwendet, um kleine Icons und CSS-Hintergrundbilder einzubetten, um HTTP-Anfragen zu reduzieren.Data URI-ToolBase64 zu Bild
- HTTP Basic Authentication
- Eine Authentifizierungsmethode im HTTP-Protokoll. Benutzername und Passwort werden mit einem Doppelpunkt konkateniert, in Base64 kodiert und im Authorization-Request-Header übertragen. Das Format ist: Authorization: Basic <base64(username:password)>.Auth-Header-Builder
- Base64-Aufblähungsrate
- Der Anteil, um den das Datenvolumen nach der Base64-Kodierung ansteigt. Alle 3 Bytes (24 Bit) werden in 4 Base64-Zeichen kodiert, daher erhöht sich das Volumen um etwa 33 % (4/3 ≈ 1,333). Mit Padding ist die Aufblähungsrate etwas höher.
Vergleich der drei Base64-Varianten
| Merkmal | Standard | URL-Safe | MIME |
|---|---|---|---|
| Sonderzeichen | + / | - _ | + / |
| Padding(=) | Verwendet | Meistens weggelassen | Verwendet |
| Zeilenumbrüche | Keine | Keine | Zeilenumbruch alle 76 Zeichen |
| Standard | RFC 4648 §4 | RFC 4648 §5 | RFC 2045 |
| Typische Anwendungsfälle | Data URI, allgemeine Kodierung | JWT, URL-Parameter, Dateinamen | E-Mail-Anhänge, SMTP-Übertragung |
Vergleichstabelle der Kodierungen der Base-Serie
| Kodierung | Zeichenanzahl | Merkmale des Zeichensatzes | Volumenaufblähung | Typische Verwendung |
|---|---|---|---|---|
Base16 (Hex) | 16 | 0-9, A-F | 100% | Debugging, Hash-Anzeige |
Base32 | 32 | A-Z, 2-7(Großbuchstaben ohne Verwechslung) | 60% | DNS, TOTP-Schlüssel, QR-Codes |
Base58 | 58 | Schließt verwechselbare Zeichen 0/O/I/l aus | 38% | Bitcoin-Adressen, Kryptowährungen |
Base62 | 62 | A-Z, a-z, 0-9 | 34% | URL-Kürzer, ID-Kodierung |
Base64 | 64 | A-Z, a-z, 0-9, +, / | 33% | Data URI, MIME, JWT(URL-Safe-Variante) |
Authoritative References
- ReferenceRFC 4648 - Die Base16-, Base32- und Base64-Datenkodierungen
- ReferenceRFC 2045 - MIME Teil Eins: Format von Internet-Nachrichtenkörpern
- ReferenceRFC 7519 - JSON Web Token (JWT)
- ReferenceMDN Web Docs - btoa()
- ReferenceMDN Web Docs - atob()
- ReferenceWikipedia - Base64
- Sicherer String-Vergleich
- Binary-Konverter
- Caesar-Verschlüsselung
- Morsecode-Übersetzer
- Hex-Konverter
- Video zu Base64
- Base64 zu Video
- Bild zu Base64
- Base64 zu Bild
- Text zu Base64
- Base64 zu Text
- Datei-Hash-Prüfer
- Datei zu Base64
- Base64 zu Datei
- Audio zu Base64
- Base64 zu Audio
- AES verschlüsseln und entschlüsseln
- DES Verschlüsseln Entschlüsseln
- Base32 Encoder Decoder
- Base58 kodieren und dekodieren
- Base64-Kodierung
- Base64-Dekodierung
- Base64 Diff
- Base64-Aufteilung
- Base64 mehrzeilig zusammenführen
- Base64-Formatierung
- Base64 Validator
- Base64-Stapelkodierung
- Base64 Batch Decoder
- Base64-Bereinigung
- Base64-Padding-Handler
- Base64 Statistik
- Base64 zu Hex
- Base64 DataURL Konverter
- Base64-Hex-Konverter
- Base85-Encoder
- HMAC-Generator & Verifizierer
- PBKDF2-Schlüsselableitung
- MD5 Hash
- SHA-256-Hash
- SHA1 Hash
- SHA512-Hash
- JWT Decoder, Verifizierer & Generator
- HTML Encode Decode
- Unicode-Escaping
- URL-Kodierung
- URL Safe Base64
- MIME Base64
- Java-Obfuscator
- JS-Obfuscator
- PHP-Obfuscator
- Python-Obfuscator