[ why i do not like base64]

Tim ignored_mailbox at yahoo.com.au
Sat Jan 21 14:10:18 UTC 2012


On Sat, 2012-01-21 at 13:07 +0000, Ian Malone wrote:
> Base64 expands (necessarily since it tries to represent full octets
> with a subset), http://en.wikipedia.org/wiki/Base64#MIME there isn't
> much of a rationale for using it in email text (though encoding is
> required for binary attachments), its main purpose seems to be
> obfuscating the text to make it harder to scan.

There's plenty of languages that cannot be represented with a 7-bit
character set, so must use an 8-bit set (with UTF8, for instance being
multiple 8bit groups, when needed).  When you try to email 8-bit, you've
got a few choices:

Send the 8-bit data as-it-is.  Though, this may fail as the mail goes
through any older mail system that still lives in the 7-bit mail era.

Encode the 8-bit data into 7-bit content that can be decoded back to the
8-bit data when you read it.  And various servers will encode unencoded
8-bit content down to 7-bits, though many modern mail clients will do
that before you send your message, to avoid the risk of external
mangling.  There's two common ways of doing that encoding:

"Quoted-printable" (sarcastically known as quoted-unreadable), which
encodes the above 7-bit characters with a sequence of characters, but
leaves the rest as it originally was.  This does give non-compliant
clients the chance to read most of the message, and guess at the rest.
But, that would be a rarity in this day, other than when you look at the
raw message.

Or, "base64" encoding, which encodes the entire content into a series of
characters that will pass through a 7-bit system unmolested.  However,
this looks like random characters to any incompatible client.  Again,
that would be a rarity in this day, other than when you look at the raw
message.

The two encoding schemes also shorten the line lengths to less than 80
characters, which helps with some services that can't handle long lines
(such as when someone types three pages worth of text as a single
unbroken paragraph), which would otherwise damage or destroy such a
message, and the reading client joins the lines back again, though
maintaining deliberately typed line breaks by the message author.

-- 
[tim at localhost ~]$ uname -r
2.6.27.25-78.2.56.fc9.i686

Don't send private replies to my address, the mailbox is ignored.  I
read messages from the public lists.





More information about the users mailing list