idnits 2.17.1 draft-brotman-mta-sts-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There are 16 instances of too long lines in the document, the longest one being 6 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). == Using lowercase 'not' together with uppercase 'MUST', 'SHALL', 'SHOULD', or 'RECOMMENDED' is not an accepted usage according to RFC 2119. Please use uppercase 'NOT' together with RFC 2119 keywords (if that is what you mean). Found 'MUST not' in this paragraph: When fetching a new policy or updating a policy, the new policy MUST be fully authenticated (HTTPS certificate validation + peer verification) before use. A policy which has not ever been successfully authenticated MUST not be used to reject mail. -- The document date (April 23, 2016) is 2896 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) ** Obsolete normative reference: RFC 4627 (Obsoleted by RFC 7158, RFC 7159) ** Obsolete normative reference: RFC 6125 (Obsoleted by RFC 9525) ** Obsolete normative reference: RFC 6962 (Obsoleted by RFC 9162) Summary: 4 errors (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Using TLS in Applications D. Margolis 3 Internet-Draft M. Risher 4 Intended status: Standards Track N. Lidzborski 5 Expires: October 23, 2016 W. Chuang 6 B. Long 7 Google, Inc 8 B. Ramakrishnan 9 Yahoo!, Inc 10 A. Brotman 11 Comcast, Inc 12 J. Jones 13 Microsoft, Inc 14 F. Martin 15 LinkedIn 16 K. Umbach 17 M. Laber 18 1&1 Mail & Media Development & Technology GmbH 19 April 23, 2016 21 SMTP MTA Strict Transport Security 22 draft-brotman-mta-sts-00 24 Abstract 26 SMTP MTA-STS is a mechanism enabling mail service providers to 27 declare their ability to receive TLS-secured connections, to declare 28 particular methods for certificate validation, and to request that 29 sending SMTP servers report upon and/or refuse to deliver messages 30 that cannot be delivered securely. 32 Status of This Memo 34 This Internet-Draft is submitted in full conformance with the 35 provisions of BCP 78 and BCP 79. 37 Internet-Drafts are working documents of the Internet Engineering 38 Task Force (IETF). Note that other groups may also distribute 39 working documents as Internet-Drafts. The list of current Internet- 40 Drafts is at http://datatracker.ietf.org/drafts/current/. 42 Internet-Drafts are draft documents valid for a maximum of six months 43 and may be updated, replaced, or obsoleted by other documents at any 44 time. It is inappropriate to use Internet-Drafts as reference 45 material or to cite them other than as "work in progress." 47 This Internet-Draft will expire on October 20, 2016. 49 Copyright Notice 51 Copyright (c) 2016 IETF Trust and the persons identified as the 52 document authors. All rights reserved. 54 This document is subject to BCP 78 and the IETF Trust's Legal 55 Provisions Relating to IETF Documents 56 (http://trustee.ietf.org/license-info) in effect on the date of 57 publication of this document. Please review these documents 58 carefully, as they describe your rights and restrictions with respect 59 to this document. Code Components extracted from this document must 60 include Simplified BSD License text as described in Section 4.e of 61 the Trust Legal Provisions and are provided without warranty as 62 described in the Simplified BSD License. 64 Table of Contents 66 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 67 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 68 2. Related Technologies . . . . . . . . . . . . . . . . . . . . 4 69 2.1. Differences from DANE . . . . . . . . . . . . . . . . . . 4 70 2.1.1. Advantages of SMTP MTA-STS when compared to DANE . . 4 71 2.1.2. Advantages of DANE when compared to SMTP MTA-STS . . 5 72 3. Policy Semantics . . . . . . . . . . . . . . . . . . . . . . 5 73 3.1. Formal Definition . . . . . . . . . . . . . . . . . . . . 6 74 3.1.1. TXT Record . . . . . . . . . . . . . . . . . . . . . 6 75 3.1.2. SMTP MTA-STS Policy . . . . . . . . . . . . . . . . . 6 76 3.2. Policy Expirations . . . . . . . . . . . . . . . . . . . 7 77 3.2.1. Policy Updates . . . . . . . . . . . . . . . . . . . 8 78 3.3. Policy Discovery & Authentication . . . . . . . . . . . . 8 79 3.4. Policy Validation . . . . . . . . . . . . . . . . . . . . 9 80 3.5. Policy Application . . . . . . . . . . . . . . . . . . . 9 81 4. Failure Reporting . . . . . . . . . . . . . . . . . . . . . . 10 82 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 83 6. Security Considerations . . . . . . . . . . . . . . . . . . . 10 84 7. Future Work . . . . . . . . . . . . . . . . . . . . . . . . . 11 85 8. Appendix 1: Validation Pseudocode . . . . . . . . . . . . . . 12 86 9. Appendix 2: Domain Owner STS example record . . . . . . . . . 12 87 9.1. Example 1 . . . . . . . . . . . . . . . . . . . . . . . . 12 88 10. Appendix 3: DEEP Registration Elements . . . . . . . . . . . 13 89 11. Normative References . . . . . . . . . . . . . . . . . . . . 15 90 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 16 92 1. Introduction 94 The STARTTLS extension to SMTP [RFC3207] allows SMTP clients and 95 hosts to establish secure SMTP sessions over TLS. In its current 96 form, however, it fails to provide (a) message confidentiality -- 97 because opportunistic STARTTLS is subject to downgrade attacks -- and 98 (b) server authenticity -- because the trust relationship from email 99 domain to MTA server identity is not cryptographically validated. 101 While such _opportunistic_ encryption protocols provide a high 102 barrier against passive man-in-the-middle traffic interception, any 103 attacker who can delete parts of the SMTP session (such as the "250 104 STARTTLS" response) or who can redirect the entire SMTP session 105 (perhaps by overwriting the resolved MX record of the delivery 106 domain) can perform such a downgrade or interception attack. 108 This document defines a mechanism for recipient domains to publish 109 policies specifying: 111 o whether MTAs sending mail to this domain can expect TLS support 113 o how MTAs can validate the TLS server certificate presented during 114 mail delivery 116 o the expected identity of MXs that handle mail for this domain 118 o what an implementing sender should do with messages when TLS 119 cannot be be successfully negotiated 121 The mechanism described is separated into four logical components: 123 1. policy semantics: whether senders can expect a server for the 124 recipient domain to support TLS encryption and how to validate 125 the TLS certificate presented 127 2. policy discovery & authentication: how to discover a domain's 128 published STS policy and determine the authenticity of that 129 policy 131 3. failure report format: a mechanism for informing recipient 132 domains about aggregate failure statistics 134 4. failure handling: what sending MTAs should do in the case of 135 policy failures 137 1.1. Terminology 139 The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, 140 SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, when they appear in this 141 document, are to be interpreted as described in [RFC2119]. 143 We also define the following terms for further use in this document: 145 o STS Policy: A definition of the expected TLS availability and 146 behavior, as well as the desired actions for a given domain when a 147 sending MTA encounters different results. 149 o Policy Domain: The domain against which an STS Policy is defined. 151 o Policy Authentication: Authentication of the STS policy retrieved 152 for a recipient domain by the sender. 154 2. Related Technologies 156 The DANE TLSA record [RFC7672] is similar, in that DANE is also 157 designed to upgrade opportunistic encryption into required 158 encryption. DANE requires DNSSEC [RFC4033] for the secure delivery 159 of policies; the mechanism described here presents a variant for 160 systems not yet supporting DNSSEC. 162 2.1. Differences from DANE 164 The primary difference between the mechanism described here and DANE 165 is that DANE requires the use of DNSSEC to authenticate DANE TLSA 166 records, whereas SMTP STS relies on the certificate authority (CA) 167 system to avoid interception. (For a thorough discussion of this 168 trade-off, see the section _Security_ _Considerations_.) 170 In addition, SMTP MTA-STS introduces a mechanism for failure 171 reporting and a report-only mode, enabling offline ("report-only") 172 deployments and auditing for compliance. 174 2.1.1. Advantages of SMTP MTA-STS when compared to DANE 176 SMTP MTA-STS offers the following advantages compared to DANE: 178 o Infrastructure: In comparison to DANE, this proposal does not 179 require DNSSEC be deployed on either the sending or receiving 180 domain. In addition, the reporting feature of SMTP MTA-STS can be 181 deployed to perform offline analysis of STARTTLS failures, 182 enabling mail providers to gain insight into the security of their 183 SMTP connections without the need to modify MTA codebases 184 directly. 186 o Offline or report-only usage: DANE does not provide a reporting 187 mechanism and does not have a concept of "report-only" for 188 failures; as a result, a service provider cannot receive metrics 189 on TLS acceptability without asking senders to enforce a given 190 policy; similarly, senders who cannot enforce DANE constraints at 191 send-time have no mechanism to provide recipients such metrics 192 from an offline (and potentially easier-to-deploy) logs-analysis 193 batch process. 195 2.1.2. Advantages of DANE when compared to SMTP MTA-STS 197 o Infrastructure: DANE may be easier for some providers to deploy. 198 In particular, for providers who already support DNSSEC, SMTP MTA- 199 STS would additionally require they host a HTTPS webserver and 200 obtain a CA-signed X.509 certificate for the recipient domain. 202 o Security: DANE offers an advantage against policy-lookup DoS 203 attacks; that is, while a DNSSEC-signed NXDOMAIN response to a 204 DANE lookup authoritatively indicates the lack of a DANE record, 205 such an option to authenticate policy non-existence does not exist 206 when looking up a policy over plain DNS. 208 3. Policy Semantics 210 SMTP MTA-STS policies are distributed via a "well known" HTTPS 211 endpoint in the Policy Domain. 213 (Future implementations may move to alternate methods of policy 214 discovery or distribution. See the section _Future_ _Work_ for more 215 discussion.) 217 Policies MUST specify the following fields in JSON [RFC4627] format: 219 o "version": (plain-text, required). Currently only "STS1" is 220 supported. 222 o "mode": (plain-text, required). If "enforce", the receiving MTA 223 requests that messages be delivered only if they conform to the 224 STS policy. If "report" the receiving MTA requests that failure 225 reports be delivered, as specified by the "rua" parameter. 227 o "mx": MX patterns (list of plain-text MX match patterns, 228 required). One or more comma-separated patterns matching the 229 expected MX for this domain. For example, ["_.example.com", 230 "_.example.net"] indicates that mail for this domain might be 231 handled by any MX whose hostname is a subdomain of "example.com" 232 or "example.net." The semantics for these patterns should be the 233 ones found in the "Checking of Wildcard Certificates" rules in 234 Section 6.4.3 of [RFC6125]. 236 o "max-age": Max lifetime of the policy (plain-text integer 237 seconds). Well-behaved clients SHOULD cache a policy for up to 238 this value from last policy fetch time. 240 o "policy_id": A short string used to track policy updates. This 241 string MUST uniquely identify a given instance of a policy, such 242 that senders can determine when the policy has been updated by 243 comparing to the "policy_id" of a previously seen policy. 245 3.1. Formal Definition 247 3.1.1. TXT Record 249 The formal definition of the "_mta_sts" TXT record, defined using 250 [RFC5234], is as follows: 252 sts-version = "v" *WSP "=" *WSP %x53 %x54 %x53 %x31 254 sts-id = "id" *WSP "=" *WSP 1*20VCHAR 256 3.1.2. SMTP MTA-STS Policy 258 The formal definition of the SMTP MTA-STS policy, using [RFC5234], is 259 as follows: 261 sts-record = WSP %x7B WSP ; { left curly bracket 262 sts-element ; comma-separated 263 [ ; list 264 WSP %x2c WSP ; of 265 sts-element ; sts-elements 266 ] 267 WSP %x7d WSP ; } right curly bracket 268 = %x22 "max 269 sts-element = sts-version / sts-mode / sts-id / sts-mx / sts-max-age 271 sts-version = %x22 "version" %x22 *WSP %x3a *WSP ; "version": 272 %x22 %x53 %x54 %x53 %x31 ; "STS1" 274 sts-mode = %x22 "mode" %x22 *WSP %x3a *WSP ; "mode": 275 %x22 ("report" / "enforce") %x22 ; "report"/"enforce" 277 sts-id = %x22 "policy_id" %x22 *WSP %x3a *WSP ; "policy_id": 278 %x22 1*20VCHAR %x22 ; some chars 280 sts-mx = %x22 "mx" $x22 *WSP %x3a *WSP ; "mx": 281 %x5B ; [ 282 domain-match ; comma-separated list 283 [WSP %x2c domain-match WSP] ; of domain-matches 284 %x5B ; ] 286 sts-max-age = %x22 "max-age" %x22 $x3a *WSP ; "max-age": 287 %x22 1*10DIGIT %x22$ ; some digits 289 domain-match = ["*."] 1*dtext *("." 1*dtext) 291 dtext = %d30-39 / ; 0-9 292 %d41-5A / ; a-z 293 %61-7A / ; A-Z 294 %2D ; "-" 296 A size limitation in a sts-uri, if provided, is interpreted as a 297 count of units followed by an OPTIONAL unit size ("k" for kilobytes, 298 "m" for megabytes, "g" for gigabytes, "t" for terabytes). Without a 299 unit, the number is presumed to be a basic byte count. Note that the 300 units are considered to be powers of two; a kilobyte is 2^10, a 301 megabyte is 2^20, etc. 303 3.2. Policy Expirations 305 In order to resist attackers inserting a fraudulent policy, SMTP MTA- 306 STS policies are designed to be long-lived, with an expiry typically 307 greater than two weeks. Policy validity is controlled by two 308 separate expiration times: the lifetime indicated in the policy 309 ("max-age=") and the TTL on the DNS record itself. The policy 310 expiration will ordinarily be longer than that of the DNS TTL, and 311 senders SHOULD cache a policy (and apply it to all mail to the 312 recipient domain) until the policy expiration. 314 An important consideration for domains publishing a policy is that 315 senders will see a policy expiration as relative to the fetch of a 316 policy cached by their recursive resolver. Consequently, a sender 317 MAY treat a policy as valid for up to {expiration time} + {DNS TTL}. 318 Publishers SHOULD thus continue to expect senders to apply old 319 policies for up to this duration. 321 3.2.1. Policy Updates 323 Updating the policy requires that the owner make changes in two 324 places: the "_mta_sts" RR record in the Policy Domain's DNS zone and 325 at the corresponding HTTPS endpoint. In the case where the HTTPS 326 endpoint has been updated but the TXT record has not been, senders 327 will not know there is a new policy released and may thus continue to 328 use old, previously cached versions. Recipients thus can expect a 329 policy to continue to be used by senders until both the HTTPS and TXT 330 endpoints are updated and the TXT record's TTL has passed. 332 3.3. Policy Discovery & Authentication 334 Senders discover a recipient domain's STS policy, by making an 335 attempt to fetch TXT records from the recipient domain's DNS zone 336 with the name "_mta_sts". A valid TXT record presence in 337 "_mta_sts.example.com" indicates that the recipent domain supports 338 STS. To allow recipient domains to safely serve new policies, it is 339 important that senders are able to authenticate a new policy 340 retrieved for a recipient domain. 342 Web PKI is the mechanism used for policy authentication. In this 343 mechanism, the sender fetches a HTTPS resource (policy) from a host 344 at "policy._mta_sts" in the Policy Domain. The policy is served from 345 a "well known" URI: "https://policy._mta_sts.example.com/current". 346 To consider the policy as valid, the "policy_id" field in the policy 347 MUST match the "id" field in the DNS TXT record under "_mta_sts". 349 When fetching a new policy or updating a policy, the new policy MUST 350 be fully authenticated (HTTPS certificate validation + peer 351 verification) before use. A policy which has not ever been 352 successfully authenticated MUST not be used to reject mail. 354 3.4. Policy Validation 356 When sending to an MX at a domain for which the sender has a valid 357 and non-expired SMTP MTA-STS policy, a sending MTA honoring SMTP MTA- 358 STS MUST validate that the recipient MX supports STARTTLS, and offers 359 a valid PKIX based TLS certificate. The certificate presented by the 360 receiving MX MUST be valid for the MX name and chain to a root CA 361 that is trusted by the sending MTA. The certificate MUST have a CN 362 or SAN matching the MX hostname (as described in [RFC6125]) and be 363 non-expired. 365 3.5. Policy Application 367 When sending to an MX at a domain for which the sender has a valid 368 non-expired SMTP MTA-STS policy, a sending MTA honoring SMTP MTA-STS 369 MAY apply the result of a policy validation one of two ways: 371 o "report": In this mode, sending MTAs merely send a report to the 372 designated report address indicating policy application failures. 373 This can be done "offline", i.e. based on the MTA logs, and is 374 thus a suitable low-risk option for MTAs who wish to enhance 375 transparency of TLS tampering without making complicated changes 376 to production mail-handling infrastructure. 378 o "enforce": In this mode, sending MTAs SHOULD treat STS policy 379 failures, in which the policy action is "reject", as a mail 380 delivery error, and SHOULD terminate the SMTP connection, not 381 delivering any more mail to the recipient MTA. 383 In "enforce" mode, however, sending MTAs MUST first check for a new 384 authenticated policy before actually treating a message failure as 385 fatal. 387 Thus the control flow for a sending MTA that does online policy 388 application consists of the following steps: 390 1. Check for cached non-expired policy. If none exists, fetch the 391 latest, authenticate and cache it. 393 2. Validate recipient MTA against policy. If valid, deliver mail. 395 3. If not valid and the policy specifies reporting, generate report. 397 4. If not valid and policy specifies rejection, perform the 398 following steps: 400 * Check for a new (non-cached) authenticated policy. 402 * If one exists and the new policy is different, update the 403 current policy and go to step 2. 405 * If one exists and the new policy is same as the cached policy, 406 treat the delivery as a failure. 408 * If none exists and cached policy is not expired, treat the 409 delivery as a failure. 411 Understanding the details of step 4 is critical to understanding the 412 behavior of the system as a whole. 414 Remember that each policy has an expiration time (which SHOULD be 415 long, on the order of days or months) and a validation method. With 416 these two mechanisms and the procedure specified in step 4, 417 recipients who publish a policy have, in effect, a means of updating 418 a cached policy at arbitrary intervals, without the risks (of a man- 419 in-the-middle attack) they would incur if they were to shorten the 420 policy expiration time. 422 4. Failure Reporting 424 Aggregate statistics on policy failures MAY be reported using the 425 "TLSRPT" reporting specification (TODO: Add Ref). 427 5. IANA Considerations 429 There are no IANA considerations at this time. 431 6. Security Considerations 433 SMTP Strict Transport Security protects against an active attacker 434 who wishes to intercept or tamper with mail between hosts who support 435 STARTTLS. There are two classes of attacks considered: 437 o Foiling TLS negotiation, for example by deleting the "250 438 STARTTLS" response from a server or altering TLS session 439 negotiation. This would result in the SMTP session occurring over 440 plaintext, despite both parties supporting TLS. 442 o Impersonating the destination mail server, whereby the sender 443 might deliver the message to an impostor, who could then monitor 444 and/or modify messages despite opportunistic TLS. This 445 impersonation could be accomplished by spoofing the DNS MX record 446 for the recipient domain, or by redirecting client connections to 447 the legitimate recipient server (for example, by altering BGP 448 routing tables). 450 SMTP Strict Transport Security relies on certificate validation via 451 PKIX based TLS identity checking [RFC6125]. Attackers who are able 452 to obtain a valid certificate for the targeted recipient mail service 453 (e.g. by compromising a certificate authority) are thus out of scope 454 of this threat model. 456 Since we use DNS TXT record for policy discovery, an attacker who is 457 able to block DNS responses can suppress the discovery of an STS 458 Policy, making the Policy Domain appear not to have an STS Policy. 459 The caching model described in _Policy_ _Expirations_ is designed to 460 resist this attack, and there is discussion in the _Future_ _Work_ 461 section around future distribution mechanisms that are robust against 462 this attack. 464 7. Future Work 466 The authors would like to suggest multiple considerations for future 467 discussion. 469 o Certificate pinning: One potential improvement in the robustness 470 of the certificate validation methods discussed would be the 471 deployment of public-key pinning as defined for HTTP in [RFC7469]. 472 A policy extension supporting these semantics would enable Policy 473 Domains to specify certificates that MUST appear in the MX 474 certificate chain, thus providing resistence against compromised 475 CA or DNSSEC zone keys. 477 o Policy distribution: As with Certificate Transparency ([RFC6962]), 478 it may be possible to provide a verifiable log of policy 479 _observations_ (meaning which policies have been observed for a 480 given Policy Domain). This would provide insight into policy 481 spoofing or faked policy non-existence. This may be particularly 482 useful for Policy Domains not using DNSSEC, since it would provide 483 sending MTAs an authoritative source for whether a policy is 484 expected for a given domain. 486 o Receive-from restrictions: Policy publishers may wish to also 487 indicate to domains _receiving_ mail from the Policy Domain that 488 all such mail is expected to be sent via TLS. This may allow 489 policy publishers to receive reports indicating sending MTA 490 misconfigurations. However, the security properties of a 491 "receiver-enforced" system differ from those of the current 492 design; in particular, an active man-in-the-middle attacker may be 493 able to exploit misconfigured sending MTAs in a way that would not 494 be possible today with a sender-enforced model. 496 o Cipher and TLS version restrictions: Policy publishers may also 497 wish to restrict TLS negotiation to specific ciphers or TLS 498 versions. 500 8. Appendix 1: Validation Pseudocode 502 policy = policy_from_cache() 503 if not policy or is_expired(policy): 504 policy = policy_from_https_endpoint() // fetch and authenticate! 505 update_cache = true 506 if policy: 507 if invalid_mx_or_tls(policy): // check MX and TLS cert 508 if rua: 509 generate_report() 510 if p_reject(): 511 policy = policy_from_https_endpoint() // fetch and authenticate #2! 512 update_cache = true 513 if invalid_mx_or_tls(policy): 514 reject_message() 515 update_cache = false 516 if update_cache: 517 cache(policy) 519 9. Appendix 2: Domain Owner STS example record 521 9.1. Example 1 523 The owner of example.com wishes to begin using STS with a policy that 524 will solicit aggregate feedback from receivers without affecting how 525 the messages are processed, in order to: 527 o Verify the identity of MXs that handle mail for this domain 529 o Confirm that its legitimate messages are sent over TLS 531 o Verify the validity of the certificates 533 o Determine how many messages would be affected by a strict policy 535 DNS STS policy indicator TXT record: 537 _mta_sts IN TXT ( "v=STSv1; id=randomstr;" ) 539 STS policy served from HTTPS endpoint of the policy (recipient) 540 domain, and is authenticated using Web PKI mechanism. 542 { 543 "version": "STS1", 544 "mode": "report", 545 "policy_id": "randomstr", 546 "mx": ["*.mail.example.com"], 547 "max-age": "123456" 548 } 550 The policy is authenticated using Web PKI mechanism. 552 10. Appendix 3: DEEP Registration Elements 554 Name: mx-mismatch 555 Description: This indicates that the MX resolved for the recipient domain 556 did not match the MX constraint specified in the policy. 557 Intended Usage: COMMON 558 Reference: RFC XXXX (this document once published) 559 Submitter: Authors of this document 560 Change Controller: IESG 562 Name: certificate-name-mismatch 563 Description: This indicates that the subject CNAME/SAN in the certificate 564 presented by the receiving MX did not match the MX hostname 565 Intended Usage: COMMON 566 Reference: RFC XXXX (this document once published) 567 Submitter: Authors of this document 568 Change Controller: IESG 570 Name: invalid-certificate 571 Description: This indicates that the certificate presented by the receiving MX 572 did not validate according to the policy validation constraint. 573 (Either it was not signed by a trusted CA or did not match the 574 DANE TLSA record for the recipient MX.) 575 Intended Usage: COMMON 576 Reference: RFC XXXX (this document once published) 577 Submitter: Authors of this document 578 Change Controller: IESG 580 Name: certificate-name-constraints-not-permitted 581 Description: The certificate request contains a name that is not listed as 582 permitted in the name constraints extension of the cert issuer. 583 Intended Usage: COMMON 584 Reference: RFC XXXX (this document once published) 585 Submitter: Authors of this document 586 Change Controller: IESG 588 Name: certificate-name-constraints-excluded 589 Description: The certificate request contains a name that is listed as 590 excluded in the name constraints extension of the issuer. 591 Intended Usage: COMMON 592 Reference: RFC XXXX (this document once published) 593 Submitter: Authors of this document 594 Change Controller: IESG 596 Name: expired-certificate 597 Description: This indicates that the certificate has expired. 598 Intended Usage: COMMON 599 Reference: RFC XXXX (this document once published) 600 Submitter: Authors of this document 601 Change Controller: IESG 603 Name: starttls-not-supported 604 Description: This indicates that the recipient MX did not support STARTTLS. 605 Intended Usage: COMMON 606 Reference: RFC XXXX (this document once published) 607 Submitter: Authors of this document 608 Change Controller: IESG 610 Name: tlsa-invalid 611 Description: This indicates a validation error for Policy Domain specifying 612 "tlsa" validation. 613 Intended Usage: COMMON 614 Reference: RFC XXXX (this document once published) 615 Submitter: Authors of this document 616 Change Controller: IESG 618 Name: dnssec-invalid 619 Description: This indicates a failure to validate DNS records for a Policy 620 Domain specifying "tlsa" validation or "dnssec" authentication. 621 Intended Usage: COMMON 622 Reference: RFC XXXX (this document once published) 623 Submitter: Authors of this document 624 Change Controller: IESG 626 Name: sender-does-not-support-validation-method 627 Description: This indicates the sending system can never validate using the 628 requested validation mechanism. 629 Intended Usage: COMMON 630 Reference: RFC XXXX (this document once published) 631 Submitter: Authors of this document 632 Change Controller: IESG 633 11. Normative References 635 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 636 Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/ 637 RFC2119, March 1997, 638 . 640 [RFC3207] Hoffman, P., "SMTP Service Extension for Secure SMTP over 641 Transport Layer Security", RFC 3207, DOI 10.17487/RFC3207, 642 February 2002, . 644 [RFC4033] Arends, R., Austein, R., Larson, M., Massey, D., and S. 645 Rose, "DNS Security Introduction and Requirements", RFC 646 4033, DOI 10.17487/RFC4033, March 2005, 647 . 649 [RFC4627] Crockford, D., "The application/json Media Type for 650 JavaScript Object Notation (JSON)", RFC 4627, DOI 10 651 .17487/RFC4627, July 2006, 652 . 654 [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax 655 Specifications: ABNF", STD 68, RFC 5234, DOI 10.17487/ 656 RFC5234, January 2008, 657 . 659 [RFC6125] Saint-Andre, P. and J. Hodges, "Representation and 660 Verification of Domain-Based Application Service Identity 661 within Internet Public Key Infrastructure Using X.509 662 (PKIX) Certificates in the Context of Transport Layer 663 Security (TLS)", RFC 6125, DOI 10.17487/RFC6125, March 664 2011, . 666 [RFC6962] Laurie, B., Langley, A., and E. Kasper, "Certificate 667 Transparency", RFC 6962, DOI 10.17487/RFC6962, June 2013, 668 . 670 [RFC7469] Evans, C., Palmer, C., and R. Sleevi, "Public Key Pinning 671 Extension for HTTP", RFC 7469, DOI 10.17487/RFC7469, April 672 2015, . 674 [RFC7672] Dukhovni, V. and W. Hardaker, "SMTP Security via 675 Opportunistic DNS-Based Authentication of Named Entities 676 (DANE) Transport Layer Security (TLS)", RFC 7672, DOI 10 677 .17487/RFC7672, October 2015, 678 . 680 Authors' Addresses 682 Daniel Margolis 683 Google, Inc 685 Email: dmargolis (at) google.com 687 Mark Risher 688 Google, Inc 690 Email: risher (at) google (dot com) 692 Nicolas Lidzborski 693 Google, Inc 695 Email: nlidz (at) google (dot com) 697 Wei Chuang 698 Google, Inc 700 Email: weihaw (at) google (dot com) 702 Brandon Long 703 Google, Inc 705 Email: blong (at) google (dot com) 707 Binu Ramakrishnan 708 Yahoo!, Inc 710 Email: rbinu (at) yahoo-inc (dot com) 712 Alexander Brotman 713 Comcast, Inc 715 Email: alexander_brotman (at) cable.comcast (dot com) 717 Janet Jones 718 Microsoft, Inc 720 Email: janet.jones (at) microsoft (dot com) 721 Franck Martin 722 LinkedIn 724 Email: fmartin (at) linkedin (dot com) 726 Klaus Umbach 727 1&1 Mail & Media Development & Technology GmbH 729 Email: klaus.umbach (at) 1und1 (dot de) 731 Markus Laber 732 1&1 Mail & Media Development & Technology GmbH 734 Email: markus.laber (at) 1und1 (dot de)