| TOC |
|
This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html.
This Internet-Draft will expire on April 9, 2004.
Copyright (C) The Internet Society (2003). All Rights Reserved.
This note presents an extension to SMTP for an electronic mail equivalent to the real-world "No Soliciting Sign." By itself, this extension does little to stop unsolicited bulk electronic mail. However, the extension gives policy makers in the real world a "hook" on which to pass anti-spam laws.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14, RFC 2119 [21].
Changes from draft-malamud-no-soliciting-00 to draft-malamud-no-soliciting-01:
| TOC |
| TOC |
Unsolicited Unwanted Email (UUE), otherwise known as spam, has become as one of the most pressing issues on the Internet. One oft-quoted study estimated that spam will cost businesses $13 billion in 2003.[1] In April 2003, AOL reported that it had blocked 2.37 billion pieces of UUE in a single day. [2] And, in a sure sign that UUE has become of pressing concern, numerous politicians have begun to issue pronouncements and prescriptions for fighting this epidemic.[3][4]
A variety of mechanisms from the technical community have been proposed and/or implemented to fight UUE:
Many of these proposals and services have great merit, however none of them give notice to an SMTP agent in the process of delivering mail that the receiver does not wish to receive solicitations. Such a virtual sign would serve two purposes:
| TOC |
Municipalities frequently require solicitors to register with the town government. And, in many cases, the municipalities prohibit soliciting in residences where the occupant has posted a sign. The town of West Newbury, Massachusetts, for example, requires:
"It shall be unlawful for any canvasser or solicitor to enter the premises of a resident or business who has displayed a 'No Trespassing' or 'No Soliciting' sign or poster. Further, it shall be unlawful for canvassers or solicitors to ignore a resident or business person's no solicitation directive or remain on private property after its owner has indicated that the canvasser or solicitor is not welcome." [14]
Registration requirements for solicitors, particularly those soliciting for political or religious reasons, have been the subject of a long string of court cases. However, the courts have generally recognized that individuals may post "No Soliciting" signs and the government may enforce the citizen's desire. In a recent case where Jehovah's Witnesses challenged a registration requirement in the city of Stratton, Connecticut, saying they derived their authority from the Scriptures, not the city. However, the court noted:
"A section of the ordinance that petitioners do not challenge establishes a procedure by which a resident may prohibit solicitation even by holders of permits. If the resident files a 'No Solicitation Registration Form' with the mayor, and also posts a 'No Solicitation' sign on his property, no uninvited canvassers may enter his property ..." [15]
Even government, which has a duty to promote free expression, may restrict the use of soliciting on government property. In one case, for example, a school district was allowed to give access to its internal electronic mail system to the union that was representing teachers, but was not required to do so to a rival union that was attempting to gain the right to represent the teachers. The court held that where property is not a traditional public forum "and the Government has not dedicated its property to First Amendment activity, such regulation is examined only for reasonableness.[16]
The courts have consistently held that the state has a compelling public safety reason for regulating solicitation. In Cantwell v. Connecticut, the Supreme Court held that "a State may protect its citizens from fraudulent solicitation by requiring a stranger in the community, before permitting him publicly to solicit funds for any purpose, to establish his identity and his authority to act for the cause which he purports to represent."[17] And, in Martin v. City of Struthers, the court noted that burglars frequently pose as canvassers, either in order that they may have a pretense to discover whether a house is empty and hence ripe for burglary, or for the purpose of spying out the premises in order that they may return later."[18] Note that the public safety issue applies very much to email, where viruses and can easily be delivered, in contrast to telephone solicitations where public safety is not nearly as much an issue.
This analysis is very U.S.-centric, which may be appropriate given that the large majority of UUE appears to originate from U.S. citizens. However, the concept of prohibiting unwanted solicitation does carry over to other countries:
| TOC |
Per RFC 2821,[22] a NO-SOLICITING SMTP service extension is defined. The service extension is presented during the initial EHLO SMTP exchange. The extension has one optional parameter and zero or more solicitation class keywords. Using the notation as described in the Augmented BNF[23], the syntax is:
No-Soliciting-Service = "NO-SOLICITING"
[ "SYSTEM-WIDE" / "PER-RECIPIENT" ]
0*( Solicitation-keywords )
NO-SOLICITING SYSTEM-WIDE indicates that no soliciting is in effect for all messages delivered to this system. It is equivalent to the sign on the door of an office building announcing a company-wide policy.
The parameter is presented during the initial exchange between sender and receiver:
R: <wait for connection on TCP port 25> S: <open connection to server> R: 220 trusted.example.com SMTP service ready S: EHLO untrusted.example.com R: 250-trusted.example.com says hello R: 250-NO-SOLICITING SYSTEM-WIDE
A similar proposal was advanced in 1999 by John Levine and Paul Hoffman. This proposal used the SMTP greeting banner to specify that unsolicited bulk email is prohibited on a particular system through the use of the "NO UCB" keyword.[19] As the authors note, their proposal has the potential of overloading the semantics of the greeting banner, which may also be used for other purposes (see, e.g., [20]).
The NO-SOLICITING service extension may accept additional solicitation class keywords that signify a specific class of solicitations that are not accepted. Keywords are separated by commas and follow the SYSTEM-WIDE parameter.
Two classes are defined in this draft:
Keywords Description Reference --------- -------------------------------- --------- MAPS-UBE Unsolicited Bulk Email http://mail-abuse.org/ ADV Unsolicited Commercial Email http://www.spamlaws.com/ ADV:ADLT Sexually Explicit Commercial Mail http://www.spamlaws.com/
MAPS-UBE is the standard advanced by the Mail Abuse Prevention System (MAPS), which states:
An electronic message is "spam" IF: (1) the recipient's personal identity and context are irrelevant because the message is equally applicable to many other potential recipients; AND (2) the recipient has not verifiably granted deliberate, explicit, and still-revocable permission for it to be sent; AND (3) the transmission and reception of the message appears to the recipient to give a disproportionate benefit to the sender.
Numerous states have adopted the "ADV" and "ADV:ADLT" conventions. We cite the spamlaws.com site as a reference because it provides an excellent summary of the definitions and pointers to the relevant statutes.
There is no default keyword for the service. In other words, the following example is a "no-op":
R: 250-NO-SOLICITING SYSTEM-WIDE
Additional solicitation class keywords may be defined and registered in the registry as specified in IANA Considerations. Multiple solicitation class keywords are separated by a comma to form a list:
Solicitation-keywords = 1Solicit-word 0*("," 1Solicit-word)
Solicit-word = [ "MAPS-UBE" / "ADV" / "ADV:ADLT"
/ x-word / registered-word ]
x-word = ["x-" / "X-"] 1*(wordchars)
registered-word = ALPHA 0*(wordchars)
; registered-word(s) are registered
; with the IANA
wordchars = 1*("-" / "_" / ":" / ALPHA / DIGIT)
The NO-SOLICITING PER-RECIPIENT extension specifies that each MAIL FROM command must identify if a message is a solicitation.
The presence of this extension is identified during the initial greeting:
R: <wait for connection on TCP port 25> S: <open connection to server> R: 220 trusted.example.com SMTP service ready S: EHLO untrusted.example.com R: 250-trusted.example.com says hello R: 250-NO-SOLICITING PER-RECIPIENT
Additionally, SOLICIT is defined as a parameter for the MAIL FROM command. The SOLICIT parameter is followed by an optional equal sign and a comma separated list of solicitation class keywords.
The syntax for this parameter is:
Mail-From-Solicit-Parameter = "SOLICIT"
1( "=" Solicitation-keywords)
As an informational message, the 550 or 250 replies to the RCPT TO command may also contain the SOLICIT parameter.
The receiving system may decide on a per-user basis the appropriate disposition of messages:
S: MAIL FROM:<savebigbucks@hotmail.com> SOLICIT=ADV, MAPS-UBE S: RCPT TO:<coupon_clipper@trusted.resource.org> R: 250 <coupon_clipper@trusted.resource.org>... Recipient ok S: RCPT TO:<grumpy_old_boy@trusted.resource.org> R: 550 <grumpy_old_boy@trusted.resource.org>... SOLICIT=ADV:ADLT
Per RFC 2822,[24] a new Solicitation: header field is defined which contains one or more solicitation class keywords.
To: Coupon Clipper <coupon_clipper@trusted.resource.org> From: Spam King <savebigbucks@hotmail.com> Solicitation: ADV,ADV:ADLT
Several proposals, particularly legal ones, have suggested requiring the use of keywords in the "Subject" header. While embedding information in the Subject: header may provide visual cues to end users, it does not provide a straightforward set of cues for computer programs such as mail transfer agents. As with embedding a "no solicitation" message in a greeting banner, this would overload the semantics of the Subject: header. Of course, there is no reason why both mechanisms can't be used, and in any case the Solicitation: header could be automatically inserted based on the contents of the subject line.
The Solicitation: mail header is only available to the sending client. RFCs 2821 and 2822 are quite specific that intermediate MTAs shall not change message headers, with the sole exception of the Received: trace field. Since many current systems use an intermediate relay to detect unsolicited mail, an addition to the Received: header is described.
As a review, RFC 2821[22] documents the following productions for the Received: header in a mail message:
Time-stamp-line = "Received:" FWS Stamp <CRLF>
Stamp = From-domain By-domain Opt-info ";" FWS date-time
; where "date-time" is as defined in [32]
; but the "obs-" forms, especially two-digit
; years, are prohibited in SMTP and MUST NOT be used.
From-domain = "FROM" FWS Extended-Domain CFWS
By-domain = "BY" FWS Extended-Domain CFWS
Extended-Domain = Domain /
( Domain FWS "(" TCP-info ")" ) /
( Address-literal FWS "(" TCP-info ")" )
TCP-info = Address-literal / ( Domain FWS Address-literal )
; Information derived by server from TCP connection
; not client EHLO.
Opt-info = [Via] [With] [ID] [For]
With = "WITH" FWS Protocol CFWS
Addtl-Link = Atom
; Additional standard names for links are registered with the
; Internet Assigned Numbers Authority (IANA). "Via" is
; primarily of value with non-Internet transports. SMTP
; servers SHOULD NOT use unregistered names.
Protocol = "ESMTP" / "SMTP" / Attdl-Protocol
Attdl-Protocol = Atom
; Additional standard names for protocols are registered with
; the Internet Assigned Numbers Authority (IANA). SMTP servers
; SHOULD NOT use unregistered names.
The appropriate location for solicitation information is the Attdl-Protocol field, which is defined in this document as ESMTP-Solicitation. The RFC 2821 productions are supplemented as follows:
Protocol = "ESMTP" / "SMTP" / ESMTP-Solicitation / Attdl-Protocol
ESMTP-Solicitation = "ESMTP-Solicitation"
FWS 0*( Solicitation-keywords )
An example of a Received: header from a conforming MTA is as follows:
Received: by foo-mta.example.com with
ESMTP-Solicitation ADV,ADV:ADLT ; Sat, 9 Aug 2003
16:54:42 -0700 (PDT)
The NO-SOLICITING SYSTEM-WIDE service extension, if present, applies to all messages handled by the receiving Message Transfer Agent (MTA), including those messages intended to be relayed to another system.
When relaying a message which was received via the SMTP protocol in which the SOLICIT parameter was set on the MAIL FROM command, the MTA MUST also set the SOLICIT parameter when delivering the message to an SMTP server that supports this extension.
The SOLICIT parameter on a MAIL FROM command can be derived from a variety of sources, including receipt of a message from a conforming SMTP server. An SMTP server MAY, for operational reasons as detailed in Section 7.7 of RFC 2821[22], set this parameter after detecting the presence of the Solicitation: or extended Received: message header field or by using other system-specific techniques.
Implementers should be aware that the NO-SOLICITING service extension is not a guaranteed end-to-end service. Specifically, intermediate relays that do not support this service may "lose" the per-message parameters. However, any trace fields inserted during the message transfer process will persist.
If a session between two MTAs is using both the NO-SOLICITING extension and the Enhanced Mail Status Codes as defined in RFC 3463[25] and a message is rejected based on the presence of a SOLICIT parameter, the correct error message to return is 5.6.0.
This error message is defined as being of class permanent failure because it "is not likely to be resolved by resending the message in the current form. Some change to the message or the destination must be made for successful delivery." It is defined as subject/detail 6.0 since the policy decision is based on message content and there are not any detail fields that clearly fit this "error" in delivery.
If the NO-SOLICITING service extension is adopted, it is recommended that a new detail code be added to subject 6 (i.e., "X.6.6 Message Not Accepted For Delivery").
It is strongly recommended that any developers that implement the NO-SOLICITING service extension SHOULD NOT enable the service as a default. There are some indications that some policy makers may view a default filtering in software as a prior restraint on commercial speech. In other words, because the person installing the software did not make an explicit choice to enable a certain type of filtering, some might argue that such filtering was not desired.
Likewise, it is recommended that a system administrator installing software SHOULD NOT enable PER-RECIPIENT filtering by default for a user. Again, individual users should request the service.
The mechanism for an individual user to communicate their desire to enable certain types of filtering is outside the scope of this document.
| TOC |
This proposal is not meant to "solve" the UUE problem, but offers some tools that can be used by policy makers, be they governments defining laws or Internet Service Providers defining appropriate use policies.
By providing a service-level extension to SMTP, this proposal provides a simple mechanism that allows a system or ISP to put email senders on notice that mail that is both bulk and unsolicited is not wanted.
One common criticism of any technical or legal measures to prevent UUE is that the global reach of the Internet makes any such measures futile. Several points are worth noting:
In summary, no one proposal will solve all issues with unsolicited unwanted email, but adding a mechanism at the SMTP service level provides one more tool in that fight.
| TOC |
This proposal does not present additional security complications beyond those already amply represented in the current architecture for electronic mail.
| TOC |
There are four IANA considerations presented in this draft:
The IANA Mail Parameters registry documents SMTP service extensions. The NO-SOLICITATION service extension would need to be added to this registry as follows.
Keywords Description Reference ------------ -------------------------------- --------- NO-SOLICITING Notification of no soliciting. [<this draft>]
The parameters subregistry would need to be modified as follows:
Service Ext EHLO Keyword Parameters Reference ----------- ------------ ----------- --------- No Soliciting NO-SOLICITING SYSTEM-WIDE [<this draft>] No Soliciting NO-SOLICITING PER-RECIPIENT [<this draft>]
The Mail Parameters registry would need to be modified to list ESMTP-Solicitation as a valid additional protocol for use in the Received: header of a mail message.
A new registry (or a subregistry of Mail Parameters) would need to be established for Solicitation Class Keywords. The registry would contain the following fields:
Per the policies outlined in RFC 2434[26], it is recommended that the IESG appoint a Designated Expert to administer this registry. Authority for solicitation class keywords in this registry will come in some cases from published RFCs, but in other cases will come from applicable laws or regulations. It is recommended that any non-RFC derived solicitation class keywords be documented in future informational RFCs to provide a consistent set of references.
There is currently no registry defined for mail headers. If such a registry were to exist, the Solicitation: header field would need to be added to it.
| TOC |
The author would like to thank Rebecca Malamud for many discussions and ideas that led to this proposal and to John C. Klensin and Marshall T. Rose for their extensive input on how it could be properly implemented in SMTP. Dave Crocker, Paul Hoffman, John Levine, Keith Moore, Paul Vixie, and Pindar Wong kindly provided reviews of the draft and/or suggestions for improvement. Information about soliciting outside the U.S. was received from Rob Blokzijl, Jon Crowcroft, Christian Huitema, Geoff Huston, and Pindar Wong. As always, all errors, omissions, generalizations, and simplifications (EOGS) are the responsibility of the author.
| TOC |
| TOC |
| [21] | Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997 (TXT, HTML, XML). |
| [22] | Klensin, J., "Simple Mail Transfer Protocol", RFC 2821, April 2001. |
| [23] | Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", RFC 2234, November 1997. |
| [24] | Resnick, P., "Internet Message Format", RFC 2822, April 2001. |
| [25] | Vaudreuil, G., "Enhanced Mail System Status Codes", RFC 3463, January 2003. |
| [26] | Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 2434, October 1998 (TXT, HTML, XML). |
| TOC |
| Carl Malamud | |
| PO Box 300 | |
| Sixes, OR 97476 | |
| US | |
| EMail: | carl@media.org |
| TOC |
The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification can be obtained from the IETF Secretariat.
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director.
Copyright (C) The Internet Society (2003). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees.
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Funding for the RFC Editor function is currently provided by the Internet Society.