PB
Available
swap_horiz
lock Free · Private · In-Browser

Z85 Encoder and Decoder

Convert four-byte hex blocks to the ZeroMQ Z85 text format and back.

  

Map fixed four-byte blocks into five characters

Z85 is ZeroMQ's fixed-block Base85 format: every four binary bytes become exactly five printable characters. This tool accepts hexadecimal bytes for encoding so arbitrary binary data is preserved, and it returns lowercase hexadecimal when decoding. Each block is treated as one unsigned 32-bit big-endian number and repeatedly divided by 85 using the published Z85 alphabet.

The canonical eight-byte vector 864fd26fb559f75b encodes to HelloWorld. Decoding HelloWorld returns the exact original hexadecimal bytes. Hex input therefore needs a multiple of eight characters, and Z85 input a multiple of five. A decoded five-character value above the unsigned 32-bit range is rejected rather than wrapped into four bytes.

Honor the ZeroMQ alphabet and block boundaries

Z85 differs from Adobe Ascii85 in alphabet, framing, shortcuts, and padding behavior, so values are not interchangeable. Standard Z85 does not pad partial blocks. The conversion takes place in your browser and makes no network request. Treat the output as reversible transport encoding only; it provides neither encryption nor an integrity check for modified data.

Frequently Asked Questions

Why does Z85 require four-byte input blocks?

Its specification maps exactly 32 input bits to five base-85 digits and defines no padding for a partial block.

Is Z85 compatible with Ascii85?

No. They use different alphabets and handling rules even though both encode four bytes as five characters.

Why does the encoder accept hex instead of plain text?

Hex exposes exact binary bytes and makes the required four-byte boundaries unambiguous.

Take it further
All Free Tools

Browse the full set of free, private, in-browser tools.

Learn More arrow_forward