idnits 2.17.1 draft-ietf-lamps-documentsigning-eku-01.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 : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (2 March 2022) is 786 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) No issues found here. Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 LAMPS Working Group T. Ito 3 Internet-Draft SECOM CO., LTD. 4 Intended status: Standards Track T. Okubo 5 Expires: 3 September 2022 DigiCert, Inc. 6 S. Turner 7 sn3rd 8 2 March 2022 10 General Purpose Extended Key Usage (EKU) for Document Signing X.509 11 Certificates 12 draft-ietf-lamps-documentsigning-eku-01 14 Abstract 16 RFC 5280 specifies several extended key usages for X.509 17 certificates. This document defines a general purpose document 18 signing extended key usage for X.509 public key certificates which 19 restricts the usage of the certificates for document signing. 21 About This Document 23 This note is to be removed before publishing as an RFC. 25 Status information for this document may be found at 26 https://datatracker.ietf.org/doc/draft-ietf-lamps-documentsigning- 27 eku/. 29 Discussion of this document takes place on the Limited Additional 30 Mechanisms for PKIX and SMIME (LAMPS) Working Group mailing list 31 (mailto:spasm@ietf.org), which is archived at 32 https://mailarchive.ietf.org/arch/browse/spasm/. 34 Source for this draft and an issue tracker can be found at 35 https://github.com/lamps-wg/documentsigning-eku. 37 Status of This Memo 39 This Internet-Draft is submitted in full conformance with the 40 provisions of BCP 78 and BCP 79. 42 Internet-Drafts are working documents of the Internet Engineering 43 Task Force (IETF). Note that other groups may also distribute 44 working documents as Internet-Drafts. The list of current Internet- 45 Drafts is at https://datatracker.ietf.org/drafts/current/. 47 Internet-Drafts are draft documents valid for a maximum of six months 48 and may be updated, replaced, or obsoleted by other documents at any 49 time. It is inappropriate to use Internet-Drafts as reference 50 material or to cite them other than as "work in progress." 52 This Internet-Draft will expire on 3 September 2022. 54 Copyright Notice 56 Copyright (c) 2022 IETF Trust and the persons identified as the 57 document authors. All rights reserved. 59 This document is subject to BCP 78 and the IETF Trust's Legal 60 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 61 license-info) in effect on the date of publication of this document. 62 Please review these documents carefully, as they describe your rights 63 and restrictions with respect to this document. Code Components 64 extracted from this document must include Revised BSD License text as 65 described in Section 4.e of the Trust Legal Provisions and are 66 provided without warranty as described in the Revised BSD License. 68 Table of Contents 70 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 71 2. Conventions and Definitions . . . . . . . . . . . . . . . . . 3 72 3. Extended Key usage for DocumentSigning . . . . . . . . . . . 3 73 3.1. Extended Key Usage Values for Document Signing . . . . . 4 74 4. Using the Document Signing EKU in a Certificate . . . . . . . 4 75 5. Implications for a Certification Authority . . . . . . . . . 5 76 6. Security Considerations . . . . . . . . . . . . . . . . . . . 6 77 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 78 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 79 8.1. Normative References . . . . . . . . . . . . . . . . . . 6 80 8.2. Informative References . . . . . . . . . . . . . . . . . 7 81 Appendix A. ASN.1 Module . . . . . . . . . . . . . . . . . . . . 7 82 Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 8 83 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 85 1. Introduction 87 [RFC5280] specifies several extended key usages for X.509 88 certificates. In addition, several extended key usage had been added 89 [RFC7299] as public Object Identifier (OID) under the IANA 90 repository. While usage of any extended key usage is bad practice 91 for publicly trusted certificates, there are no public and general 92 extended key usage explicitly assigned for Document Signing 93 certificates. The current practice is to use id-kp-emailProtection, 94 id-kp-codeSigning or vendor defined OID for general document signing 95 purposes. 97 In circumstances where code signing and S/MIME certificates are also 98 widely used for document signing, the technical or policy changes 99 that are made to code signing and S/MIME certificates may cause 100 unexpected behaviors or have an adverse impact such as decreased 101 cryptographic agility on the document signing ecosystem and vice 102 versa. 104 There is no issue if the vendor defined OIDs are used in a PKI (or a 105 trust program) governed by the vendor. However, if the OID is used 106 outside of the vendor governance, the usage can easily become out of 107 control (e.g. - When the end user encounters vendor defined OIDs, 108 they might want to ask that vendor about use of the certificate, 109 however, the vendor may not know about the particular use. - If the 110 issuance of the cert is not under the control of the OID owner, there 111 is no way for the OID owner to know what the impact will be if any 112 change is made to the OID in question, and it would restrict vendor's 113 choice of OID management. etc.). 115 Therefore, it is not favorable to use a vendor defined EKU for 116 signing a document that is not governed by the vendor. 118 This document defines a general Document Signing extended key purpose 119 identifier. 121 2. Conventions and Definitions 123 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 124 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 125 "OPTIONAL" in this document are to be interpreted as described in 126 BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all 127 capitals, as shown here. 129 3. Extended Key usage for DocumentSigning 131 This specification defines the KeyPurposeId id-kp-documentSigning. 132 Inclusion of this KeyPurposeId in a certificate indicates that the 133 use of any Subject names in the certificate is restricted to use by a 134 document signing. 136 Term of "Document Sign" in this document is digitally sign contents 137 that are consumed by humans. To be more precise, contents are 138 intended to be shown to human with printable or displayable form by 139 means of services or software, rather than processed by machines. 141 3.1. Extended Key Usage Values for Document Signing 143 [RFC5280] specifies the EKU X.509 certificate extension for use in 144 the Internet. The extension indicates one or more purposes for which 145 the certified public key is valid. The EKU extension can be used in 146 conjunction with the key usage extension, which indicates how the 147 public key in the certificate is used, in a more basic cryptographic 148 way. 150 The EKU extension syntax is repeated here for convenience: 152 ExtKeyUsageSyntax ::= SEQUENCE SIZE (1..MAX) OF KeyPurposeId 154 KeyPurposeId ::= OBJECT IDENTIFIER 156 This specification defines the KeyPurposeId id-kp-documentSigning. 157 Inclusion of this KeyPurposeId in a certificate indicates that the 158 use of any Subject names in the certificate is restricted to use by a 159 document signing service or a software (along with any usages allowed 160 by other EKU values). 162 id-kp OBJECT IDENTIFIER ::= 163 { iso(1) identified-organization(3) dod(6) internet(1) 164 security(5) mechanisms(5) pkix(7) 3 } 166 id-kp-documentSigning OBJECT IDENTIFIER ::= { id-kp XX } 168 4. Using the Document Signing EKU in a Certificate 170 [RFC8358] specifies the conventions for digital signatures on 171 Internet-Drafts. This is one of the intended use cases for the 172 general document signing EKU described in this document. [RFC8358] 173 uses CMS to digitally sign a wide array of files such as ASCII, PDF, 174 EPUB, HTML etc. Currently, there are no specification regarding EKU 175 for certificates signing those files except those which are defined 176 by the software vendor. 178 The signed contents of Internet-Drafts are primarily intended to be 179 consumed by people. To be more precise, contents are intended to be 180 shown to a person in a printable or displayable form by means of 181 services or software, rather than processed by machines. To validate 182 the digital signature on the contents that is intended to be consumed 183 by people, implementations MAY perform the steps below as a 184 certificate validation. 186 The implementation MAY examine the Extended Key Usage value(s): 188 1. If there are no restrictions set for the relying party and the 189 relying party software, the certificate is acceptable. 191 2. If there are restrictions set for the replying party and relying 192 party software, proceed as following. 194 Each Restriction on the EKUs can be "Excluded EKU" or "Permitted 195 EKU" and handled. 197 The procedure is intended to permit or prohibit presence of a 198 certain EKU or complete absence of EKUs. It is outside the scope 199 of this document, but the relying party can permit or exclude 200 combinations of EKU. A consideration on prohibiting combination 201 of EKUs is described in the security consideration section of 202 this document. 204 Excluded EKUs procedure: "Excluded EKU" is an EKU which the 205 relying party or the relying party software prohibits. 206 Examples of "Excluded EKU" are, presence of 207 anyExtendedKeyUsage or complete absence of EKU extension on a 208 certificate. If an EKU of the certificate meets the 209 conditions set by the "Excluded EKU" restriction, the relying 210 party or the relying party software rejects the certificate. 212 Permitted EKU procedure: "Permitted EKU" is an EKU which the 213 relying party or the relying party software accepts. Examples 214 of "Permitted EKU" are, presence of this general document 215 signing EKU and/or protocol specific document signing-type 216 EKUs. If an EKU of the certificate meets the condition set by 217 a "Permitted EKU" restriction, the certificate is acceptable. 218 Otherwise, relying party or the relying party software rejects 219 the certificate. 221 When a single software has capability to process various data 222 formats, the software may choose to make the excluded and permitted 223 decisions separately in accordance with the format it is handling 224 (e.g. text, pdf, etc). 226 5. Implications for a Certification Authority 228 The procedures and practices employed by a certification authority 229 MUST ensure that the correct values for the EKU extension are 230 inserted in each certificate that is issued. Unless certificates are 231 governed by a vendor specific PKI (or trust program), certificates 232 that indicate usage for document signing MAY include the id-kp- 233 documentSigning EKU extension. This does not encompass the mandatory 234 usage of the id-kp-documentSigning EKU in conjunction with the vendor 235 specific EKU. However, this does not restrict the CA from including 236 multiple EKUs related to document signing. 238 6. Security Considerations 240 The usage of id-kp-documentSigning EKU intends to prevent id-kp- 241 emailProtection from being used for purposes other than email and id- 242 kp-codeSigning used to sign objects other than binary codes. This 243 EKU does not introduce new security risks but instead reduces 244 existing security risks by providing means to separate other EKUs 245 used for communication protocols namely, TLS or S/MIME etc. in order 246 to minimize the risk of cross protocol attacks. 248 To reduce the risk of specific cross protocol attacks, the relying 249 party or relying party software may additionaly prohibit use of 250 specific combination of EKUs. 252 While a specific protocol or signing scheme may choose to come up 253 with their own EKU, some may not have significant motive or resource 254 to set up and manage thier own EKU. This general document signing 255 EKU may be used as a stop gap for those that intend to set up their 256 own EKU or those who do not intend to set up an EKU but still would 257 like to distinguish from other usage. 259 Introduction of this id-kp-documentSigning EKU value does not 260 introduce any new security or privacy concerns. 262 7. IANA Considerations 264 This document requests that IANA make two assignments. One for the 265 id-kp-documentSigning object identifier (OID), as defined in 266 Section 3.1, for the EKU from the "SMI Security for PKIX Extended Key 267 Purpose" (1.3.6.1.5.5.7.3) registry. Another for the id-mod-docsign- 268 eku, as defined in Appendix A, for the ASN.1 module [X.680] from the 269 in the "SMI Security for PKIX Module Identifier" (1.3.6.1.5.5.7.0) 270 registry. No further action is necessary by IANA. 272 8. References 274 8.1. Normative References 276 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 277 Requirement Levels", BCP 14, RFC 2119, 278 DOI 10.17487/RFC2119, March 1997, 279 . 281 [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., 282 Housley, R., and W. Polk, "Internet X.509 Public Key 283 Infrastructure Certificate and Certificate Revocation List 284 (CRL) Profile", RFC 5280, DOI 10.17487/RFC5280, May 2008, 285 . 287 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 288 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 289 May 2017, . 291 [X.680] ITU-T, "Information technology - Abstract Syntax Notation 292 One (ASN.1): Specification of basic notation", ISO/ 293 IEC 8824-1:2015, November 2015. 295 8.2. Informative References 297 [RFC7299] Housley, R., "Object Identifier Registry for the PKIX 298 Working Group", RFC 7299, DOI 10.17487/RFC7299, July 2014, 299 . 301 [RFC8358] Housley, R., "Update to Digital Signatures on Internet- 302 Draft Documents", RFC 8358, DOI 10.17487/RFC8358, March 303 2018, . 305 Appendix A. ASN.1 Module 307 The following ASN.1 module provides the complete definition of the 308 Document Signing EKU. 310 DocSignEKU { iso(1) identified-organization(3) dod(6) internet(1) 311 security(5) mechanisms(5) pkix(7) id-mod(0) 312 id-mod-docsign-eku(TBD1) } 314 DEFINITIONS EXPLICIT TAGS ::= 316 BEGIN 318 -- EXPORTS ALL -- 320 -- IMPORTS NOTHING -- 322 -- OID Arc -- 324 id-kp OBJECT IDENTIFIER ::= { 325 iso(1) identified-organization(3) dod(6) internet(1) 326 security(5) mechanisms(5) pkix(7) kp(3) } 328 -- Document Signing Extended Key Usage -- 330 id-kp-documentSigning OBJECT IDENTIFIER ::= { id-kp TBD2 } 332 END 334 Acknowledgments 336 We would like to thank Russ Housley for verifying the ASN.1 module. 338 Authors' Addresses 340 Tadahiko Ito 341 SECOM CO., LTD. 342 Email: tadahiko.ito.public@gmail.com 344 Tomofumi Okubo 345 DigiCert, Inc. 346 Email: tomofumi.okubo+ietf@gmail.com 348 Sean Turner 349 sn3rd 350 Email: sean@sn3rd.com