Home

yEnc

yEnc is a binary-to-text encoding scheme used principally to transfer binary data in Usenet postings and, to a lesser extent, email. Developed in the early 2000s, it was designed to be more space-efficient than older methods such as uuencode and Base64, while avoiding the common problems that occur when transmitting arbitrary binary data through text-based channels.

Encoding process: Each input byte is transformed by adding 128 modulo 256, so the resulting value lies

Format and metadata: A yEnc message consists of header blocks that describe metadata such as the filename,

Usage and compatibility: yEnc is widely supported by Usenet clients and post-processing tools, with numerous libraries

in
a
high
bit
range.
The
resulting
stream
is
then
represented
as
bytes,
with
a
simple
escape
mechanism
to
prevent
a
small
set
of
problematic
values
(notably
zero,
line
breaks,
and
the
escape
character)
from
appearing
unescaped.
When
a
value
to
be
emitted
would
collide
with
these
primitives,
it
is
emitted
as
an
escape
sequence
beginning
with
an
equals
sign
and
two
hexadecimal
digits
representing
the
original
value.
size,
and
part
information,
followed
by
the
encoded
data
lines,
and
a
footer
marking
the
end.
Line
length
is
typically
constrained
for
transport
but
can
vary
by
implementation.
and
plugins
available
for
different
platforms.
It
is
not
encryption
and
provides
no
authentication;
decoding
requires
a
corresponding
decoder.
In
practice,
it
offers
high
efficiency
for
binary
data
but
may
be
rejected
by
some
mail
systems
or
archives
that
do
not
recognize
yEnc.