idnits 2.17.1 draft-ietf-msgtrk-smtpext-02.txt: ** The Abstract section seems to be numbered Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** Missing expiration date. The document expiration date should appear on the first and last page. ** The document seems to lack a 1id_guidelines paragraph about Internet-Drafts being working documents. ** The document seems to lack a 1id_guidelines paragraph about the list of current Internet-Drafts -- however, there's a paragraph with a matching beginning. Boilerplate error? ** The document seems to lack a 1id_guidelines paragraph about the list of Shadow Directories -- however, there's a paragraph with a matching beginning. Boilerplate error? == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 6 longer pages, the longest (page 2) being 62 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an Introduction section. ** The document seems to lack a Security Considerations section. ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** There are 78 instances of weird spacing in the document. Is it really formatted ragged-right, rather than justified? == The 'Updates: ' line in the draft header should list only the _numbers_ of the RFCs which will be updated by this document (if approved); it should not include the word 'RFC' in the list. -- The draft header indicates that this document updates RFC1891, but the abstract doesn't seem to mention this, which it should. Miscellaneous warnings: ---------------------------------------------------------------------------- == Line 15 has weird spacing: '... This docum...' == Line 16 has weird spacing: '...-Drafts are...' == Line 17 has weird spacing: '...working docum...' == Line 18 has weird spacing: '...ups may also ...' == Line 22 has weird spacing: '...eted by other...' == (73 more instances...) (Using the creation date from RFC1891, updated by this document, for RFC5378 checks: 1996-01-01) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (July 6, 2001) is 8330 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Missing reference section? 'DRAFT-MTRK-MODEL' on line 250 looks like a reference -- Missing reference section? 'RFC-MDN' on line 292 looks like a reference -- Missing reference section? 'RFC-DSN-SMTP' on line 271 looks like a reference -- Missing reference section? 'RFC-MIME' on line 296 looks like a reference -- Missing reference section? 'RFC-ABNF' on line 258 looks like a reference -- Missing reference section? 'RFC-KEYWORDS' on line 288 looks like a reference -- Missing reference section? 'RFC-ESMTP' on line 283 looks like a reference -- Missing reference section? 'RFC-DSN-EXT' on line 96 looks like a reference -- Missing reference section? 'RFC-SMTP' on line 318 looks like a reference -- Missing reference section? 'RFC-RANDOM' on line 305 looks like a reference -- Missing reference section? 'NIST-SHA1' on line 313 looks like a reference -- Missing reference section? 'DRAFT-MTRK-MTQP' on line 254 looks like a reference -- Missing reference section? 'RFC-DELIVERYBY' on line 262 looks like a reference -- Missing reference section? 'RFC-DSN-REPT' on line 266 looks like a reference -- Missing reference section? 'RFC-DSN-STAT' on line 275 looks like a reference -- Missing reference section? 'RFC-EMSSC' on line 279 looks like a reference -- Missing reference section? 'RFC-MSGFMT' on line 301 looks like a reference -- Missing reference section? 'RFC-RELATED' on line 309 looks like a reference Summary: 10 errors (**), 0 flaws (~~), 9 warnings (==), 21 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Draft E. Allman 3 draft-ietf-msgtrk-smtpext-02.txt Sendmail, Inc. 4 Valid for six months T. Hansen 5 Updates: RFC 1891 AT&T Laboratories 6 July 6, 2001 8 SMTP Service Extension 9 for Message Tracking 11 13 Status of This Memo 15 This document is an Internet-Draft and is in full conformance 16 with all provisions of Section 10 of RFC2026. Internet-Drafts are 17 working documents of the Internet Engineering Task Force (IETF), its 18 areas, and its working groups. Note that other groups may also dis- 19 tribute working documents as Internet-Drafts. 21 Internet-Drafts are draft documents valid for a maximum of six 22 months and may be updated, replaced, or obsoleted by other documents 23 at any time. It is inappropriate to use Internet-Drafts as reference 24 material or to cite them other than as "work in progress." 26 The list of current Internet-Drafts can be accessed at: 28 http://www.ietf.org/ietf/1id-abstracts.txt 30 The list of Internet-Draft Shadow Directories can be accessed at: 32 http://www.ietf.org/shadow.html 34 This document is a submission by the MSGTRK Working Group of the 35 Internet Engineering Task Force (IETF). Comments should be submitted 36 to the ietf-msgtrk@imc.org mailing list. An archive of the mailing 37 list may be found at 39 http://www.imc.org/ietf-msgtrk/index.html 41 Distribution of this memo is unlimited. 43 1. Abstract 45 This memo defines an extension to the SMTP service whereby a 46 client may mark a message for future tracking. 48 2. Other Documents and Conformance 50 The model used for Message Tracking is described in [DRAFT- 51 MTRK-MODEL]. 53 Doing a Message Tracking query is intended as a "last resort" 54 mechanism. Normally, Delivery Status Notifications (DSNs) [RFC- 55 DSN-SMTP] and Message Disposition Notifications (MDNs) [RFC-MDN] 56 would provide the primary delivery status. Only if the message is 57 not received, or there is no response from either of these mecha- 58 nisms should a Message Tracking query be issued. 60 The definition of the base64 token is imported from section 61 6.8 of [RFC-MIME]. 63 Syntax notation in this document conforms to [RFC-ABNF]. 65 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL 66 NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" 67 in this document are to be interpreted as described in RFC 2119 68 [RFC-KEYWORDS]. 70 3. SMTP Extension Overview 72 The Message Tracking SMTP service extension uses the SMTP ser- 73 vice extension mechanism described in [RFC-ESMTP]. The following 74 service extension is hereby defined: 76 (1) The name of the SMTP service extension is "Message Track- 77 ing". 79 (2) The EHLO keyword value associated with this extension is 80 "MTRK". 82 (3) No parameters are allowed with this EHLO keyword value. 83 Future documents may extend this specification by specifying 84 options. 86 (4) One optional parameter using the keyword "MTRK" is added to 87 the MAIL FROM command. In addition, the ENVID and ORCPT 88 parameters (as defined in RFC 1891 sections 5.4 and 5.2 89 respectively) MUST be supported, with extensions as 90 described below. 92 (5) The maximum length of a MAIL FROM command line is increased 93 by 40 characters by the possible addition of the MTRK key- 94 word and value. Note that a further extension of 614 char- 95 acters for the ORCPT and ENVID parameters is required by 96 [RFC-DSN-EXT]. 98 (6) No SMTP verbs are defined by this extension. 100 4. The Extended MAIL FROM Command 102 The extended MAIL FROM command is issued by an SMTP client 103 when it wishes to inform an SMTP server that message tracking 104 information should be retained for future querying. The extended 105 MAIL FROM command is identical to the MAIL FROM command as defined 106 in [RFC-SMTP], except that MTRK, ORCPT, and ENVID parameters appear 107 after the address. 109 4.1. The MTRK parameter to the ESMTP MAIL command 111 Any sender wishing to track a message must first tag that 112 message as trackable by creating two values A and B: 114 A = some-large-random-number 115 B = SHA1(A) 117 The large random number A is calculated on a host-dependent 118 basis. See [RFC-RANDOM] for a discussion of choosing good ran- 119 dom numbers. This random number MUST be at least 128 bits but 120 MUST NOT be more than 1024 bits. 122 The 128-bit hash B of A is then computed using the SHA-1 123 algorithm as described in [NIST-SHA1]. 125 The sender then base64 encodes value B and passes that 126 value as the mtrk-certifier on the MAIL FROM command: 128 mtrk-parameter = "MTRK=" mtrk-certifier [ ":" mtrk-timeout ] 129 mtrk-certifier = base64 ; authenticator 130 mtrk-timeout = 1*9digit ; seconds until timeout 132 A is stored in the originator's tracking database to vali- 133 date future tracking requests as described in [DRAFT-MTRK-MTQP]. 134 B is stored in tracking databases of compliant MTAs and used to 135 authenticate future tracking requests. 137 The mtrk-timeout field indicates the number of seconds that 138 the client requests that this tracking information be retained 139 on intermediate servers, as measured from the initial receipt of 140 the message at that server. Servers MAY ignore this value if it 141 violates local policy. In particular, servers MAY silently 142 enforce an upper limit to how long they will retain tracking 143 data; this limit MUST be at least one day. 145 If no mtrk-timeout field is specified then the server 146 should use a local default. This default SHOULD be 8-10 days 147 and MUST be at least one day. Notwithstanding this clause, the 148 information MUST NOT be expired while the message remains in the 149 queue for this server: that is, an MTQP server MUST NOT deny 150 knowledge of a message while that same message sits in the MTA 151 queue. 153 If the message is relayed to another compliant SMTP server, 154 the MTA acting as the client SHOULD pass an mtrk-timeout field 155 equal to the remaining life of that message tracking informa- 156 tion. Specifically, the tracking timeout is decremented by the 157 number of seconds the message has lingered at this MTA and then 158 passed to the next MTA. If the decremented tracking timeout is 159 less than or equal to zero, the entire MTRK parameter MUST NOT 160 be passed to the next MTA; essentially, the entire tracking path 161 is considered to be lost at that point. 163 See [RFC-DELIVERYBY] section 4 for an explanation of why a 164 timeout is used instead of an absolute time. 166 4.2. Use of ENVID 168 To function properly, Message Tracking requires that each 169 message have a unique identifier that is never reused by any 170 other message. For that purpose, if the MTRK parameter is 171 given, an ENVID parameter MUST be included, and the syntax of 172 ENVID from RFC 1891 section 5.4 is extended as follows: 174 envid-parameter = "ENVID=" unique-envid 175 unique-envid = local-envid "@" fqhn 176 local-envid = xtext 177 fqhn = xtext 179 The unique-envid MUST be chosen in such a way that the same 180 ENVID will never be used by any other message sent from this 181 system or any other system. In most cases, this means setting 182 fqhn to be the fully qualified host name of the system generat- 183 ing this ENVID, and local-envid to an identifier that is never 184 re-used by that host. 186 Any resubmissions of this message into the message trans- 187 mission system MUST assign a new ENVID. In this context, 188 "resubmission" includes forwarding or resending a message from a 189 user agent, but does not include MTA-level aliasing or forward- 190 ing where the message does not leave and re-enter the message 191 transmission system. 193 4.3. Forwarding Tracking Certifiers 195 MTAs SHOULD forward unexpired tracking certifiers to com- 196 pliant mailers as the mail is transferred during regular hop-to- 197 hop transfers. If the "downstream" MTA is not MTRK-compliant, 198 then the MTRK= parameter MUST be deleted. If the downstream MTA 199 is DSN-compliant, then the ENVID and ORCPT parameters MUST NOT 200 be deleted. 202 If aliasing, forwarding, or other redirection of messages 203 to a single recipient occurs, then the MTA SHOULD treat this as 204 an ordinary hop-to-hop transfer and forward the MTRK=, ENVID=, 205 and ORCPT= values; these values MUST NOT be modified. 207 MTAs MUST NOT copy MTRK certifiers when relaying a message 208 to multiple recipients. An MTA MAY designate one recipient in a 209 multi-recipient alias as the "primary" recipient to which track- 210 ing requests shall be forwarded; other addresses SHALL NOT 211 receive tracking certifiers. MTAs MUST NOT forward MTRK certi- 212 fiers when doing mailing list expansion. 214 5. Security Issues 216 5.1. Denial of service 218 An attacker could attempt to flood the database of a server 219 by submitting large numbers of small, tracked messages. In this 220 case, a site may elect to lower its maximum retention period 221 retroactively. 223 5.2. Confidentiality 225 The mtrk-authenticator value (``A'') must be hard to pre- 226 dict and not reused. 228 The originating client must take reasonable precautions to 229 protect the secret. For example, if the secret is stored in a 230 message store (e.g., a "Sent" folder), the client must make sure 231 the secret isn't accessible by attackers, particularly on a 232 shared store. 234 Many site administrators believe that concealing names and 235 topologies of internal systems and networks is an important 236 security feature. MTAs need to balance such desires with the 237 need to provide adequate tracking information. 239 In some cases site administrators may want to treat deliv- 240 ery to an alias as final delivery in order to separate roles 241 from individuals. For example, sites implementing ``postmas- 242 ter'' or ``webmaster'' as aliases may not wish to expose the 243 identity of those individuals by permitting tracking through 244 those aliases. In other cases, providing the tracking informa- 245 tion for an alias is important, such as when the alias points to 246 the user's preferred public address. 248 6. References 250 [DRAFT-MTRK-MODEL] 251 T. Hansen, ``Message Tracking Model and Requirements.'' 252 draft-ietf-msgtrk-model-03.txt. November 2000. 254 [DRAFT-MTRK-MTQP] 255 T. Hansen, ``Message Tracking Query Protocol.'' draft-ietf- 256 msgtrk-mtqp-01.txt. November 2000. 258 [RFC-ABNF] 259 Crocker, D., Editor, and P. Overell, ``Augmented BNF for Syn- 260 tax Specifications: ABNF'', RFC 2234, November 1997. 262 [RFC-DELIVERYBY] 263 D. Newman, ``Deliver By SMTP Service Extension.'' RFC 2852. 264 June 2000. 266 [RFC-DSN-REPT] 267 G. Vaudreuil, ``The Multipart/Report Content Type for the 268 Reporting of Mail System Administrative Messages.'' RFC 1892. 269 January 1996. 271 [RFC-DSN-SMTP] 272 K. Moore, ``SMTP Service Extension for Delivery Status Notifi- 273 cations.'' RFC 1891. January 1996. 275 [RFC-DSN-STAT] 276 K. Moore and G. Vaudreuil, ``An Extensible Message Format for 277 Delivery Status Notifications.'' RFC 1894. January 1996. 279 [RFC-EMSSC] 280 G. Vaudreuil, ``Enhanced Mail System Status Codes.'' RFC 281 1893. January 1996. 283 [RFC-ESMTP] 284 Rose, M., Stefferud, E., Crocker, D., Klensin, J. and N. 285 Freed, ``SMTP Service Extensions.'' STD 10, RFC 1869. Novem- 286 ber 1995. 288 [RFC-KEYWORDS] 289 S. Bradner, ``Key words for use in RFCs to Indicate Require- 290 ment Levels.'' RFC 2119. March 1997. 292 [RFC-MDN] 293 R. Fajman, ``An Extensible Message Format for Message Disposi- 294 tion Notifications.'' RFC 2298. March 1998. 296 [RFC-MIME] 297 N. Freed and N. Borenstein, ``Multipurpose Internet Mail 298 Extensions (MIME) Part One: Format of Internet Message Bod- 299 ies.'' RFC 2045. November 1996. 301 [RFC-MSGFMT] 302 D. Crocker, ``Standard for the Format of ARPA Internet Text 303 Messages.'' RFC 822. August 1982. 305 [RFC-RANDOM] 306 D. Eastlake, S. Crocker, and J. Schiller, ``Randomness Recom- 307 mendations for Security.'' RFC 1750. December 1994. 309 [RFC-RELATED] 310 E. Levinson, ``The MIME Multipart/Related Content-type.'' RFC 311 2387. August 1998. 313 [NIST-SHA1] 314 NIST FIPS PUB 180-1, ``Secure Hash Standard.'' National 315 Institute of Standards and Technology, U.S. Department of Com- 316 merce. May 1994. DRAFT. 318 [RFC-SMTP] 319 J. Postel, ``Simple Mail Transport Protocol.'' RFC 821. 320 August 1982. 322 7. Authors' Addresses 324 Eric Allman 325 Sendmail, Inc. 326 6603 Shellmound 327 Emeryville, CA 94608 328 U.S.A. 330 E-Mail: eric@Sendmail.COM 331 Phone: +1 510 594 5501 332 Fax: +1 510 594 5411 334 Tony Hansen 335 AT&T Laboratories 336 Lincroft, NJ 07738 337 U.S.A. 339 Phone: +1 732 576 3207 340 E-Mail: tony@att.com