Network Working Group                                        M. Reynolds
Internet-Draft                                                       BBN
Updates: [ID.sidr-res-cert-profile]                            S. Turner
Intended Status: Standards Track                                    IECA
Expires: February 3, 2012                                 August 2, 2011

               A Profile for BGPSEC Router Certificates,
        Certificate Revocation Lists, and Certification Requests


   This document defines a standard profile for X.509 certificates for
   the purposes of supporting validation of Autonomous System (AS) paths
   in the Border Gateway Protocol (BGP), as part of an extension to that
   protocol known as BGPSEC.  BGP is a critical component for the proper
   operation of the Internet as a whole.  The BGPSEC protocol is under
   development as a component to address the requirement to provide
   security for the BGP protocol.  The goal of BGPSEC is to design a
   protocol for full AS path validation based on the use of strong
   cryptographic primitives.  The end-entity (EE) certificates specified
   by this profile are issued under Resource Public Key Infrastructure
   (RPKI) Certification Authority (CA) certificates, containing the AS
   number extension, to routers within the Autonomous System (AS).  The
   certificate asserts that the router(s) holding the private key are
   authorized to send out secure route advertisements on behalf of the
   specified AS.  This document also profiles the Certificate Revocation
   List (CRL), profiles the format of certification requests, and
   specifies Relying Party certificate path validation procedures.  The
   document extends the RPKI; therefore, this documents updates the RPKI
   Resource Certificates Profile (draft-ietf-sidr-res-cert-profile).

Status of this Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on February 3, 2012.

Reynolds & Turner       Expires February 3, 2012                [Page 1]

Internet-Draft         BGPSEC Router PKI Profiles         August 2, 2011

Copyright Notice

   Copyright (c) 2011 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   ( in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

1.  Introduction

   This document defines a profile for X.509 end-entity (EE)
   certificates [RFC5280] for use in the context of certification of
   Autonomous System (AS) paths in the Border Gateway Protocol Security
   (BGPSEC) protocol.  Such certificates are termed "BGPSEC Router
   Certificates".  The holder of the private key associated with a
   BGPSEC Router Certificate is authorized to send secure route
   advertisements (BGPSEC UPDATEs) on behalf of the AS named in the
   certificate.  That is, a router holding the private key may send to
   its BGP peers, route advertisements that contain the specified AS
   number as the last item in the AS PATH attribute.  A key property
   that BGPSEC will provide is that every AS along the AS PATH can
   verify that the other ASes along the path have authorized the
   advertisement of the given route (to the next AS along the AS PATH).

   This document is a profile of [ID.sidr-res-cert-profile], which is a
   profile of [RFC5280], and it updates [ID.sidr-res-cert-profile].  It
   establishes requirements imposed on a Resource Certificate that is
   used as a BGPSEC Router Certificate, i.e., it defines constraints for
   certificate fields and extensions for the certificate to be valid in
   this context.  This document also profiles the Certificate Revocation
   List (CRL) and certification requests.  Finally, this document
   specifies the Relying Party (RP) certificate path validation

1.1.  Terminology

   It is assumed that the reader is familiar with the terms and concepts
   described in "A Profile for X.509 PKIX Resource Certificates"
   [ID.sidr-res-cert-profile], "BGPSEC Protocol Specification" [ID.sidr-
   bgpsec-protocol], "A Border Gateway Protocol 4 (BGP-4)" [RFC4271],
   "BGP Security Vulnerabilities Analysis" [RFC4272], "Considerations in

Reynolds & Turner       Expires February 3, 2012                [Page 2]

Internet-Draft         BGPSEC Router PKI Profiles         August 2, 2011

   Validating the Path in BGP" [RFC5123], and "Capability Advertisement
   with BGP-4" [RFC5492].

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "OPTIONAL" in this document are to be interpreted as described in

2.  Describing Resources in Certificates

   Figure 1 depicts some of the entities in the RPKI and some of the
   products generated by RPKI entities.  IANA issues a Certification
   Authority (CA) to a Regional Internet Registries (RIR).  The RIR, in
   turn, issues a CA certificate to an Internet Service Providers (ISP).
    The ISP in turn issues End-Entity (EE) Certificates to itself as
   well as CRLs.  These certificates are referred to as "Resource
   Certificates", and are profiled in [ID.sidr-res-cert-profile].  The
   [ID.sidr-arch] envisioned using Resource Certificates to generate
   Manifests [ID.sidr-rpki-manifests] and Route Origin Authorizations
   (ROAs) [ID.sidr-rpki-roa-format].  ROAs and Manifests also include
   the Resource Certificates used to sign them.

                +---------+   +------+
                | CA Cert |---| IANA |
                +---------+   +------+
                      +---------+   +-----+
                      | CA Cert |---| RIR |
                      +---------+   +-----+
                             +---------+   +-----+
                             | CA Cert |---| ISP |
                             +---------+   +-----+
                              / |            | |
                   +-----+   /  |            | |   +-----+
                   | CRL |--+   |            | +---| ROA |
                   +-----+      |            |     +-----+
                                |            |   +----------+
                       +----+   |            +---| Manifest |
                     +-| EE |---+                +----------+
                     | +----+
                                Figure 1

   This document defines another type of Resource Certificate, which is
   referred to as a "BGPSEC Router Certificate".  The purpose of this
   certificate is explained in Section 1 and falls within the scope of

Reynolds & Turner       Expires February 3, 2012                [Page 3]

Internet-Draft         BGPSEC Router PKI Profiles         August 2, 2011

   appropriate uses defined within [ID.sidr-cp].  The issuance of BGPSEC
   Router Certificates has minimal impact on RPKI CAs because the RPKI
   CA certificate and CRL profile remain unchanged (i.e., they are as
   specified in [ID.sidr-res-cert-profile]).  Further, the algorithms
   used to generate RPKI CA certificates that issue the BGPSEC Router
   Certificates and the CRLs necessary to check the validity of the
   BGPSEC Router Certificates remain unchanged (i.e., they are as
   specified in [ID.sidr-rpki-algs]).  The only impact is that the RPKI
   CAs will need to be able to process a profiled certificate request
   (see Section 5) signed with algorithms found in [ID.turner-sidr-
   bgpsec-algs].  The use of BGPSEC Router Certificates in no way
   affects RPKI RPs that process Manifests and ROAs because the public
   key found in the BGPSEC Router Certificate is only ever used to
   verify the signature on the BGPSEC certificate request (only CAs
   process these), another BGPSEC Router Certificate (only BGPSEC
   routers process these), and the signature on a BGPSEC Update Message
   [ID.sidr-bgpsec-protocol] (only BGPSEC routers process these).

   Only the differences between this profile and the profile in
   [ID.sidr-res-cert-profile] are listed.  Note that BGPSEC Router
   Certificates are EE certificates and as such there is no impact on
   process described in [ID.sidr-algorithm-agility].

3.  Updates to [ID.sidr-res-cert-profile]

3.1  BGPSEC Router Certificate Fields

   A BGPSEC Router Certificate is a valid X.509 public key certificate,
   consistent with the PKIX profile [RFC5280] and [ID.sidr-res-cert-
   profile], containing the fields listed in this section.  Only the
   differences between this profile and the profile in [ID.sidr-res-
   cert-profile] are listed.  Subject

   This field identifies the router to which the certificate has been
   issued.  Consistent with [ID.sidr-res-cert-profile], only two
   attributes are allowed in the Subject field: common name and serial
   number.  Moreover, the only common name encoding options that are
   supported are printableString and UTF8String.  For BGPSEC Router
   Certificates, it is RECOMMENDED that the common name attribute
   contain the literal string "ROUTER-" followed by the 32-bit AS Number
   [RFC3779] encoded as eight hexadecimal digits and that the serial
   number attribute contain the 32-bit BGP Identifier [RFC4271] (i.e.,
   the router ID) encoded as eight hexadecimal digits.  If the same
   certificate is issued to more than one router (hence the private key
   is shared among these routers), the choice of the router ID used in
   this name is at the discretion of the Issuer.  Note that router IDs

Reynolds & Turner       Expires February 3, 2012                [Page 4]

Internet-Draft         BGPSEC Router PKI Profiles         August 2, 2011

   are not guaranteed to be unique across the Internet, and thus the
   Subject name in a BGPSEC Router Certificate issued using this
   convention also is not guaranteed to be unique across different
   issuers.  However, each certificate issued by an individual CA MUST
   contain a Subject name that is unique within that context.

3.1.2.  Subject Public Key Info

   Refer to section 3.1 of [ID.turner-sidr-bgpsec-algs].

3.1.3.  BGPSEC Router Certificate Version 3 Extension Fields

   The following X.509 V3 extensions MUST be present (or MUST be absent,
   if so stated) in a conforming BGPSEC Router Certificate, except where
   explicitly noted otherwise.  No other extensions are allowed in a
   conforming BGPSEC Router Certificate.  Extended Key Usage

   BGPSEC Router Certificates MUST include the Extended Key Usage (EKU)
   extension.  As specified, in [ID.sidr-res-cert-profile] this
   extension MUST be marked as non-critical.  This document defines one
   EKU for BGPSEC Router Certificates:

     id-kp OBJECT IDENTIFIER ::=
        { iso(1) identified-organization(3) dod(6) internet(1)
          security(5) mechanisms(5) pkix(7) TBD }

     id-kp-bgpsec-router OBJECT IDENTIFIER ::= { id-kp TBD }

   Relying Parties MUST require the extended key usage extension to be
   present in a BGPSEC Router Certificate.  If multiple KeyPurposeId
   values are included, the relying parties need not recognize all of
   them, as long as the required KeyPurposeId value is present.  BGPSEC
   RPs MUST reject certificates that do not contain the BGPSEC Router
   EKU even if they include the anyExtendedKeyUsage OID defined in
   [RFC5280].  Subject Information Access

   This extension is not used in BGPSEC Router Certificates. It MUST be
   omitted.  IP Resources

   This extension is not used in BGPSEC Router Certificates. It MUSt be

Reynolds & Turner       Expires February 3, 2012                [Page 5]

Internet-Draft         BGPSEC Router PKI Profiles         August 2, 2011  AS Resources

   Each BGPSEC Router Certificate MUST include the AS Resource
   extension, as specified in section 4.8.11 of [ID.sidr-res-cert-
   profile].  The AS Resource extension MUST include exactly one AS
   number, and the "inherit" element MUST NOT be specified.

3.2.  BGPSEC Router Certificate Request Profile

   Refer to section 6 of [ID.sidr-res-cert-profile].  The only
   differences between this profile and the profile in [ID.sidr-res-
   cert-profile] are:

    o The ExtendedKeyUsage extension request MUST be included and the CA
      MUST honor the request;

    o The SubjectPublicKeyInfo and PublicKey fields are specified in
      [ID.turner-sidr-bgpsec-algs]; and,

    o The request is signed with the algorithms specified in [ID.turner-

3.3.  BGPSEC Router Certificate Validation

   The validation procedure used for BGPSEC Router Certificates is
   identical to the validation procedure described in Section 7 of
   [ID.sidr-res-cert-profile] except that where "this specification"
   refers to [ID.sidr-res-cert-profile] in that profile in this profile
   "this specification" is this document.

   The differences are as follows:

    o BGPSEC Router Certificates MUST include the BGPSEC EKU defined in
      Section 3.9.5.

    o BGPSEC Router Certificates MUST NOT include the SIA extension.

    o BGPSEC Router Certificates MUST NOT include the IP Resource

    o BGPSEC Router Certificates MUST include the AS Resource extension.

4.  Design Notes

      The BGPSEC Router Certificate profile is based on the Resource
      Certificate profile as specified in [ID.sidr-res-cert-profile].
      As a result, many of the design choices herein are a reflection of
      the design choices that were taken in that prior work.  The reader

Reynolds & Turner       Expires February 3, 2012                [Page 6]

Internet-Draft         BGPSEC Router PKI Profiles         August 2, 2011

      is referred to [ID.sidr-res-cert-profile] for a fuller discussion
      of those choices.

5.  Security Considerations

      The Security Considerations of [ID.sidr-res-cert-profile] apply.

      A bgpsec certificate will fail RPKI validation, as defined in
      [ID.sidr-res-cert-profile], because the algorithm suite is
      different. Consequently, a RP needs to identify the EKU before
      applying the correspondent validation.

      A BGPSEC Router Certificate is an extension of the RPKI [ID.sidr-
      arch] to encompass routers.  It is a building block of the larger
      BGPSEC security protocol used to validate signatures on BGPSEC
      Signature-Segment origination of Signed-Path segments [ID.sidr-
      bgpsec-protocol].  Thus its essential security function is the
      secure binding of an AS number to a public key, consistent with
      the RPKI allocation/assignment hierarchy.

6.  IANA Considerations


7.  Acknowledgements

      We would like to thanks Geoff Huston, George Michaelson, and
      Robert Loomans for their work on [ID.sidr-res-cert-profile], which
      this work is based on.  In addition, the efforts of Steve Kent and
      Matt Lepinski were instrumental in preparing this work.
      Additionally, we'd like to thank Roque Gagliano for his helpful
      suggestion about including an EKU and the validation security
      consideration section.  We'd like to thank Sandra Murphy and Geoff
      Huston for their reviews.

8.  Normative References

8.1.  Normative References

   [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
             Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC3779] Lynn, C., Kent, S., and K. Seo, "X.509 Extensions for IP
             Addresses and AS Identifiers", RFC 3779, June 2004.

   [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A Border
             Gateway Protocol 4 (BGP-4)", RFC 4271, January 2006.

Reynolds & Turner       Expires February 3, 2012                [Page 7]

Internet-Draft         BGPSEC Router PKI Profiles         August 2, 2011

   [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S.,
             Housley, R., and W. Polk, "Internet X.509 Public Key
             Infrastructure Certificate and Certificate Revocation List
             (CRL) Profile", RFC 5280, May 2008.

   [ID.sidr-res-cert-profile]  Huston, G., Michaelson, G., and R.
             Loomans, "A Profile for X.509 PKIX Resource Certificates",
             draft-ietf-sidr-res-certs, work-in-progress.

   [ID.sidr-rpki-algs]  Huston, G., "The Profile for Algorithms and Key
             Sizes for use in the Resource Public Key Infrastructure",
             draft-ietf-sidr-rpki-algs, work-in-progress.

   [ID.turner-sidr-bgpsec-algs]  Reynolds, M. and S. Turner, "BGP
             Algorithms, Key Formats, & Signature Formats", draft-
             turner-sidr-bgpsec-algs, work-in-progress.

8.2.  Informative References

   [RFC4272] Murphy, S., "BGP Security Vulnerabilities Analysis",
             RFC 4272, January 2006.

   [RFC5123] White, R. and B. Akyol, "Considerations in Validating the
             Path in BGP", RFC 5123, February 2008.

   [RFC5492] Scudder, J. and R. Chandra, "Capabilities Advertisement
             with BGP-4", RFC 5492, February 2009.

   [ID.sidr-cp]  Kent, S., Kong, D., Seo, K., and R., Watro,
             "Certificate Policy (CP) for the Resource PKI (RPKI)",
             draft-ietf-sidr-cp, work-in-progress.

   [ID.sidr-arch]  Lepinski, M. and S. Kent, "An Infrastructure to
             Support Secure Internet Routing", draft-ietf-sidr-arch,

   [ID.sidr-rpki-roa-format]   Lepinski, M., Kent, S., and D. Kong, "A
             Profile for Route Origin Authorizations (ROAs)", draft-
             ietf-sidr-roa-format, work-in-progress

   [ID.sidr-rpki-manifests]  Austein, R., Huston, G., Kent, S., and M.
             Lepinski, "Manifests for the Resource Public Key
             Infrastructure", draft-ietf-sidr-rpki-manifests, work-in-

   [ID.sidr-algorithm-agility]  Gagliano, R., Kent, S., and S. Turner,
             "Algorithm Agility Procedure for RPKI", draft-ietf-sidr-
             algorithm-agility, work-in-progress.

Reynolds & Turner       Expires February 3, 2012                [Page 8]

Internet-Draft         BGPSEC Router PKI Profiles         August 2, 2011

   [ID.sidr-bgpsec-protocol]  Lepinksi, M., "BGPSEC Protocol
             Specification", draft-ietf-sidr-bgpsec-protocol, work-in-

Appendix A.  Example BGPSEC Router Certificate

Appendix B.  Example BGPSEC Router Certificate Request

Authors' Addresses

   Mark Reynolds
   Raytheon BBN Technologies Corp.
   10 Moulton St.
   Cambridge, MA 02138


   Sean Turner
   IECA, Inc.
   3057 Nutley Street, Suite 106
   Fairfax, VA 22031


Reynolds & Turner       Expires February 3, 2012                [Page 9]