yEnc - General topics

The author is a programmer - not a webdesigner or documentation specialist !


Motivation

UU encoded and BASE64 encoded messages are still standard on Usenet.
There are three general problems with these encodings - and the actual usage of such binary encodings:

The author is using yEncoded messages for reliable and compact binary transmission on the MyNews network - a private network of personal news-servers in P2P sharing mode. For the small bandwidth of personal P2P a compact encoding is essential.


History

Discussions about new encodings in news.software.nntp and alt.binaries.news-server-comparison concluded that a more efficient encoding is needed - and possible. Honoured news-admins said that full 8-bit encoding would be possible if NULL & CRLF would be treated seperately. A 'quoted printable light' encoding was proposed which could use full 8 bit encoding with some modifications. But this idea never came to an end.

Finally Jürgen Helbing (myself) presented a first draft for a new encoding: yEnc. That proposal was discussed and while it is not the perfect solution which satisfies everybody it might be worth the effort to try it.

Meanwhile clients for Windows and Mac are available - and even more developers might want to support that new encoding format. So here is the site which contains the necessary implementation information, the first draft which describes the method and also some sourcecode samples.

Further discussion will take place in the newsgroup: news.software.nntp - MIME topics are discussed in comp.mail.mime

For those people who can read German language: Here some additonal background info about the creation of yEnc. I wrote this in Dec.2001 after I was heavily attacked for yEnc. This text is not politically correct - but the style my friends are familiar with (twink twink): yEnc - Entstehung und Hintergründe

Meanwhile "Rob Prins" did translate it to English. So perhaps you want to read this version: yEnc - Origin and Backgrounds


yEncode and MIME

As some people would prefer to include a new encoding into the MIME structure a short discussion was made in comp.mail.mime. Unfortunately it is very difficult to introduce new transfer encodings and also the rest of MIME is pretty difficult (for non MIME specialists) this topic has been moved downwards on the priority list. A short example for a single binary and a multipart binary has been created and is available in the 'Documents' section. Treat it with CARE !

There is a general approach if you want to embed a yEncoded message into MIME:
Take the entire yEncoded message as one block and add all you need for embedding in front of it - and behind it. The =ybegin line with all parameters, the data and the =yend line should stay one block. Even if information is redundant - the =y lines should stay as they are specified (even for multiparts). This allows other decoders to detect such blocks - and decode them properly - even if all other information is stripped from your messages.

14. Jan. 2002: The link to the MIME embedding has been removed. We will try to create a better embedding actually.


Credits

Beside the 'credit' list in the 1.0 draft I want to thank these guys for their help and support:

Brian Clark, J.B. Moreno, Luc van der Veken
Darren New, Frank Pilhofer - and the other folks from comp.mail.mime
James Preston - for some editing and spellchecking of this site.


There is no copyright for the yEncoding - it is completely released into public domain.
May it be helpful the Usenet community!

Jürgen Helbing - 07. Oct. 2001 - Email: yenc@infostar.de