| < draft-ietf-sidr-res-certs-02.txt | draft-ietf-sidr-res-certs-03.txt > | |||
|---|---|---|---|---|
| SIDR G. Huston | SIDR G. Huston | |||
| Internet-Draft G. Michaelson | Internet-Draft G. Michaelson | |||
| Intended status: Standards Track R. Loomans | Intended status: Standards Track R. Loomans | |||
| Expires: January 29, 2007 APNIC | Expires: August 15, 2007 APNIC | |||
| July 28, 2006 | February 11, 2007 | |||
| A Profile for X.509 PKIX Resource Certificates | A Profile for X.509 PKIX Resource Certificates | |||
| draft-ietf-sidr-res-certs-02.txt | draft-ietf-sidr-res-certs-03.txt | |||
| Status of this Memo | Status of this Memo | |||
| By submitting this Internet-Draft, each author represents that any | By submitting this Internet-Draft, each author represents that any | |||
| applicable patent or other IPR claims of which he or she is aware | applicable patent or other IPR claims of which he or she is aware | |||
| have been or will be disclosed, and any of which he or she becomes | have been or will be disclosed, and any of which he or she becomes | |||
| aware will be disclosed, in accordance with Section 6 of BCP 79. | aware will be disclosed, in accordance with Section 6 of BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
| skipping to change at page 1, line 35 ¶ | skipping to change at page 1, line 35 ¶ | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
| http://www.ietf.org/ietf/1id-abstracts.txt. | http://www.ietf.org/ietf/1id-abstracts.txt. | |||
| The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
| http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
| This Internet-Draft will expire on January 29, 2007. | This Internet-Draft will expire on August 15, 2007. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (C) The Internet Society (2006). | Copyright (C) The IETF Trust (2007). | |||
| Abstract | Abstract | |||
| This document defines a standard profile for X.509 certificates for | This document defines a standard profile for X.509 certificates for | |||
| the purposes of supporting validation of assertions of "right-to-use" | the purposes of supporting validation of assertions of "right-to-use" | |||
| of an Internet Number Resource (IP Addresses and Autonomous System | of an Internet Number Resource (IP Addresses and Autonomous System | |||
| Numbers). This profile is used to convey the issuer's authorization | Numbers). This profile is used to convey the issuer's authorization | |||
| of the subject to be regarded as the current holder of a "right-of- | of the subject to be regarded as the current holder of a "right-of- | |||
| use" of the IP addresses and AS numbers that are described in the | use" of the IP addresses and AS numbers that are described in the | |||
| associated Resource Certificate. | associated Resource Certificate. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 5 | 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 2. Describing Resources in Certificates . . . . . . . . . . . . . 5 | 2. Describing Resources in Certificates . . . . . . . . . . . . . 5 | |||
| 3. Resource Certificate Fields . . . . . . . . . . . . . . . . . 6 | 3. Resource Certificate Fields . . . . . . . . . . . . . . . . . 6 | |||
| 3.1. Version . . . . . . . . . . . . . . . . . . . . . . . . . 6 | 3.1. Version . . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 3.2. Serial number . . . . . . . . . . . . . . . . . . . . . . 6 | 3.2. Serial number . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 3.3. Signature Algorithm . . . . . . . . . . . . . . . . . . . 6 | 3.3. Signature Algorithm . . . . . . . . . . . . . . . . . . . 6 | |||
| 3.4. Issuer . . . . . . . . . . . . . . . . . . . . . . . . . . 6 | 3.4. Issuer . . . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 3.5. Subject . . . . . . . . . . . . . . . . . . . . . . . . . 7 | 3.5. Subject . . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 3.6. Valid From . . . . . . . . . . . . . . . . . . . . . . . . 7 | 3.6. Valid From . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 3.7. Valid To . . . . . . . . . . . . . . . . . . . . . . . . . 7 | 3.7. Valid To . . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 3.8. Subject Public Key Info . . . . . . . . . . . . . . . . . 8 | 3.8. Subject Public Key Info . . . . . . . . . . . . . . . . . 8 | |||
| 3.9. Resource Certificate Version 3 Extension Fields . . . . . 8 | 3.9. Resource Certificate Version 3 Extension Fields . . . . . 8 | |||
| 3.9.1. Basic Constraints . . . . . . . . . . . . . . . . . . 8 | 3.9.1. Basic Constraints . . . . . . . . . . . . . . . . . . 9 | |||
| 3.9.2. Subject Key Identifier . . . . . . . . . . . . . . . . 9 | 3.9.2. Subject Key Identifier . . . . . . . . . . . . . . . . 9 | |||
| 3.9.3. Authority Key Identifier . . . . . . . . . . . . . . . 9 | 3.9.3. Authority Key Identifier . . . . . . . . . . . . . . . 9 | |||
| 3.9.4. Key Usage . . . . . . . . . . . . . . . . . . . . . . 9 | 3.9.4. Key Usage . . . . . . . . . . . . . . . . . . . . . . 10 | |||
| 3.9.5. CRL Distribution Points . . . . . . . . . . . . . . . 10 | 3.9.5. CRL Distribution Points . . . . . . . . . . . . . . . 10 | |||
| 3.9.6. Authority Information Access . . . . . . . . . . . . . 10 | 3.9.6. Authority Information Access . . . . . . . . . . . . . 10 | |||
| 3.9.7. Subject Information Access . . . . . . . . . . . . . . 11 | 3.9.7. Subject Information Access . . . . . . . . . . . . . . 11 | |||
| 3.9.8. Certificate Policies . . . . . . . . . . . . . . . . . 11 | 3.9.8. Certificate Policies . . . . . . . . . . . . . . . . . 12 | |||
| 3.9.9. Subject Alternate Name . . . . . . . . . . . . . . . . 11 | 3.9.9. Subject Alternate Name . . . . . . . . . . . . . . . . 12 | |||
| 3.9.10. IP Resources . . . . . . . . . . . . . . . . . . . . . 11 | 3.9.10. IP Resources . . . . . . . . . . . . . . . . . . . . . 12 | |||
| 3.9.11. AS Resources . . . . . . . . . . . . . . . . . . . . . 12 | 3.9.11. AS Resources . . . . . . . . . . . . . . . . . . . . . 12 | |||
| 4. Resource Certificate Revocation List Profile . . . . . . . . . 12 | 4. Resource Certificate Revocation List Profile . . . . . . . . . 13 | |||
| 4.1. Version . . . . . . . . . . . . . . . . . . . . . . . . . 12 | 4.1. Version . . . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 4.2. Issuer Name . . . . . . . . . . . . . . . . . . . . . . . 12 | 4.2. Issuer Name . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 4.3. This Update . . . . . . . . . . . . . . . . . . . . . . . 13 | 4.3. This Update . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 4.4. Next Update . . . . . . . . . . . . . . . . . . . . . . . 13 | 4.4. Next Update . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| 4.5. Signature . . . . . . . . . . . . . . . . . . . . . . . . 13 | 4.5. Signature . . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| 4.6. Revoked Certificate List . . . . . . . . . . . . . . . . . 13 | 4.6. Revoked Certificate List . . . . . . . . . . . . . . . . . 14 | |||
| 4.6.1. Serial Number . . . . . . . . . . . . . . . . . . . . 13 | 4.6.1. Serial Number . . . . . . . . . . . . . . . . . . . . 14 | |||
| 4.6.2. Revocation Date . . . . . . . . . . . . . . . . . . . 13 | 4.6.2. Revocation Date . . . . . . . . . . . . . . . . . . . 14 | |||
| 4.7. CRL Extensions . . . . . . . . . . . . . . . . . . . . . . 13 | 4.7. CRL Extensions . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| 4.7.1. Authority Key Identifier . . . . . . . . . . . . . . . 14 | 4.7.1. Authority Key Identifier . . . . . . . . . . . . . . . 14 | |||
| 4.7.2. CRL Number . . . . . . . . . . . . . . . . . . . . . . 14 | 4.7.2. CRL Number . . . . . . . . . . . . . . . . . . . . . . 15 | |||
| 5. Resource Certificate Request Profile . . . . . . . . . . . . . 14 | 5. Resource Certificate Request Profile . . . . . . . . . . . . . 15 | |||
| 5.1. PCKS#10 Profile . . . . . . . . . . . . . . . . . . . . . 14 | 5.1. PCKS#10 Profile . . . . . . . . . . . . . . . . . . . . . 15 | |||
| 5.1.1. PKCS#10 Resource Certificate Request Template | 5.1.1. PKCS#10 Resource Certificate Request Template | |||
| Fields . . . . . . . . . . . . . . . . . . . . . . . . 14 | Fields . . . . . . . . . . . . . . . . . . . . . . . . 15 | |||
| 5.2. CRMF Profile . . . . . . . . . . . . . . . . . . . . . . . 15 | 5.2. CRMF Profile . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 5.2.1. CRMF Resource Certificate Request Template Fields . . 16 | 5.2.1. CRMF Resource Certificate Request Template Fields . . 16 | |||
| 5.2.2. Resource Certificate Request Control Fields . . . . . 16 | 5.2.2. Resource Certificate Request Control Fields . . . . . 17 | |||
| 5.3. Certificate Extension Attributes in Certificate | 5.3. Certificate Extension Attributes in Certificate | |||
| Requests . . . . . . . . . . . . . . . . . . . . . . . . . 17 | Requests . . . . . . . . . . . . . . . . . . . . . . . . . 18 | |||
| 6. Resource Certificate Validation . . . . . . . . . . . . . . . 19 | 6. Resource Certificate Validation . . . . . . . . . . . . . . . 20 | |||
| 6.1. Trust Anchors for Resource Certificates . . . . . . . . . 20 | 6.1. Trust Anchors for Resource Certificates . . . . . . . . . 21 | |||
| 6.2. Resource Extension Validation . . . . . . . . . . . . . . 20 | 6.2. Resource Extension Validation . . . . . . . . . . . . . . 21 | |||
| 6.3. Resource Certificate Path Validation . . . . . . . . . . . 21 | 6.3. Resource Certificate Path Validation . . . . . . . . . . . 22 | |||
| 7. Security Considerations . . . . . . . . . . . . . . . . . . . 23 | 7. Example Use Cases . . . . . . . . . . . . . . . . . . . . . . 23 | |||
| 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 23 | |||
| 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 23 | 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 | |||
| 10. Normative References . . . . . . . . . . . . . . . . . . . . . 23 | 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 24 | |||
| Appendix A. Example Resource Certificate . . . . . . . . . . . . 24 | 11. Normative References . . . . . . . . . . . . . . . . . . . . . 24 | |||
| Appendix B. Example Certificate Revocation List . . . . . . . . . 26 | Appendix A. Example Resource Certificate . . . . . . . . . . . . 25 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 27 | Appendix B. Example Certificate Revocation List . . . . . . . . . 27 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 28 | ||||
| Intellectual Property and Copyright Statements . . . . . . . . . . 29 | Intellectual Property and Copyright Statements . . . . . . . . . . 29 | |||
| 1. Introduction | 1. Introduction | |||
| This document defines a standard profile for X.509 certificates for | This document defines a standard profile for X.509 certificates for | |||
| use in the context of certification of IP Addresses and AS Numbers. | use in the context of certification of IP Addresses and AS Numbers. | |||
| These Resource Certificates are X.509 certificates that conform to | These Resource Certificates are X.509 certificates that conform to | |||
| the PKIX profile [RFC3280] and also conform to the constraints | the PKIX profile [RFC3280] and also conform to the constraints | |||
| specified in this profile. Resource Certificates attest that the | specified in this profile. Resource Certificates attest that the | |||
| issuer has granted the subject a "right-to-use" a listed set of IP | issuer has granted the subject a "right-to-use" for a listed set of | |||
| addresses and Autonomous System numbers. | IP addresses and Autonomous System numbers. | |||
| A Resource Certificate describes an action by the certificate issuer | A Resource Certificate describes an action by a certificate issuer | |||
| that binds a list of IP Address blocks and AS Numbers to the subject | that binds a list of IP Address blocks and AS Numbers to the subject | |||
| of the certificate. The binding is identified by the association of | of the certificate. The binding is identified by the association of | |||
| the subject's private key with the subject's public key contained in | the subject's private key with the subject's public key contained in | |||
| the Resource Certificate, signed by the private key of the | the Resource Certificate, signed by the private key of the | |||
| certificate's issuer. | certificate's issuer. | |||
| In the context of the public Internet, and use of public number | In the context of the public Internet, and the use of public number | |||
| resources in this context, it is intended that Resource Certificates | resources within this context, it is intended that Resource | |||
| are used in a manner that is aligned to the public number resource | Certificates are used in a manner that is explicitly aligned to the | |||
| distribution function. Specifically, when a number resource is | public number resource distribution function. Specifically, when a | |||
| allocated or assigned by a number registry to an entity, this | number resource is allocated or assigned by a number registry to an | |||
| allocation can be described by a Resource Certificate that is issued | entity, this allocation is described by an associated Resource | |||
| by the registry with a subject corresponding to the entity that is | Certificate. This Certificate is issued by the number registry, and | |||
| the recipient of this number assignment or allocation. In the | the subject's public key that is being certified by the Issuer | |||
| context of the public number distribution function, this corresponds | corresponds to the public key part of a public / private key pair | |||
| to a hierarchical PKI structure, where Resource Certificates are only | that was generated by the same entity who is the recipient of the | |||
| issued in one 'direction' and there is a single unique path from a | number assignment or allocation. A critical extension to the | |||
| certificate enumerates the IP Resources that were allocated or | ||||
| assigned by the issuer to the entity. In the context of the public | ||||
| number distribution function, this corresponds to a hierarchical PKI | ||||
| structure, where Resource Certificates are only issued in one | ||||
| 'direction' and there is a single unique path of certificated from a | ||||
| "Root" Certificate Authority to a valid certificate. | "Root" Certificate Authority to a valid certificate. | |||
| Validation of a Resource Certificate in such a hierarchical PKI can | Validation of a Resource Certificate in such a hierarchical PKI can | |||
| be undertaken by establishing a valid issuer - subject chain from a | be undertaken by establishing a valid issuer - subject certificate | |||
| trust anchor certificate authority to the certificate [RFC4158], with | chain from a trust anchor certificate authority to the certificate | |||
| the additional constraint of ensuring that each subject's listed | [RFC4158], with the additional constraint of ensuring that each | |||
| resources are fully encompassed by those of the issuer at each step | subject's listed resources are fully encompassed by those of the | |||
| in the issuer-subject chain. | issuer at each step in the issuer-subject chain. | |||
| Resource Certificates may be used in the context of the operation of | Resource Certificates may be used in the context of the operation of | |||
| secure inter-domain routing protocols to convey a right-to-use of an | secure inter-domain routing protocols to convey a right-to-use of an | |||
| IP number resource that is being passed within the routing protocol, | IP number resource that is being passed within the routing protocol, | |||
| to verify legitimacy and correctness of routing information. Related | to verify legitimacy and correctness of routing information. Related | |||
| use contexts include validation of access to Internet Routing | use contexts include validation of Internet Routing Registry objects, | |||
| Registries for nominated routing objects, validation of routing | validation of routing requests, and detection of potential | |||
| requests, and detection of potential unauthorized used of IP | unauthorised used of IP addresses. | |||
| addresses. | ||||
| This profile defines those fields that are used in a Resource | This profile defines those fields that are used in a Resource | |||
| Certificate that MUST be present for the certificate to be valid. | Certificate that MUST be present for the certificate to be valid. | |||
| Relying Parties SHOULD check that a Resource Certificate conforms to | Relying Parties SHOULD check that a Resource Certificate conforms to | |||
| this profile as a requisite for validation of a Resource Certificate. | this profile as a requisite for validation of a Resource Certificate. | |||
| 1.1. Terminology | 1.1. Terminology | |||
| It is assumed that the reader is familiar with the terms and concepts | It is assumed that the reader is familiar with the terms and concepts | |||
| described in "Internet X.509 Public Key Infrastructure Certificate | described in "Internet X.509 Public Key Infrastructure Certificate | |||
| and Certificate Revocation List (CRL) Profile" [RFC3280], "X.509 | and Certificate Revocation List (CRL) Profile" [RFC3280], "X.509 | |||
| Extensions for IP Addresses and AS Identifiers" [RFC3779], "Internet | Extensions for IP Addresses and AS Identifiers" [RFC3779], "Internet | |||
| Protocol" [RFC0791], "Internet Protocol Version 6 (IPv6) Addressing | Protocol" [RFC0791], "Internet Protocol Version 6 (IPv6) Addressing | |||
| skipping to change at page 5, line 32 ¶ | skipping to change at page 5, line 35 ¶ | |||
| 2. Describing Resources in Certificates | 2. Describing Resources in Certificates | |||
| The framework for describing an association between the subject of a | The framework for describing an association between the subject of a | |||
| certificate and the resources currently under the subject's current | certificate and the resources currently under the subject's current | |||
| control is described in [RFC3779]. | control is described in [RFC3779]. | |||
| There are three aspects of this resource extension that are noted in | There are three aspects of this resource extension that are noted in | |||
| this profile: | this profile: | |||
| 1. RFC 3779 notes that this resource extension SHOULD be a CRITICAL | 1. RFC 3779 notes that a resource extension SHOULD be a CRITICAL | |||
| extension to the X.509 Certificate. This Resource Certificate | extension to the X.509 Certificate. This Resource Certificate | |||
| profile further specifies that the use of this certificate | profile further specifies that the use of this certificate | |||
| extension MUST be used and MUST be marked as CRITICAL. | extension MUST be used in all Resource Certificates and MUST be | |||
| marked as CRITICAL. | ||||
| 2. RFC 3779 defines a sorted canonical form of describing a resource | 2. RFC 3779 defines a sorted canonical form of describing a resource | |||
| set, with maximal spanning ranges and maximal spanning prefix | set, with maximal spanning ranges and maximal spanning prefix | |||
| masks as appropriate. All valid certificates in this profile | masks as appropriate. All valid certificates in this profile | |||
| MUST use this sorted canonical form of resource description | MUST use this sorted canonical form of resource description in | |||
| the resource extension field. | ||||
| 3. A test of the resource extension in the context of certificate | 3. A test of the resource extension in the context of certificate | |||
| validity includes the first condition that the resources | validity includes the condition that the resources described in | |||
| described in the issuer's resource extension must encompass those | the immediate superior certificate in the PKI hierarchy (the | |||
| of the subject's resource extension. In this context "encompass" | certificate where this certificate's issuer is the subject) has a | |||
| allows for the issuer's resource set to be the same as, or a | resource set (called here the "Issuer's resource set") that must | |||
| strict superset of, any subject's resource set. Appropriate | encompass the resource set of the issued certificate. In this | |||
| Resource Certificate management in the context of this profile | context "encompass" allows for the issuer's resource set to be | |||
| also includes the constraint that no two (or more) certificates | the same as, or a strict superset of, any subject's resource set. | |||
| issued by a single issuer to two (or more) different subjects | The constraints imposed by this profile a certificate furthermore | |||
| have a non-null intersection of resources. In other words an | require that a the encompassing issuer's resource set be | |||
| issuer can certify at most one unique entity as the unique holder | described in a single certificate, and not in two or more | |||
| of a right-to-use for any particular resource. | certificates. | |||
| A test of certificate validity entails the identification of a | A test of certificate validity entails the identification of a | |||
| sequence of valid certificates in an issuer-subject chain (where the | sequence of valid certificates in an issuer-subject chain (where the | |||
| subject field of one certificate appears as the issuer in the next | subject field of one certificate appears as the issuer in the next | |||
| certificate in the sequence) from one, and only one, trust anchor to | certificate in the sequence) from one, and only one, trust anchor to | |||
| the certificate being validated, and that the resource extensions in | the certificate being validated, and that the resource extensions in | |||
| this certificate sequence from the trust anchor to the certificate | this certificate sequence from the trust anchor to the certificate | |||
| form a sequence of encompassing relationships. | form a sequence of encompassing relationships. | |||
| 3. Resource Certificate Fields | 3. Resource Certificate Fields | |||
| skipping to change at page 6, line 39 ¶ | skipping to change at page 6, line 45 ¶ | |||
| field is 2). | field is 2). | |||
| 3.2. Serial number | 3.2. Serial number | |||
| The serial number value is a positive integer that is unique per | The serial number value is a positive integer that is unique per | |||
| Issuer. | Issuer. | |||
| 3.3. Signature Algorithm | 3.3. Signature Algorithm | |||
| This field describes the algorithm used to compute the signature on | This field describes the algorithm used to compute the signature on | |||
| this certificate. This profile specifies SHA-256 with RSA | this certificate. This profile specifies a minimum of SHA-256 with | |||
| (sha256WithRSAEncryption), and, accordingly, the value for this field | RSA (sha256WithRSAEncryption), and allows for the use of SHA-384 or | |||
| MUST be the OID value 1.2.840.113549.1.1.11 [RFC4055]. | SHA-512. Accordingly, the value for this field MUST be one of the | |||
| OID values { pkcs-1 11 }, { pkcs-1 11 } or { pkcs-1 13 } [RFC4055]. | ||||
| It is noted that larger key sizes are computationally expensive for | ||||
| both the CA and replying parties, indicating that care should be | ||||
| taken when deciding to use larger than the minimum key size. | ||||
| 3.4. Issuer | 3.4. Issuer | |||
| This field identifies the entity that has signed and issued the | This field identifies the entity that has signed and issued the | |||
| certificate. The value of this field is a valid X.501 name. | certificate. The value of this field is a valid X.501 name. | |||
| If the certificate is a subordinate certificate issued by virtue of | If the certificate is a subordinate certificate issued by virtue of | |||
| the CA bit set in the immediate superior certificate, then the issuer | the "cA" bit set in the immediate superior certificate, then the | |||
| name MUST correspond to the subject name as contained in the | issuer name MUST correspond to the subject name as contained in the | |||
| immediate superior certificate. | immediate superior certificate. | |||
| This field MUST be non-empty. | ||||
| 3.5. Subject | 3.5. Subject | |||
| This field identifies the entity to whom the resource has been | This field identifies the entity to whom the resource has been | |||
| allocated / assigned. The value of this field is a valid X.501 name. | allocated / assigned. The value of this field is a valid X.501 name. | |||
| In this profile the subject name is determined by the issuer, and | In this profile the subject name is determined by the issuer, and | |||
| each distinct entity certified by the issuer MUST be identified using | each distinct entity certified by the issuer MUST be identified using | |||
| a subject name that is unique per issuer. | a subject name that is unique per issuer. | |||
| This field MUST be non-empty. | This field MUST be non-empty. | |||
| skipping to change at page 8, line 14 ¶ | skipping to change at page 8, line 27 ¶ | |||
| interval of the CA certificate that will be used to validate the | interval of the CA certificate that will be used to validate the | |||
| issued certificate. However, in the context of this profile, it is | issued certificate. However, in the context of this profile, it is | |||
| anticipated that a CA may have good reason to issue a certificate | anticipated that a CA may have good reason to issue a certificate | |||
| with a validity interval that exceeds the validity interval of the | with a validity interval that exceeds the validity interval of the | |||
| CA's certificate. | CA's certificate. | |||
| 3.8. Subject Public Key Info | 3.8. Subject Public Key Info | |||
| This field specifies the subject's public key and the algorithm with | This field specifies the subject's public key and the algorithm with | |||
| which the key is used. The public key algorithm MUST be RSA, and, | which the key is used. The public key algorithm MUST be RSA, and, | |||
| accordingly, the OID for the algorithm is 1.2.840.113549.1.1.1. A | accordingly, the OID for the public key algorithm is | |||
| minimum key size of 1024 bits is mandated in this profile. In the | 1.2.840.113549.1.1.1. The key size MUST be a minimum size of 1024 | |||
| context of certifying resources it is recommended that certificates | bits. In the context of certifying resources it is recommended that | |||
| that are intended to be used as root certificates, and their | certificates that are intended to be used as root certificates, and | |||
| immediate subordinates SHOULD use a key size of 2048 bits. | their immediate subordinates SHOULD use a minimum key size of 2048 | |||
| Subordinates of these subordinate certificates, in the context of | bits. Immediate subordinates of these certificates, when used in the | |||
| continued level of high trust, SHOULD use a key size of 2048 bits. | context of continued level of high trust, SHOULD use a minimum key | |||
| size of 2048 bits. | ||||
| In the application of this profile to certification of public number | In the application of this profile to certification of public number | |||
| resources, it would be consistent with this recommendation that the | resources, it would be consistent with this recommendation that the | |||
| Regional Internet Registries used a key size of 2048 bits, and that | Regional Internet Registries use a key size of 2048 bits, and that | |||
| their immediate subordinate certificate authorities also use a key | their immediate subordinate certificate authorities also use a key | |||
| size of 2048 bits. All other subordinate certificates MAY use a key | size of 2048 bits. All other subordinate certificates MAY use a key | |||
| size of 1024 bits. | size of 1024 bits. | |||
| It is noted that larger key sizes are computationally expensive for | ||||
| both the CA and replying parties, indicating that care should be | ||||
| taken when deciding to use larger than the minimum key size. | ||||
| 3.9. Resource Certificate Version 3 Extension Fields | 3.9. Resource Certificate Version 3 Extension Fields | |||
| As noted in Section 4.2 of [RFC3280], each extension in a certificate | As noted in Section 4.2 of [RFC3280], each extension in a certificate | |||
| is designated as either critical or non-critical. A certificate- | is designated as either critical or non-critical. A certificate- | |||
| using system MUST reject the certificate if it encounters a critical | using system MUST reject the certificate if it encounters a critical | |||
| extension it does not recognize; however, a non-critical extension | extension it does not recognise; however, a non-critical extension | |||
| MAY be ignored if it is not recognized [RFC3280]. | MAY be ignored if it is not recognised [RFC3280]. | |||
| The following X.509 V3 extensions MUST be present in a conforming | The following X.509 V3 extensions MUST be present in a conforming | |||
| Resource Certificate. | Resource Certificate. | |||
| 3.9.1. Basic Constraints | 3.9.1. Basic Constraints | |||
| The basic constraints extension identifies whether the subject of the | The basic constraints extension identifies whether the subject of the | |||
| certificate is a CA and the maximum depth of valid certification | certificate is a CA and the maximum depth of valid certification | |||
| paths that include this certificate. | paths that include this certificate. | |||
| The issuer determines whether the cA boolean is set. If this bit is | The issuer determines whether the "cA" boolean is set. If this bit | |||
| set, then it indicates that the subject is allowed to issue resources | is set, then it indicates that the subject is allowed to issue | |||
| certificates within this overall framework (i.e. the subject is | resources certificates within this overall framework (i.e. the | |||
| permitted be a CA). | subject is permitted be a CA). | |||
| The Path Length Constraint is not specified in this profile and MUST | The Path Length Constraint is not specified in this profile and MUST | |||
| NOT be present. | NOT be present. | |||
| The Basic Constraints extension field is a critical extension in the | The Basic Constraints extension field is a critical extension in the | |||
| Resource Certificate profile, and MUST be present. | Resource Certificate profile, and MUST be present. | |||
| 3.9.2. Subject Key Identifier | 3.9.2. Subject Key Identifier | |||
| The subject key identifier extension provides a means of identifying | The subject key identifier extension provides a means of identifying | |||
| skipping to change at page 9, line 23 ¶ | skipping to change at page 9, line 41 ¶ | |||
| certification path construction, this extension MUST appear in all | certification path construction, this extension MUST appear in all | |||
| Resource Certificates. This extension is non-critical. | Resource Certificates. This extension is non-critical. | |||
| The value of the subject key identifier MUST be the value placed in | The value of the subject key identifier MUST be the value placed in | |||
| the key identifier field of the Authority Key Identifier extension of | the key identifier field of the Authority Key Identifier extension of | |||
| immediate subordinate certificates (all certificates issued by the | immediate subordinate certificates (all certificates issued by the | |||
| subject of this certificate). | subject of this certificate). | |||
| The Key Identifier used here is the 160-bit SHA-1 hash of the value | The Key Identifier used here is the 160-bit SHA-1 hash of the value | |||
| of the DER-encoded ASN.1 bit string of the subject public key, as | of the DER-encoded ASN.1 bit string of the subject public key, as | |||
| described in Section 4.2.1.2 of[RFC3280]. | described in Section 4.2.1.2 of [RFC3280]. | |||
| 3.9.3. Authority Key Identifier | 3.9.3. Authority Key Identifier | |||
| The subject key identifier extension provides a means of identifying | The subject key identifier extension provides a means of identifying | |||
| certificates that are signed by the issuer's private key, by | certificates that are signed by the issuer's private key, by | |||
| providing a hash value of the issuer's public key. To facilitate | providing a hash value of the issuer's public key. To facilitate | |||
| path construction, this extension MUST appear in all Resource | path construction, this extension MUST appear in all Resource | |||
| Certificates. The keyIdentifier subfield MUST be present in all | Certificates. The keyIdentifier subfield MUST be present in all | |||
| Resource Certificates, with the exception of a CA who issues a "self- | Resource Certificates, with the exception of a CA who issues a "self- | |||
| signed" certificate. The authorityCertIssuer and | signed" certificate. The authorityCertIssuer and | |||
| skipping to change at page 9, line 47 ¶ | skipping to change at page 10, line 17 ¶ | |||
| The Key Identifier used here is the 160-bit SHA-1 hash of the value | The Key Identifier used here is the 160-bit SHA-1 hash of the value | |||
| of the DER-encoded ASN.1 bit string of the issuer's public key, as | of the DER-encoded ASN.1 bit string of the issuer's public key, as | |||
| described in Section 4.2.1.1 of [RFC3280]. | described in Section 4.2.1.1 of [RFC3280]. | |||
| 3.9.4. Key Usage | 3.9.4. Key Usage | |||
| This describes the purpose of the certificate. This is a critical | This describes the purpose of the certificate. This is a critical | |||
| extension, and it MUST be present. | extension, and it MUST be present. | |||
| In certificates issued to CAs only the keyCertSign and CRLSign bits | In certificates issued to CAs only the keyCertSign and CRLSign bits | |||
| are set to TRUE and must be the only bits set to TRUE. In end-entity | are set to TRUE and MUST be the only bits set to TRUE. | |||
| certificates the digitialSignature bit MUST be set and MUST be the | ||||
| only bit set to TRUE. | In end-entity certificates the digitialSignature bit MUST be set and | |||
| MUST be the only bit set to TRUE. | ||||
| 3.9.5. CRL Distribution Points | 3.9.5. CRL Distribution Points | |||
| This field (CRLDP) identifies the location(s) of the CRL(s) | This field (CRLDP) identifies the location(s) of the CRL(s) | |||
| associated with certificates issued by this Issuer. This profile | associated with certificates issued by this Issuer. This profile | |||
| uses the URI form of object identification. The preferred URI access | uses the URI form of object identification. The preferred URI access | |||
| mechanism is a single RSYNC URI ("rsync://") [rsync] that references | mechanism is a single RSYNC URI ("rsync://") [rsync] that references | |||
| a single inclusive CRL for each issuer. | a single inclusive CRL for each issuer. | |||
| In this profile the certificate issuer is also the CRL issuer, | In this profile the certificate issuer is also the CRL issuer, | |||
| skipping to change at page 10, line 25 ¶ | skipping to change at page 10, line 42 ¶ | |||
| distributionPoint subfield MUST be present. The Reasons subfield | distributionPoint subfield MUST be present. The Reasons subfield | |||
| MUST be omitted. | MUST be omitted. | |||
| The distributionPoint MUST contain general names, and MUST NOT | The distributionPoint MUST contain general names, and MUST NOT | |||
| contain a nameRelativeToCRLIssuer. The type of the general name MUST | contain a nameRelativeToCRLIssuer. The type of the general name MUST | |||
| be of type URI. In this profile, the scope of the CRL is specified | be of type URI. In this profile, the scope of the CRL is specified | |||
| to be all certificates issued by this issuer. The sequence of | to be all certificates issued by this issuer. The sequence of | |||
| distributionPoint values MUST contain only a single | distributionPoint values MUST contain only a single | |||
| DistributionPointName set. The DistributionPointName set MAY contain | DistributionPointName set. The DistributionPointName set MAY contain | |||
| more than one URI value. An RSYNC URI MUST be present in the | more than one URI value. An RSYNC URI MUST be present in the | |||
| DistributionPointName set. | DistributionPointName set, and reference the most recent instance of | |||
| this issuer's certificate revocation list. Other access form URIs | ||||
| MAY be used in addition to the RSYNC URI. | ||||
| This extension MUST be present and it is non-critical. | This extension MUST be present and it is non-critical. | |||
| 3.9.6. Authority Information Access | 3.9.6. Authority Information Access | |||
| This field (AIA) identifies the point of publication of all | This field (AIA) identifies the point of publication of the | |||
| certificates that are issued by the issuer's immediate superior CA. | certificate that is issued by the issuer's immediate superior CA, | |||
| This is specified in RFC3280 as a sequence of reference objects. In | where this certificate's issuer is the subject. In this profile a | |||
| this profile a single reference object to the immediate superior's | single reference object to publication location of the immediate | |||
| publication location MUST be used. | superior certificate MUST be used. | |||
| This profile uses a URI form of object identification. The preferred | This profile uses a URI form of object identification. The preferred | |||
| URI access mechanisms is "rsync", and an RSYNC URI MUST be specified | URI access mechanisms is "rsync", and an RSYNC URI MUST be specified | |||
| with an accessMethod value of id-ad-caIssuers. The URI MUST | with an accessMethod value of id-ad-caIssuers. The URI MUST | |||
| reference the point of publication of all objects published by the | reference the point of publication of the certificate where this | |||
| issuer's immediate superior issuer. Other access method URIs | issuer is the subject (the issuer's immediate superior certificate). | |||
| referencing the same publication point MAY also be included in the | Other access method URIs referencing the same object MAY also be | |||
| value sequence of this extension. | included in the value sequence of this extension. | |||
| When an Issuer re-issues a CA certificate,the subordinate | ||||
| certificates need to reference this new certificate via the AIA | ||||
| field. In order to avoid the situation where a certificate re- | ||||
| issuance in and of itself implies a requirement to re-issue all | ||||
| subordinate certificates, CA Certificate issuers SHOULD use a | ||||
| persistent URL name scheme for issued certificates. This implies | ||||
| that re-issued certificates overwrite prevously issued certificates | ||||
| to the same subject, and use the same publication name as previously | ||||
| issued certificates. In this way subordinate certificates can | ||||
| maintain a constant AIA field value and need not be re-issued due | ||||
| solely to a re-issue of the superior certificate. The issuers' | ||||
| policy with respect to the persistence of name objects of issued | ||||
| certificates MUST be specified in the Issuer's Certificate Practice | ||||
| Statement. | ||||
| Alternatively, if the certificate issuer does not maintain a | ||||
| persistent URL for the must recent issued certificate for each | ||||
| subject, then the entity who is subject of a certificate MAY keep the | ||||
| most recent copy of the superior's issued certificate in the | ||||
| subject's publication space, and set the AIA to reference this | ||||
| subject-maintained copy of the immediate superior certificate. | ||||
| In the case of self-signed certificates that undertake the role of a | In the case of self-signed certificates that undertake the role of a | |||
| "root" trust anchor within a certificate hierarchy the AIA extension | "root" trust anchor within a certificate hierarchy the AIA extension | |||
| field SHOULD be omitted. In all other cases this field MUST be | field SHOULD be omitted. In all other cases this field MUST be | |||
| present, and is non-critical. | present, and is non-critical. | |||
| 3.9.7. Subject Information Access | 3.9.7. Subject Information Access | |||
| This field (SIA) identifies the location of information and services | This field (SIA) identifies the location of information and services | |||
| relating to the subject of the certificate in which the SIA extension | relating to the subject of the certificate in which the SIA extension | |||
| appears. Where the Subject is a CA in this profile, this information | appears. Where the Subject is a CA in this profile, this information | |||
| and service collection will include all current valid certificates | and service collection will include all current valid certificates | |||
| that have been issued by this subject that are signed with the | that have been issued by this subject that are signed with the | |||
| subject's corresponding private key. | subject's corresponding private key. | |||
| This profile uses a URI form of location identification. The | This profile uses a URI form of location identification. The | |||
| preferred URI access mechanism is "rsync", and an RSYNC URI MUST be | preferred URI access mechanism is "rsync", and an RSYNC URI MUST be | |||
| specified, with an access method value of id-ad-caRepository when the | specified, with an access method value of id-ad-caRepository when the | |||
| subject of the certificate is a CA. Other access method URIs that | subject of the certificate is a CA. The RSYNC URI must reference an | |||
| reference the same location MAY also be included in the value | object collection rather than an individual object and MUST use a | |||
| sequence of this extension. | trailing '/' in the URI. Other access method URIs that reference the | |||
| same location MAY also be included in the value sequence of this | ||||
| extension. | ||||
| This field MUST be present when the subject is a CA, and is non- | This field MUST be present when the subject is a CA, and is non- | |||
| critical. Where the subject is not a CA this field MUST NOT be | critical. For End Entity certificates, where the subject is not a | |||
| present. | CA, this field MUST NOT be present. | |||
| 3.9.8. Certificate Policies | 3.9.8. Certificate Policies | |||
| This extension MUST reference the Resource Certificate Policy, using | This extension MUST reference the Resource Certificate Policy, using | |||
| the OID Policy Identifier value of "1.3.6.1.5.5.7.14.2". This field | the OID Policy Identifier value of "1.3.6.1.5.5.7.14.2". This field | |||
| MUST be present and MUST contain only this value for Resource | MUST be present and MUST contain only this value for Resource | |||
| Certificates. | Certificates. | |||
| PolicyQualifiers MUST NOT be used in this profile. | PolicyQualifiers MUST NOT be used in this profile. | |||
| skipping to change at page 12, line 21 ¶ | skipping to change at page 13, line 14 ¶ | |||
| extensions. | extensions. | |||
| This extension, if present, MUST be marked critical. | This extension, if present, MUST be marked critical. | |||
| 4. Resource Certificate Revocation List Profile | 4. Resource Certificate Revocation List Profile | |||
| Each CA MUST issue a version 2 Certificate Revocation List (CRL), | Each CA MUST issue a version 2 Certificate Revocation List (CRL), | |||
| consistent with [RFC3280]. The CRL issuer is the CA, and no indirect | consistent with [RFC3280]. The CRL issuer is the CA, and no indirect | |||
| CRLs are supported in this profile. The scope of the CRL MUST be | CRLs are supported in this profile. The scope of the CRL MUST be | |||
| "all certificates issued by this CA". The contents of the CRL are a | "all certificates issued by this CA". The contents of the CRL are a | |||
| list of all unexpired certificates issued by the CA that have been | list of all non-expired certificates issued by the CA that have been | |||
| revoked by the CA. | revoked by the CA. | |||
| An entry MUST NOT be removed from the CRL until it appears on one | An entry MUST NOT be removed from the CRL until it appears on one | |||
| regularly scheduled CRL issued beyond the revoked certificate's | regularly scheduled CRL issued beyond the revoked certificate's | |||
| validity period. | validity period. | |||
| This profile does not allow issuance of Delta CRLs. | This profile does not allow issuance of Delta CRLs. | |||
| The profile does not allow the issuance of multiple current CRLs with | The profile does not allow the issuance of multiple current CRLs with | |||
| different scope by a single CA. | different scope by a single CA. | |||
| skipping to change at page 14, line 38 ¶ | skipping to change at page 15, line 28 ¶ | |||
| This profile refines the specification in [RFC2986], as it relates to | This profile refines the specification in [RFC2986], as it relates to | |||
| Resource Certificates. A Certificate Request Message object, | Resource Certificates. A Certificate Request Message object, | |||
| formatted according to PKCS#10, is passed to a Certificate Authority | formatted according to PKCS#10, is passed to a Certificate Authority | |||
| as the initial step in issuing a certificate. | as the initial step in issuing a certificate. | |||
| This request may be conveyed to the CA via a Registration Authority | This request may be conveyed to the CA via a Registration Authority | |||
| (RA), acting under the direction of a Subject. | (RA), acting under the direction of a Subject. | |||
| With the exception of the public key related fields, the CA is | With the exception of the public key related fields, the CA is | |||
| permitted to alter any requested field. | permitted to alter any requested field when issuing a corresponding | |||
| certificate. | ||||
| 5.1.1. PKCS#10 Resource Certificate Request Template Fields | 5.1.1. PKCS#10 Resource Certificate Request Template Fields | |||
| This profile applies the following additional constraints to fields | This profile applies the following additional constraints to fields | |||
| that may appear in a CertificationRequestInfo: | that may appear in a CertificationRequestInfo: | |||
| Version | Version | |||
| This field is mandatory and MUST have the value 0. | This field is mandatory and MUST have the value 0. | |||
| Subject | Subject | |||
| The CA SHOULD consider this name as the subject's suggestion, but | The CA SHOULD consider this name as the subject's suggestion, but | |||
| the CA is NOT bound to honour this suggestion, as the subject name | the CA is NOT bound to honour this suggestion, as the subject name | |||
| MUST be unique per issuer. This field MAY be empty, in which case | MUST be unique per issuer in certificates issued by this issuer. | |||
| the issuer MUST generate a subject name that is unique in the | This field MAY be empty, in which case the issuer MUST generate a | |||
| context of the issuer. | subject name that is unique in the context of certificates issued | |||
| by this issuer. | ||||
| SubjectPublicKeyInfo | SubjectPublicKeyInfo | |||
| This field specifies the subject's public key and the algorithm | This field specifies the subject's public key and the algorithm | |||
| with which the key is used. The public key algorithm MUST be RSA, | with which the key is used. The public key algorithm MUST be RSA, | |||
| and the OID for the algorithm is 1.2.840.113549.1.1.1. This field | and the OID for the algorithm is 1.2.840.113549.1.1.1. This field | |||
| also includes a bit-string representation of the entity's public | also includes a bit-string representation of the entity's public | |||
| key. For the RSA public-key algorithm the bit string contains the | key. For the RSA public-key algorithm the bit string contains the | |||
| DER encoding of a value of PKCS #1 type RSAPublicKey. | DER encoding of a value of PKCS #1 type RSAPublicKey. | |||
| Attributes | Attributes | |||
| [RFC2986] defines the attributes field as key-value pairs where | [RFC2986] defines the attributes field as key-value pairs where | |||
| the key is an OID and the value's structure depends on the key. | the key is an OID and the value's structure depends on the key. | |||
| The only attribute used in this profile is the ExtensionRequest | The only attribute used in this profile is the ExtensionRequest | |||
| attribute as defined in [RFC2985]. This attribute contains X509v3 | attribute as defined in [RFC2985]. This attribute contains X509v3 | |||
| Certificate Extensions. The profile for extensions in certificate | Certificate Extensions. The profile for extensions in certificate | |||
| requests is specified in Section 5.3. | requests is specified in Section 5.3. | |||
| This profile applies the following additional constraints to fields | This profile applies the following additional constraints to fields | |||
| that may appear in a CertificationRequest Object: | that MAY appear in a CertificationRequest Object: | |||
| signatureAlgorithm | signatureAlgorithm | |||
| Must be SHA-256 with RSA encryption (sha256WithRSAEncryption). | Must be SHA-256 with RSA encryption (sha256WithRSAEncryption). | |||
| Accordingly, the value for this field MUST be the OID value | Accordingly, the value for this field MUST be the OID value | |||
| 1.2.840.113549.1.1.11 | 1.2.840.113549.1.1.11 | |||
| 5.2. CRMF Profile | 5.2. CRMF Profile | |||
| This profile refines the Certificate Request Message Format (CRMF) | This profile refines the Certificate Request Message Format (CRMF) | |||
| specification in [RFC4211], as it relates to Resource Certificates. | specification in [RFC4211], as it relates to Resource Certificates. | |||
| A Certificate Request Message object, formatted according to the | A Certificate Request Message object, formatted according to the | |||
| CRMF, is passed to a Certificate Authority as the initial step in | CRMF, is passed to a Certificate Authority as the initial step in | |||
| issuing a certificate. | issuing a certificate. | |||
| This request may be conveyed to the CA via a Registration Authority | This request may be conveyed to the CA via a Registration Authority | |||
| (RA), acting under the direction of a subject. | (RA), acting under the direction of a subject. | |||
| With the exception of the public key related fields, the CA is | With the exception of the public key related fields, the CA is | |||
| permitted to alter any requested field. | permitted to alter any requested field when issuing a corresponding | |||
| certificate.. | ||||
| 5.2.1. CRMF Resource Certificate Request Template Fields | 5.2.1. CRMF Resource Certificate Request Template Fields | |||
| This profile applies the following additional constraints to fields | This profile applies the following additional constraints to fields | |||
| that may appear in a Certificate Request Template: | that may appear in a Certificate Request Template: | |||
| Version | Version | |||
| This field MAY be absent, or MAY specify the request of a Version | This field MAY be absent, or MAY specify the request of a Version | |||
| 3 Certificate. It SHOULD be omitted. | 3 Certificate. It SHOULD be omitted. | |||
| skipping to change at page 17, line 7 ¶ | skipping to change at page 17, line 42 ¶ | |||
| This attribute contains X509v3 Certificate Extensions. The | This attribute contains X509v3 Certificate Extensions. The | |||
| profile for extensions in certificate requests is specified in | profile for extensions in certificate requests is specified in | |||
| Section 5.3. | Section 5.3. | |||
| 5.2.2. Resource Certificate Request Control Fields | 5.2.2. Resource Certificate Request Control Fields | |||
| The following control fields are supported in this profile: | The following control fields are supported in this profile: | |||
| Authenticator Control | Authenticator Control | |||
| It is noted that the intended model of authentication of the | It is noted that the intended model of authentication of the | |||
| subject in a long term one, and the advice as offered in [RFC4211] | subject is a long term one, and the advice as offered in [RFC4211] | |||
| is that the Authenticator Control field be used. | is that the Authenticator Control field be used. | |||
| [Note - not for publication: The method of generation and | [Note - not for publication: The method of generation and | |||
| authentication of this field is to be specified. The desirable | authentication of this field is not specified in this document. | |||
| properties include the ability to validate the subject and the | It is assumed that the Certificate Issuer and subject have | |||
| authenticity of the provided public key.] | securely exchanged credentials using some other mechanism and the | |||
| Authenticator Control shall reference these credentials. The | ||||
| desirable properties include the ability to validate the subject | ||||
| and the authenticity of the provided public key.] | ||||
| Resource Class | Resource Class | |||
| The profile defines an additional control for Resource Certificate | The profile defines an additional control for Resource Certificate | |||
| Requests, namely a Resource Class control. | Requests, namely a Resource Class control. | |||
| The Subject MUST specify a Resource Class value as specified by | The Subject MUST specify a Resource Class value as specified by | |||
| the CA to which the request refers. The CA will issue a | the CA to which the request refers. The CA will issue a | |||
| certificate with the IP Address and AS Number resources that match | certificate with the IP Address and AS Number resources that match | |||
| the subject's right-of-use of these resources with the class of | the subject's right-of-use of these resources within the class of | |||
| resources specified by the Resource Class control value. | resources specified by the Resource Class control value. | |||
| [Note - not for publication: This specification of the resource | [Note - not for publication: This specification of the resource | |||
| class is related the various forms of resource allocation which | class is related the various forms of resource allocation which | |||
| imply that an entity may be the holder of resources with differing | imply that an entity may be the holder of resources with differing | |||
| validation dates and differing validation paths, even when the | validation dates and differing validation paths, even when the | |||
| entity is the recipient of resources allocated from a single | entity is the recipient of resources allocated from a single | |||
| 'upstream' issuing registry. Due to this consideration it may not | 'upstream' issuing registry. Due to this consideration it may not | |||
| be possible to issue a single certificate with an all-encompassing | be possible to issue a single certificate with an all-encompassing | |||
| resource set. Alternatively it is possible to define a structure | resource set. Alternatively it is possible to define a structure | |||
| skipping to change at page 18, line 48 ¶ | skipping to change at page 19, line 37 ¶ | |||
| SubjectInformationAccess field based on out-of-band information | SubjectInformationAccess field based on out-of-band information | |||
| that has been passed between the CA and the requester. | that has been passed between the CA and the requester. | |||
| [Note not for publication - if this field is missing than it is | [Note not for publication - if this field is missing than it is | |||
| also an option for the Issuer to deny the request and not issue a | also an option for the Issuer to deny the request and not issue a | |||
| certificate if the issued certificate was to have the CA bit set.] | certificate if the issued certificate was to have the CA bit set.] | |||
| SubjectAlternateName | SubjectAlternateName | |||
| This field MAY be present, and the CA MAY use this as the | This field MAY be present, and the CA MAY use this as the | |||
| SubjectAltName in the issued Certificate. | SubjectAltName in the issued Certificate. | |||
| CRLDistributionPoints | CRLDistributionPoints | |||
| This field is assigned by the CA and MUST be omitted in this | This field is assigned by the CA and MUST be omitted in this | |||
| profile. | profile. | |||
| AuthorityInformationAccess | AuthorityInformationAccess | |||
| This field is assigned by the CA and MUST be omitted in this | This field is assigned by the CA and MAY be omitted in this | |||
| profile. | profile. If specified the CA MAY choose to use this value as the | |||
| AIA field. | ||||
| SubjectInformationAccess | SubjectInformationAccess | |||
| This field MAY be honoured by the CA on the condition that the CA | This field MAY be honoured by the CA on the condition that the CA | |||
| issues a certificate with the BasicConstraints SubjectType CA bit | issues a certificate with the BasicConstraints SubjectType CA bit | |||
| set and the KeyUsage set to CertificateSigning and CRLSigning. | set and the KeyUsage set to CertificateSigning and CRLSigning. | |||
| If specified, this field contains a URI of the form of a single | If specified, this field contains a URI of the form of a single | |||
| rsync URL that references a single publication point that will be | rsync URL that references a single publication point that will be | |||
| used by the subject for all certificates that published by the | used by the subject for all certificates that published by the | |||
| subject for subordinate certificates, and MUST be honoured by the | subject for subordinate certificates, and MUST be honoured by the | |||
| skipping to change at page 20, line 4 ¶ | skipping to change at page 20, line 43 ¶ | |||
| ASResources | ASResources | |||
| This field is assigned by the CA and MUST be omitted in this | This field is assigned by the CA and MUST be omitted in this | |||
| profile. | profile. | |||
| With the exception of the publicKey field, the CA is permitted to | With the exception of the publicKey field, the CA is permitted to | |||
| alter any requested field. | alter any requested field. | |||
| 6. Resource Certificate Validation | 6. Resource Certificate Validation | |||
| This section describes the Resource Certificate validation procedure. | This section describes the Resource Certificate validation procedure. | |||
| This refines the generic procedure described insection 6 of | ||||
| This refines the generic procedure described in [RFC3280]: | [RFC3280]: | |||
| To meet this goal, the path validation process verifies, among other | To meet this goal, the path validation process verifies, among other | |||
| things, that a prospective certification path (a sequence of n | things, that a prospective certification path (a sequence of n | |||
| certificates) satisfies the following conditions: | certificates) satisfies the following conditions: | |||
| 1. for all x in {1, ..., n-1}, the subject of certificate x is the | 1. for all x in {1, ..., n-1}, the subject of certificate x is the | |||
| issuer of certificate x+1; | issuer of certificate x+1; | |||
| 2. certificate 1 is issued by a trust anchor; | 2. certificate 1 is issued by a trust anchor; | |||
| 3. certificate n is the certificate to be validated; and | 3. certificate n is the certificate to be validated; and | |||
| 4. for all x in {1, ..., n}, the certificate was valid at the time | 4. for all x in {1, ..., n}, the certificate is valid. | |||
| in question. | ||||
| 6.1. Trust Anchors for Resource Certificates | 6.1. Trust Anchors for Resource Certificates | |||
| The trust model that may be used in the resource certificate | The trust model that may be used in the resource certificate | |||
| framework in the context of validation of assertions of public number | framework in the context of validation of assertions of public number | |||
| resources in public-use contexts is one that readily maps to a top- | resources in public-use contexts is one that readily maps to a top- | |||
| down delegated CA model that mirrors the delegation of resources from | down delegated CA model that mirrors the delegation of resources from | |||
| a registry distribution point to the entities that are the direct | a registry distribution point to the entities that are the direct | |||
| recipients of these resources. Within this trust model these | recipients of these resources. Within this trust model these | |||
| recipient entities may, in turn, operate a registry and perform | recipient entities may, in turn, operate a registry and perform | |||
| skipping to change at page 20, line 41 ¶ | skipping to change at page 21, line 34 ¶ | |||
| that any number resource and a corresponding recipient entity has | that any number resource and a corresponding recipient entity has | |||
| only one 'parent' issuing registry for that number resource (i.e. | only one 'parent' issuing registry for that number resource (i.e. | |||
| there is always a unique parent entity for any resource and | there is always a unique parent entity for any resource and | |||
| corresponding entity), and that the issuing registry is not a direct | corresponding entity), and that the issuing registry is not a direct | |||
| or indirect subordinate recipient entity of the recipient entity in | or indirect subordinate recipient entity of the recipient entity in | |||
| question (i.e. no loops in the hierarchy). The only exception to the | question (i.e. no loops in the hierarchy). The only exception to the | |||
| "no loop" condition would be where a putative trust anchor may issue | "no loop" condition would be where a putative trust anchor may issue | |||
| a self-signed root certificate. | a self-signed root certificate. | |||
| The more general consideration is that selection of a trust anchor is | The more general consideration is that selection of a trust anchor is | |||
| a role undertaken by relying parties, and the structure of the | a task undertaken by relying parties. The structure of the resource | |||
| resource certificate profile admits the same variety of trust models | certificate profile admits potentially the same variety of trust | |||
| as the PKIX profile. There is only one additional caveat on the | models as the PKIX profile. There is only one additional caveat on | |||
| general applicability of trust models and PKIX frameworks, namely | the general applicability of trust models and PKIX frameworks, namely | |||
| that in forming a validation path to a trust anchor, the sequence of | that in forming a validation path to a trust anchor, the sequence of | |||
| certificates MUST preserve the resource extension validation | certificates MUST preserve the resource extension validation | |||
| property, as described in Section 6.2. | property, as described in Section 6.2. | |||
| 6.2. Resource Extension Validation | 6.2. Resource Extension Validation | |||
| The IP resource extension definition [RFC3779] defines a critical | The IP resource extension definition [RFC3779] defines a critical | |||
| extensions for Internet number resources. These are ASN.1 encoded | extensions for Internet number resources. These are ASN.1 encoded | |||
| representations of the IPv4 and IPv6 address range (either as a | representations of the IPv4 and IPv6 address range (either as a | |||
| prefix/length, or start-end pair) and the AS number set. | prefix/length, or start-end pair) and the AS number set. | |||
| skipping to change at page 22, line 28 ¶ | skipping to change at page 23, line 21 ¶ | |||
| is the Subject (the previous certificate in the ordered sequence) | is the Subject (the previous certificate in the ordered sequence) | |||
| 7. The Certificate Path originates at a trust anchor, and there | 7. The Certificate Path originates at a trust anchor, and there | |||
| exists a signing chain across the Certificate Path where the | exists a signing chain across the Certificate Path where the | |||
| Subject of Certificate x in the Certificate Path matches the | Subject of Certificate x in the Certificate Path matches the | |||
| Issuer in Certificate x+1 in the Certificate Path. | Issuer in Certificate x+1 in the Certificate Path. | |||
| A certificate validation algorithm may perform these tests in any | A certificate validation algorithm may perform these tests in any | |||
| chosen order. | chosen order. | |||
| A Resource Certificate may have a number of potential parent | Certificates and CRLs used in this process may be found in a locally | |||
| certificates, where a potential parent certificate is one where the | maintained repository, maintained by a regular top-down | |||
| subject name matches the issuer name of the resource certificate. A | synchronization pass from the Root Trust Anchors via reference to | |||
| candidate parent certificate is any member of the parent certificate | Issuer certificates and their SIA fields as forward pointers, plus | |||
| set where the resource extension validity constraint of | the CRLDP. Alternatively, validation may be performed using a | |||
| "encompassing" is satisfied, and a valid candidate parent certificate | bottom-up process with on-line certificate access using the AIA and | |||
| is any candidate parent certificate that also matches validity | CRLDP pointers to guide the certificate retrieval process. | |||
| conditions 1 through 6. A valid parent certificate is a valid | ||||
| candidate parent certificate that also matches validity condition 7. | ||||
| Certificates and CRLs used in this process may be found on a single | ||||
| repository, maintained by a regular top-down walk from the Root Trust | ||||
| Anchors via Issuer certificates and their SIA fields as forward | ||||
| pointers, plus the CRLDP. Alternatively, validation may be performed | ||||
| using a bottom-up process with on-line certificate access using the | ||||
| AIA and CRLDP pointers to guide the certificate retrieval process. | ||||
| There exists the possibility of encountering certificate paths that | There exists the possibility of encountering certificate paths that | |||
| are arbitrarily long, or attempting to generate paths with loops as | are arbitrarily long, or attempting to generate paths with loops as | |||
| means of creating a potential DOS attack on a certificate validator. | means of creating a potential DOS attack on a certificate validator. | |||
| Some further heuristics may be required to halt the validation | Some further heuristics may be required to halt the validation | |||
| process in order to avoid some of the issues associated with attempts | process in order to avoid some of the issues associated with attempts | |||
| to validate such structures. It is suggested that implementations of | to validate such structures. It is suggested that implementations of | |||
| Resource Certificate validation MAY halt with a validation failure if | Resource Certificate validation MAY halt with a validation failure if | |||
| the certificate path length exceeds a pre-determined configuration | the certificate path length exceeds a pre-determined configuration | |||
| parameter. | parameter. | |||
| In the context of Resource Certificates that are generated in respect | 7. Example Use Cases | |||
| of public resources and with the framework of the associated resource | ||||
| distribution process, it is suggested that this configuration | ||||
| parameter of maximum certificate path length be set to a value of | ||||
| 100. | ||||
| [Note - not for publication: There is no particular reason for | [1 - signing a Route Registry Object] [2 - signing a Route | |||
| suggesting this value other than the observation that it appears to | Origination Authority - note validity time] [3 - performing a | |||
| be comfortably longer than any real distribution chain for public | resource (sub) allocation - An example of this in situations where | |||
| number resources, without being too long so as to pose potential DOS | there are contractual period differences between the entity and its | |||
| concerns for relying parties performing a validation operation.] | resource supplier, and the entity and its resource allocation | |||
| subjects.] | ||||
| 7. Security Considerations | 8. Security Considerations | |||
| [to be completed] | [To be completed] | |||
| 8. IANA Considerations | 9. IANA Considerations | |||
| [There are no IANA considerations stated in this version of the | [Note to IANA, to be removed prior to publication: there are no IANA | |||
| document.] | considerations stated in this version of the document.] | |||
| 9. Acknowledgements | 10. Acknowledgements | |||
| The authors would like to acknowledge the valued contributions from | The authors would like to acknowledge the valued contributions from | |||
| Stephen Kent, Robert Kisteleki, Randy Bush, Russ Housley, Ricardo | Stephen Kent, Robert Kisteleki, Randy Bush, Russ Housley, Ricardo | |||
| Patara and Rob Austein in the preparation and subsequent review of | Patara and Rob Austein in the preparation and subsequent review of | |||
| this document. | this document. | |||
| 10. Normative References | 11. Normative References | |||
| [RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791, | [RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791, | |||
| September 1981. | September 1981. | |||
| [RFC2050] Hubbard, K., Kosters, M., Conrad, D., Karrenberg, D., and | [RFC2050] Hubbard, K., Kosters, M., Conrad, D., Karrenberg, D., and | |||
| J. Postel, "INTERNET REGISTRY IP ALLOCATION GUIDELINES", | J. Postel, "INTERNET REGISTRY IP ALLOCATION GUIDELINES", | |||
| BCP 12, RFC 2050, November 1996. | BCP 12, RFC 2050, November 1996. | |||
| [RFC2985] Nystrom, M. and B. Kaliski, "PKCS #9: Selected Object | [RFC2985] Nystrom, M. and B. Kaliski, "PKCS #9: Selected Object | |||
| Classes and Attribute Types Version 2.0", RFC 2985, | Classes and Attribute Types Version 2.0", RFC 2985, | |||
| skipping to change at page 29, line 7 ¶ | skipping to change at page 29, line 7 ¶ | |||
| URI: http://www.apnic.net | URI: http://www.apnic.net | |||
| Robert Loomans | Robert Loomans | |||
| Asia Pacific Network Information Centre | Asia Pacific Network Information Centre | |||
| Email: robertl@apnic.net | Email: robertl@apnic.net | |||
| URI: http://www.apnic.net | URI: http://www.apnic.net | |||
| Full Copyright Statement | Full Copyright Statement | |||
| Copyright (C) The Internet Society (2006). | Copyright (C) The IETF Trust (2007). | |||
| This document is subject to the rights, licenses and restrictions | This document is subject to the rights, licenses and restrictions | |||
| contained in BCP 78, and except as set forth therein, the authors | contained in BCP 78, and except as set forth therein, the authors | |||
| retain all their rights. | retain all their rights. | |||
| This document and the information contained herein are provided on an | This document and the information contained herein are provided on an | |||
| "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | |||
| OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET | OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND | |||
| ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, | THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS | |||
| INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE | OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF | |||
| INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED | THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED | |||
| WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | |||
| Intellectual Property | Intellectual Property | |||
| The IETF takes no position regarding the validity or scope of any | The IETF takes no position regarding the validity or scope of any | |||
| Intellectual Property Rights or other rights that might be claimed to | Intellectual Property Rights or other rights that might be claimed to | |||
| pertain to the implementation or use of the technology described in | pertain to the implementation or use of the technology described in | |||
| this document or the extent to which any license under such rights | this document or the extent to which any license under such rights | |||
| might or might not be available; nor does it represent that it has | might or might not be available; nor does it represent that it has | |||
| made any independent effort to identify any such rights. Information | made any independent effort to identify any such rights. Information | |||
| End of changes. 63 change blocks. | ||||
| 174 lines changed or deleted | 214 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||