Fog Creek Software
Discussion Board




Collective FROM: Addition to e-mail standard

E-mail is similar to "snail" mail (adjective "regular" is no longer applicable here) in many ways.
To, CC, BCC, Subject, etc. - all these e-mail attributes originated or inspired by snail mail.
One difference came to my mind.

It's easy to write a paper letter collectively - all the authors just sign the letter, and that's it.

But how to send "collective" e-mail? Multiple FROMs are not allowed by the standard. Even if they were, e-mail still needs to be originated at one place only, unlike the paper letter (dropping the letter in mail box doesn't tie it to one place of origin).

Now we have a design task: how it is possible to change e-mail standards and possibly protocols to accomodate collective ownership/origin of e-mail message?

D.P.
Friday, April 30, 2004

That statement is not correct.  RFC 2822 specifically in section 3.6.2 calls out the "From:" field as defined by a mailbox-list which is defined as a comma seperated list of mailboxes being of the name-addr or addr-spec format which is either a standard email address or a display name email address combination in the format [display-name] <addr-spec>.

Elephant
Friday, April 30, 2004

S/MIME?

When you send a letter signed by a group of people, do you go down to the postbox collectively to drop it of togetter, and do you put all your separate return adresses on the back of the envelope?

Just me (Sir to you)
Friday, April 30, 2004

"...change e-mail standards and possibly protocols"

It's a huge task, first to get everybody to agree what the standards and protocols will be, second to overhaul every mail server in the world, and third to overhaul every mail reader in the world. The first task is the biggest I think.

greim
Friday, April 30, 2004

Well, without proper digital signatures, the From: header is basically worthless anyway (other than a friendly guide).  What you first need to do is get everyone in the world to obtain a certificate, and use it to sign messages.

Then, and only then, can we talk about multiple people signing a single message, and it would likely involve passing the message around to all the signers to sign before sending it to the recipients.  Email clients would have to implement this functionality.

I agree though, it would be a useful idiom...

Michael Kale
Friday, April 30, 2004

Come to think of it, I don't know if S/MIME in itself supports multiple signatures. You can always use XMLDSIG though, but then it is not truly in the email realm anymore.

Just me (Sir to you)
Friday, April 30, 2004

Or as I stated, you can just use multiple from addresses as allowed by the standard.

All this talk about the standard doesn't support it, when in fact it does.

It does not support mutlitple from lines, but then neither does it support multiple to lines or cc lines.  It does support comma seperated lists for to, from, cc, and bcc fields.

http://www.ietf.org/rfc/rfc2822.txt

<quote>
field          min            max
from            1              1
to                0              1
cc                0              1

from          =      "From:" mailbox-list CRLF
sender      =      "Sender:" mailbox CRLF
to              =      "To:" address-list CRLF
cc              =      "Cc:" address-list CRLF

mailbox-list    =      (mailbox *("," mailbox)) / obs-mbox-list
mailbox        =      name-addr / addr-spec
</quote>

Now maybe what you meant is you can only have one sender (which makes sense to me, as stated, only one person mails the thing, you don't have four people taking the letter to the post office and simulatneously putting it in the mail) but you can have multiple from addresses.

Read the standard. . .

Elephant
Friday, April 30, 2004

Even so, without proper digital signatures, having John, Paul, George, and Ringo all appear in the From: header is equivalent to writing  at the top of the body "This message is from John, Paul, George, and Ringo."

If there were some way of cryptographically verifying that the message is indeed from all four of those people, then, you've got something different than just verifying that it's from whoever the actual sender is.

Michael Kale
Friday, April 30, 2004

Yes, but that's not what the OP was asking.  They merely stated that the standard prevented having multiple from addresses.

Cryptologically verifying them is another ball of wax.  The standard doesn't even support it for one sender now.  That's not to say that it hasn't been implemented on top of the standard with 3rd party software, as it has.

Talking about a means for verifying authenticity of single and multiple senders of email could be an interesting conversation, but a bunch of people talking about the from line not supporting multiple senders is wrong and boring.

I'll gladly have a discussion about the former topic that I listed.

Elephant
Friday, April 30, 2004

I apologize for the lack of standard reading. Indeed, multiple FROMs are allowed (again, I haven't checked, but I do trust Elephant on that)

Just me (Sir to you):
> When you send a letter signed by a group of people, do you go down to the postbox collectively to drop it of togetter, and do you put all your separate return adresses on the back of the envelope?

1. No
2. No
3. No, though inside individual addresses should normally be listed (or collective "Reply-to" equivalent).

Michael Kale:
> Well, without proper digital signatures, the From: header is basically worthless anyway (other than a friendly guide).  What you first need to do is get everyone in the world to obtain a certificate, and use it to sign messages.
> Then, and only then, can we talk about multiple people signing a single message, and it would likely involve passing the message around to all the signers to sign before sending it to the recipients.  Email clients would have to implement this functionality.
>Even so, without proper digital signatures, having John, Paul, George, and Ringo all appear in the From: header is equivalent to writing  at the top of the body "This message is from John, Paul, George, and Ringo."

That is almost exactly what I mean and what I'm thinking about. The question is not trivial.

Elephant:
>Yes, but that's not what the OP was asking.  They merely stated that the standard prevented having multiple from addresses

That's not entirely correct. I also stated that having multiple FROMs would not solve the problem anyway. And I agree with you that "talking about the from line not supporting multiple senders is wrong and boring"

D.P.
Friday, April 30, 2004

Elephant:
> Read the standard. . .

OK, I finally did that a little bit, thank you for the link.
And interesting reading it is!

(The capitalization of the origin preserved - D.P.)
<quote>
3.6.2. Originator fields

  The originator fields of a message consist of the from field, the
  sender field (when applicable), and optionally the reply-to field.
  The from field consists of the field name "From" and a
  comma-separated list of one or more mailbox specifications.  If the
  from field contains more than one mailbox specification in the
  mailbox-list, then the sender field, containing the field name
  "Sender" and a single mailbox specification, MUST appear in the
  message.  In either case, an optional reply-to field MAY also be
  included, which contains the field name "Reply-To" and a
  comma-separated list of one or more addresses.

from            =      "From:" mailbox-list CRLF

sender          =      "Sender:" mailbox CRLF

reply-to        =      "Reply-To:" address-list CRLF

  The originator fields indicate the mailbox(es) of the source of the
  message.  The "From:" field specifies the author(s) of the message,
  that is, the mailbox(es) of the person(s) or system(s) responsible
  for the writing of the message.  The "Sender:" field specifies the
  mailbox of the agent responsible for the actual transmission of the
  message.  For example, if a secretary were to send a message for
  another person, the mailbox of the secretary would appear in the
  "Sender:" field and the mailbox of the actual author would appear in
  the "From:" field.  If the originator of the message can be indicated
  by a single mailbox and the author and transmitter are identical, the
  "Sender:" field SHOULD NOT be used.  Otherwise, both fields SHOULD
  appear.

  The originator fields also provide the information required when
  replying to a message.  When the "Reply-To:" field is present, it
  indicates the mailbox(es) to which the author of the message suggests
  that replies be sent.  In the absence of the "Reply-To:" field,
  replies SHOULD by default be sent to the mailbox(es) specified in the
  "From:" field unless otherwise specified by the person composing the
  reply.

  In all cases, the "From:" field SHOULD NOT contain any mailbox that
  does not belong to the author(s) of the message.  See also section
  3.6.3 for more information on forming the destination addresses for a
  reply.
</quote>

So, we see that Sender field is always a single address, and it MUST appear if From lists multiple addresses - to define the single sender (if From address is unique, Sender could be omitted, as the only address from From is assumed a Sender).

Note the distinction made there between author(s) and sender (transmitter) of the message. However, that distinction is not usually emphasized enough by e-mail clients and practices.

That's one of the reasons why I talked about not only collective _writing_, but also collective _sending_ an e-mail message.

D.P.
Friday, April 30, 2004

I Understand.  As I stated above, "Now maybe what you meant is you can only have one sender". . .

The only reason I get so worked up over this is I spent many laborious months writin a damn implementation for the IMF in C#.  What a pain in the ass.  The damn .net framework provides a nice means for sending mail, but not for parsing received mail.  Anyhow. . .

The thing I find interesting is that the From field should not contain the addresses of anyone that did not author the message.  Unfortunately it provides no means for enforcing this, as evidenced in the present spam problem.  I never really paid much head to that statement before. 

But yes, there can only ever be one sender.  This is by default specified in the "from" field if there is only one sender, otherwise it is specified in the sender field since it only allows one mailbox, in which case the from field will contain a mailbox list.

Elephant
Friday, April 30, 2004

"If there were some way of cryptographically verifying that the message is indeed from all four of those people, then, you've got something different than just verifying that it's from whoever the actual sender is."

Although I'm not sure if this is supported by S/MIME, clearly you can have multiple signatures on a piece of content.

Person A signs content, person B signs around person A's signature and content, etc. You crack each signature to ensure that the inside wasn't tampered with, and if all signatures check out, then everybody's signature is valid, and the original inner content is unchanged.

Outer signatories could add additional text before signing, but then you'd be able to tell that inner signatories did not see to nor sign that text, based on its position in the envelopes.

Brad Wilson (dotnetguy.techieswithcats.com)
Friday, April 30, 2004

By "adding additional text", I mean to say, they could add text outside the inner signatories, not to the original content. The text would exist outside the signature boundary of the inner signatories.

Brad Wilson (dotnetguy.techieswithcats.com)
Friday, April 30, 2004

*  Recent Topics

*  Fog Creek Home