UUencode Encoder/Decoder

Encode and decode files with classic UNIX uuencode format

Ad placeholder (leaderboard)

What uuencode does

uuencode (UNIX-to-UNIX encode) was the original way to send binary attachments through plain-text systems like email and Usenet before MIME and Base64 became universal. It converts bytes into printable ASCII and frames them with a begin header that carries file permissions and a name, plus an end trailer.

How it works

The data is processed three bytes at a time. Those 24 bits are split into four 6-bit groups, and each group is turned into a printable character by adding 0x20 (a space). A group of zero is written as the back-tick ` (0x60) to dodge trailing-whitespace issues. Lines hold up to 45 input bytes (60 output characters) and begin with a single length character that also follows the +0x20 rule:

begin 644 message.txt
M1V5R82!Ub V]L<P``
`
end

The leading character of each data line tells the decoder how many bytes that line really represents, so any padding in the last group can be discarded. A final line whose length character decodes to zero ends the data stream.

Tips and notes

This tool encodes the UTF-8 bytes of whatever text you type and produces a complete, copy-pasteable uuencode document. When decoding, it skips the begin/end framing automatically and honours the per-line length byte, so it interoperates with output from the classic uuencode command. Decoded bytes are interpreted as UTF-8 text, so non-text payloads may not render cleanly.

Ad placeholder (rectangle)