Base64-Codierung

Mit dem Tool Base64 Encoding können Sie den von Ihnen eingegebenen Text mit der Base64-Methode verschlüsseln. Wenn Sie möchten, können Sie den verschlüsselten Base64-Code mit dem Tool Base64 Decode decodieren.

Was ist Base64-Codierung?

Die Base64-Codierung ist ein Codierungsschema, mit dem binäre Daten in Umgebungen transportiert werden können, die nur einige eingeschränkte Zeichencodierungen verwenden (Umgebungen, in denen nicht alle Zeichencodes verwendet werden können, z. B. XML-, HTML-, Skript-, Instant Messaging-Anwendungen). Die Anzahl der Zeichen in diesem Schema beträgt 64, und die Zahl 64 im Wort Base64 kommt von hier.

Warum Base64-Codierung verwenden?

Die Notwendigkeit der Base64-Codierung rührt von Problemen her, die entstehen, wenn Medien im rohen Binärformat an textbasierte Systeme übertragen werden. Da textbasierte Systeme (wie E-Mail) binäre Daten als eine Vielzahl von Zeichen interpretieren, einschließlich spezieller Befehlszeichen, werden die meisten der an das Übertragungsmedium übertragenen binären Daten von diesen Systemen falsch interpretiert und gehen bei der Übertragung verloren oder werden beschädigt Prozess.

Eine Methode, solche Binärdaten so zu codieren, dass solche Übertragungsprobleme vermieden werden, besteht darin, sie als reinen ASCII-Text im Base64-codierten Format zu senden. Dies ist eine der vom MIME-Standard verwendeten Techniken, um andere Daten als reinen Text zu senden. Viele Programmiersprachen wie PHP und Javascript enthalten Base64-Codierungs- und -Decodierungsfunktionen, um Daten zu interpretieren, die mit Base64-Codierung übertragen werden.

Base64-Codierungslogik

Bei der Base64-Codierung werden 3 * 8 Bits = 24 Datenbits, die aus 3 Bytes bestehen, in 4 Gruppen von 6 Bits unterteilt. Die Zeichen, die den Dezimalwerten zwischen [0-64] dieser 4 6-Bit-Gruppen entsprechen, werden aus der Base64-Tabelle zur Codierung abgeglichen. Die Anzahl der als Ergebnis der Base64-Codierung erhaltenen Zeichen muss ein Vielfaches von 4 sein. Codierte Daten, die kein Vielfaches von 4 sind, sind keine gültigen Base64-Daten. Wenn die Codierung mit dem Base64-Algorithmus abgeschlossen ist und die Länge der Daten kein Vielfaches von 4 ist, wird das Zeichen „=“ (Gleichheit) am Ende der Codierung hinzugefügt, bis es ein Vielfaches von 4 ist. Wenn wir beispielsweise als Ergebnis der Codierung Base64-codierte Daten mit 10 Zeichen haben, sollten am Ende zwei „==“ hinzugefügt werden.

Base64-Codierungsbeispiel

Nehmen Sie zum Beispiel die drei ASCII-Zahlen 155, 162 und 233. Diese drei Zahlen bilden einen binären Strom von 100110111010001011101001. Eine Binärdatei wie ein Bild enthält einen Binärstrom, der für Zehn- oder Hunderttausende von Nullen und Einsen funktioniert. Ein Base64-Encoder beginnt mit der Aufteilung des Binärstroms in Gruppen von sechs Zeichen: 100110 111010 001011 101001. Jede dieser Gruppierungen wird in die Zahlen 38, 58, 11 und 41 übersetzt. Ein aus sechs Zeichen bestehender Binärstrom wird zwischen binär (oder einfach) konvertiert. 2) in Dezimalzeichen (Basis 10) umzuwandeln, indem jeder Wert, der durch 1 im binären Array repräsentiert wird, durch das Positionsquadrat quadriert wird. Von rechts nach links und beginnend bei Null stellen die Werte im Binärstrom 2^0 dar, dann 2^1, dann 2^2, dann 2^3, dann 2^4, dann 2^ 5.

Hier ist eine andere Möglichkeit, es zu betrachten. Von links beginnend ist jede Position 1, 2, 4, 8, 16 und 32 wert. Wenn der Slot eine Binärzahl 1 hat, addieren Sie diesen Wert; wenn der Steckplatz 0 hat, fehlen Sie. Binäres Array 100110 wird 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 dezimal + 4 + 0 + 0 + 32. Die Base64-Codierung nimmt diese binäre Zeichenfolge und teilt sie in die 6-Bit-Werte 38, 58, 11 und 41. Schließlich werden diese Zahlen mithilfe der Base64-Codierungstabelle in ASCII-Zeichen konvertiert.