RFC 8823: Extensions to Automatic Certificate Management Environment for End-User S/MIME Certificates
- A. Melnikov
Abstract
This document specifies identifiers and challenges required to enable the Automated Certificate Management Environment (ACME) to issue certificates for use by email users that want to use S/MIME.¶
Status of This Memo
This document is not an Internet Standards Track specification; it is published for informational purposes.¶
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Not all documents approved by the IESG are candidates for any level of Internet Standard; see Section 2 of RFC 7841.¶
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
https://
Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://
1. Introduction
ACME [RFC8555] is a mechanism for automating certificate management on the Internet. It enables administrative entities to prove effective control over resources like domain names, and it automates the process of generating and issuing certificates.¶
This document describes an extension to ACME for use by S/MIME. Section 3 defines extensions for issuing end-user S/MIME [RFC8550] certificates.¶
This document aims to support both:¶
2. Conventions Used in This Document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
3. Use of ACME for Issuing End-User S/MIME Certificates
ACME [RFC8555] defines a "dns" identifier type that is used to verify that a particular entity has control over a domain or specific service associated with the domain. In order to be able to issue end-user S/MIME certificates, ACME needs a new identifier type that proves ownership of an email address.¶
This document defines a new identifier type, "email", which corresponds to an email address.
The address can be all ASCII [RFC5321] or internationaliz
Any identifier of type "email" in a newOrder request MUST NOT have a wildcard ("*") character in its value.¶
A new challenge type, "email
The process of issuing an S/MIME certificate works as follows. Note that the ACME client can be a standalone
application (if the MUA is not ACME
3.1. ACME "Challenge" Email
A "challenge" email message MUST have the following structure:¶
An email client compliant with this specification that detects that a particular "challenge" email fails the validation described above MUST ignore the challenge and thus will not generate a "response" email. To aid in debugging, such failed validations SHOULD be logged.¶
Here is an example of an ACME "challenge" email (note that, for simplicity, DKIM-related header fields are not included).¶
3.2. ACME "Response" Email
A valid "response" email message MUST have the following structure:¶
Here is an example of an ACME "response" email (note that, for simplicity, DKIM-related header fields are not included).¶
3.3. Generating Encryption-Only or Signing-Only S/MIME Certificates
ACME extensions specified in this document can be used to request signing-only or encryption-only S/MIME certificates.¶
In order to request signing-only S/MIME certificates, the CSR MUST include the key usage
extension with digital
In order to request encryption-only S/MIME certificates, the CSR MUST include the key usage extension with keyEncipherment or keyAgreement bits set and no other bits set.¶
Presence of both of the above sets of key usage bits in the CSR, as well as absence of the key usage extension in the CSR, signals to the ACME server to issue an S/MIME certificate suitable for both signing and encryption.¶
4. Internationalization Considerations
[RFC8616] updated
Use of non-ASCII characters in left-hand sides of internationaliz
5. IANA Considerations
5.1. ACME Identifier Type
IANA has registered a new identifier type in the "ACME Identifier
Types" registry defined in Section 9.7.7 of [RFC8555] with Label "email" and a Reference to this document,
[RFC5321], and [RFC6531]. The new identifier type corresponds to an (all
ASCII) email address [RFC5321] or
internationaliz
5.2. ACME Challenge Type
IANA has registered a new entry in the "ACME Validation Methods" registry defined in Section 9.7.8 of [RFC8555]. This entry is as follows:¶
6. Security Considerations
Please see the Security Considerations section of [RFC8555] for general security
considerations related to the use of ACME. This challenge
The security of the "email
An email system in its turn depends on DNS. A third party that can manipulate DNS MX records for a domain might be able to redirect an email and can get (at least temporary) read and reply access to it. Similar considerations apply to DKIM TXT records in DNS. Use of DNSSEC by email system administrators is recommended to avoid making it easy to spoof DNS records affecting an email system. However, use of DNSSEC is not ubiquitous at the time of publishing of this document, so it is not required here. Also, many existing systems that rely on verification of ownership of an email address -- for example, 2-factor authentication systems used by banks or traditional certificate issuance systems -- send email messages to email addresses, expecting the owner to click on the link supplied in them (or to reply to a message), without requiring use of DNSSEC. So the risk of not requiring DNSSEC is presumed acceptable in this document.¶
An ACME email challenge message can be forged by an attacker.
As per requirements on an ACME
An attacker that can read the "response" email has only one chance to guess the token-part2. Even if the attacker can guess it right, it still needs to know the ACME account key to be able to make use of the intercepted SHA-256 hash of the key authorization.¶
Also see the Security Considerations section of [RFC6376] for details on how DKIM depends on the DNS and the respective vulnerabilities this dependence has.¶
7. References
7.1. Normative References
- [RFC2046]
-
Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types", RFC 2046, DOI 10
.17487 , , <https:///RFC2046 www >..rfc -editor .org /info /rfc2046 - [RFC2119]
-
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10
.17487 , , <https:///RFC2119 www >..rfc -editor .org /info /rfc2119 - [RFC2231]
-
Freed, N. and K. Moore, "MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations", RFC 2231, DOI 10
.17487 , , <https:///RFC2231 www >..rfc -editor .org /info /rfc2231 - [RFC2818]
-
Rescorla, E., "HTTP Over TLS", RFC 2818, DOI 10
.17487 , , <https:///RFC2818 www >..rfc -editor .org /info /rfc2818 - [RFC2985]
-
Nystrom, M. and B. Kaliski, "PKCS #9: Selected Object Classes and Attribute Types Version 2.0", RFC 2985, DOI 10
.17487 , , <https:///RFC2985 www >..rfc -editor .org /info /rfc2985 - [RFC2986]
-
Nystrom, M. and B. Kaliski, "PKCS #10: Certification Request Syntax Specification Version 1.7", RFC 2986, DOI 10
.17487 , , <https:///RFC2986 www >..rfc -editor .org /info /rfc2986 - [RFC3834]
-
Moore, K., "Recommendations for Automatic Responses to Electronic Mail", RFC 3834, DOI 10
.17487 , , <https:///RFC3834 www >..rfc -editor .org /info /rfc3834 - [RFC4648]
-
Josefsson, S., "The Base16, Base32, and Base64 Data Encodings", RFC 4648, DOI 10
.17487 , , <https:///RFC4648 www >..rfc -editor .org /info /rfc4648 - [RFC5321]
-
Klensin, J., "Simple Mail Transfer Protocol", RFC 5321, DOI 10
.17487 , , <https:///RFC5321 www >..rfc -editor .org /info /rfc5321 - [RFC5322]
-
Resnick, P., Ed., "Internet Message Format", RFC 5322, DOI 10
.17487 , , <https:///RFC5322 www >..rfc -editor .org /info /rfc5322 - [RFC5890]
-
Klensin, J., "Internationaliz
ed Domain Names for Applications (IDNA): Definitions and Document Framework" , RFC 5890, DOI 10.17487 , , <https:///RFC5890 www >..rfc -editor .org /info /rfc5890 - [RFC6234]
-
Eastlake 3rd, D. and T. Hansen, "US Secure Hash Algorithms (SHA and SHA-based HMAC and HKDF)", RFC 6234, DOI 10
.17487 , , <https:///RFC6234 www >..rfc -editor .org /info /rfc6234 - [RFC6376]
-
Crocker, D., Ed., Hansen, T., Ed., and M. Kucherawy, Ed., "DomainKeys Identified Mail (DKIM) Signatures", STD 76, RFC 6376, DOI 10
.17487 , , <https:///RFC6376 www >..rfc -editor .org /info /rfc6376 - [RFC6531]
-
Yao, J. and W. Mao, "SMTP Extension for Internationaliz
ed Email" , RFC 6531, DOI 10.17487 , , <https:///RFC6531 www >..rfc -editor .org /info /rfc6531 - [RFC8174]
-
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10
.17487 , , <https:///RFC8174 www >..rfc -editor .org /info /rfc8174 - [RFC8398]
-
Melnikov, A., Ed. and W. Chuang, Ed., "Internationaliz
ed Email Addresses in X.509 Certificates" , RFC 8398, DOI 10.17487 , , <https:///RFC8398 www >..rfc -editor .org /info /rfc8398 - [RFC8550]
-
Schaad, J., Ramsdell, B., and S. Turner, "Secure
/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Certificate Handling" , RFC 8550, DOI 10.17487 , , <https:///RFC8550 www >..rfc -editor .org /info /rfc8550 - [RFC8551]
-
Schaad, J., Ramsdell, B., and S. Turner, "Secure
/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message Specification" , RFC 8551, DOI 10.17487 , , <https:///RFC8551 www >..rfc -editor .org /info /rfc8551 - [RFC8555]
-
Barnes, R., Hoffman-Andrews, J., McCarney, D., and J. Kasten, "Automatic Certificate Management Environment (ACME)", RFC 8555, DOI 10
.17487 , , <https:///RFC8555 www >..rfc -editor .org /info /rfc8555 - [RFC8616]
-
Levine, J., "Email Authentication for Internationaliz
ed Mail" , RFC 8616, DOI 10.17487 , , <https:///RFC8616 www >..rfc -editor .org /info /rfc8616
7.2. Informative References
- [RFC4021]
-
Klyne, G. and J. Palme, "Registration of Mail and MIME Header Fields", RFC 4021, DOI 10
.17487 , , <https:///RFC4021 www >..rfc -editor .org /info /rfc4021 - [RFC8058]
-
Levine, J. and T. Herkula, "Signaling One-Click Functionality for List Email Headers", RFC 8058, DOI 10
.17487 , , <https:///RFC8058 www >..rfc -editor .org /info /rfc8058
Acknowledgements
Thank you to Andreas Schulze, Gerd v. Egidy, James A. Baker, Ben Schwartz, Peter Yee, Hilarie Orman, Michael Jenkins, Barry Leiba, Fraser Tweedale, Daniel Kahn Gillmor, and Benjamin Kaduk for their suggestions, comments, and corrections of this document.¶