UTILS.
100 % im Browser
🔠

Ascii85 / Base85 kodieren & dekodieren

Kodiere Bytes in Ascii85/Base85 und dekodiere sie zurück – mit Unterstützung der Standard- und Adobe-Variante (<~ ~>), vollständig in deinem Browser.

— Ausgabe erscheint hier —

Über dieses Tool

Das Ascii85 / Base85 Tool wandelt Binärdaten in und aus Ascii85 (auch Base85 genannt) um, einer Textkodierung, die vier Bytes in fünf druckbare Zeichen packt – etwa 25 % kompakter als Base64. Sie wird in PostScript- und PDF-Streams (die Adobe-Variante) sowie in Patch-/Diff-Formaten verwendet. Alles läuft lokal in deinem Browser mit TextEncoder/TextDecoder; nichts, was du einfügst, wird hochgeladen.

Beim Kodieren wird die Eingabe als 4-Byte-Big-Endian-Gruppen verarbeitet, jede Gruppe als vorzeichenlose 32-Bit-Ganzzahl gelesen und fünf Ziffern ausgegeben, indem wiederholt der Wert modulo 85 genommen und 33 addiert wird, sodass jede Ziffer im druckbaren Bereich '!' (33) bis 'u' (117) liegt. Eine Gruppe aus lauter Nullen wird zum einzelnen Zeichen 'z' zusammengefasst. Eine abschließende Teilgruppe von n Bytes (1–3) wird mit Nullen auf vier aufgefüllt, kodiert, und die letzten 4−n Ausgabezeichen werden verworfen, was n+1 Zeichen ergibt. Die Adobe-Variante umschließt das Ergebnis mit '<~' und '~>'.

Beim Dekodieren wird der Vorgang umgekehrt: Leerzeichen und jede Umhüllung werden entfernt, 'z' expandiert zu vier Null-Bytes, Fünf-Zeichen-Gruppen werden als value = Σ (cᵢ−33)·85^(4−i) gelesen und als vier Big-Endian-Bytes geschrieben, und eine abschließende Teilgruppe von m Zeichen (2–5) wird mit 'u' (Wert 84) aufgefüllt und behält m−1 Bytes. Wähle die Richtung, die Standard- oder Adobe-Variante und ob deine Eingabebytes UTF-8-Text oder Hex sind.

Häufig gestellte Fragen

Was ist die 'z'-Abkürzung?
Eine Gruppe von vier Null-Bytes (0x00000000) würde als '!!!!!' kodiert. Ascii85 gibt stattdessen als Komprimierungsabkürzung das einzelne Zeichen 'z' aus. Beim Dekodieren expandiert 'z' wieder zu vier Null-Bytes – aber nur, wenn es an einer Gruppengrenze auftritt, niemals in der Mitte einer Fünf-Zeichen-Gruppe.
Wie unterscheidet sich Ascii85 von Base64?
Base64 kodiert 3 Bytes als 4 Zeichen (33 % Overhead); Ascii85 kodiert 4 Bytes als 5 Zeichen (25 % Overhead) und ist damit kompakter. Base64 verwendet ein Alphabet mit 64 Symbolen, während Ascii85 85 druckbare ASCII-Symbole von '!' bis 'u' nutzt.
Was ist die Adobe-Variante?
Adobes Ascii85, das in PostScript und PDF verwendet wird, umschließt die Nutzdaten zwischen den Trennzeichen '<~' und '~>'. Der Kernalgorithmus ist identisch. Die Auswahl der Adobe-Variante fügt diese Markierungen beim Kodieren hinzu und entfernt sie beim Dekodieren; die Standardvariante lässt sie weg.
Werden meine Daten irgendwohin hochgeladen?
Nein. Kodierung und Dekodierung erfolgen vollständig in deinem Browser mit reinem JavaScript und TextEncoder/TextDecoder. Nichts wird an einen Server gesendet, sodass du private oder binäre Daten sicher verarbeiten kannst.

Weitere Tools