Hello!!
%69 VD92EX0
Base45 per RFC 9285; note the space is part of the alphabet.
Decode Base45 online or encode UTF-8 text with the RFC 9285 Base45 encoder. This QR-code-oriented binary-to-text encoding runs locally in your browser and is not encryption.
Hello!!
%69 VD92EX0
Base45 per RFC 9285; note the space is part of the alphabet.
%69 VD92EX0
Hello!!
Decoding restores the original text.
AB
BB8
The two UTF-8 bytes for AB become one three-character Base45 group. This is an RFC 9285 test vector.
UJCLQE7W581
base-45
Decoding this Base45 string restores the original lowercase text. The encoded form itself uses only the RFC 9285 Base45 alphabet.
Base45 is an RFC 9285 binary-to-text encoding. This online Base45 encoder reads the text you enter as UTF-8 bytes, combines each pair of bytes into a number, and represents that number with three characters from a 45-symbol alphabet: 0–9, A–Z, space, and $%*+-./:. A final unpaired byte is written with two characters.
The result is text, not encrypted data. Anyone with a Base45 decoder can recover the original bytes, so do not use Base45 to protect passwords, personal data, or secrets.
To decode Base45, paste the complete value, select decoding, and run the tool. The input must use only the RFC 9285 alphabet, including uppercase letters and any meaningful spaces. Base45 is case-sensitive: lowercase letters are not valid replacements for uppercase ones.
For encoding, enter ordinary text and select encoding. The generated value can be decoded by this tool to check the round trip. Conversion happens locally in your browser; the text and Base45 value are not sent to a server for processing.
If decoding fails, check that the value was not copied with characters changed or removed. A Base45 value cannot have a length that leaves one character after grouping it in threes, and some otherwise valid-looking groups can represent numbers outside the permitted byte range.
Base45 was designed to work efficiently with the alphanumeric mode of QR codes. Its alphabet fits that mode, letting a QR code carry the encoded payload more densely than a Base64 string encoded as QR alphanumeric data. The trade-off is that Base45 text is longer than the original byte sequence.
A well-known use is the EU Digital COVID Certificate format: its compressed signed payload is Base45-encoded before it is placed in a QR code. Base45 is only one outer layer of that format; decoding it does not by itself verify a certificate, reveal a human-readable certificate, or validate its signature.
Use Base45 when a specification explicitly calls for RFC 9285 or when preparing a compatible QR-oriented payload. For general web and email data, Base64 is often the more common format.
Encode text and binary payloads to Base64 and decode them back with UTF-8 support.
Convert text and bytes to hexadecimal format and decode hex sequences back to text.
Encode and decode URL strings and query params for safe transport in HTTP and APIs.
Convert text into 8-bit binary groups and decode binary bytes back into readable text.
Convert ASCII characters and numeric codes for protocol and parser workflows.
Decode JWT tokens in-browser and inspect header, payload, claims, and expiration data.