TOC 
Network Working GroupC. Malamud
Internet-DraftOctober 10, 2003
Expires: April 9, 2004 

A "No Soliciting" SMTP Service Extension

Status of this Memo

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 Notice

Copyright (C) The Internet Society (2003). All Rights Reserved.

Abstract

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.

Terminology

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 Previous Draft

Changes from draft-malamud-no-soliciting-00 to draft-malamud-no-soliciting-01:



 TOC 

Table of Contents




 TOC 

1. The Spam Pandemic

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 

2. No Soliciting in the Real World

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 

3. The No-Soliciting SMTP Service Extension

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 )

3.1 SYSTEM-WIDE

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]).

3.2 Solicitation Class Keywords

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)

3.3 PER-RECIPIENT

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

3.4 Solicitation Mail Header

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.

3.5 Insertion of Solicitation Keywords in Trace Fields

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) 

3.6 Relay of Messages

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.

3.7 Use of Enhanced Mail Status Codes

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").

3.8 Recommendations for Developers and Administrators

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 

4. Hooks for ISPs and Other Policy Makers

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:

  1. First, anti-UUE complaints are often pursued through the Appropriate Use Policy (AUP) in a service agreement between an Internet Service Provider and an end user is accused of violating the ISP's AUP. Assuming the Appropriate Use Policy is part of a valid contract, conflicts of law do not exist in this case.
  2. Disparity between laws of different jurisdictions is an age-old problem and many mechanisms have evolved to solve these issues. In the United States, conflicts of state laws are dealt with through the courts and a well-established body of law.
  3. On an international level, conflicts of law are dealt with through international agreements, particularly trade agreements. Thus, if the U.S. believes that UUE is a pressing policy issue, it will bring the issue into a forum such as the World Trade Organization, trading off a stronger agreement on spam for a more liberal policy, for example, on the import of packaged meat products.
  4. Anectodal evidence suggests that much if not most UUE originates from U.S. citizens. A policy "hook" in the SMTP architecture will prove highly effective at a national level if not universally effective on a global level.

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 

5. Security Considerations

This proposal does not present additional security complications beyond those already amply represented in the current architecture for electronic mail.



 TOC 

6. IANA Considerations

There are four IANA considerations presented in this draft:

  1. Addition of the NO-SOLICITING service extension to the Mail Parameters registry.
  2. Addition of the ESMTP-Solicitation Additional Protocol
  3. Creation of a Solicitation Class Keywords registry.
  4. Creation of a Solicitation: mail header, which does not currently raise any IANA considerations.

6.1 The Mail Parameters Registry

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>]

6.2 ESMTP-Solicitation Additional Protocol

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.

6.3 The Solicitation Class Keywords Registry

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:

  1. Keyword name (e.g., "MAPS-UBE").
  2. Keyword description (e.g., "Unsolicited Bulk Email").
  3. Keyword reference (e.g., "<this draft>").

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.

6.4 The Solicitation Mail Header

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 

7. Author's Acknowledgements

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 

Informative References

[1] Associated Press, "Study: Spam costs businesses $13 billion", January 2003.
[2] CNET News.Com, "AOL touts spam-fighting prowess", April 2003.
[3] Charles, C., "Schumer, Christian Coalition Team Up to Crack Down on Email Spam Pornography", June 2003.
[4] Federal Trade Commission, "Federal, State, Local Law Enforcers Target Deceptive Spam and Internet Scams", November 2002.
[5] Habeas, Inc., "Habeas Compliant Message", April 2003.
[6] Spamhaus.Org, "Register of Known Spam Operations".
[7] Mason, J., "Spamassassin - Mail Filter to Identify Spam Using Text Analysis", Version 2.55, May 2003.
[8] Crocker, D., "Technical Considerations for Spam Control Mechanisms", draft-crocker-spam-techconsider-01 (work in progress), May 2003.
[9] Lindberg, G., "Anti-Spam Recommendations for SMTP MTAs", BCP 30, RFC 2505, February 1999.
[10] Danisch, H., "A DNS RR for simple SMTP sender authentication", draft-danisch-dns-rr-smtp-02 (work in progress), June 2003.
[11] Daboo, C., "SIEVE Spamtest and Virustest Extensions", draft-daboo-sieve-spamtest-03 (work in progress), April 2003.
[12] Crouzet, B., "Authenticated Mail Transfer Protocol", draft-crouzet-amtp-00 (work in progress), June 2003.
[13] Federal Trade Commission, "Telemarketing Sales Rule", Federal Register Vol. 68, No. 19, January 2003.
[14] The Town of West Newbury, Massachusetts, "Soliciting/Canvassing By-Law", Chapter 18 Section 10, March 2002.
[15] U.S. Supreme Court, "Watchtower Bible & Tract Society of New York, Inc., et al. v. Village of Stratton et al.", 122 S.Ct. 2080 (2002), June 2002.
[16] U.S. Supreme Court, "Perry Education Association v. Perry Local Educators' Association", 460 U.S. 37 (1983), February 1983.
[17] U.S. Supreme Court, "Cantwell v. State of Connecticut", 310 U.S. 296 (1940), May 1940.
[18] U.S. Supreme Court, "Martin v. City of Struthers, Ohio", 319 U.S. 141 (1943), May 1943.
[19] Levine, J. and P. Hoffman, "Anti-UBE and Anti-UCE Keywords in SMTP Banners", Revision 1.1, March 1999.
[20] Malamud, C., "An Internet Prayer Wheel", Mappa.Mundi Magazine, August 1999.


 TOC 

Normative References

[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 

Author's Address

  Carl Malamud
  PO Box 300
  Sixes, OR 97476
  US
EMail:  carl@media.org


 TOC 

Intellectual Property Statement

Full Copyright Statement

Acknowledgement