emsg
2010-12-11
Notice of Deprecation
Important note:
It turns out that the idea behind emsg has already been standardized in
the message/external-body
MIME type,
described in RFC 1341,
with the URL access method being added in RFC 2017.
As these documents precede emsg, the mechanisms they describe are more
general, and implementations of these RFCs are more
widespread than implementations of emsg, I will do no further work on
emsg, and refere interested parties to the
message/external-body
MIME type instead.
Introduction
emsg, short for electronic message, is a modification to email that reduces the damage done by spam, as well as making sending spam less attractive. The basic idea is that the messages are kept by the sender, and only a link to the message is actually transfered to the recipients. This reduces the network traffic and storage space that is wasted when messages go unread, and facilitates sender identification.
Justification
Bulk email uses a lot of bandwidth and takes up a lot of storage space on recipients' servers. All these resources are essentially wasted in case the recepient decides not to open the message, which is what happens to many unsollicited messages. Also, the original sender of an email is sometimes hard to trace.
emsg solves all these issues by keeping the message at the sender's side. Recipients are only sent a reference to the message, which saves space and bandwidth. Moreover, the server the message was sent through can easily be identified.
Specification
A new MIME type is defined (text/x-emsg for now). This type specifies a reference to a stored message. References consist of a line of the form
uri URI
specifying the location the message can be fetched from, for example, an HTTP URL. Later versions of this specification may specify additional fields.
It is recommended that emsg references in emails be accompanied by a textual, human readable explanation telling users of non-emsg-aware mail user agents where to fetch the message. An example emsg in email could be:
To: fred@foobar.com
From: j.r.hacker@2600.com
Subject: Example
Content-Type: multipart/alternative; boundary="bbboundarybbb"
This is a multi-part message in MIME format.
--bbboundarybb
Content-Type: text/plain
This is an emsg. You can fetch the original message by going to
http://2600.com/~j.r.hacker/emsg/132890574023859
For an explanation of what emsgs are, go to
http://inglorion.net/documents/designs/emsg/
--bbboundarybbb
Content-Type: text/x-emsg
uri http://2600.com/~j.r.hacker/emsg/132890574023859
--bbboundarybbb--