draft-ietf-sidr-rpki-algs-05.txt   rfc6485.txt 
SIDR G. Huston Internet Engineering Task Force (IETF) G. Huston
Internet-Draft APNIC Request for Comments: 6485 APNIC
Intended status: Standards Track April 13, 2011 Category: Standards Track February 2012
Expires: October 15, 2011 ISSN: 2070-1721
The Profile for Algorithms and Key Sizes for use in the Resource Public The Profile for Algorithms and Key Sizes for
Key Infrastructure Use in the Resource Public Key Infrastructure (RPKI)
draft-ietf-sidr-rpki-algs-05.txt
Abstract Abstract
This document specifies the algorithms, algorithms' parameters, This document specifies the algorithms, algorithms' parameters,
asymmetric key formats, asymmetric key size and signature format for asymmetric key formats, asymmetric key size, and signature format for
the Resource Public Key Infrastructure subscribers that generate the Resource Public Key Infrastructure (RPKI) subscribers that
digital signatures on certificates, Certificate Revocation Lists, and generate digital signatures on certificates, Certificate Revocation
signed objects as well as for the Relying Parties (RPs) that verify Lists, and signed objects as well as for the relying parties (RPs)
these digital signatures. that verify these digital signatures.
Status of this Memo
This Internet-Draft is submitted in full conformance with the Status of This Memo
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering This is an Internet Standards Track document.
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 5741.
This Internet-Draft will expire on October 15, 2011. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc6485.
Copyright Notice Copyright Notice
Copyright (c) 2011 IETF Trust and the persons identified as the Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
1. Introduction 1. Introduction
This document specifies: This document specifies:
* the digital signature algorithm and parameters; * the digital signature algorithm and parameters;
* the hash algorithm and parameters; * the hash algorithm and parameters;
* the public and private key formats; and, * the public and private key formats; and,
* the signature format * the signature format
used by Resource Public Key Infrastructure (RPKI) subscribers when used by Resource Public Key Infrastructure (RPKI) subscribers when
they apply digital signatures to certificates, Certificate Revocation they apply digital signatures to certificates, Certificate Revocation
Lists (CRLs), and signed objects (e.g., Route Origin Authorizations Lists (CRLs), and signed objects (e.g., Route Origin Authorizations
(ROAs) and manifests). Relying Parties (RPs) also use this document (ROAs) and manifests). Relying parties (RPs) also use the algorithms
when verify RPKI subscribers' digital signatures [ID.ietf-sidr-arch]. defined in this document to verify RPKI subscribers' digital
signatures [RFC6480].
This document is referenced by other RPKI profiles and This document is referenced by other RPKI profiles and
specifications, including the RPKI Certificate Policy (CP) specifications, including the RPKI Certificate Policy (CP) [RFC6484],
[ID.ietf-sidr-cp], the RPKI Certificate Profile the RPKI Certificate Profile [RFC6487], the SIDR Architecture
[ID.ietf-sidr-res-certs], the SIDR architecture [ID.ietf-sidr-arch], [RFC6480], and the Signed Object Template for the RPKI [RFC6488].
and the signed object template for the RPKI Familiarity with these documents is assumed.
[ID.ietf-sidr-signed-object]. Familiarity with these documents is
assumed.
1.1. Terminology 1.1. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC2119. document are to be interpreted as described in [RFC2119].
2. Algorithms 2. Algorithms
Two cryptographic algorithms are used in the RPKI: Two cryptographic algorithms are used in the RPKI:
* The signature algorithm used in certificates, CRLs, and signed * The signature algorithm used in certificates, CRLs, and signed
objects is RSA Public-Key Cryptography Standards (PKCS) #1 objects is RSA Public-Key Cryptography Standards (PKCS) #1
Version 1.5 (sometimes referred to as "RSASSA-PKCS1-v1_5") from Version 1.5 (sometimes referred to as "RSASSA-PKCS1-v1_5") from
Section 5 of [RFC4055]. Section 5 of [RFC4055].
* The hashing algorithm used in certificates, CRLs, and signed * The hashing algorithm used in certificates, CRLs, and signed
objects is SHA-256 [SHS]. Hash algorithms are not identified objects is SHA-256 [SHS]. The hashing algorithm is not
by themselves in certificates and CRLs instead they are identified by itself when used in certificates and CRLs, as
combined with the digital signature algorithm (see below). they are combined with the digital signature algorithm (see
below).
When used in the Cryptographic Message Syntax (CMS) SignedData, When used in the Cryptographic Message Syntax (CMS) SignedData,
the hash algorithm (in this case, the hash algorithm is the hash algorithm (in this case, the hash algorithm is
sometimes called a message digest algorithm) is identified by sometimes called a message digest algorithm) is identified by
itself. For CMS SignedData, the object identifier and itself. For CMS SignedData, the object identifier and
parameters for SHA-256 in [RFC5754] MUST be used when parameters for SHA-256 (as defined in [RFC5754]) MUST be used
populating the digestAlgorithms and digestAlgorithm fields. when populating the digestAlgorithms and digestAlgorithm
fields.
NOTE: The exception to the above hashing algorithm is the use NOTE: The exception to the above hashing algorithm is the use
of SHA-1 [SHS] when CAs generate authority and subject key of SHA-1 [SHS] when Certification Authorities (CAs) generate
identifiers [ID.ietf-sidr-res-certs]. authority and subject key identifiers [RFC6487].
When used to generate and verify digital signatures the hash and When used to generate and verify digital signatures the hash and
digital signature algorithms are referred together, i.e., "RSA PKCS#1 digital signature algorithms are referred together, i.e., "RSA PKCS#1
v1.5 with SHA-256" or more simply "RSA with SHA-256". The Object v1.5 with SHA-256" or more simply "RSA with SHA-256". The Object
Identifier (OID) sha256withRSAEncryption from [RFC4055] MUST be used. Identifier (OID) sha256withRSAEncryption from [RFC4055] MUST be used.
Locations for this OID are as follows: Locations for this OID are as follows:
In the certificate, the OID appears in the signature and In the certificate, the OID appears in the signature and
signatureAlgorithm fields [RFC4055]; signatureAlgorithm fields [RFC4055];
skipping to change at page 3, line 22 skipping to change at page 3, line 20
When used to generate and verify digital signatures the hash and When used to generate and verify digital signatures the hash and
digital signature algorithms are referred together, i.e., "RSA PKCS#1 digital signature algorithms are referred together, i.e., "RSA PKCS#1
v1.5 with SHA-256" or more simply "RSA with SHA-256". The Object v1.5 with SHA-256" or more simply "RSA with SHA-256". The Object
Identifier (OID) sha256withRSAEncryption from [RFC4055] MUST be used. Identifier (OID) sha256withRSAEncryption from [RFC4055] MUST be used.
Locations for this OID are as follows: Locations for this OID are as follows:
In the certificate, the OID appears in the signature and In the certificate, the OID appears in the signature and
signatureAlgorithm fields [RFC4055]; signatureAlgorithm fields [RFC4055];
In the CRL, the OID appears in the signatureAlgorithm field In the CRL, the OID appears in the signatureAlgorithm field
[RFC4055]; [RFC4055];
In CMS SignedData, the OID appears in each SignerInfo In CMS SignedData, the OID appears in each SignerInfo
signatureAlgoithm field [RFC3370] using the OID from above; and, signatureAlgoithm field [RFC3370] using the OID from above; and,
In a certification request, the OID appears in the PKCS #10 In a certification request, the OID appears in the PKCS #10
signatureAlgorithm field [RFC2986], or in the Certificate Request signatureAlgorithm field [RFC2986] or in the Certificate Request
Message Format (CRMF) POPOSigningKey signature field [RFC4211]. Message Format (CRMF) POPOSigningKey signature field [RFC4211].
3. Asymmetric Key Pair Formats 3. Asymmetric Key Pair Formats
The RSA key pairs used to compute the signatures MUST have a 2048-bit The RSA key pairs used to compute the signatures MUST have a 2048-bit
modulus and a public exponent (e) of 65,537. modulus and a public exponent (e) of 65,537.
3.1. Public Key Format 3.1. Public Key Format
The Subject's public key is included in subjectPublicKeyInfo The subject's public key is included in subjectPublicKeyInfo
[RFC5280]. It has two sub-fields: algorithm and subjectPublicKey. [RFC5280]. It has two sub-fields: algorithm and subjectPublicKey.
The values for the structures and their sub-structures follow: The values for the structures and their sub-structures follow:
algorithm (which is an AlgorithmIdentifier type): algorithm (which is an AlgorithmIdentifier type):
The object identifier for RSA PKCS#1 v1.5 with SHA-256 MUST be The object identifier for RSA PKCS#1 v1.5 with SHA-256 MUST be
used in the algorithm field, as specified in Section 5 of used in the algorithm field, as specified in Section 5 of
[RFC4055]. The value for the associated parameters from that [RFC4055]. The value for the associated parameters from that
clause MUST also be used for the parameters field. clause MUST also be used for the parameters field.
subjectPublicKey: subjectPublicKey:
RSAPublicKey MUST be used to encode the certificate's RSAPublicKey MUST be used to encode the certificate's
subjectPublicKey field, as specified in [RFC4055]. subjectPublicKey field, as specified in [RFC4055].
3.2. Private Key Format 3.2. Private Key Format
Local Policy determines private key format. Local policy determines the private key format.
4. Signature Format 4. Signature Format
The structure for the certificate's signature field is as specified The structure for the certificate's signature field is as specified
in Section 1.2 of [RFC4055]. The structure for the Cryptographic in Section 1.2 of [RFC4055]. The structure for the CMS SignedData's
Message Syntax (CMS) SignedData's signature field is as specified in signature field is as specified in [RFC3370].
[RFC3370].
5. Additional Requirements 5. Additional Requirements
It is anticipated that the RPKI will require the adoption of updated It is anticipated that the RPKI will require the adoption of updated
key sizes and a different set of signature and hash algorithms over key sizes and a different set of signature and hash algorithms over
time, in order to maintain an acceptable level of cryptographic time, in order to maintain an acceptable level of cryptographic
security to protect the integrity of signed products in the RPKI. security to protect the integrity of signed products in the RPKI.
This profile should be relaced to specify such future requirements, This profile should be replaced to specify such future requirements,
as and when appropriate. as and when appropriate.
CAs and RPs SHOULD be capable of supporting a transition to allow for CAs and RPs SHOULD be capable of supporting a transition to allow for
the phased introduction of additional encryption algorithms and key the phased introduction of additional encryption algorithms and key
specifications, and also accommodate the orderly deprecation of specifications, and also accommodate the orderly deprecation of
previously specified algorithms and keys. Accordingly, CAs and RPs previously specified algorithms and keys. Accordingly, CAs and RPs
SHOULD be capable of supporting multiple RPKI algorithm and key SHOULD be capable of supporting multiple RPKI algorithm and key
profiles simultaneously within the scope of such anticipated profiles simultaneously within the scope of such anticipated
transitions. The recommended procedures to implement such a transitions. The recommended procedures to implement such a
transition of key sizes and algorithms is not specified in this transition of key sizes and algorithms is not specified in this
document. document.
6. Security Considerations 6. Security Considerations
The Security Considerations of [RFC4055], [RFC5280], and The Security Considerations of [RFC4055], [RFC5280], and [RFC6487]
[ID.ietf-sidr-res-certs] a apply to certificate and CRLs. The apply to certificates and CRLs. The Security Considerations of
Security Considerations of [RFC5754] apply to signed objects. No new [RFC5754] apply to signed objects. No new security threats are
security are introduced as a result of this specification. introduced as a result of this specification.
7. IANA Considerations
[There are no IANA considerations in this document.]
8. Acknowledgments 7. Acknowledgments
The author acknowledges the re-use in this draft of material The author acknowledges the reuse in this document of material
originally contained in working drafts the RPKI Certificate Policy originally contained in working drafts of the RPKI Certificate Policy
and Resource Certificate profile documents. The co-authors of these [RFC6484] and the resource certificate profile [RFC6487] documents.
two documents, namely Stephen Kent, Derrick Kong, Karen Seo, Ronald The co-authors of these two documents, namely Stephen Kent, Derrick
Watro, George Michaelson and Robert Loomans, are acknowledged, with Kong, Karen Seo, Ronald Watro, George Michaelson, and Robert Loomans,
thanks. The constraint on key size noted in this profile is the are acknowledged, with thanks. The constraint on key size noted in
outcome of comments from Stephen Kent and review comments from David this profile is the outcome of comments from Stephen Kent and review
Cooper. Sean Turner has provided additional review input to this comments from David Cooper. Sean Turner has provided additional
document. review input to this document.
9. Normative References 9. Normative References
[ID.ietf-sidr-arch] [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Lepinski, M. and S. Kent, "An Infrastructure to Support Requirement Levels", BCP 14, RFC 2119, March 1997.
Secure Internet Routing", draft-ietf-sidr-arch (work in
progress), September 2010.
[ID.ietf-sidr-cp]
Kent, S., Kong, D., Seo, K., and R. Watro, "Certificate
Policy (CP) for the Resource PKI (RPKI)",
draft-ietf-sidr-cp (work in progress), September 2010.
[ID.ietf-sidr-res-certs]
Husotn, G., Michaelson, G., and R. Loomans, "A Profile for
X.509 PKIX Resource Certificates",
draft-ietf-sidr-res-certs (work in progress), May 2008.
[ID.ietf-sidr-signed-object]
Lepinski, M., Chi, A., and S. Kent, "Signed Object
Template for the Resource Public Key Infrastructure",
draft-ietf-sidr-signed-object-01.txt (work in progress),
October 2010.
[RFC2986] Nystrom, M. and B. Kaliski, "PKCS #10: Certification [RFC2986] Nystrom, M. and B. Kaliski, "PKCS #10: Certification
Request Syntax Specification Version 1.7", RFC 2986, Request Syntax Specification Version 1.7", RFC 2986,
November 2000. November 2000.
[RFC3370] Housley, R., "Cryptographic Message Syntax (CMS) [RFC3370] Housley, R., "Cryptographic Message Syntax (CMS)
Algorithms", RFC 3370, August 2002. Algorithms", RFC 3370, August 2002.
[RFC4055] Schaad, J., Kaliski, B., and R. Housley, "Additional [RFC4055] Schaad, J., Kaliski, B., and R. Housley, "Additional
Algorithms and Identifiers for RSA Cryptography for use in Algorithms and Identifiers for RSA Cryptography for use in
skipping to change at page 6, line 17 skipping to change at page 5, line 35
September 2005. September 2005.
[RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S.,
Housley, R., and W. Polk, "Internet X.509 Public Key Housley, R., and W. Polk, "Internet X.509 Public Key
Infrastructure Certificate and Certificate Revocation List Infrastructure Certificate and Certificate Revocation List
(CRL) Profile", RFC 5280, May 2008. (CRL) Profile", RFC 5280, May 2008.
[RFC5754] Turner, S., "Using SHA2 Algorithms with Cryptographic [RFC5754] Turner, S., "Using SHA2 Algorithms with Cryptographic
Message Syntax", RFC 5754, January 2010. Message Syntax", RFC 5754, January 2010.
[RFC6480] Lepinski, M. and S. Kent, "An Infrastructure to Support
Secure Internet Routing", RFC 6480, February 2012.
[RFC6484] Kent, S., Kong, D., Seo, K., and R. Watro, "Certificate
Policy (CP) for the Resource Public Key Infrastructure
(RPKI)", BCP 173, RFC 6484, February 2012.
[RFC6487] Husotn, G., Michaelson, G., and R. Loomans, "A Profile for
X.509 PKIX Resource Certificates", RFC 6487, February
2012.
[RFC6488] Lepinski, M., Chi, A., and S. Kent, "Signed Object
Template for the Resource Public Key Infrastructure
(RPKI)", RFC 6488, February 2012.
[SHS] National Institute of Standards and Technology (NIST), [SHS] National Institute of Standards and Technology (NIST),
"FIPS Publication 180-3: Secure Hash Standard", FIPS "FIPS Publication 180-3: Secure Hash Standard (SHS)", FIPS
Publication 180-3, October 2008. Publication 180-3, October 2008.
Author's Address Author's Address
Geoff Huston Geoff Huston
APNIC APNIC
Email: gih@apnic.net EMail: gih@apnic.net
 End of changes. 30 change blocks. 
92 lines changed or deleted 86 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/