![]() |
Sinn von Base64?
Hi,
was hat Base64 für einen Sinn? Bei Base64 werden ja nur 6 Bits genommen und davor 2 nullen gesetzt also "verschwendet" man von einen Byte ja 2 Bits und daher werden ja z.B. Bilder 30% grösser. Wieso nutzt man nicht Base256? Da sollte man ja theoretisch alle Bits eines Bytes nutzen können oder etwa nicht? Wäre für eine erklärung dankbar, da ich irgendwie nichts richtiges dazu finde. Freundliche Grüsse |
AW: Sinn von Base64?
Bei der Übertragung von E-Mails wurden früher nur gewisse Zeichen unterstützt.
Man hat damit einen Weg gefunden, prinzipiell beliebige Binärdaten (Bilder) in einem begrenzten Zeichensatz zu übertragen, dessen Zeichen garantiert funktionieren. Jeder SMTP-Server wird deine E-Mail wegwerfen, wenn du die vollen 8-bit pro Byte ausschöpfst. SMTP ist eben ein textbasiertes Protokoll. |
AW: Sinn von Base64?
|
AW: Sinn von Base64?
Letztendlich werden mit Base64 Dateien, die Steuerzeichen enthalten, so codiert, dass sie nur anzeigbare Zeichen enthalten.
|
AW: Sinn von Base64?
Die wichtigsten Sachen wurden schon gesagt.
So kann man beispielsweise auch Binärdaten wie Bilder direkt innerhalb von CSS oder direkt im HTML-Quelltext einer Webseite übertragen. Damit wird die Datei zwar größer, und man verschwendet ein wenig Speicherplatz, aber spart sich zum Beispiel einen weiteren Request zum separaten Download der Bilder. Wenn man hier bei kleinen Seiten Performanceoptimierungen betreibt kann es sinnvoller sein, bestimmte kleine Bilder direkt mit zu liefern, als wegen ein paar Icons jedes mal einen neuen Request schicken zu müssen. Beispiel aus der Wikipedia zu Data-URL:
Code:
Ausserdem lässt sich der Text mit Deflate oder GZip wieder recht gut komprimieren ;-)
<img src="data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0 vr4MkhoXe0rZigAAAABJRU5ErkJggg==" alt="Roter Punkt" /> |
AW: Sinn von Base64?
Zitat:
|
AW: Sinn von Base64?
Genauso wie HEX ist es eine andere "Darstellung" von Daten, nur halt etwas komprimierter, als z.B. Hexadezimal, Oktal oder Binär (0/1).
Und wie bereits erwähnt ist es dafür da, um Daten (vorallem wegen der Steuerzeichen) in "ungefährlichen" ASCII-Code (7 Bit) umzuwandeln. PS: Es gibt auch nicht wirklich DAS Base64, denn je nach Zielumgebung verwendet es für die Codierung auch schonmal einen etwas anderen Zeichensatz. (vorallem die letzten 2 Zeichen) ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/ mit = als Füllzeichen Denn in URLs haben + und / auch eine gewisse Bedeutung, weswegen man da meistens was Anderes verwendet. ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_ mit = als Füllzeichen uva. |
AW: Sinn von Base64?
Danke für die vielen antworten :D
Hat mir Licht ins dunkle gebracht :thumb: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz