Was Ist Base64-Kodierung?
Verstehe, was Base64-Kodierung ist, warum sie existiert, was sie an einer Datei verändert und wie sie mit der Umwandlung eines PDFs in einen Base64-String zusammenhängt.
- was ist base64 kodierung
- base64 definition
- base64 erklaert
- pdf me
Definition
Base64 ist ein Schema zur Kodierung von Binärdaten als Text. Es stellt jede Byte-Folge — ein PDF, ein Bild, eine Schrift, einen Verschlüsselungsschlüssel — mit nur 64 druckbaren ASCII-Zeichen dar: den Buchstaben A–Z und a–z, den Ziffern 0–9 und zwei zusätzlichen Symbolen, meist + und /.
Weil die Ausgabe nur gängige, druckbare Zeichen verwendet, kommt sie sicher durch Systeme, die für Text und nicht für beliebige Binärdaten gebaut wurden.
Warum Es Existiert
Viele Protokolle und Formate, auf die sich das Web stützt — frühe E-Mail-Standards, JSON, XML und URLs — wurden für Text entworfen, nicht für rohe Bytes. Manche dieser Kanäle entfernen, verändern oder verweigern bestimmte Byte-Werte komplett.
Base64 umgeht das Problem, indem es Binärinhalte zuerst als Text neu darstellt. Genau diese Idee steckt hinter der Umwandlung eines PDF in Base64: Die Bytes der Datei werden zu einem String, den jedes Textfeld aufnehmen kann.
Was Es Nicht Ist
Base64 ist keine Verschlüsselung und keine Komprimierung. Es versteckt oder schützt keine Daten — jeder kann es sofort dekodieren — und die kodierte Ausgabe ist immer größer als die Eingabe, niemals kleiner.
Es ist auch kein Dateiformat. Es weiß nicht, ob die dargestellten Bytes ein PDF, ein JPEG oder etwas anderes sind; diese Information muss separat mitgeliefert werden, meist in einem eigenen Feld oder als Teil eines Data URI.
Wie Es Mit PDFs Zusammenhängt
Ein PDF ist nur eine Byte-Folge wie jede andere Datei und wird daher genauso kodiert wie ein Bild oder eine Schrift. Zur Mechanik der Umwandlung siehe wie Base64-Kodierung funktioniert, und für eine komplette Anleitung den PDF-zu-Base64-Leitfaden.
Von Bytes zu Base64-Zeichen
Base64 verarbeitet die Originaldatei jeweils 3 Bytes — 24 Bit — auf einmal. Jede 24-Bit-Gruppe wird in vier 6-Bit-Blöcke aufgeteilt, und jeder 6-Bit-Block (eine Zahl von 0 bis 63) wird in einem festen Alphabet nachgeschlagen, um ein Ausgabezeichen zu erzeugen. Drei Bytes hinein, vier Zeichen heraus.
Deshalb besteht jeder Base64-String aus denselben 64 Symbolen, egal welche Art von Datei — ein PDF, ein Bild, eine Schrift — hineingegeben wurde. Siehe was Base64-Kodierung ist für das größere Bild.
Das Base64-Alphabet
Die 64 möglichen 6-Bit-Werte werden zugeordnet zu: den Großbuchstaben A–Z (Werte 0–25), den Kleinbuchstaben a–z (Werte 26–51), den Ziffern 0–9 (Werte 52–61) und schließlich + und / (Werte 62 und 63). Einige Varianten tauschen die letzten beiden Symbole aus — URL-sicheres Base64 verwendet stattdessen - und _, damit der String sicher in einer URL stehen kann.
Padding Mit =
Eine 24-Bit-Gruppe entsteht nur sauber, wenn die Eingabelänge ein Vielfaches von 3 Bytes ist. Wenn von der letzten Gruppe einer Datei nur noch 1 oder 2 Bytes übrig bleiben, füllt Base64 die fehlenden Bits mit Nullen auf und hängt ein oder zwei =-Zeichen an die Ausgabe an, damit Decoder genau wissen, wie viele der letzten Bits echte Daten waren.
Padding trägt keine Information aus der Datei — es markiert nur, wo der echte Inhalt endet, damit ein Decoder an der richtigen Stelle aufhört.
Ein Kleines Durchgerechnetes Beispiel
Das Kodieren der beiden Buchstaben "Hi" ergibt den String "SGk=". Die Bytes von H und i bilden 16 Bit, die sich in drei vollständige 6-Bit-Blöcke plus 2 übrige, mit Nullen aufgefüllte Bits aufteilen — drei echte Zeichen (S, G, k) gefolgt von einem =-Padding-Zeichen, weil die Eingabe 2 Bytes war, kein Vielfaches von 3.
Warum die Ausgabe Etwa 33 % Größer Ist
Drei Bytes Binärdaten werden immer zu vier Textzeichen, ein Verhältnis von 4:3 — etwa 33 % größer. Ein PDF mit 900 KB auf der Festplatte wird zu einem Base64-String von fast 1,2 MB. Das ist der wichtigste Kompromiss, den man einplanen sollte; siehe die Größenhinweise im PDF-zu-Base64-Leitfaden.
Kodierung
Der Vorgang, Daten von einer Darstellung in eine andere umzuwandeln — in diesem Zusammenhang die binären Bytes eines PDFs in einen Base64-Textstring zu verwandeln. Siehe wie Base64-Kodierung funktioniert für die Mechanik.
Dekodierung
Das Gegenteil der Kodierung: einen Base64-String zurück in die ursprünglichen Binär-Bytes umzuwandeln. Ein korrekt dekodiertes PDF ist Byte für Byte identisch mit der Datei, die kodiert wurde.
Data URI
Ein String, der einen Base64-kodierten Wert mit einem Präfix kombiniert, das seinen Dateityp beschreibt, in der Form data:application/pdf;base64,.... Browser und manche Viewer nutzen das Präfix, um zu wissen, wie die Daten darzustellen sind. Siehe Base64 vs Data URI dafür, wann welche Form gilt.
Binärdaten
Daten, die als rohe Bytes statt als menschenlesbarer Text gespeichert sind. Ein PDF ist, wie jedes Dateiformat, auf Byte-Ebene Binärdaten, unabhängig davon, wie viel Text es optisch enthält.
MIME-Typ
Eine Bezeichnung wie application/pdf, die angibt, welche Art von Inhalt ein Datensatz ist. APIs und Browser nutzen den MIME-Typ, um zu entscheiden, wie eine Datei zu behandeln, anzuzeigen oder zu dekodieren ist.
API-Payload
Die Daten, die im Body einer API-Anfrage oder -Antwort gesendet werden. Ein Base64-kodiertes PDF steckt oft als eines von mehreren Feldern in einem JSON-Payload — siehe wie du ein Base64-PDF in einer JSON-API-Anfrage verwendest für eine typische Struktur.