idnits 2.17.1 draft-jenkins-cnsa-cert-crl-profile-04.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 (August 31, 2018) is 2063 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- 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 Internet Engineering Task Force M. Jenkins 3 Internet-Draft L. Zieglar 4 Intended status: Informational NSA 5 Expires: March 4, 2019 August 31, 2018 7 Commercial National Security Algorithm (CNSA) Suite Certificate and 8 Certificate Revocation List (CRL) Profile 9 draft-jenkins-cnsa-cert-crl-profile-04 11 Abstract 13 This document specifies a base profile for X.509 v3 Certificates and 14 X.509 v2 Certificate Revocation Lists (CRLs) for use with the United 15 States National Security Agency's Commercial National Security 16 Algorithm (CNSA) Suite. The reader is assumed to have familiarity 17 with RFC 5280, "Internet X.509 Public Key Infrastructure Certificate 18 and Certificate Revocation List (CRL) Profile". 20 Status of This Memo 22 This Internet-Draft is submitted in full conformance with the 23 provisions of BCP 78 and BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF). Note that other groups may also distribute 27 working documents as Internet-Drafts. The list of current Internet- 28 Drafts is at https://datatracker.ietf.org/drafts/current/. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 This Internet-Draft will expire on March 4, 2019. 37 Copyright Notice 39 Copyright (c) 2018 IETF Trust and the persons identified as the 40 document authors. All rights reserved. 42 This document is subject to BCP 78 and the IETF Trust's Legal 43 Provisions Relating to IETF Documents 44 (https://trustee.ietf.org/license-info) in effect on the date of 45 publication of this document. Please review these documents 46 carefully, as they describe your rights and restrictions with respect 47 to this document. Code Components extracted from this document must 48 include Simplified BSD License text as described in Section 4.e of 49 the Trust Legal Provisions and are provided without warranty as 50 described in the Simplified BSD License. 52 Table of Contents 54 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 55 2. The Commercial National Security Algorithm Suite . . . . . . 3 56 3. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3 57 4. General Requirements and Assumptions . . . . . . . . . . . . 4 58 4.1. Implementing the CNSA Suite . . . . . . . . . . . . . . . 4 59 4.2. CNSA Suite Object Identifiers . . . . . . . . . . . . . . 5 60 5. CNSA Suite Base Certificate Required Values . . . . . . . . . 6 61 5.1. signatureAlgorithm . . . . . . . . . . . . . . . . . . . 6 62 5.2. signatureValue . . . . . . . . . . . . . . . . . . . . . 6 63 5.3. Version . . . . . . . . . . . . . . . . . . . . . . . . . 7 64 5.4. SubjectPublicKeyInfo . . . . . . . . . . . . . . . . . . 7 65 6. Certificate Extensions for Particular Types of Certificates . 8 66 6.1. CNSA Suite Self-Signed CA Certificates . . . . . . . . . 8 67 6.2. CNSA Suite Non-Self-Signed CA Certificates . . . . . . . 8 68 6.3. CNSA Suite End Entity Signature and Key Establishment 69 Certificates . . . . . . . . . . . . . . . . . . . . . . 9 70 7. CNSA Suite CRL Requirements . . . . . . . . . . . . . . . . . 9 71 8. Security Considerations . . . . . . . . . . . . . . . . . . . 9 72 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 73 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 10 74 10.1. Normative References . . . . . . . . . . . . . . . . . . 10 75 10.2. Informative References . . . . . . . . . . . . . . . . . 11 76 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 78 1. Introduction 80 This document specifies a base profile for X.509 v3 Certificates and 81 X.509 v2 Certificate Revocation Lists (CRLs) for use by applications 82 that support the United States National Security Agency's Commercial 83 National Security Algorithm (CNSA) Suite [CNSA]. 85 This profile of [RFC5280] applies to all CNSA Suite solutions that 86 make use of X.509 v3 Certificates or X.509 v2 CRLs. The reader is 87 assumed to have familiarity with RFC 5280. All MUST-level 88 requirements of RFC 5280 apply throughout this profile and are 89 generally not repeated here. In cases where a MUST-level requirement 90 is repeated for emphasis, the text notes the requirement is "in 91 adherence with RFC 5280". This profile contains changes that elevate 92 some SHOULD-level options in RFC 5280 to MUST-level for this profile; 93 this profile also contains changes that elevate some MAY-level 94 options in RFC 5280 to SHOULD-level or MUST-level in this profile. 95 All options from RFC 5280 that are not listed in this profile remain 96 at the requirement level of RFC 5280. 98 The reader is also assumed to have familiarity with these documents: 100 o [RFC5480] for the syntax and semantics for the Subject Public Key 101 Information field in certificates that support Elliptic Curve 102 Cryptography; 104 o [RFC5758] for the algorithm identifiers for Elliptic Curve Digital 105 Signature Algorithm (ECDSA); 107 o [RFC3279] for the syntax and semantics for the Subject Public Key 108 Information field in certificates that support RSA Cryptography; 109 and 111 o [RFC4055] for the algorithm identifiers for RSA Cryptography with 112 the SHA-384 hash function. 114 2. The Commercial National Security Algorithm Suite 116 The National Security Agency (NSA) profiles commercial cryptographic 117 algorithms and protocols as part of its mission to support secure, 118 interoperable communications for US Government National Security 119 Systems. To this end, it publishes guidance both to assist with the 120 USG transition to new algorithms, and to provide vendors - and the 121 Internet community in general - with information concerning their 122 proper use and configuration. 124 Recently, cryptographic transition plans have become overshadowed by 125 the prospect of the development of a cryptographically-relevant 126 quantum computer. NSA has established the Commercial National 127 Security Algorithm (CNSA) Suite to provide vendors and IT users near- 128 term flexibility in meeting their IA interoperability requirements. 129 The purpose behind this flexibility is to avoid vendors and customers 130 making two major transitions in a relatively short timeframe, as we 131 anticipate a need to shift to quantum-resistant cryptography in the 132 near future. 134 NSA is publishing a set of RFCs, including this one, to provide 135 updated guidance concerning the use of certain commonly available 136 commercial algorithms in IETF protocols. These RFCs can be used in 137 conjunction with other RFCs and cryptographic guidance (e.g., NIST 138 Special Publications) to properly protect Internet traffic and data- 139 at-rest for US Government National Security Systems. 141 3. Conventions 143 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 144 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 145 "OPTIONAL" in this document are to be interpreted as described in BCP 146 14 [RFC2119] [RFC8174] when, and only when, they appear in all 147 capitals, as shown here. 149 4. General Requirements and Assumptions 151 The goal of this document is to define a base set of requirements for 152 certificates and CRLs to support interoperability among CNSA Suite 153 solutions. Specific communities, such as those associated with US 154 National Security Systems, may define community profiles that further 155 restrict certificate and CRL contents by mandating the presence of 156 extensions that are optional in this base profile, defining new 157 optional or critical extension types, or restricting the values and/ 158 or presence of fields within existing extensions. However, 159 communications between distinct communities MUST conform to the 160 requirements specified in this document when interoperability is 161 desired. Applications may add requirements for additional non- 162 critical extensions but they MUST NOT assume that a remote peer will 163 be able to process them. 165 4.1. Implementing the CNSA Suite 167 Every CNSA Suite certificate MUST use the X.509 v3 format, and 168 contain either: 170 o An ECDSA-capable signature verification key using curve P-384; or 172 o An ECDH-capable (Elliptic Curve Diffie-Hellman) key establishment 173 key using curve P-384; or 175 o An RSA-capable signature verification key using RSA-3072 or RSA- 176 4096; or 178 o An RSA-capable key transport key using RSA-3072 or RSA-4096. 180 The signature algorithm applied to all CNSA Suite certificates and 181 CRLs MUST be made with a signing key generated on the curve P-384, or 182 that is an RSA-3072 or RSA-4096 key, and with the SHA-384 hashing 183 algorithm. 185 RSA exponents e MUST satisfy 2^16. 445 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 446 Requirement Levels", BCP 14, RFC 2119, 447 DOI 10.17487/RFC2119, March 1997, 448 . 450 [RFC3279] Bassham, L., Polk, W., and R. Housley, "Algorithms and 451 Identifiers for the Internet X.509 Public Key 452 Infrastructure Certificate and Certificate Revocation List 453 (CRL) Profile", RFC 3279, DOI 10.17487/RFC3279, April 454 2002, . 456 [RFC4055] Schaad, J., Kaliski, B., and R. Housley, "Additional 457 Algorithms and Identifiers for RSA Cryptography for use in 458 the Internet X.509 Public Key Infrastructure Certificate 459 and Certificate Revocation List (CRL) Profile", RFC 4055, 460 DOI 10.17487/RFC4055, June 2005, 461 . 463 [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., 464 Housley, R., and W. Polk, "Internet X.509 Public Key 465 Infrastructure Certificate and Certificate Revocation List 466 (CRL) Profile", RFC 5280, DOI 10.17487/RFC5280, May 2008, 467 . 469 [RFC5480] Turner, S., Brown, D., Yiu, K., Housley, R., and T. Polk, 470 "Elliptic Curve Cryptography Subject Public Key 471 Information", RFC 5480, DOI 10.17487/RFC5480, March 2009, 472 . 474 [RFC5758] Dang, Q., Santesson, S., Moriarty, K., Brown, D., and T. 475 Polk, "Internet X.509 Public Key Infrastructure: 476 Additional Algorithms and Identifiers for DSA and ECDSA", 477 RFC 5758, DOI 10.17487/RFC5758, January 2010, 478 . 480 [RFC8017] Moriarty, K., Ed., Kaliski, B., Jonsson, J., and A. Rusch, 481 "PKCS #1: RSA Cryptography Specifications Version 2.2", 482 RFC 8017, DOI 10.17487/RFC8017, November 2016, 483 . 485 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 486 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 487 May 2017, . 489 [SEC1] Standards for Efficient Cryptography Group, "SEC1: 490 Elliptic Curve Cryptography", May 2009, 491 . 493 10.2. Informative References 495 [CNSA] Committee for National Security Systems, "Commercial 496 National Security Algorithm (CNSA) Suite", 2015, 497 . 500 [SEC2] Standards for Efficient Cryptography Group, "SEC 2: 501 Recommended Elliptic Curve Domain Parameters", September 502 2000. 504 [SP-800-57] 505 Barker, E., "Recommendation for Key Management-Part 1 506 Revision 4: General", Special Publication 800-57, January 507 2016, 508 . 511 [X9.62] American National Standards Institute, "Public Key 512 Cryptography for the Financial Services Industry; The 513 Elliptic Curve Digital Signature Algorithm (ECDSA)", 514 ANS X9.62, December 2005. 516 [X9.63] American National Standards Institute, "Public Key 517 Cryptography for the Financial Services Industry; Key 518 Agreement and Key Transport Using Elliptic Curve 519 Cryptography", ANS X9.63, December 2001. 521 Authors' Addresses 523 Michael Jenkins 524 National Security Agency 526 Email: mjjenki@tycho.ncsc.mil 527 Lydia Zieglar 528 National Security Agency 530 Email: llziegl@nsa.gov