idnits 2.17.1 draft-ietf-sidr-bgpsec-algs-11.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 1 instance of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. -- The draft header indicates that this document updates RFC6485bis, but the abstract doesn't seem to mention this, which it should. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (August 6, 2015) is 3187 days in the past. Is this intentional? Checking references for intended status: Best Current Practice ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Downref: Normative reference to an Informational RFC: RFC 2986 ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) ** Downref: Normative reference to an Informational RFC: RFC 6090 -- Possible downref: Non-RFC (?) normative reference: ref. 'SHS' Summary: 3 errors (**), 0 flaws (~~), 2 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Secure Inter-Domain Routing Working Group S. Turner 3 Internet-Draft IECA, Inc. 4 Updates: 6485bis (if approved) August 6, 2015 5 Intended status: BCP 6 Expires: February 7, 2016 8 BGPsec Algorithms, Key Formats, & Signature Formats 9 draft-ietf-sidr-bgpsec-algs-11 11 Abstract 13 This document specifies the algorithms, algorithms' parameters, 14 asymmetric key formats, asymmetric key size and signature format used 15 in BGPsec (Border Gateway Protocol Security). This document updates 16 the Profile for Algorithms and Key Sizes for use in the Resource 17 Public Key Infrastructure (draft-ietf-sidr-rfc6485bis). 19 Status of this Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at http://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 Copyright Notice 36 Copyright (c) 2015 IETF Trust and the persons identified as the 37 document authors. All rights reserved. 39 This document is subject to BCP 78 and the IETF Trust's Legal 40 Provisions Relating to IETF Documents 41 (http://trustee.ietf.org/license-info) in effect on the date of 42 publication of this document. Please review these documents 43 carefully, as they describe your rights and restrictions with respect 44 to this document. Code Components extracted from this document must 45 include Simplified BSD License text as described in Section 4.e of 46 the Trust Legal Provisions and are provided without warranty as 47 described in the Simplified BSD License. 49 1. Introduction 51 This document specifies: 52 o the digital signature algorithm and parameters; 53 o the hash algorithm and parameters; 54 o the public and private key formats; and, 55 o the signature format 56 used by Resource Public Key Infrastructure (RPKI) Certification 57 Authorities (CA), and BGPsec (Border Gateway Protocol Security) 58 speakers (i.e., routers). CAs use these algorithms when issuing 59 BGPsec Router Certificates [ID.sidr-bgpsec-pki-profiles] and CRLs 60 [RFC6487]. BGPsec routers use these when requesting BGPsec 61 certificates [ID.sidr-bgpsec-pki-profiles], generating BGPsec Update 62 messages [ID.sidr-bgpsec-protocol], and verifying BGPsec Update 63 messages [ID.sidr-bgpsec-protocol]. 65 This document is referenced by the BGPsec specification [ID.sidr- 66 bgpsec-protocol] and the profile for BGPsec Router Certificates and 67 Certification Requests [ID.sidr-bgpsec-pki-profiles]. Familiarity 68 with these documents is assumed. Implementers are reminded, however, 69 that, as noted in Section 2 of [ID.sidr-bgpsec-pki-profiles], the 70 algorithms used to sign CA Certificates, BGPsec Router Certificates, 71 and CRLs are found in [ID.sidr-rfc6485bis]. 73 This document updates [ID.sidr-rfc6485bis] to add support for a) a 74 different algorithm for BGPsec certificate requests, which are only 75 issued by BGPsec speakers; b) a different Subject Public Key Info 76 format for BGPsec certificates, which is needed for the specified 77 BGPsec signature algorithm; and, c) a different signature format for 78 BGPsec signatures, which is needed for the specified BGPsec signature 79 algorithm. The BGPsec certificate are differentiated from other RPKI 80 certificates by the use of the BGPsec Extended Key Usage defined in 81 [ID.sidr-bgpsec-pki-profiles]. 83 1.1. Terminology 85 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 86 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 87 "OPTIONAL" in this document are to be interpreted as described in 88 [RFC2119]. 90 2. Algorithms 92 Four cryptographic algorithms are used to support BGPsec: 94 o The signature algorithm used when issuing BGPsec certificates and 95 CRLs, which would revoke BGPsec certificates, MUST be as 96 specified in [ID.sidr-rfc6485bis]. 98 o The signature algorithm used in certification requests and BGPsec 99 Update messages MUST be Elliptic Curve Digital Signature 100 Algorithm (ECDSA) [RFC6090]. 102 o The hashing algorithm used when issuing certificates and CRLs 103 MUST be as specified in [ID.sidr-rfc6485bis]. 105 o The hashing algorithm use when generating certification requests 106 and BGPsec Update messages MUST be SHA-256 [SHS]. Hash 107 algorithms are not identified by themselves in certificates, or 108 BGPsec Update messages instead they are combined with the digital 109 signature algorithm (see below). 111 NOTE: The exception to the above hashing algorithm is the use of 112 SHA-1 [SHS] when CAs generate authority and subject key 113 identifiers [RFC6487]. 115 To support BGPsec, the algorithms are identified as follows: 117 o In certificates and CRLs, an Object Identifier (OID) is used. 118 The value and locations are as specified in section 2 of 119 [ID.sidr-rfc6485bis]. 121 o In certification request, an OID is used. The ecdsa-with-SHA256 122 OID [RFC5480] MUST appear in the PKCS #10 signatureAlgorithm 123 field [RFC2986] or in Certificate Request Message Format (CRMF) 124 POPOSigningKey algoirthm field [RFC4211]. 126 o In BGPsec Update messages, the ECDSA with SHA-256 Algorithm Suite 127 Identifier from Section 7 is included in the Signature-Block 128 List's Algorithm Suite Identifier field. 130 3. Asymmetric Key Format 132 The RSA key pairs used to compute signatures on CA certificates, 133 BGPsec Router Certificates, and CRLs are as specified in section 3 of 134 [ID.sidr-rfc6485bis]. The remainder of this section addresses key 135 formats found in the BGPsec router certificate requests and in BGPsec 136 Router Certificates. 138 The ECDSA key pairs used to compute signatures for certificate 139 requests and BGPsec Update messages MUST come from the P-256 curve 140 [RFC5480]. The public key pair MUST use the uncompressed form. 142 3.1. Public Key Format 144 The Subject's public key is included in subjectPublicKeyInfo 145 [RFC5280]. It has two sub-fields: algorithm and subjectPublicKey. 146 The values for the structures and their sub-structures follow: 148 o algorithm (which is an AlgorithmIdentifier type): The id- 149 ecPublicKey OID MUST be used in the algorithm field, as specified 150 in 2.1.1 of [RFC5480]. The value for the associated parameters 151 MUST be secp256r1, as specified in 2.1.1.1 of [RFC5480]. 153 o subjectPublicKey: ECPublicKey MUST be used to encode the 154 certificate's subjectPublicKey field, as specified in Section 2.2 155 of [RFC5480]. 157 3.2. Private Key Format 159 Local Policy determines private key format. 161 4. Signature Format 163 The structure for the certificate's and CRL's signature field MUST be 164 as specified in Section 4 of [ID.sidr-rfc6485bis]. The structure for 165 the certification request's and BGPsec Update message's signature 166 field MUST be as specified in Section 2.2.3 of [RFC3279]. 168 5. Additional Requirements 170 It is anticipated that BGPsec will require the adoption of updated 171 key sizes and a different set of signature and hash algorithms over 172 time, in order to maintain an acceptable level of cryptographic 173 security to protect the integrity of BGPsec. This profile should be 174 updated to specify such future requirements, when appropriate. 176 CAs and RPs SHOULD be capable of supporting a transition to allow for 177 the phased introduction of additional encryption algorithms and key 178 specifications, and also accommodate the orderly deprecation of 179 previously specified algorithms and keys. Accordingly, CAs and RPs 180 SHOULD be capable of supporting multiple RPKI algorithm and key 181 profiles simultaneously within the scope of such anticipated 182 transitions. The recommended procedures to implement such a 183 transition of key sizes and algorithms is not specified in this 184 document. 186 6. Security Considerations 188 The Security Considerations of [RFC3279], [RFC5480], [RFC6090], 189 [ID.sidr-rfc6485bis], and [ID.sidr-bgpsec-pki-profiles] apply to 190 certificates. The security considerations of [RFC3279], [RFC6090], 191 [ID.sidr-rfc6485bis], [ID.sidr-bgpsec-pki-profiles] apply to 192 certification requests. The security considerations of [RFC3279], 193 [ID.sidr-bgpsec-protocol], and [RFC6090] apply to BGPsec Update 194 messages. No new security considerations are introduced as a result 195 of this specification. 197 7. IANA Considerations 199 The Internet Assigned Numbers Authority (IANA) is requested to define 200 the "BGPsec Algorithm Suite Registry" described below. 202 An algorithm suite consists of a digest algorithm and a signature 203 algorithm. This specification creates an IANA registry of one-octet 204 BGPsec algorithm suite identifiers. Additionally, this document 205 registers a single algorithm suite which uses the digest algorithm 206 SHA-256 and the signature algorithm ECDSA on the P-256 curve 207 [RFC5480]. 209 BGPsec Algorithm Suites Registry 211 Digest Signature Algorithm Suite Specification 212 Algorithm Algorithm Identifier Pointer 213 +----------------------------------------------------------------+ 214 | SHA-256 | ECDSA P-256 | TBD | RFC 5480 | 215 +----------------------------------------------------------------+ 217 Future assignments are to be made using either the Standards Action 218 process defined in [RFC5226], or the Early IANA Allocation process 219 defined in [RFC7120]. Assignments consist of a digest algorithm 220 name, signature algorithm name, and the algorithm suite identifier 221 value. 223 8. Acknowledgements 225 The author wishes to thank Geoff Huston for producing [ID.sidr- 226 rfc6485bis], which this document is heavily based on. I'd also like 227 to thank Roque Gagliano for his review and comments. 229 9. References 231 9.1. Normative References 233 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 234 Requirement Levels", BCP 14, RFC 2119, March 1997. 236 [RFC2986] Nystrom, M. and B. Kaliski, "PKCS #10: Certification 237 Request Syntax Specification Version 1.7", RFC 2986, 238 November 2000. 240 [RFC3279] Bassham, L., Polk, W., and R. Housley, "Algorithms and 241 Identifiers for the Internet X.509 Public Key 242 Infrastructure Certificate and Certificate Revocation List 243 (CRL) Profile", RFC 3279, April 2002. 245 [RFC4211] Schaad, J., "Internet X.509 Public Key Infrastructure 246 Certificate Request Message Format (CRMF)", RFC 4211, 247 September 2005. 249 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 250 IANA Considerations Section in RFCs", BCP 26, RFC 5226, May 251 2008. 253 [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., 254 Housley, R., and W. Polk, "Internet X.509 Public Key 255 Infrastructure Certificate and Certificate Revocation List 256 (CRL) Profile", RFC 5280, May 2008. 258 [RFC5480] Turner, S., Brown, D., Yiu, K., Housley, R., and T. Polk, 259 "Elliptic Curve Cryptography Subject Public Key 260 Information", RFC 5480, March 2009. 262 [RFC6090] McGrew, D., Igoe, K., and M. Salter, "Fundamental Elliptic 263 Curve Cryptography Algorithms", RFC 6090, February 2011. 265 [RFC6487] Huston, G., Michaelson, G., and R. Loomans, "A Profile for 266 X.509 PKIX Resource Certificates", RFC 6487, February 2012. 268 [RFC7120] Cotton, M., "Early IANA Allocation of Standards Track Code 269 Points", BCP 100, RFC 7120, January 2014. 271 [SHS] National Institute of Standards and Technology (NIST), "FIPS 272 Publication 180-3: Secure Hash Standard", FIPS Publication 273 180-3, October 2008. 275 [ID.sidr-rfc6485bis] Huston, G., and G. Michaelson, "The Profile for 276 Algorithms and Key Sizes for use in the Resource Public Key 277 Infrastructure", draft-ietf-sidr-rfc6485bis, work-in- 278 progress. 280 [ID.sidr-bgpsec-protocol] Lepinski, M., "BGPsec Protocol 281 Specification", draft-ietf-sidr-bgpsec-protocol, work-in- 282 progress. 284 [ID.sidr-bgpsec-pki-profiles] Reynolds, M. and S. Turner, "A Profile 285 for BGPSEC Router Certificates, Certificate Revocation 286 Lists, and Certification Requests", draft-ietf-sidr-bgpsec- 287 pki-profiles, work-in-progress. 289 9.2. Informative References 291 None. 293 Authors' Addresses 295 Sean Turner 296 IECA, Inc. 297 3057 Nutley Street, Suite 106 298 Fairfax, VA 22031 299 USA 301 EMail: turners@ieca.com