idnits 2.17.1 draft-ietf-sidr-res-certs-10.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 16. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 1355. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 1366. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 1373. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 1379. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- == There are 1 instance of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. -- The document has examples using IPv4 documentation addresses according to RFC6890, but does not use any IPv6 documentation addresses. Maybe there should be IPv6 examples, too? Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (June 17, 2008) is 5792 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Outdated reference: A later version (-16) exists of draft-ietf-sidr-rpki-manifests-00 ** Obsolete normative reference: RFC 2050 (Obsoleted by RFC 7020) ** Obsolete normative reference: RFC 3280 (Obsoleted by RFC 5280) Summary: 3 errors (**), 0 flaws (~~), 3 warnings (==), 8 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 SIDR G. Huston 3 Internet-Draft G. Michaelson 4 Intended status: Standards Track R. Loomans 5 Expires: December 19, 2008 APNIC 6 June 17, 2008 8 A Profile for X.509 PKIX Resource Certificates 9 draft-ietf-sidr-res-certs-10.txt 11 Status of this Memo 13 By submitting this Internet-Draft, each author represents that any 14 applicable patent or other IPR claims of which he or she is aware 15 have been or will be disclosed, and any of which he or she becomes 16 aware will be disclosed, in accordance with Section 6 of BCP 79. 18 Internet-Drafts are working documents of the Internet Engineering 19 Task Force (IETF), its areas, and its working groups. Note that 20 other groups may also distribute working documents as Internet- 21 Drafts. 23 Internet-Drafts are draft documents valid for a maximum of six months 24 and may be updated, replaced, or obsoleted by other documents at any 25 time. It is inappropriate to use Internet-Drafts as reference 26 material or to cite them other than as "work in progress." 28 The list of current Internet-Drafts can be accessed at 29 http://www.ietf.org/ietf/1id-abstracts.txt. 31 The list of Internet-Draft Shadow Directories can be accessed at 32 http://www.ietf.org/shadow.html. 34 This Internet-Draft will expire on December 19, 2008. 36 Copyright Notice 38 Copyright (C) The IETF Trust (2008). 40 Abstract 42 This document defines a standard profile for X.509 certificates for 43 the purposes of supporting validation of assertions of "right-to-use" 44 of an Internet Number Resource (IP Addresses and Autonomous System 45 Numbers). This profile is used to convey the issuer's authorization 46 of the subject to be regarded as the current holder of a "right-of- 47 use" of the IP addresses and AS numbers that are described in the 48 issued certificate. 50 Table of Contents 52 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 53 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 5 54 2. Describing Resources in Certificates . . . . . . . . . . . . . 5 55 3. Resource Certificate Fields . . . . . . . . . . . . . . . . . 6 56 3.1. Version . . . . . . . . . . . . . . . . . . . . . . . . . 6 57 3.2. Serial number . . . . . . . . . . . . . . . . . . . . . . 6 58 3.3. Signature Algorithm . . . . . . . . . . . . . . . . . . . 6 59 3.4. Issuer . . . . . . . . . . . . . . . . . . . . . . . . . . 7 60 3.5. Subject . . . . . . . . . . . . . . . . . . . . . . . . . 7 61 3.6. Valid From . . . . . . . . . . . . . . . . . . . . . . . . 7 62 3.7. Valid To . . . . . . . . . . . . . . . . . . . . . . . . . 7 63 3.8. Subject Public Key Info . . . . . . . . . . . . . . . . . 8 64 3.9. Resource Certificate Version 3 Extension Fields . . . . . 8 65 3.9.1. Basic Constraints . . . . . . . . . . . . . . . . . . 9 66 3.9.2. Subject Key Identifier . . . . . . . . . . . . . . . . 9 67 3.9.3. Authority Key Identifier . . . . . . . . . . . . . . . 9 68 3.9.4. Key Usage . . . . . . . . . . . . . . . . . . . . . . 10 69 3.9.5. CRL Distribution Points . . . . . . . . . . . . . . . 10 70 3.9.6. Authority Information Access . . . . . . . . . . . . . 11 71 3.9.7. Subject Information Access . . . . . . . . . . . . . . 11 72 3.9.8. Certificate Policies . . . . . . . . . . . . . . . . . 13 73 3.9.9. IP Resources . . . . . . . . . . . . . . . . . . . . . 13 74 3.9.10. AS Resources . . . . . . . . . . . . . . . . . . . . . 13 75 4. Resource Certificate Revocation List Profile . . . . . . . . . 14 76 4.1. Version . . . . . . . . . . . . . . . . . . . . . . . . . 14 77 4.2. Issuer Name . . . . . . . . . . . . . . . . . . . . . . . 14 78 4.3. This Update . . . . . . . . . . . . . . . . . . . . . . . 14 79 4.4. Next Update . . . . . . . . . . . . . . . . . . . . . . . 15 80 4.5. Signature . . . . . . . . . . . . . . . . . . . . . . . . 15 81 4.6. Revoked Certificate List . . . . . . . . . . . . . . . . . 15 82 4.6.1. Serial Number . . . . . . . . . . . . . . . . . . . . 15 83 4.6.2. Revocation Date . . . . . . . . . . . . . . . . . . . 15 84 4.7. CRL Extensions . . . . . . . . . . . . . . . . . . . . . . 15 85 4.7.1. Authority Key Identifier . . . . . . . . . . . . . . . 15 86 4.7.2. CRL Number . . . . . . . . . . . . . . . . . . . . . . 16 87 5. Resource Certificate Request Profile . . . . . . . . . . . . . 16 88 5.1. PCKS#10 Profile . . . . . . . . . . . . . . . . . . . . . 16 89 5.1.1. PKCS#10 Resource Certificate Request Template 90 Fields . . . . . . . . . . . . . . . . . . . . . . . . 16 91 5.2. CRMF Profile . . . . . . . . . . . . . . . . . . . . . . . 17 92 5.2.1. CRMF Resource Certificate Request Template Fields . . 18 93 5.2.2. Resource Certificate Request Control Fields . . . . . 19 94 5.3. Certificate Extension Attributes in Certificate 95 Requests . . . . . . . . . . . . . . . . . . . . . . . . . 19 96 6. Resource Certificate Validation . . . . . . . . . . . . . . . 21 97 6.1. Trust Anchors for Resource Certificates . . . . . . . . . 21 98 6.2. Resource Extension Validation . . . . . . . . . . . . . . 22 99 6.3. Resource Certificate Path Validation . . . . . . . . . . . 23 100 7. Security Considerations . . . . . . . . . . . . . . . . . . . 24 101 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 25 102 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 25 103 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 25 104 10.1. Normative References . . . . . . . . . . . . . . . . . . . 25 105 10.2. Informative References . . . . . . . . . . . . . . . . . . 26 106 Appendix A. Example Resource Certificate . . . . . . . . . . . . 26 107 Appendix B. Example Certificate Revocation List . . . . . . . . . 28 108 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 29 109 Intellectual Property and Copyright Statements . . . . . . . . . . 31 111 1. Introduction 113 This document defines a standard profile for X.509 certificates for 114 use in the context of certification of IP Addresses and AS Numbers. 115 Such certificates are termed here "Resource Certificates." Resource 116 Certificates are X.509 certificates that conform to the PKIX profile 117 [RFC3280], and also conform to the constraints specified in this 118 profile. Resource Certificates attest that the issuer has granted 119 the subject a "right-to-use" for a listed set of IP addresses and 120 Autonomous System numbers. 122 A Resource Certificate describes an action by a certificate issuer 123 that binds a list of IP Address blocks and AS Numbers to the subject 124 of the issued certificate. The binding is identified by the 125 association of the subject's private key with the subject's public 126 key contained in the Resource Certificate, as signed by the private 127 key of the certificate's issuer. 129 In the context of the public Internet, and the use of public number 130 resources within this context, it is intended that Resource 131 Certificates are used in a manner that is explicitly aligned to the 132 public number resource distribution function. Specifically, when a 133 number resource is allocated or assigned by a number registry to an 134 entity, this allocation is described by an associated Resource 135 Certificate. This certificate is issued by the number registry, and 136 the subject's public key that is being certified by the issuer 137 corresponds to the public key part of a public / private key pair 138 that was generated by the same entity who is the recipient of the 139 number assignment or allocation. A critical extension to the 140 certificate enumerates the IP Resources that were allocated or 141 assigned by the issuer to the entity. In the context of the public 142 number distribution function, this corresponds to a hierarchical PKI 143 structure, where Resource Certificates are only issued in one 144 'direction' and there is a single unique path of certificates from a 145 certificate authority operating at the apex of a resource 146 distribution hierarchy to a valid certificate. 148 Validation of a Resource Certificate in such a hierarchical PKI can 149 be undertaken by establishing a valid issuer-subject certificate 150 chain from a certificate issued by a trust anchor certificate 151 authority to the certificate [RFC4158], with the additional 152 constraint of ensuring that each subject's listed resources are fully 153 encompassed by those of the issuer at each step in the issuer-subject 154 certificate chain. 156 Resource Certificates may be used in the context of the operation of 157 secure inter-domain routing protocols to convey a right-to-use of an 158 IP number resource that is being passed within the routing protocol, 159 allowing relying parties to verify legitimacy and correctness of 160 routing information. Related use contexts include validation of 161 Internet Routing Registry objects, validation of routing requests, 162 and detection of potential unauthorised use of IP addresses. 164 This profile defines those fields that are used in a Resource 165 Certificate that MUST be present for the certificate to be valid. 166 Relying Parties SHOULD check that a Resource Certificate conforms to 167 this profile as a requisite for validation of a Resource Certificate. 169 1.1. Terminology 171 It is assumed that the reader is familiar with the terms and concepts 172 described in "Internet X.509 Public Key Infrastructure Certificate 173 and Certificate Revocation List (CRL) Profile" [RFC3280], "X.509 174 Extensions for IP Addresses and AS Identifiers" [RFC3779], "Internet 175 Protocol" [RFC0791], "Internet Protocol Version 6 (IPv6) Addressing 176 Architecture" [RFC4291], "Internet Registry IP Allocation Guidelines" 177 [RFC2050], and related regional Internet registry address management 178 policy documents. 180 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 181 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 182 document are to be interpreted as described in RFC 2119. 184 2. Describing Resources in Certificates 186 The framework for describing an association between the subject of a 187 certificate and the resources currently under the subject's control 188 is described in [RFC3779]. 190 There are three aspects of this resource extension that are noted in 191 this profile: 193 1. RFC 3779 notes that a resource extension SHOULD be a CRITICAL 194 extension to the X.509 Certificate. This Resource Certificate 195 profile further specifies that the use of this certificate 196 extension MUST be used in all Resource Certificates and MUST be 197 marked as CRITICAL. 199 2. RFC 3779 defines a sorted canonical form of describing a resource 200 set, with maximal spanning ranges and maximal spanning prefix 201 masks as appropriate. All valid certificates in this profile 202 MUST use this sorted canonical form of resource description in 203 the resource extension field. 205 3. A test of the resource extension in the context of certificate 206 validity includes the condition that the resources described in 207 the immediate superior certificate in the PKI hierarchy (the 208 certificate where this certificate's issuer is the subject) has a 209 resource set (called here the "issuer's resource set") that must 210 encompass the resource set of the issued certificate. In this 211 context "encompass" allows for the issuer's resource set to be 212 the same as, or a strict superset of, any subject's resource set. 214 A test of certificate validity entails the identification of a 215 sequence of valid certificates in an issuer-subject chain (where the 216 subject field of one certificate appears as the issuer in the next 217 certificate in the sequence) from a trust anchor certificate 218 authority to the certificate being validated, and that the resource 219 extensions in this certificate sequence from the trust anchor's 220 issued certificate to the certificate being validated form a sequence 221 of encompassing relationships in terms of the resources described in 222 the resource extension. 224 3. Resource Certificate Fields 226 A Resource Certificate is a valid X.509 v3 public key certificate, 227 consistent with the PKIX profile [RFC3280], containing the fields 228 listed in this section. Unless specifically noted as being OPTIONAL, 229 all the fields listed here MUST be present, and any other field MUST 230 NOT appear in a conforming Resource Certificate. Where a field value 231 is specified here this value MUST be used in conforming Resource 232 Certificates. 234 3.1. Version 236 Resource Certificates are X.509 Version 3 certificates. This field 237 MUST be present, and the Version MUST be 3 (i.e. the value of this 238 field is 2). 240 3.2. Serial number 242 The serial number value is a positive integer that is unique per 243 Issuer. 245 3.3. Signature Algorithm 247 This field describes the algorithm used to compute the signature on 248 this certificate. This profile specifies a minimum of SHA-256 with 249 RSA (sha256WithRSAEncryption), and allows for the use of SHA-384 or 250 SHA-512. Accordingly, the value for this field MUST be one of the 251 OID values { pkcs-1 11 }, { pkcs-1 12 } or { pkcs-1 13 } [RFC4055]. 253 It is noted that larger key sizes are computationally expensive for 254 both the Certiciate Authority and relying parties, indicating that 255 care should be taken when deciding to use larger than the minimum key 256 size. 258 3.4. Issuer 260 This field identifies the entity that has signed and issued the 261 certificate. The value of this field is a valid X.501 name. 263 If the certificate is a subordinate certificate issued by virtue of 264 the "cA" bit set in the immediate superior certificate, then the 265 issuer name MUST correspond to the subject name as contained in the 266 immediate superior certificate. 268 This field MUST be non-empty. 270 3.5. Subject 272 This field identifies the entity to whom the resource has been 273 allocated / assigned. The value of this field is a valid X.501 name. 275 In this profile the subject name is determined by the issuer, and 276 each distinct entity certified by the issuer MUST be identified using 277 a subject name that is unique per issuer. 279 This field MUST be non-empty. 281 3.6. Valid From 283 The starting time at which point the certificate is valid. In this 284 profile the "Valid From" time SHOULD be no earlier than the time of 285 certificate generation. As per Section 4.1.2.5 of [RFC3280], 286 Certification Authorities (CAs) conforming to this profile MUST 287 always encode the certificate's "Valid From" date through the year 288 2049 as UTCTime, and dates in 2050 or later MUST be encoded as 289 GeneralizedTime. These two time formats are defined in [RFC3280]. 291 In this profile, it is valid for a certificate to have a value for 292 this field that pre-dates the same field value in any superior 293 certificate. However, it is not valid to infer from this information 294 that a certificate was, or will be, valid at any particular time 295 other than the current time. 297 3.7. Valid To 299 The Valid To time is the date and time at which point in time the 300 certificate's validity ends. It represents the anticipated lifetime 301 of the resource allocation / assignment arrangement between the 302 issuer and the subject. As per Section 4.1.2.5 of [RFC3280], CAs 303 conforming to this profile MUST always encode the certificate's 304 "Valid To" date through the year 2049 as UTCTime, and dates in 2050 305 or later MUST be encoded as GeneralizedTime. These two time formats 306 are defined in [RFC3280]. 308 In this profile, it is valid for a certificate to have a value for 309 this field that post-dates the same field value in any superior 310 certificate. However, it is not valid to infer from this information 311 that a certificate was, or will be, valid at any particular time 312 other than the current time. 314 CAs are typically advised against issuing a certificate with a 315 validity interval that exceeds the validity interval of the CA's 316 certificate that will be used to validate the issued certificate. 317 However, in the context of this profile, it is anticipated that a CA 318 may have valid grounds to issue a certificate with a validity 319 interval that exceeds the validity interval of the CA's certificate. 321 3.8. Subject Public Key Info 323 This field specifies the subject's public key and the algorithm with 324 which the key is used. The public key algorithm MUST be RSA, and, 325 accordingly, the OID for the public key algorithm is 326 1.2.840.113549.1.1.1. The key size MUST be a minimum size of 1024 327 bits. In the context of certifying resources it is recommended that 328 the key size of keys that are intended to be used at the apex of a 329 certificate issuance hierarchy, and their immediate subordinates, 330 SHOULD use a minimum key size of 2048 bits. Immediate subordinates 331 of these certificates, when used in the context of continued levels 332 of high trust, SHOULD use a minimum key size of 2048 bits. 334 In the application of this profile to certification of public number 335 resources, it would be consistent with this recommendation that the 336 Regional Internet Registries use a key size of 2048 bits in their 337 issued certificates, and that their immediate subordinate certificate 338 authorities also use a key size of 2048 bits. All other subordinate 339 certificates MAY use a key size of 1024 bits. 341 It is noted that larger key sizes are computationally expensive for 342 both the CA and relying parties, indicating that care should be taken 343 when deciding to use larger than the minimum key size. 345 3.9. Resource Certificate Version 3 Extension Fields 347 As noted in Section 4.2 of [RFC3280], each extension in a certificate 348 is designated as either critical or non-critical. A certificate- 349 using system MUST reject the certificate if it encounters a critical 350 extension it does not recognise; however, a non-critical extension 351 MAY be ignored if it is not recognised [RFC3280]. 353 The following X.509 V3 extensions MUST be present in a conforming 354 Resource Certificate, except where explicitly noted otherwise. 356 3.9.1. Basic Constraints 358 The basic constraints extension identifies whether the subject of the 359 certificate is a CA and the maximum depth of valid certification 360 paths that include this certificate. 362 The issuer determines whether the "cA" boolean is set. If this bit 363 is set, then it indicates that the subject is allowed to issue 364 resources certificates within this overall framework (i.e. the 365 subject is permitted be a CA). 367 The Path Length Constraint is not specified in this profile and MUST 368 NOT be present. 370 The Basic Constraints extension field is a critical extension in the 371 Resource Certificate profile, and MUST be present when the subject is 372 a CA, and MUST NOT be present otherwise. 374 3.9.2. Subject Key Identifier 376 The subject key identifier extension provides a means of identifying 377 certificates that contain a particular public key. To facilitate 378 certification path construction, this extension MUST appear in all 379 Resource Certificates. This extension is non-critical. 381 The value of the subject key identifier MUST be the value placed in 382 the key identifier field of the Authority Key Identifier extension of 383 immediate subordinate certificates (all certificates issued by the 384 subject of this certificate). 386 The Key Identifier used here is the 160-bit SHA-1 hash of the value 387 of the DER-encoded ASN.1 bit string of the subject public key, as 388 described in Section 4.2.1.2 of [RFC3280]. 390 3.9.3. Authority Key Identifier 392 The subject key identifier extension provides a means of identifying 393 certificates that are signed by the issuer's private key, by 394 providing a hash value of the issuer's public key. To facilitate 395 path construction, this extension MUST appear in all Resource 396 Certificates. The keyIdentifier sub field MUST be present in all 397 Resource Certificates, with the exception of a CA who issues a "self- 398 signed" certificate. The authorityCertIssuer and 399 authorityCertSerialNumber sub fields MUST NOT be present. This 400 extension is non-critical. 402 The Key Identifier used here is the 160-bit SHA-1 hash of the value 403 of the DER-encoded ASN.1 bit string of the issuer's public key, as 404 described in Section 4.2.1.1 of [RFC3280]. 406 3.9.4. Key Usage 408 This describes the purpose of the certificate. This is a critical 409 extension, and it MUST be present. 411 In certificates issued to Certicate Authorities only the keyCertSign 412 and CRLSign bits are set to TRUE and MUST be the only bits set to 413 TRUE. 415 In end-entity certificates the digitialSignature bit MUST be set and 416 MUST be the only bit set to TRUE. 418 3.9.5. CRL Distribution Points 420 This field (CRLDP) identifies the location(s) of the CRL(s) 421 associated with certificates issued by this Issuer. This profile 422 uses the URI form of object identification. The preferred URI access 423 mechanism is a single RSYNC URI ("rsync://") [rsync] that references 424 a single inclusive CRL for each issuer. 426 In this profile the certificate issuer is also the CRL issuer, 427 implying at the CRLIssuer sub field MUST be omitted, and the 428 distributionPoint sub-field MUST be present. The Reasons sub-field 429 MUST be omitted. 431 The distributionPoint MUST contain general names, and MUST NOT 432 contain a nameRelativeToCRLIssuer. The type of the general name MUST 433 be of type URI. 435 In this profile, the scope of the CRL is specified to be all 436 certificates issued by this CA issuer using a given key pair. 438 The sequence of distributionPoint values MUST contain only a single 439 DistributionPointName set. The DistributionPointName set MAY contain 440 more than one URI value. An RSYNC URI MUST be present in the 441 DistributionPointName set, and reference the most recent instance of 442 this issuer's certificate revocation list. Other access form URIs 443 MAY be used in addition to the RSYNC URI. 445 This extension MUST be present and it is non-critical. There is one 446 exception; where a CA distributes its public key in the form of a 447 "self-signed" certificate, the CRLDP MUST be omitted. 449 3.9.6. Authority Information Access 451 This field (AIA) identifies the point of publication of the 452 certificate that is issued by the issuer's immediate superior CA, 453 where this certificate's issuer is the subject. In this profile a 454 single reference object to publication location of the immediate 455 superior certificate MUST be used, except in the case where a CA 456 distributes its public key in the form of a "self-signed" 457 certificate, the authority key identifier SHOULD be omitted. 459 This profile uses a URI form of object identification. The preferred 460 URI access mechanisms is "rsync", and an RSYNC URI MUST be specified 461 with an accessMethod value of id-ad-caIssuers. The URI MUST 462 reference the point of publication of the certificate where this 463 issuer is the subject (the issuer's immediate superior certificate). 464 Other access method URIs referencing the same object MAY also be 465 included in the value sequence of this extension. 467 When an Issuer re-issues a CA certificate, the subordinate 468 certificates need to reference this new certificate via the AIA 469 field. In order to avoid the situation where a certificate re- 470 issuance necessarily implies a requirement to re-issue all 471 subordinate certificates, CA Certificate issuers SHOULD use a 472 persistent URL name scheme for issued certificates. This implies 473 that re-issued certificates overwrite previously issued certificates 474 to the same subject in the publication repository, and use the same 475 publication name as previously issued certificates. In this way 476 subordinate certificates can maintain a constant AIA field value and 477 need not be re-issued due solely to a re-issue of the superior 478 certificate. The issuers' policy with respect to the persistence of 479 name objects of issued certificates MUST be specified in the Issuer's 480 Certificate Practice Statement. 482 This extension is non-critical. 484 3.9.7. Subject Information Access 486 This field (SIA) identifies the location of information and services 487 relating to the subject of the certificate in which the SIA extension 488 appears. Where the Subject is a CA in this profile, this information 489 and service collection will include all current valid certificates 490 that have been issued by this subject that are signed with the 491 subject's corresponding private key. 493 This profile uses a URI form of location identification. The 494 preferred URI access mechanism is "rsync", and an RSYNC URI MUST be 495 specified, with an access method value of id-ad-caRepository when the 496 subject of the certificate is a CA. The RSYNC URI must reference an 497 object collection rather than an individual object and MUST use a 498 trailing '/' in the URI. 500 Other access method URIs that reference the same location MAY also be 501 included in the value sequence of this extension. The ordering of 502 URIs in this sequence reflect the subject's relative preferences for 503 access methods, with the first method in the sequence being the most 504 preferred. 506 This field MUST be present when the subject is a CA, and is non- 507 critical. 509 For End Entity (EE) certificates, where the subject is not a CA, this 510 field MAY be present, and is non-critical. If present, it either 511 references the location where objects signed by the key pair 512 associated with the EE certificate can be accessed, or, in the case 513 of single-use EE certificates it references the location of the 514 single object that has been signed by the corresponding key pair. 516 When the subject is an End Entity, and it publishes objects signed 517 with the matching private key in a repository, the directory where 518 these signed objects is published is referenced the id-ad- 519 signedObjectRepository OID. 521 id-ad OBJECT IDENTIFIER ::= { id-pkix 48 } 523 id-ad-signedObjectRepository OBJECT IDENTIFIER ::= { id-ad 9 } 525 When the subject is an End Entity, and it publishes a single object 526 signed with the matching private key, the location where this signed 527 object is published is referenced the id-ad-signedObject OID. 529 id-ad-signedObject OBJECT IDENTIFIER ::= { id-ad 11 } 531 This profile requires the use of repository publication manifests 532 [ID.SIDR-MANIFESTS] to list all signed objects that are deposited in 533 the repository publication point assocaited with a CA or an EE. The 534 publication point of the manifest for a CA or EE is placed in the SIA 535 extension of the CA or EE certificate. This profile uses a URI form 536 of manifest identification for the accessLocation. The preferred URI 537 access mechanisms is "rsync", and an RSYNC URI MUST be specified. 538 Other accessDescription fields may exist with this id-ad-Manifest 539 accessMethod, where the accessLocation value indicates alternate URI 540 access mechanisms for the same manifest object. 542 id-ad-rpkiManifest OBJECT IDENTIFIER ::= { id-ad 10 } 544 CA certificates MUST include in the SIA an accessMethod OID of id-ad- 545 rpkiManifest, where the associated accessLocation refers to the 546 subject's published manifest object as an object URL. 548 When an EE certificate is intended for use in verifying multiple 549 objects, EE certificate MUST include in the SIA an access method OID 550 of id-ad-rpkiManifest, where the associated access location refers to 551 the publication point of the objects that are verified using this EE 552 certificate. 554 When an EE certificate is used to sign a single object, the EE 555 certificate MUST include in the SIA an access method OID of id-ad- 556 signedObject, where the associated access location refers to the 557 publication point of the single object that is verified using this EE 558 certificate. 560 3.9.8. Certificate Policies 562 This extension MUST reference the Resource Certificate Policy, using 563 the OID Policy Identifier value of "1.3.6.1.5.5.7.14.2". This field 564 MUST be present and MUST contain only this value for Resource 565 Certificates. 567 PolicyQualifiers MUST NOT be used in this profile. 569 This extension MUST be present and it is critical. 571 3.9.9. IP Resources 573 This field contains the list of IP address resources as per 574 [RFC3779]. The value may specify the "inherit" element for a 575 particular AFI value. In the context of resource certificates 576 describing public number resources for use in the public Internet, 577 the SAFI value MUST NOT be used. All Resource Certificates MUST 578 include an IP Resources extension, an AS Resources extension, or both 579 extensions. 581 This extension, if present, MUST be marked critical. 583 3.9.10. AS Resources 585 This field contains the list of AS number resources as per [RFC3779], 586 or may specify the "inherit" element. RDI values are NOT supported 587 in this profile and MUST NOT be used. All Resource Certificates MUST 588 include an IP Resources extension, an AS Resources extension, or both 589 extensions. 591 This extension, if present, MUST be marked critical. 593 4. Resource Certificate Revocation List Profile 595 Each CA MUST issue a version 2 Certificate Revocation List (CRL), 596 consistent with [RFC3280]. The CRL issuer is the CA, and no indirect 597 CRLs are supported in this profile. 599 An entry MUST NOT be removed from the CRL until it appears on one 600 regularly scheduled CRL issued beyond the revoked certificate's 601 validity period. 603 This profile does not allow issuance of Delta CRLs. 605 The scope of the CRL MUST be "all certificates issued by this CA 606 using a given key pair". The contents of the CRL are a list of all 607 non-expired certificates issued by the CA using a given key pair that 608 have been revoked by the CA. 610 The profile allows the issuance of multiple current CRLs with 611 different scope by a single CA, with the scope being defined by the 612 key pair used by the CA. 614 No CRL fields other than those listed here are permitted in CRLs 615 issued under this profile. Unless otherwise indicated, these fields 616 MUST be present in the CRL. Where two or more CRLs issued by a 617 single CA with the same scope, the CRL with the highest value of the 618 "CRL Number" field supersedes all other CRLs issued by this CA. 620 4.1. Version 622 Resource Certificate Revocation Lists are Version 2 certificates (the 623 integer value of this field is 1). 625 4.2. Issuer Name 627 The value of this field is the X.501 name of the issuing CA who is 628 also the signer of the CRL, and is identical to the Issuer name in 629 the Resource Certificates that are issued by this issuer. 631 4.3. This Update 633 This field contains the date and time that this CRL was issued. The 634 value of this field MUST be encoded as UTCTime for dates through the 635 year 2049, and MUST be encoded as GeneralizedTime for dates in the 636 year 2050 or later. 638 4.4. Next Update 640 This is the date and time by which the next CRL SHOULD be issued. 641 The value of this field MUST be encoded as UTCTime for dates through 642 the year 2049, and MUST be encoded as GeneralizedTime for dates in 643 the year 2050 or later. 645 4.5. Signature 647 This field contains the algorithm used to sign this CRL. This 648 profile specifies a minimum of SHA-256 with RSA 649 (sha256WithRSAEncryption), and allows for the use of SHA-384 or SHA- 650 512. This field MUST be present. 652 It is noted that larger key sizes are computationally expensive for 653 both the CRL Issuer and relying parties, indicating that care should 654 be taken when deciding to use larger than the minimum key size. 656 4.6. Revoked Certificate List 658 When there are no revoked certificates, then the revoked certificate 659 list MUST be absent. 661 For each revoked resource certificate only the following fields MUST 662 be present. No CRL entry extensions are supported in this profile, 663 and CRL entry extensions MUST NOT be present in a CRL. 665 4.6.1. Serial Number 667 The issuer's serial number of the revoked certificate. 669 4.6.2. Revocation Date 671 The time the certificate was revoked. This time SHOULD NOT be a 672 future date. The value of this field MUST be encoded as UTCTime for 673 dates through the year 2049, and MUST be encoded as GeneralizedTime 674 for dates in the year 2050 or later. 676 4.7. CRL Extensions 678 The X.509 v2 CRL format allows extensions to be placed in a CRL. The 679 following extensions are supported in this profile, and MUST be 680 present in a CRL. 682 4.7.1. Authority Key Identifier 684 The authority key identifier extension provides a means of 685 identifying the public key corresponding to the private key used to 686 sign a CRL. Conforming CRL issuers MUST use the key identifier 687 method. The syntax for this CRL extension is defined in section 688 4.2.1.1 of [RFC3280]. 690 This extension is non-critical. 692 4.7.2. CRL Number 694 The CRL Number extension conveys a monotonically increasing sequence 695 number of positive integers for a given CA and scope. This extension 696 allows users to easily determine when a particular CRL supersedes 697 another CRL. The highest CRL Number value supersedes all other CRLs 698 issued by the CA with the same scope. 700 This extension is non-critical. 702 5. Resource Certificate Request Profile 704 A resource certificate request MAY use either of PKCS#10 or 705 Certificate Request Message Format (CRMF). A CA Issuer MUST support 706 PKCS#10 and a CA Issuer may, with mutual consent of the subject, 707 support CRMF. 709 5.1. PCKS#10 Profile 711 This profile refines the specification in [RFC2986], as it relates to 712 Resource Certificates. A Certificate Request Message object, 713 formatted according to PKCS#10, is passed to a CA as the initial step 714 in issuing a certificate. 716 This request may be conveyed to the CA via a Registration Authority 717 (RA), acting under the direction of a Subject. 719 With the exception of the public key related fields, the CA is 720 permitted to alter any requested field when issuing a corresponding 721 certificate. 723 5.1.1. PKCS#10 Resource Certificate Request Template Fields 725 This profile applies the following additional constraints to fields 726 that may appear in a CertificationRequestInfo: 728 Version 729 This field is mandatory and MUST have the value 0. 731 Subject 732 This field is optional. If present, the value of this field 733 SHOULD be empty, in which case the issuer MUST generate a subject 734 name that is unique in the context of certificates issued by this 735 issuer. If the value of this field is non-empty, then the CA MAY 736 consider the value of this field as the subject's suggested 737 subject name, but the CA is NOT bound to honour this suggestion, 738 as the subject name MUST be unique per issuer in certificates 739 issued by this issuer. 741 SubjectPublicKeyInfo 742 This field specifies the subject's public key and the algorithm 743 with which the key is used. The public key algorithm MUST be RSA, 744 and the OID for the algorithm is 1.2.840.113549.1.1.1. This field 745 also includes a bit-string representation of the entity's public 746 key. For the RSA public-key algorithm the bit string contains the 747 DER encoding of a value of PKCS #1 type RSAPublicKey. 749 Attributes 750 [RFC2986] defines the attributes field as key-value pairs where 751 the key is an OID and the value's structure depends on the key. 753 The only attribute used in this profile is the ExtensionRequest 754 attribute as defined in [RFC2985]. This attribute contains X509v3 755 Certificate Extensions. The profile for extensions in certificate 756 requests is specified in Section 5.3. 758 This profile applies the following additional constraints to fields 759 that MAY appear in a CertificationRequest Object: 761 signatureAlgorithm 762 This profile specifies a minimum of SHA-256 with RSA 763 (sha256WithRSAEncryption), and allows for the use of SHA-384 or 764 SHA-512. Accordingly, the value for this field MUST be one of the 765 OID values { pkcs-1 11 }, { pkcs-1 12 } or { pkcs-1 13 } 766 [RFC4055]. 767 It is noted that larger key sizes are computationally expensive 768 for both the CA and relying parties, indicating that care should 769 be taken when deciding to use larger than the minimum key size. 771 5.2. CRMF Profile 773 This profile refines the Certificate Request Message Format (CRMF) 774 specification in [RFC4211], as it relates to Resource Certificates. 775 A Certificate Request Message object, formatted according to the 776 CRMF, is passed to a CA as the initial step in issuing a certificate. 778 This request MAY be conveyed to the CA via a Registration Authority 779 (RA), acting under the direction of a subject. 781 With the exception of the public key related fields, the CA is 782 permitted to alter any requested field when issuing a corresponding 783 certificate. 785 5.2.1. CRMF Resource Certificate Request Template Fields 787 This profile applies the following additional constraints to fields 788 that may appear in a Certificate Request Template: 790 Version 791 This field MAY be absent, or MAY specify the request of a Version 792 3 Certificate. It SHOULD be omitted. 794 SerialNumber 795 As per [RFC4211], this field is assigned by the CA and MUST be 796 omitted in this profile. 798 SigningAlgorithm 799 As per [RFC4211], this field is assigned by the CA and MUST be 800 omitted in this profile. 802 Issuer 803 This field is assigned by the CA and MUST be omitted in this 804 profile. 806 Validity 807 This field MAY be omitted. If omitted, the CA will issue a 808 Certificate with Validity dates as determined by the CA. If 809 specified, then the CA MAY override the requested values with 810 dates as determined by the CA. 812 Subject 813 This field is optional. If present, the value of this field 814 SHOULD be empty, in which case the issuer MUST generate a subject 815 name that is unique in the context of certificates issued by this 816 issuer. If the value of this field is non-empty, then the CA MAY 817 consider the value of this field as the subject's suggested 818 subject name, but the CA is NOT bound to honour this suggestion, 819 as the subject name MUST be unique per issuer in certificates 820 issued by this issuer. 822 PublicKey 823 This field MUST be present. 825 extensions 826 This attribute contains X509v3 Certificate Extensions. The 827 profile for extensions in certificate requests is specified in 828 Section 5.3. 830 5.2.2. Resource Certificate Request Control Fields 832 The following control fields are supported in this profile: 834 Authenticator Control 835 It is noted that the intended model of authentication of the 836 subject is a long term one, and the advice as offered in [RFC4211] 837 is that the Authenticator Control field be used. 839 5.3. Certificate Extension Attributes in Certificate Requests 841 The following extensions MAY appear in a PKCS#10 or CRMF Certificate 842 Request. Any other extensions MUST NOT appear in a Certificate 843 Request. This profile places the following additional constraints on 844 these extensions.: 846 BasicConstraints 847 If this is omitted then the CA will issue an end entity 848 certificate with the BasicConstraints extension not present in the 849 issued certificate. 851 The Path Length Constraint is not supported in this Resource 852 Certificate Profile, and this field MUST be omitted in this 853 profile. 855 The CA MAY honour the SubjectType CA bit set to on. If this bit 856 is set, then it indicates that the Subject is allowed to issue 857 resource certificates within this overall framework. 859 The CA MAY honour the SubjectType CA bit set to off (End Entity 860 certificate request), in which case the corresponding end entity 861 certificate will not contain a BasicConstraints extension. 863 SubjectKeyIdentifier 864 This field is assigned by the CA and MUST be omitted in this 865 profile. 867 AuthorityKeyIdentifier 868 This field is assigned by the CA and MUST be omitted in this 869 profile. 871 KeyUsage 872 The CA MAY honor KeyUsage extensions of keyCertSign and cRLSign if 873 present, as long as this is consistent with the BasicConstraints 874 SubjectType sub field, when specified. 876 SubjectInformationAccess 877 This field MUST be present when the subject is a CA, and the field 878 value SHOULD be honoured by the CA. If the CA is not able to 879 honor the requested field value, then the CA MUST reject the 880 Certificate Request. 882 This field (SIA) identifies the location of information and 883 services relating to the subject of the certificate in which the 884 SIA extension appears. 886 Where the subject is a CA in this profile, this information and 887 service collection will include all current valid certificates 888 that have been issued by this subject that are signed with the 889 subject's corresponding private key. 891 This profile uses a URI form of location identification. An RSYNC 892 URI MUST be specified, with an access method value of id-ad- 893 caRepository when the subject of the certificate is a CA. The 894 RSYNC URI MUST reference an object collection rather than an 895 individual object and MUST use a trailing '/' in the URI. Other 896 access method URIs that reference the same location MAY also be 897 included in the value sequence of this extension. The ordering of 898 URIs in this sequence reflect the subject's relative preferences 899 for access methods, with the first method in the sequence being 900 the most preferred by the Subject. 902 A request for a CA certificate MUST include in the SIA of the 903 request the id-ad-caRepository access method, and also MUST 904 include in the SIA of the request the accessMethod OID of id-ad- 905 rpkiManifest, where the associated accessLocation refers to the 906 subject's published manifest object as an object URL. 907 When an EE certificate is intended for use in verifying multiple 908 objects, the certificate request for the EE certificate MUST 909 include in the SIA of the request an access method OID of id-ad- 910 signedObjectRepository, and also MUST include in the SIA of the 911 request an access method OID of id-ad-rpkiManifest, where the 912 associated access location refers to the publication point of the 913 objects that are verified using this EE certificate. 914 When an EE certificate is used to sign a single object, the 915 certificate request for the EE certificate MUST include in the SIA 916 of the request an access method OID of id-ad-signedObject, where 917 the associated access location refers to the publication point of 918 the single object that is verified using this EE certificate, and 919 MUST NOT include an id-ad-rpkiManifest access method OID in the 920 SIA of the request. 921 CRLDistributionPoints 922 This field is assigned by the CA and MUST be omitted in this 923 profile. 925 AuthorityInformationAccess 926 This field is assigned by the CA and MUST be omitted in this 927 profile. 929 CertificatePolicies 930 This field is assigned by the CA and MUST be omitted in this 931 profile. 933 With the exceptions of the publicKey field and the 934 SubjectInformationAccess field, the CA is permitted to alter any 935 requested field. 937 6. Resource Certificate Validation 939 This section describes the Resource Certificate validation procedure. 940 This refines the generic procedure described in section 6 of 941 [RFC3280]: 943 To meet this goal, the path validation process verifies, among other 944 things, that a prospective certification path (a sequence of n 945 certificates) satisfies the following conditions: 947 1. for all x in {1, ..., n-1}, the subject of certificate x is the 948 issuer of certificate x+1; 950 2. certificate 1 is issued by a trust anchor; 952 3. certificate n is the certificate to be validated; and 954 4. for all x in {1, ..., n}, the certificate is valid. 956 6.1. Trust Anchors for Resource Certificates 958 The trust model that may be used in the resource certificate 959 framework in the context of validation of assertions of public number 960 resources in public-use contexts is one that readily maps to a top- 961 down delegated CA model that mirrors the delegation of resources from 962 a registry distribution point to the entities that are the direct 963 recipients of these resources. Within this trust model these 964 recipient entities may, in turn, operate a registry and perform 965 further allocations or assignments. This is a strict hierarchy, in 966 that any number resource and a corresponding recipient entity has 967 only one 'parent' issuing registry for that number resource (i.e. 968 there is always a unique parent entity for any resource and 969 corresponding entity), and that the issuing registry is not a direct 970 or indirect subordinate recipient entity of the recipient entity in 971 question (i.e. no loops in the model). 973 The more general consideration is that selection of a trust anchor CA 974 is a task undertaken by relying parties. The structure of the 975 resource certificate profile admits potentially the same variety of 976 trust models as the PKIX profile. There is only one additional 977 caveat on the general applicability of trust models and PKIX 978 frameworks, namely that in forming a validation path to a trust 979 anchor CA, the sequence of certificates MUST preserve the resource 980 extension validation property, as described in Section 6.2, and the 981 validation of the first certificate in the validation path not only 982 involves the verification that the certificate was issued by a trust 983 anchor CA, but also that the resource set described in the 984 certificate MUST be encompassed by the trust anchor CA's resource 985 set, as described in Section 6.2. 987 The trust anchor information, describing a CA that serves as a trust 988 anchor, includes the following: 989 1. the trusted issuer name, 990 2. the trusted public key algorithm, 991 3. the trusted public key, 992 4. optionally, the trusted public key parameters associated with the 993 public key, and 994 5. a resource set, consisting of a set of IPv4 resources, IPv6 995 resources and AS number resources. 997 The trust anchor information may be provided to the path processing 998 procedure in the form of a self-signed certificate. 1000 6.2. Resource Extension Validation 1002 The IP resource extension definition [RFC3779] defines a critical 1003 extensions for Internet number resources. These are ASN.1 encoded 1004 representations of the IPv4 and IPv6 address range (either as a 1005 prefix/length, or start-end pair) and the AS number set. 1007 Valid Resource Certificates MUST have a valid IP address and/or AS 1008 number resource extension. In order to validate a Resource 1009 Certificate the resource extension must also be validated. This 1010 validation process relies on definitions of comparison of resource 1011 sets: 1013 more specific: Given two IP address or AS number contiguous ranges, 1014 A and B, A is "more specific" than B if range B includes all IP 1015 addresses or AS numbers described by range A, and if range B is 1016 larger than range A. 1018 equal: Given two IP address or AS number contiguous ranges, A and B, 1019 A is "equal" to B if range A describes precisely the same 1020 collection of IP addresses or AS numbers as described by range B. 1021 The definition of "inheritance" in [RFC3779] is equivalent to this 1022 "equality" comparison. 1023 encompass: Given two IP address and AS number sets X and Y, X 1024 "encompasses" Y if, for every contiguous range of IP addresses or 1025 AS numbers elements in set Y, the range element is either more 1026 specific than or equal to a contiguous range element within the 1027 set X. 1029 Validation of a certificate's resource extension in the context of an 1030 ordered certificate sequence of {1,2, ... , n} where '1'is issued by 1031 a trust anchor and 'n' is the target certificate, and where the 1032 subject of certificate 'x' is the issuer of certificate 'x' + 1, 1033 implies that the resources described in certificate 'x' "encompass" 1034 the resources described in certificate 'x' + 1, and the resources 1035 described in the trust anchor information "encompass" the resources 1036 described in certificate 1. 1038 6.3. Resource Certificate Path Validation 1040 Validation of signed resource data using a target resource 1041 certificate consists of assembling an ordered sequence (or 1042 'Certificate Path') of certificates ({1,2,...n} where '1' is a 1043 certificate that has been issued by a trust anchor, and 'n' is the 1044 target certificate) verifying that all of the following conditions 1045 hold: 1047 1. The certificate can be verified using the Issuer's public key and 1048 the signature algorithm 1050 2. The current time lies within the certificate's Validity From and 1051 To values. 1053 3. The certificate contains all fields that MUST be present and 1054 contains field values as specified in this profile for all field 1055 values that MUST be present. 1057 4. No field value that MUST NOT be present in this profile is 1058 present in the certificate. 1060 5. The Issuer has not revoked the certificate by placing the 1061 certificate's serial number on the Issuer's current Certificate 1062 Revocation List, and the Certificate Revocation List is itself 1063 valid. 1065 6. That the resource extension data is "encompassed" by the resource 1066 extension data contained in a valid certificate where this Issuer 1067 is the Subject (the previous certificate in the ordered sequence) 1069 7. The Certificate Path originates with a certificate issued by a 1070 trust anchor, and there exists a signing chain across the 1071 Certificate Path where the Subject of Certificate x in the 1072 Certificate Path matches the Issuer in Certificate x+1 in the 1073 Certificate Path. 1075 A certificate validation algorithm may perform these tests in any 1076 chosen order. 1078 Certificates and CRLs used in this process may be found in a locally 1079 maintained cache, maintained by a regular top-down synchronization 1080 pass, seeded with the CAs who operate at the apex of the resource 1081 distribution hierarchy, via reference to Issued certificates and 1082 their SIA fields as forward pointers, plus the CRLDP. Alternatively, 1083 validation may be performed using a bottom-up process with on-line 1084 certificate access using the AIA and CRLDP pointers to guide the 1085 certificate retrieval process. 1087 There exists the possibility of encountering certificate paths that 1088 are arbitrarily long, or attempting to generate paths with loops as 1089 means of creating a potential DOS attack on a certificate validator. 1090 Some further heuristics may be required to halt the certificate path 1091 validation process in order to avoid some of the issues associated 1092 with attempts to validate such structures. It is suggested that 1093 implementations of Resource Certificate validation MAY halt with a 1094 validation failure if the certificate path length exceeds a pre- 1095 determined configuration parameter. 1097 7. Security Considerations 1099 The Security Considerations of [RFC3280] and [RFC3779]apply to 1100 Resource Certificates as defined by this profile, and their use. 1102 A Resource Certificate PKI cannot in and of itself resolve any forms 1103 of ambiguity relating to uniqueness of assertions of rights of use in 1104 the event that two or more valid certificates encompass the same 1105 resource. If the issuance of resource certificates is aligned to the 1106 status of resource allocations and assignments then the information 1107 conveyed in a certificate is no better than the information in the 1108 allocation and assignment databases. 1110 8. IANA Considerations 1112 [Note to IANA, to be removed prior to publication: there are no IANA 1113 considerations stated in this version of the document.] 1115 9. Acknowledgements 1117 The authors would like to acknowledge the valued contributions from 1118 Stephen Kent, Robert Kisteleki, Randy Bush, Russ Housley, Ricardo 1119 Patara and Rob Austein in the preparation and subsequent review of 1120 this document. The document also reflects review comments received 1121 from Sean Turner. 1123 10. References 1125 10.1. Normative References 1127 [ID.SIDR-MANIFESTS] 1128 Austein, R., Huston, G., Kent, S., and M. Lepinski, 1129 "Manifests for the Resource Public Key Infrastructure", 1130 Work in progress: Internet 1131 Drafts draft-ietf-sidr-rpki-manifests-00.txt, 1132 January 2008. 1134 [RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791, 1135 September 1981. 1137 [RFC2050] Hubbard, K., Kosters, M., Conrad, D., Karrenberg, D., and 1138 J. Postel, "INTERNET REGISTRY IP ALLOCATION GUIDELINES", 1139 BCP 12, RFC 2050, November 1996. 1141 [RFC3280] Housley, R., Polk, W., Ford, W., and D. Solo, "Internet 1142 X.509 Public Key Infrastructure Certificate and 1143 Certificate Revocation List (CRL) Profile", RFC 3280, 1144 April 2002. 1146 [RFC3779] Lynn, C., Kent, S., and K. Seo, "X.509 Extensions for IP 1147 Addresses and AS Identifiers", RFC 3779, June 2004. 1149 [RFC4055] Schaad, J., Kaliski, B., and R. Housley, "Additional 1150 Algorithms and Identifiers for RSA Cryptography for use in 1151 the Internet X.509 Public Key Infrastructure Certificate 1152 and Certificate Revocation List (CRL) Profile", RFC 4055, 1153 June 2005. 1155 [RFC4211] Schaad, J., "Internet X.509 Public Key Infrastructure 1156 Certificate Request Message Format (CRMF)", RFC 4211, 1157 September 2005. 1159 [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing 1160 Architecture", RFC 4291, February 2006. 1162 10.2. Informative References 1164 [RFC2985] Nystrom, M. and B. Kaliski, "PKCS #9: Selected Object 1165 Classes and Attribute Types Version 2.0", RFC 2985, 1166 November 2000. 1168 [RFC2986] Nystrom, M. and B. Kaliski, "PKCS #10: Certification 1169 Request Syntax Specification Version 1.7", RFC 2986, 1170 November 2000. 1172 [RFC4158] Cooper, M., Dzambasow, Y., Hesse, P., Joseph, S., and R. 1173 Nicholas, "Internet X.509 Public Key Infrastructure: 1174 Certification Path Building", RFC 4158, September 2005. 1176 [rsync] Tridgell, A., "rsync", April 2006, 1177 . 1179 Appendix A. Example Resource Certificate 1181 The following is an example Resource Certificate. 1183 Certificate Name: hu9fdDBq60mrk7cPRuX2DYuXSRQ-3.cer 1185 Data: 1186 Version: 3 1187 Serial: 3 1188 Signature Algorithm: Hash: SHA256, Encryption: RSA 1189 Issuer: CN=Demo Production APNIC CA - Not for real use, 1190 E=ca@apnic.net 1191 Validity: 1192 Not Before: Thu Jul 27 06:34:04 2006 GMT 1193 Not After: Fri Jul 27 06:34:04 2007 GMT 1194 Subject: CN=APNIC own-use network resources 1195 Subject Key Identifier: 1196 86:ef:5f:74:30:6a:eb:49:ab:93:b7:0f:46:e5:f6:0d: 1197 8b:97:49:14 1198 Subject Key Identifier g(SKI): 1200 hu9fdDBq60mrk7cPRuX2DYuXSRQ 1201 Subject Public Key Info: 1202 Public Key Algorithm: rsaEncryption 1203 RSA Public Key: Modulus: 1204 c1:25:a1:b0:db:89:83:a0:fc:f1:c0:e4:7b:93:76:c1: 1205 59:b7:0d:ac:25:25:ed:88:ce:00:03:ea:99:1a:9a:2a: 1206 0e:10:2e:5f:c0:45:87:47:81:7b:1d:4d:44:aa:65:a3: 1207 f8:07:84:32:ea:04:70:27:05:2b:79:26:e6:e6:3a:cb: 1208 b2:9a:65:6c:c1:4e:d7:35:fb:f6:41:1e:8b:1c:b8:e4: 1209 5a:3a:d6:d0:7b:82:9a:23:03:f8:05:4c:68:42:67:fe: 1210 e7:45:d9:2c:a6:d1:b3:da:cf:ad:77:c5:80:d2:e3:1e: 1211 4d:e8:bf:a2:f2:44:10:b2:2f:61:bc:f4:89:31:54:7c: 1212 56:47:d5:b1:c3:48:26:95:93:c9:6f:70:14:4d:ac:a5: 1213 c2:8e:3d:1f:6d:f8:d4:93:9d:14:c7:15:c7:34:8e:ba: 1214 dd:70:b3:c2:2b:08:78:59:97:dd:e4:34:c7:d8:de:5c: 1215 f7:94:6f:95:59:ba:29:65:f5:98:15:8f:8e:57:59:5d: 1216 92:1f:64:2f:b5:3d:69:2e:69:83:c2:10:c6:aa:8e:03: 1217 d5:69:11:bd:0d:b5:d8:27:6c:74:2f:60:47:dd:2e:87: 1218 24:c2:36:68:2b:3c:fd:bd:22:57:a9:4d:e8:86:3c:27: 1219 03:ce:f0:03:2e:59:ce:05:a7:41:3f:2f:64:50:dd:e7 1220 RSA Public Key: Exponent: 65537 1221 Basic Constraints: CA: TRUE 1222 Subject Info Access: 1223 caRepository - rsync://repository.apnic.net/APNIC/ 1224 pvpjvwUeQix2e54X8fGbhmdYMo0/ 1225 q66IrWSGuBE7jqx8PAUHAlHCqRw/ 1226 hu9fdDBq60mrk7cPRuX2DYuXSRQ/ 1227 Key Usage: keyCertSign, cRLSign 1228 CRL Distribution Points: 1229 rsync://repository.apnic.net/APNIC/ 1230 pvpjvwUeQix2e54X8fGbhmdYMo0/ 1231 q66IrWSGuBE7jqx8PAUHAlHCqRw/ 1232 q66IrWSGuBE7jqx8PAUHAlHCqRw.crl 1233 Authority Info Access: caIssuers - 1234 rsync://repository.apnic.net/APNIC/ 1235 pvpjvwUeQix2e54X8fGbhmdYMo0/ 1236 q66IrWSGuBE7jqx8PAUHAlHCqRw.cer 1237 Authority Key Identifier: Key Identifier: 1238 ab:ae:88:ad:64:86:b8:11:3b:8e:ac:7c:3c:05:07:02: 1239 51:c2:a9:1c 1240 Authority Key Identifier: Key Identifier g(AKI): 1241 q66IrWSGuBE7jqx8PAUHAlHCqRw 1242 Certificate Policies: 1.3.6.1.5.5.7.14.2 1243 IPv4: 192.0.2.0/24, 1244 IPv6: 2001:DB8::/32 1245 ASNum: 4608, 4777, 9545, 18366-18370 1246 Signature: 1247 c5:e7:b2:f3:62:cb:e3:bc:50:1e:6b:90:13:19:f4:5b: 1249 4a:1c:1c:ab:b5:de:b1:a4:22:e0:28:f5:3b:d0:8c:59: 1250 0f:85:f2:06:a6:ae:22:e6:d0:99:fe:cb:eb:1d:6a:e2: 1251 a3:f1:a2:25:95:ec:a7:7d:96:35:dc:16:a7:2f:f5:b7: 1252 11:ba:97:05:57:5f:5d:07:5a:c8:19:c8:27:d3:f7:a3: 1253 92:66:cb:98:2d:e1:7f:a8:25:96:ab:af:ed:87:02:28: 1254 f5:ae:b6:e3:0c:f7:18:82:70:82:f4:76:54:06:b9:9f: 1255 e1:a5:f7:ae:72:dd:ee:f0:d4:d2:78:bb:61:73:cf:51: 1256 26:9f:ea:e8:20:49:06:ba:0c:ac:1d:f6:07:b8:63:a0: 1257 4d:3d:8e:12:84:3a:d0:ec:94:7e:02:db:d4:85:cf:12: 1258 5c:7b:12:1a:52:ab:3c:ba:00:f2:71:e7:f0:fd:b3:f4: 1259 81:e8:a7:cb:07:ca:3a:a4:24:fe:dc:bb:51:16:6a:28: 1260 33:40:a4:64:60:75:0e:c8:06:c8:5f:e5:98:be:16:a3: 1261 bc:19:e7:b3:4f:00:0a:8e:81:33:dd:4c:a0:fb:f5:1c: 1262 1f:1d:3f:b5:90:8b:ec:98:67:76:95:56:8a:94:45:54: 1263 52:3d:1c:69:4c:6f:8a:9f:09:ec:ef:b0:a9:bc:cf:9d 1265 Appendix B. Example Certificate Revocation List 1267 The following is an example Certificate Revocation List. 1269 CRL Name: q66IrWSGuBE7jqx8PAUHAlHCqRw.crl 1271 Data: 1272 Version: 2 1273 Signature Algorithm: 1274 Hash: SHA256, Encryption: RSA 1275 Issuer: CN=Demo Production APNIC CA - Not for real use, 1276 E=ca@apnic.net 1277 This Update: Thu Jul 27 06:30:34 2006 GMT 1278 Next Update: Fri Jul 28 06:30:34 2006 GMT 1279 Authority Key Identifier: Key Identifier: 1280 ab:ae:88:ad:64:86:b8:11:3b:8e:ac:7c:3c:05: 1281 07:02:51:c2:a9:1c 1282 Authority Key Identifier: Key Identifier g(AKI): 1283 q66IrWSGuBE7jqx8PAUHAlHCqRw 1284 CRLNumber: 4 1285 Revoked Certificates: 1 1286 Serial Number: 1 1287 Revocation Date: Mon Jul 17 05:10:19 2006 GMT 1288 Serial Number: 2 1289 Revocation Date: Mon Jul 17 05:12:25 2006 GMT 1290 Serial Number: 4 1291 Revocation Date: Mon Jul 17 05:40:39 2006 GMT 1292 Signature: 1293 b2:5a:e8:7c:bd:a8:00:0f:03:1a:17:fd:40:2c:46: 1294 0e:d5:64:87:e7:e7:bc:10:7d:b6:3e:39:21:a9:12: 1295 f4:5a:d8:b8:d4:bd:57:1a:7d:2f:7c:0d:c6:4f:27: 1296 17:c8:0e:ae:8c:89:ff:00:f7:81:97:c3:a1:6a:0a: 1297 f7:d2:46:06:9a:d1:d5:4d:78:e1:b7:b0:58:4d:09: 1298 d6:7c:1e:a0:40:af:86:5d:8c:c9:48:f6:e6:20:2e: 1299 b9:b6:81:03:0b:51:ac:23:db:9f:c1:8e:d6:94:54: 1300 66:a5:68:52:ee:dd:0f:10:5d:21:b8:b8:19:ff:29: 1301 6f:51:2e:c8:74:5c:2a:d2:c5:fa:99:eb:c5:c2:a2: 1302 d0:96:fc:54:b3:ba:80:4b:92:7f:85:54:76:c9:12: 1303 cb:32:ea:1d:12:7b:f8:f9:a2:5c:a1:b1:06:8e:d8: 1304 c5:42:61:00:8c:f6:33:11:29:df:6e:b2:cc:c3:7c: 1305 d3:f3:0c:8d:5c:49:a5:fb:49:fd:e7:c4:73:68:0a: 1306 09:0e:6d:68:a9:06:52:3a:36:4f:19:47:83:59:da: 1307 02:5b:2a:d0:8a:7a:33:0a:d5:ce:be:b5:a2:7d:8d: 1308 59:a1:9d:ee:60:ce:77:3d:e1:86:9a:84:93:90:9f: 1309 34:a7:02:40:59:3a:a5:d1:18:fb:6f:fc:af:d4:02: 1310 d9 1312 Authors' Addresses 1314 Geoff Huston 1315 Asia Pacific Network Information Centre 1316 33 Park Rd. 1317 Milton, QLD 4064 1318 Australia 1320 Email: gih@apnic.net 1321 URI: http://www.apnic.net 1323 George Michaelson 1324 Asia Pacific Network Information Centre 1325 33 Park Rd. 1326 Milton, QLD 4064 1327 Australia 1329 Email: ggm@apnic.net 1330 URI: http://www.apnic.net 1332 Robert Loomans 1333 Asia Pacific Network Information Centre 1334 33 Park Rd. 1335 Milton, QLD 4064 1336 Australia 1338 Email: robertl@apnic.net 1339 URI: http://www.apnic.net 1341 Full Copyright Statement 1343 Copyright (C) The IETF Trust (2008). 1345 This document is subject to the rights, licenses and restrictions 1346 contained in BCP 78, and except as set forth therein, the authors 1347 retain all their rights. 1349 This document and the information contained herein are provided on an 1350 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 1351 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 1352 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 1353 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 1354 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1355 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 1357 Intellectual Property 1359 The IETF takes no position regarding the validity or scope of any 1360 Intellectual Property Rights or other rights that might be claimed to 1361 pertain to the implementation or use of the technology described in 1362 this document or the extent to which any license under such rights 1363 might or might not be available; nor does it represent that it has 1364 made any independent effort to identify any such rights. Information 1365 on the procedures with respect to rights in RFC documents can be 1366 found in BCP 78 and BCP 79. 1368 Copies of IPR disclosures made to the IETF Secretariat and any 1369 assurances of licenses to be made available, or the result of an 1370 attempt made to obtain a general license or permission for the use of 1371 such proprietary rights by implementers or users of this 1372 specification can be obtained from the IETF on-line IPR repository at 1373 http://www.ietf.org/ipr. 1375 The IETF invites any interested party to bring to its attention any 1376 copyrights, patents or patent applications, or other proprietary 1377 rights that may cover technology that may be required to implement 1378 this standard. Please address the information to the IETF at 1379 ietf-ipr@ietf.org. 1381 Acknowledgment 1383 Funding for the RFC Editor function is provided by the IETF 1384 Administrative Support Activity (IASA).