idnits 2.17.1 draft-turner-application-pkcs10-media-type-02.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 : ---------------------------------------------------------------------------- -- The draft header indicates that this document updates RFC2986, but the abstract doesn't seem to directly say this. It does mention RFC2986 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year (Using the creation date from RFC2986, updated by this document, for RFC5378 checks: 2000-07-12) -- The document seems to contain a disclaimer for pre-RFC5378 work, and may have content which was first submitted before 10 November 2008. The disclaimer is necessary when there are original authors that you have been unable to contact, or if some do not wish to grant the BCP78 rights to the IETF Trust. If you are able to get all authors (current and original) to grant those rights, you can and should remove the disclaimer; otherwise, the disclaimer is needed and you can ignore this comment. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (April 9, 2010) is 5103 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 4288 (Obsoleted by RFC 6838) ** Obsolete normative reference: RFC 5751 (Obsoleted by RFC 8551) -- Obsolete informational reference (is this intentional?): RFC 2633 (Obsoleted by RFC 3851) Summary: 2 errors (**), 0 flaws (~~), 1 warning (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Network Working Group S. Turner 2 Internet Draft IECA 3 Intended Status: Informational April 9, 2010 4 Updates: 2986 (once approved) 5 Expires: August 9, 2010 7 The application/pkcs10 Media Type 8 draft-turner-application-pkcs10-media-type-02.txt 10 Abstract 12 This document specifies a media type used to carry PKCS#10 13 certification requests as defined in RFC 2986. It carries over the 14 original specification from RFC 2311, which recently has been moved 15 to Historic state, and properly links it to RFC 2986. 17 Status of this Memo 19 This Internet-Draft is submitted in full conformance with the 20 provisions of BCP 78 and BCP 79. This document may contain material 21 from IETF Documents or IETF Contributions published or made publicly 22 available before November 10, 2008. The person(s) controlling the 23 copyright in some of this material may not have granted the IETF 24 Trust the right to allow modifications of such material outside the 25 IETF Standards Process. Without obtaining an adequate license from 26 the person(s) controlling the copyright in such materials, this 27 document may not be modified outside the IETF Standards Process, and 28 derivative works of it may not be created outside the IETF Standards 29 Process, except to format it for publication as an RFC or to 30 translate it into languages other than English. 32 Internet-Drafts are working documents of the Internet Engineering 33 Task Force (IETF), its areas, and its working groups. Note that 34 other groups may also distribute working documents as Internet- 35 Drafts. 37 Internet-Drafts are draft documents valid for a maximum of six months 38 and may be updated, replaced, or obsoleted by other documents at any 39 time. It is inappropriate to use Internet-Drafts as reference 40 material or to cite them other than as "work in progress." 42 The list of current Internet-Drafts can be accessed at 43 http://www.ietf.org/ietf/1id-abstracts.txt. 45 The list of Internet-Draft Shadow Directories can be accessed at 46 http://www.ietf.org/shadow.html. 48 This Internet-Draft will expire on August 9, 2010. 50 Copyright Notice 52 Copyright (c) 2010 IETF Trust and the persons identified as the 53 document authors. All rights reserved. 55 This document is subject to BCP 78 and the IETF Trust's Legal 56 Provisions Relating to IETF Documents 57 (http://trustee.ietf.org/license-info) in effect on the date of 58 publication of this document. Please review these documents 59 carefully, as they describe your rights and restrictions with respect 60 to this document. Code Components extracted from this document must 61 include Simplified BSD License text as described in Section 4.e of 62 the Trust Legal Provisions and are provided without warranty as 63 described in the Simplified BSD License. 65 1. Introduction 67 [RFC2311] first defined the application/pkcs10 media type. When 68 [RFC2633] was published, the application/pkcs10 section was dropped, 69 but for some reason the text was not incorporated into the PKCS#10 70 document [RFC2986]. [RFC2311] was moved to historic status by 71 [RFC5751]. To ensure the IANA media type registration points to a 72 non-historic document, this document updates [RFC2986] with the 73 definition of the application/pkcs10 media type and an IANA 74 registration based on [RFC4288]. 76 The text for Section 2 is adapted from Section 3.7 of [RFC2311]. 78 1.1. Requirements Terminology 80 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 81 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 82 document are to be interpreted as described in [RFC2119]. 84 2. Creating a Certification Request 86 A typical application which allows a user to generate cryptographic 87 information has to submit that information to a certification 88 authority (CA), who transforms it into a certificate. PKCS #10 89 [RFC2986] describes a syntax for certification requests. The 90 application/pkcs10 media type MUST be used to transfer a PKCS #10 91 certification request. 93 The details of certification requests and the process of obtaining a 94 certificate are beyond the scope of this memo. Instead, only the 95 format of data used in application/pkcs10 is defined. 97 2.1. Format of the application/pkcs10 Body 99 PKCS #10 defines the ASN.1 type CertificationRequest for use in 100 submitting a certification request. For transfer to a CA, this 101 abstract syntax needs to be encoded and identified in a unique 102 manner. When the media type application/pkcs10 is used, the body 103 MUST be a CertificationRequest, encoded using the Basic Encoding 104 Rules (BER) [X.690]. 106 Although BER is specified, instead of the more restrictive DER 107 [X.690], a typical application will use DER since the 108 CertificationRequest's CertificationRequestInfo has to be DER-encoded 109 in order to be signed. 111 A robust application SHOULD output DER, but allow BER or DER on 112 input. 114 Data produced by BER or DER is 8-bit, but some transports are limited 115 to 7-bit data. In such cases, a suitable 7-bit transfer encoding MUST 116 be applied; in MIME-compatible transports, the base64 encoding 117 [RFC4648] SHOULD be used with application/pkcs10, although any 7-bit 118 transfer encoding may work. 120 2.2. Sending and Receiving an application/pkcs10 Body Part 122 For sending a certificate-signing request, the application/pkcs10 123 message format MUST be used to convey a PKCS #10 certificate-signing 124 request. Note that for sending certificates and CRLs without any 125 signed content, the application/pkcs7-mime message format MUST be 126 used to convey a degenerate PKCS #7 signedData "certs-only" message 127 [RFC5751]. 129 To send an application/pkcs10 body, the application generates the 130 cryptographic information for the user. The details of the 131 cryptographic information are beyond the scope of this memo. 133 Step 1. The cryptographic information is placed within a PKCS #10 134 CertificationRequest. 136 Step 2. The CertificationRequest is encoded according to BER or DER 137 (typically, DER). 139 Step 3. As a typical step, the DER-encoded CertificationRequest is 140 also base64 encoded so that it is 7-bit data suitable for transfer in 141 ESMTP. This then becomes the body of an application/pkcs10 body part. 143 The result might look like this: 145 Content-Type: application/pkcs10; name=smime.p10 146 Content-Transfer-Encoding: base64 147 Content-Disposition: attachment; filename=smime.p10 149 rfvbnj756tbBghyHhHUujhJhjH77n8HHGT9HG4VQpfyF467GhIGfHfYT6 150 7n8HHGghyHhHUujhJh4VQpfyF467GhIGfHfYGTrfvbnjT6jH7756tbB9H 151 f8HHGTrfvhJhjH776tbB9HG4VQbnj7567GhIGfHfYT6ghyHhHUujpfyF4 152 0GhIGfHfQbnj756YT64V 154 A typical application only needs to send a certification request. It 155 is a certification authority that has to receive and process the 156 request. The steps for recovering the CertificationRequest from the 157 message are straightforward but are not presented here. The 158 procedures for processing the certification request are beyond the 159 scope of this document. 161 3. IANA Considerations 163 IANA is asked to update the registration for the application/pkcs10 164 media type using the filled-in template from BCP 13 [RFC4288] given 165 below. 167 3.1. Registration of media type application/pkcs10 169 The media type for a PKCS#10 certification request is 170 application/pkcs10. 172 Type name: application 174 Subtype name: pkcs10 176 Required parameters: None 178 Optional parameters: None 180 Encoding considerations: 182 This media type carries binary content and needs proper encoding 183 for non-8bit clear transports; See Section 2. 185 Security considerations: 187 Clients use a certification request to request that a 188 Certification Authority certify a public key. The certification 189 request is digitally signed. 191 Interoperability considerations: See Section 2. 193 Published specification: RFC 2986 195 Applications which use this media type: 197 The content type is used with MIME-compliant transport to 198 transfer PKCS#10 certification requests [PKCS#10]. 200 Additional information: 202 Magic number(s): None 203 File extension(s): .p10 204 Macintosh File Type Code(s): 206 Person & email address to contact for further information: 207 Sean Turner 208 turners@ieca.com 210 Restrictions on usage: none 212 Author: 213 Sean Turner 215 Intended usage: COMMON 217 Change controller: 218 The IESG 220 4. Security Considerations 222 The security considerations of [RFC2986] and [RFC5751] apply; no new 223 security considerations are introduced by this document. 225 5. Acknowledgements 227 I wish to thank the authors of RFC 2311, Steve Dusse, Paul Hoffman, 228 Blake Ramsdell, Laurence Lundblade, and Lisa Repka. 230 6. References 232 6.1. Normative References 234 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 235 Requirement Levels", BCP 14, RFC 2119, March 1997. 237 [RFC2986] Nystrom, M, and B. Kaliski, "PKCS #10: Certification 238 Request Syntax Specification Version 1.7", RFC 2986, 239 November 2000. 241 [RFC4288] Freed, N., and J. Klensin, "Media Type Specifications 242 and Registration Procedures, BCP 13, RFC 4288, December 243 2005. 245 [RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data 246 Encodings", RFC 4648, October 2006. 248 [RFC5751] Turner, S. and B. Ramsdell, "Secure/Multipurpose 249 Internet Mail Extensions (S/MIME) Version 3.2 Message 250 Specification", RFC 5751, January 2010. 252 [X.690] ITU-T Recommendation X.690 (2002) | ISO/IEC 8825- 253 1:2002. Information Technology - ASN.1 encoding rules: 254 Specification of Basic Encoding Rules (BER), Canonical 255 Encoding Rules (CER) and Distinguished Encoding Rules 256 (DER). 258 6.2. Informative References 260 [RFC2311] Dusse, S., Hoffman, P., Ramsdell, B., Lundblade, L., 261 and L. Repka, "S/MIME Version 2 Message Specification", 262 RFC 2311, March 1998. 264 [RFC2633] Ramsdell, B., "S/MIME Version 3 Message Specification", 265 RFC 2633, June 1999. 267 Authors' Addresses 269 Sean Turner 270 IECA, Inc. 271 3057 Nutley Street, Suite 106 272 Fairfax, VA 22031 273 USA 275 EMail: turners@ieca.com