Base85 encoder en decoder
Base85 perst vier bytes in vijf ASCII-tekens, dichter dan Base64’s 3-voor-4-verhouding, door een alfabet van 85 tekens te gebruiken in plaats van 64. Deze tool implementeert de Ascii85-variant van Adobe, die in PostScript- en PDF-bestanden zit. De encoder verpakt de uitvoer altijd in <~ en ~>; de decoder accepteert invoer met of zonder die tekens.
Base85 (Ascii85) converteren
-
1
Kies encoderen of decoderen
Encoderen zet ruwe bytes om in Ascii85; decoderen zet een Ascii85-string weer om in bytes.
-
2
Plak je tekst
Plak de te encoderen bytes of de te decoderen Ascii85-string in het invoerveld.
-
3
De encoder deelt op in blokken van 4 bytes
Elk blok van 4 bytes wordt een Base85-string van 5 tekens. Het laatste blok wordt opgevuld en afgekapt.
-
4
Kopieer het resultaat
Ascii85-uitvoer is verpakt in `<~` en `~>`. Plak het opnieuw om het te decoderen; de tekens worden automatisch verwijderd.
Vergelijking van grootte-overhead
| Codering | Tekens per 4 bytes | Overhead t.o.v. binair |
|---|---|---|
| Hex | 8 | +100% |
| Base64 | 5,33 (afgerond naar 8 met padding) | +37% |
| Base85 | 5 | +25% |
| Ruwe binair | 4 | 0 |
Dus 1 MB binair wordt 1,25 MB in Base85, 1,33 MB in Base64 en 2 MB in hex.
Het Ascii85-alfabet
Ascii85 (Adobe): tekens ! tot en met u (33-117 in ASCII), plus z als snelkoppeling voor 4 nulbytes. Het is de standaardcodering in PostScript- en PDF-streams, verpakt als <~...~>.
Z85 (ZeroMQ) en het RFC 1924-alfabet voor IPv6 zijn andere toewijzingen van hetzelfde 85-tekensidee. Deze tool implementeert ze niet; strings die in die varianten zijn gecodeerd, worden hier dus verkeerd gedecodeerd.
Hoe de wiskunde werkt
Elke 4 bytes worden gelezen als een big-endian 32-bit integer N. De 5 uitvoertekens zijn de cijfers van N in grondtal 85, meest significante eerst. 85^5 = 4 437 053 125, wat groter is dan 2^32, dus 4 bytes passen altijd in 5 tekens.
Wanneer Ascii85 ertoe doet
Open een willekeurige PDF in een teksteditor en zoek naar ASCII85Decode. Adobe gebruikt het als filter voor ingesloten afbeeldingen en lettertypen die een 7-bit transport moeten overleven (oude faxachtige systemen). Dezelfde codering zit in veel PostScript-bestanden en in e-mailveilige binaire transports.
Speciale gevallen
- Blok van 4 bytes met alleen nullen: Ascii85 codeert dit als het enkele teken
zin plaats van!!!!!. - Laatste gedeeltelijke blok: wordt opgevuld met nulbytes, waarna het bijbehorende aantal uitvoertekens aan het einde wordt afgekapt.
Veelgestelde vragen
Kleinere uitvoer, ja. Universeel compatibel, nee. Ascii85 bevat tekens zoals <, >, &, " die escaping nodig hebben in XML, JSON en URL’s. De meeste tooling spreekt native Base64.
In PostScript- en PDF-streams, waar de gecodeerde regio met <~ en ~> wordt gemarkeerd. PDF-viewers en editors verwerken deze codering automatisch.
Nee. Hij implementeert alleen Adobe Ascii85. Z85 (ZeroMQ) en het RFC 1924-alfabet voor IPv6 kennen de 85 tekens anders toe, dus een string die in die varianten is gecodeerd, wordt hier verkeerd gedecodeerd.
Die markeren de gecodeerde regio volgens de Ascii85-conventie. De encoder voegt ze altijd toe en de decoder verwijdert ze automatisch als ze aanwezig zijn. Je kunt ook een string zonder ze plakken.
Gerelateerde tools
Base64-bestandsencoder
Encodeer elk bestand (PDF, ZIP, afbeelding, executable) naar Base64-tekst om in JSON, e-mail, YAML of data URI's te embedden. Draait lokaal, geen upload.
Base58 encoder en decoder
Encodeer UTF-8-tekst of hexadecimale bytes en decodeer Base58 veilig met het Bitcoin-, Ripple- of Flickr-alfabet.
Caesar-cijfer encoder
Versleutel en ontsleutel tekst met het Caesar-cijfer. Elke verschuiving 1-25, ondersteunt ROT13 als speciaal geval, behoudt interpunctie en hoofdletters.
Atbash-codering
Codeer of decodeer tekst met het Atbash-cijfer, een Hebreeuwse substitutie die A-Z koppelt aan Z-A. Dezelfde bewerking versleutelt en ontsleutelt.
SSL-certificaatgenerator
Genereer een zelfondertekend SSL/TLS-certificaat en een RSA-privésleutel volledig in je browser. Eigen Common Name, SANs en geldigheid, geëxporteerd als PEM.
bcrypt-generator
Genereer een bcrypt-hash van een plaintext wachtwoord. Instelbare costfactor van 4 tot 13, compatibel met Laravel, Django, Node en PHP.
Tool beschikbaar in andere talen
- Base85 Kodlayıcı ve Çözücü [TR]
- Codificador y Decodificador Base85 [ES]
- مشفر ومفكك Base85 [AR]
- Encodeur et décodeur Base85 [FR]
- Base85 인코더 및 디코더 [KO]
- Encoder dan Decoder Base85 [ID]
- Base85 Encoder and Decoder [EN]
- Bộ mã hóa và giải mã Base85 [VI]
- Base85 编码器和解码器 [ZH]
- Base85エンコーダー・デコーダー [JA]
- ตัวเข้ารหัสและถอดรหัส Base85 [TH]
- Codificador e Decodificador Base85 [PT]
- Base85-Encoder/Decoder [DE]
- Base85-kodare och avkodare [SV]
- Koder i dekoder Base85 [PL]
- Codificatore e Decodificatore Base85 [IT]
- Кодировщик и декодировщик Base85 [RU]