Internet DRAFT - draft-burger-stir-iana-cert

draft-burger-stir-iana-cert







STIR                                                           E. Burger
Internet-Draft                                     Georgetown University
Intended status: Standards Track                           March 8, 2020
Expires: September 9, 2020


  Registry for Country-Specific Secure Telephone Identity (STIR) Trust
                                Anchors
                     draft-burger-stir-iana-cert-01

Abstract

   National policy defines telephone numbering governance.  One area of
   such governance are the policies applied to the Secure Telephone
   Identity Credentials defined in RFC 8226.  Nations have policies for
   the acceptable trust anchors for these credentials.  This document
   defines an IANA registry that enables a SIP call recipient in one
   country to validate the signature, as defined in RFC 8224, that
   originates in another country useing an appropriate trust anchor for
   the signer's certification path, per the origination country's trust
   anchor policy.

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 https://datatracker.ietf.org/drafts/current/.

   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 September 9, 2020.

Copyright Notice

   Copyright (c) 2020 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
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents



Burger                  Expires September 9, 2020               [Page 1]

Internet-Draft             STIR Trust Anchors                 March 2020


   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

   One problem that plagues some communications applications is a caller
   deliberately misrepresenting their identity with the intent to
   defraud, cause harm, or wrongfully obtain anything of value.  The
   IETF Secure Telephone Identity Revisited (STIR) work group has
   developed a series of RFCs specifying the mechanisms for
   cryptographically signing the asserted identity and other elements in
   Session Initiation Protocol (SIP) [RFC3261] messages.  One kind of
   identity used in SIP is an E.164 [E.164] telephone number.  A
   telephone number is a string of digits, where the first one to three
   digits indicate a country code.  The International Telecommunications
   Union - Telecommunications Sector (ITU-T) defines country codes and
   delegates the authority for numbers under a country code to the
   respective national communications authority for that country, as
   listed in E.164 Annex D [E.164D].  Note the country code does not
   itself necessarily uniquely identify a country.  For example, in
   country codes +1 and +7, multiple countries share the country code.
   In the cases of +1 and +7, further digits in the E.164 number, known
   as national significant digits (also known as area codes in +1)
   further identify the country.  As well, there are non-geographic
   services with country codes assigned to them.

   Section 7 of Authenticated Identity Management in the Session
   Initiation Protocol [RFC8224] describes the process for signing
   identity tokens.  Correspondingly, the STIR Certificates document
   [RFC8226] describes the format of the signing certificate.  The
   protocol and formats are independent of and can have uses beyond that
   of signing originating telephone numbers.  As well, given that for
   the most part governments are responsible for managing the numbering
   resources within their country code, governmental policy may impact
   who is authorized to issue signing certificates and what constitutes
   a valid certification path.  As such, the base STIR documents defer
   certificate and validation policy to other documents.  This document
   describes a registry for finding a STIR trust anchor for a given
   country code for signed telephone numbers.  This document only
   enables policies for E.164 number identity assertions.  Moreover,
   while this document describes the STIR trust anchor registry for
   various national STIR trust anchors, it does not mandate any
   particular policy regime.





Burger                  Expires September 9, 2020               [Page 2]

Internet-Draft             STIR Trust Anchors                 March 2020


   Recalling the STIR problem statement [RFC7340], the goal is to
   provide authenticated identity for the caller.  When a SIP endpoint
   receives a message with a signed STIR token, that endpoint needs to
   know whether the signing certificate is, in fact, allowed to make
   assertions for that identity.  It does us no good for a caller with
   ill intent to have a signed assertion that has a valid certification
   path to an unauthorized trust anchor.  Likewise, it does us no good
   to use self-signed certificates to sign a SIP message, as even with
   some limited verification, if there is the slightest chance of an
   entity with nefarious intent to succeed in either spoofing or taking
   over the identify of a caller, experience has shown they will do so.

   As mentioned above, the ITU-T assigns telephone numbers, specifically
   the responsibility to assign numbers beneath a country's country
   code, to national communications authorities.  A national regulator
   can inform service providers under its authority which trust anchors
   are authoritative for numbers under its control.  This is
   straightforward within a country.  However, this does not work for
   the global, interconnected communications network.  When someone in a
   first country calls someone in a second country, how is the service
   provider or end user in the second country to know who is
   authoritative for signing certificates in the first country?

   To solve this problem, this document establishes an IANA registry of
   STIR trust anchors, indexed by country codes.

2.  Terminology

   This document uses the terms "MUST", "MUST NOT", "REQUIRED", "SHALL",
   "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
   "OPTIONAL" as RFC 2119 [RFC2119] defines them.

   As noted above, a country code may not sufficiently identify a
   particular country.  Likewise, national policy may assign different
   STIR trust anchors for different sets of national significant numbers
   (e.g., area codes).  For example, while +7 generally identifies the
   Russian Federation, +76 and +77 identify Kazakhstan.  Likewise, +1
   generally identifies the North American Numbering Plan (NANP), which
   identifies countries by area code (the following three digits after
   the country code).  For example, +1869 identifies Saint Kitts and
   Nevis while +1649 identifies Turks and Caicos.  The term "country
   code" appearing from this point forward in this document refers to
   the country code and, if necessary, the subsequent digits that
   identify a country or region.  With the exception of ITU-T country
   code +1, the ITU-T country code is the "country code" for the
   purposes of this registry.  In the NANP (+1) case, this means the
   "country code" can be four digits long.  Specifically, to identify a




Burger                  Expires September 9, 2020               [Page 3]

Internet-Draft             STIR Trust Anchors                 March 2020


   specific country in the NANP, what this document terms the "country
   code" will be the leading +1 and the following three-digit area code.

3.  STIR Trust Anchor Registry

   This registry maps E.164 country codes to STIR trust anchors.  There
   can be one or more STIR trust anchors per country code.

3.1.  Numeric Country Code

   E.164 [E.164] defines the country code as a one- to three-digit
   string.  However, there are some country codes that have different
   country delegations beyond the country code.  In these cases, we use
   additional digits in the number to unambituously identify a country.
   For example, footnote b of E.164 Annex D [E.164D] shows 25 countries
   under country code +1 and two countries under country code +7.  As
   well, country code +881, for satellite services, and codes +882 and
   +883, for international networks, are under the jurisdiction of
   various national authorities.

   To distinguish the various national authorities under a given country
   code, the country code entry can contain these identity codes.
   Currently, the longest entry can be seven digits, but this could
   change in the future.  As noted above, distinguishing the appropriate
   certificate to use can be a matter of local policy.  We suggest
   longest match, but be aware that local policy may dictate another
   policy within that jurisdiction.

3.2.  STIR Trust Anchor

   Each country can have zero or more STIR trust anchors.  The trust
   anchor is a self-signed certificate [RFC5280].  The STIR trust anchor
   is the trust anchor for STIR (SIP) PKI in the given jurisdiction.  In
   the common Web browser situation, a Web server operator can purchase
   a certificate issued by one of hundreds of certificate authorities
   from anywhere in the world.  The expectation is the authority for
   signing the identity of a caller will be more strict than the
   authority for signing the identity of, for example, a Web site.  To
   ensure interoperability, browser and operating system manufacturers
   need to include the STIR trust anchors from those certificate
   authorities so when a user in one part of the world accesses a Web
   server in another part of the world that has a certificate issued by
   a certificate authority in yet a different part of the world, the
   site will validate.  In the telephone number identity situation, for
   the most part the individual national numbering authorities will
   choose a very limited set of STIR trust anchors who they will allow
   to issue signing certificates for numbers assigned to that country.




Burger                  Expires September 9, 2020               [Page 4]

Internet-Draft             STIR Trust Anchors                 March 2020


   Within a single country, it would be a relatively easy matter for the
   national communications regulator to impose and inform their domestic
   service providers who is the designated certificate authority within
   that country.  However, given the large amount of international
   telephone traffic (as an example, there were over 100,000,000,000
   minutes of traffic between the U.S. and other countries in 2014,
   including VoIP [FCC_intl]), there is a need for service providers and
   users in different countries to validate that one of the proper
   certificate authorities for that country has issued the signing
   certificate.

   The entry for each national STIR trust anchor is a text certificate
   [RFC7468] that contains the public key of the STIR trust anchor,
   matching the private key the STIR trust anchor uses to sign signing
   keys used by its delegates, such as telecommunications service
   providers.

4.  IANA Considerations

   Refer to [RFC8126] for a description of IANA Considerations terms and
   their meanings.

4.1.  Registry Policy: First Come First Served

   This registry is First Come First Served, understanding there can be
   multiple trust anchors registered for a given Country Code prefix.
   The integrity of an originating nation's numbering system is
   generally the purview of the respective national government.
   Moreover, the integrity of a terminating network, including the
   accuracy of received signaling, is generally the purview of the
   government with jurisdiction over the terminating network.  We do not
   anticipate IANA to intervene in disputes of who has the authority for
   entering and changing STIR trust anchors.  In general, IANA SHOULD
   validate the request originates from an entity authorized by the
   recognized national authority for the country as specified in
   [ITU-D.Agencies], unless it is not clear who the national authority
   is.  However, because it is likely the regulatory authorities in the
   terminating country will determine the validity of the STIR trust
   anchor found in the IANA registry, irrespective of the depth of
   vetting IANA could perform, if IANA believes the registration is not
   fraudulent, it SHOULD accept the registration even if it cannot
   positively identify or contact the appropriate national authority.

4.2.  Registry Elements

   The STIR Trust Anchor registry consists of one or more entities
   indicating the public keys of STIR trust anchors for a given country
   code.  With around 200 countries, each of which might have one to



Burger                  Expires September 9, 2020               [Page 5]

Internet-Draft             STIR Trust Anchors                 March 2020


   four STIR trust anchors, results in a registry with a total
   participation of about one thousand entries.  The expectation is
   there would be substantially fewer entries in practice.

4.2.1.  Numeric Country Code

   The numeric country code is a one- to eight-digit string indicating
   the numeric country code and optional identity digits.  Identity
   digits are often known as an area code or city code.  [E.164D] lists
   country codes and the identity digits when there are overlapping
   country codes (+1, +7, and some international codes).

   IANA MUST verify the requested mapping includes a valid numeric
   country code as specified in E.164 Annex D.

   NOTE: The conventional leading + to indicate the string identifies a
   country code is NOT part of the Country Code element in the registry.

4.2.2.  STIR Trust Anchor

   The STIR trust anchor is an RFC7468 [RFC7468] text file that contains
   the public key of the authorized STIR trust anchor that signs the
   certificates authorized to sign STIR signaling in the given country.
   There can be one or more entries in the registry for a given ISO
   country code to allow for multiple STIR trust anchors for a given
   country.

   IANA MUST verify the certificate is valid by using the provided
   public key in the certificate to validate the signature in the
   certificate.

   IANA SHOULD remove a STIR trust anchor from the registry if the
   certificate expires.

4.2.3.  Domain of Authority

   For traceback and reputation purposes, IANA MUST record the validated
   domain of the entity that made the request to enter, delete, or
   modify an entry in the STIR Trust Anchor Registry.  The mechanism for
   validating the domain is a matter of IANA policy.  Mechanisms include
   ensuring an emailed request uses DKIM [RFC6376] with secure
   cryptographic algorithms [RFC8301], web requests have validated
   client certificates identifying the domain of the requestor, or out
   of band methods.  Note that an unauthenticated inbound phone call is
   not likely to be an acceptable mechanism of identifying the domain.






Burger                  Expires September 9, 2020               [Page 6]

Internet-Draft             STIR Trust Anchors                 March 2020


4.3.  Other IANA Considerations

   There is the potential for a malicious actor attempting to load a
   trust anchor that could enable them to sign spoofed signaling.  As
   such, IANA SHOULD note who is making the request, to sufficient
   detail to locate that party for referral to the relevant national
   authorities.  For most countries, it will be the national authority
   itself or a clear delegate that will be making the registration.  For
   example, in the United States, the Federal Communications Commission
   has delegated the governance of the STIR trust anchor to the U.S.
   STI-GA, administered by ATIS, which is an identifiable, incorporated
   entity with a fixed, physical address.

5.  Security Considerations

   The choice of having the STIR trust anchor stored by IANA means that
   users accessing the certificates MUST use a source-authenticated
   retrieval mechanism, such as HTTPS [RFC7231].  It almost goes without
   saying implementers should be using the most up-to-date TLS
   implementation (or its successor) when retrieving registry elements
   from IANA.  Likewise, the application resolving the URI MUST verify
   the domain in the certificate matches the IANA domain.  The
   application resolving the URI MUST use DNSSEC [RFC4035] if it is
   available to the client.  Finally, during TLS negotiation the
   application MUST verify the authority signing IANA's certificate
   matches the application's understanding of who should sign IANA's
   certificate.  At the time of this writing, that trust anchor would be
   the DigiCert High Assurance EV Root CA.

   Because IANA takes no responsibility for the accuracy of any given
   country's STIR trust anchor entry, this document presumes the
   terminating provider or local authority will use local policy to
   determine the trustworthiness of any given entry.  ATIS [ATIS-Intl]
   describes an example of such a local policy.

6.  Acknowledgements

   Russ Housley, Jim McEachern, and Sean Turner gave invaluable insight.
   Ken Carlberg and Padma Krishnaswamy of the United States Federal
   Communications Commission provided useful feedback in an incredibly
   short time period.  Finally, a huge thank-you to Michelle Cotton and
   Kim Davies for helping normalize the registries and the procedures
   for populating them.








Burger                  Expires September 9, 2020               [Page 7]

Internet-Draft             STIR Trust Anchors                 March 2020


7.  References

7.1.  Normative References

   [E.164D]   International Telecommunications Union, "List of ITU-T
              Recommendation E.164 Assigned Country Codes",
              ITU-T Recommendation E.164 Annex D, 11 2011,
              <https://www.itu.int/dms_pub/itu-t/opb/sp/T-SP-E.164D-
              2016-PDF-E.pdf>.

   [ITU-D.Agencies]
              International Telecommunications Union - Development
              Sector, "National Telecommunication Agencies", 12 2017,
              <http://www.itu.int/en/ITU-D/Statistics/Pages/links/
              nta.aspx>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC4035]  Arends, R., Austein, R., Larson, M., Massey, D., and S.
              Rose, "Protocol Modifications for the DNS Security
              Extensions", RFC 4035, DOI 10.17487/RFC4035, March 2005,
              <https://www.rfc-editor.org/info/rfc4035>.

   [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, DOI 10.17487/RFC5280, May 2008,
              <https://www.rfc-editor.org/info/rfc5280>.

   [RFC6376]  Crocker, D., Ed., Hansen, T., Ed., and M. Kucherawy, Ed.,
              "DomainKeys Identified Mail (DKIM) Signatures", STD 76,
              RFC 6376, DOI 10.17487/RFC6376, September 2011,
              <https://www.rfc-editor.org/info/rfc6376>.

   [RFC7231]  Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer
              Protocol (HTTP/1.1): Semantics and Content", RFC 7231,
              DOI 10.17487/RFC7231, June 2014,
              <https://www.rfc-editor.org/info/rfc7231>.

   [RFC7468]  Josefsson, S. and S. Leonard, "Textual Encodings of PKIX,
              PKCS, and CMS Structures", RFC 7468, DOI 10.17487/RFC7468,
              April 2015, <https://www.rfc-editor.org/info/rfc7468>.






Burger                  Expires September 9, 2020               [Page 8]

Internet-Draft             STIR Trust Anchors                 March 2020


   [RFC8126]  Cotton, M., Leiba, B., and T. Narten, "Guidelines for
              Writing an IANA Considerations Section in RFCs", BCP 26,
              RFC 8126, DOI 10.17487/RFC8126, June 2017,
              <https://www.rfc-editor.org/info/rfc8126>.

   [RFC8301]  Kitterman, S., "Cryptographic Algorithm and Key Usage
              Update to DomainKeys Identified Mail (DKIM)", RFC 8301,
              DOI 10.17487/RFC8301, January 2018,
              <https://www.rfc-editor.org/info/rfc8301>.

7.2.  Informative References

   [ATIS-Intl]
              Alliance for Telecommunications Industry Solutions,
              "Mechanism for International Signature-based Handling of
              Asserted information using toKENs (SHAKEN)",
              <http://access.atis.org/apps/org/workgroup/ipnni/
              download.php/51306/IPNNI-2020-00032R000.docx>.

   [E.164]    International Telecommunications Union, "The International
              Public Telecommunication Numbering Plan",
              ITU-T Recommendation E.164, 11 2010,
              <https://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-
              E.164-201011-I!!PDF-E&type=items>.

   [FCC_intl]
              Ashton, S. and L. Blake, "2014 U.S. International
              Telecommunications Traffic and Revenue Data", 7 2016,
              <http://transition.fcc.gov/Daily_Releases/
              Daily_Business/2016/db0701/DOC-340121A1.pdf>.

   [RFC3261]  Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston,
              A., Peterson, J., Sparks, R., Handley, M., and E.
              Schooler, "SIP: Session Initiation Protocol", RFC 3261,
              DOI 10.17487/RFC3261, June 2002,
              <https://www.rfc-editor.org/info/rfc3261>.

   [RFC7340]  Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure
              Telephone Identity Problem Statement and Requirements",
              RFC 7340, DOI 10.17487/RFC7340, September 2014,
              <https://www.rfc-editor.org/info/rfc7340>.

   [RFC8224]  Peterson, J., Jennings, C., Rescorla, E., and C. Wendt,
              "Authenticated Identity Management in the Session
              Initiation Protocol (SIP)", RFC 8224,
              DOI 10.17487/RFC8224, February 2018,
              <https://www.rfc-editor.org/info/rfc8224>.




Burger                  Expires September 9, 2020               [Page 9]

Internet-Draft             STIR Trust Anchors                 March 2020


   [RFC8226]  Peterson, J. and S. Turner, "Secure Telephone Identity
              Credentials: Certificates", RFC 8226,
              DOI 10.17487/RFC8226, February 2018,
              <https://www.rfc-editor.org/info/rfc8226>.

Author's Address

   Eric W. Burger
   Georgetown University
   37th & O St, NW
   Washington, DC  20057
   USA

   Email: eburger@standardstrack.com





































Burger                  Expires September 9, 2020              [Page 10]