draft-ietf-stir-certificates-07.txt   draft-ietf-stir-certificates-08.txt 
Network Working Group J. Peterson Network Working Group J. Peterson
Internet-Draft Neustar Internet-Draft Neustar
Intended status: Standards Track S. Turner Intended status: Standards Track S. Turner
Expires: January 9, 2017 sn3rd Expires: March 13, 2017 sn3rd
July 8, 2016 September 9, 2016
Secure Telephone Identity Credentials: Certificates Secure Telephone Identity Credentials: Certificates
draft-ietf-stir-certificates-07.txt draft-ietf-stir-certificates-08.txt
Abstract Abstract
In order to prevent the impersonation of telephone numbers on the In order to prevent the impersonation of telephone numbers on the
Internet, some kind of credential system needs to exist that Internet, some kind of credential system needs to exist that
cryptographically proves authority over telephone numbers. This cryptographically asserts authority over telephone numbers. This
document describes the use of certificates in establishing authority document describes the use of certificates in establishing authority
over telephone numbers, as a component of a broader architecture for over telephone numbers, as a component of a broader architecture for
managing telephone numbers as identities in protocols like SIP. managing telephone numbers as identities in protocols like SIP.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 9, 2017. This Internet-Draft will expire on March 13, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 12 skipping to change at page 2, line 12
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Authority for Telephone Numbers in Certificates . . . . . . . 3 3. Authority for Telephone Numbers in Certificates . . . . . . . 3
4. Certificate Usage . . . . . . . . . . . . . . . . . . . . . . 5 4. Certificate Usage with STIR . . . . . . . . . . . . . . . . . 5
5. Enrollment and Authorization using the TN Authorization List 6 5. Enrollment and Authorization using the TN Authorization List 6
5.1. Levels Of Assurance . . . . . . . . . . . . . . . . . . . 7 5.1. Levels Of Assurance . . . . . . . . . . . . . . . . . . . 7
5.2. Certificate Extension Scope and Structure . . . . . . . . 8 5.2. Certificate Extension Scope and Structure . . . . . . . . 8
6. Provisioning Private Keying Material . . . . . . . . . . . . 8 6. Provisioning Private Keying Material . . . . . . . . . . . . 8
7. Acquiring Credentials to Verify Signatures . . . . . . . . . 9 7. Acquiring Credentials to Verify Signatures . . . . . . . . . 9
8. Verifying Certificate Scope with TN Authorization List . . . 10 8. TN Authorization List Syntax . . . . . . . . . . . . . . . . 10
9. Certificate Freshness and Revocation . . . . . . . . . . . . 11 9. Certificate Freshness and Revocation . . . . . . . . . . . . 12
9.1. Choosing a Verification Method . . . . . . . . . . . . . 12 9.1. Choosing a Verification Method . . . . . . . . . . . . . 12
9.2. Using OCSP with TN Auth List . . . . . . . . . . . . . . 13 9.2. Using OCSP with TN Auth List . . . . . . . . . . . . . . 13
9.2.1. OCSP Extension Specification . . . . . . . . . . . . 13 9.2.1. OCSP Extension Specification . . . . . . . . . . . . 14
9.3. Acquiring TN Lists By Reference . . . . . . . . . . . . . 15 9.3. Acquiring TN Lists By Reference . . . . . . . . . . . . . 16
10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 16 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17
11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 11. Security Considerations . . . . . . . . . . . . . . . . . . . 18
12. Security Considerations . . . . . . . . . . . . . . . . . . . 17 12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 18
13. References . . . . . . . . . . . . . . . . . . . . . . . . . 18 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 18
Appendix A. ASN.1 Module . . . . . . . . . . . . . . . . . . . . 20 Appendix A. ASN.1 Module . . . . . . . . . . . . . . . . . . . . 21
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 23
1. Introduction 1. Introduction
The STIR problem statement [RFC7340] identifies the primary enabler The STIR problem statement [RFC7340] identifies the primary enabler
of robocalling, vishing, swatting and related attacks as the of robocalling, vishing, swatting and related attacks as the
capability to impersonate a calling party number. The starkest capability to impersonate a calling party number. The starkest
examples of these attacks are cases where automated callees on the examples of these attacks are cases where automated callees on the
PSTN rely on the calling number as a security measure, for example to PSTN rely on the calling number as a security measure, for example to
access a voicemail system. Robocallers use impersonation as a means access a voicemail system. Robocallers use impersonation as a means
of obscuring identity; while robocallers can, in the ordinary PSTN, of obscuring identity; while robocallers can, in the ordinary PSTN,
block (that is, withhold) their caller identity, callees are less block (that is, withhold) their caller identity, callees are less
likely to pick up calls from blocked identities, and therefore likely to pick up calls from blocked identities, and therefore
appearing to calling from some number, any number, is preferable. appearing to calling from some number, any number, is preferable.
Robocallers however prefer not to call from a number that can trace Robocallers however prefer not to call from a number that can trace
back to the robocaller, and therefore they impersonate numbers that back to the robocaller, and therefore they impersonate numbers that
are not assigned to them. are not assigned to them.
One of the most important components of a system to prevent One of the most important components of a system to prevent
impersonation is the implementation of credentials which identify the impersonation is the implementation of credentials which identify the
parties who control telephone numbers. With these credentials, parties who control telephone numbers. With these credentials,
parties can prove that they are in fact authorized to use telephony parties can assert that they are in fact authorized to use telephony
numbers, and thus distinguish themselves from impersonators unable to numbers, and thus distinguish themselves from impersonators unable to
present such credentials. For that reason the STIR threat model present such credentials. For that reason the STIR threat model
[RFC7375] stipulates, "The design of the credential system envisioned [RFC7375] stipulates, "The design of the credential system envisioned
as a solution to these threats must, for example, limit the scope of as a solution to these threats must, for example, limit the scope of
the credentials issued to carriers or national authorities to those the credentials issued to carriers or national authorities to those
numbers that fall under their purview." This document describes numbers that fall under their purview." This document describes
credential systems for telephone numbers based on X.509 version 3 credential systems for telephone numbers based on X.509 version 3
certificates in accordance with [RFC5280]. While telephone numbers certificates in accordance with [RFC5280]. While telephone numbers
have long been a part of the X.509 standard, this document provides have long been part of the X.509 standard (X.509 supports arbitrary
ways to determine authority more aligned with telephone network naming attributes to be included in a certificate; the
requirements, including extending X.509 with a Telephone Number telephoneNumber attribute was defined in the 1988 [X.520]
Authorization List which binds certificates to authority for specification) this document provides ways to determine authority
more aligned with telephone network requirements, including extending
X.509 with a Telephone Number Authorization List certificate
extension which binds certificates to asserted authority for
particular telephone numbers, or potentially telephone number blocks particular telephone numbers, or potentially telephone number blocks
or ranges. or ranges.
In the STIR in-band architecture specified in In the STIR in-band architecture specified in
[I-D.ietf-stir-rfc4474bis], two basic types of entities need access [I-D.ietf-stir-rfc4474bis], two basic types of entities need access
to these credentials: authentication services, and verification to these credentials: authentication services, and verification
services (or verifiers). An authentication service must be operated services (or verifiers). An authentication service must be operated
by an entity enrolled with the certification authority (CA, see by an entity enrolled with the certification authority (CA, see
Section 5), whereas a verifier need only trust the trust anchor of Section 5), whereas a verifier need only trust the trust anchor of
the authority, and have a means to access and validate the public the authority, and have a means to access and validate the public
keys associated with these certificates. Although the guidance in keys associated with these certificates. Although the guidance in
this document is written with the STIR in-band architecture in mind, this document is written with the STIR in-band architecture in mind,
the credential system described in this document could be useful for the credential system described in this document could be useful for
other protocols that want to make use of certificates to prove other protocols that want to make use of certificates to assert
authority over telephone numbers on the Internet. authority over telephone numbers on the Internet.
This document specifies only the credential syntax and semantics This document specifies only the credential syntax and semantics
necessary to support this architecture. It does not assume any necessary to support this architecture. It does not assume any
particular CA or deployment environment. We anticipate that some particular CA or deployment environment. We anticipate that some
deployment experience will be necessary to determine optimal deployment experience will be necessary to determine optimal
operational models. operational models.
2. Terminology 2. Terminology
skipping to change at page 3, line 50 skipping to change at page 4, line 5
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in RFC "OPTIONAL" in this document are to be interpreted as described in RFC
2119 [RFC2119]. 2119 [RFC2119].
3. Authority for Telephone Numbers in Certificates 3. Authority for Telephone Numbers in Certificates
At a high level, this specification details two non-exclusive At a high level, this specification details two non-exclusive
approaches that can be employed to determine authority over telephone approaches that can be employed to determine authority over telephone
numbers with certificates. numbers with certificates.
The first approach is to leverage the subject of the certificate to The first approach is to leverage the existing subject of the
ascertain that the holder of the certificate is authorized to claim certificate to ascertain that the holder of the certificate is
authority over a telephone number. The subject might be represented authorized to claim authority over a telephone number. The subject
as a domain name in the SubjectAltName, such as an "example.net" might be represented as a domain name in the SubjectAltName, such as
where that domain is known to relying parties as a carrier, or an "example.net" where that domain is known to relying parties as a
represented with other identifiers related to the operation of the carrier, or represented with other identifiers related to the
telephone network including Service Provider Identifiers (SPIDs) operation of the telephone network including Service Provider
could serve as a subject as well. A relying party could then employ Identifiers (SPIDs) could serve as a subject as well. A relying
an external data set or service that determines whether or not a party could then employ an external data set or service that
specific telephone number is under the authority of the carrier determines whether or not a specific telephone number is under the
identified as the subject of the certificate, and use that to authority of the carrier identified as the subject of the
ascertain whether or not the carrier should have authority over a certificate, and use that to ascertain whether or not the carrier
telephone number. Potentially, a certificate extension to convey the should have authority over a telephone number. Potentially, a
URI of such an information service trusted by the issuer of the certificate extension to convey the URI of such an information
certificate could be developed (though this specification does not service trusted by the issuer of the certificate could be developed
propose one). Alternatively, some relying parties could form (though this specification does not propose one). Alternatively,
bilateral or multilateral trust relationships with peer carriers, some relying parties could form bilateral or multilateral trust
trusting one another's assertions just as telephone carriers in the relationships with peer carriers, trusting one another's assertions
SS7 network today rely on transitive trust when displaying the just as telephone carriers in the SS7 network today rely on
calling party telephone number received through SS7 signaling. transitive trust when displaying the calling party telephone number
received through SS7 signaling.
The second approach is to extend the syntax of certificates to The second approach is to extend the syntax of certificates to
include a new attribute, defined here as TN Authorization List, which include a new attribute, defined here as TN Authorization List, which
contains a list of telephone numbers defining the scope of authority contains a list of telephone numbers defining the scope of authority
of the certificate. Relying parties, if they trust the issuer of the of the certificate. Relying parties, if they trust the issuer of the
certificate as a source of authoritative information on telephone certificate as a source of authoritative information on telephone
numbers, could therefore use the TN Authorization List instead of the numbers, could therefore use the TN Authorization List instead of the
subject of the certificate to make a decision about whether or not subject of the certificate to make a decision about whether or not
the signer has authority over a particular telephone number. The TN the signer has authority over a particular telephone number. The TN
Authorization List could be provided in one of two ways: as a literal Authorization List could be provided in one of two ways: as a literal
value in the certificate, or as a network service that allows relying value in the certificate, or as a network service that allows relying
parties to query in real time to determine that a telephone number is parties to query in real time to determine that a telephone number is
in the scope of a certificate. Using the TN Authorization list in the scope of a certificate. Using the TN Authorization list
rather than the certificate subject makes sense when, for example, rather than the certificate subject makes sense when, for example,
for privacy reasons, the certificate owner would prefer not to be for privacy reasons, the certificate owner would prefer not to be
identified, or in cases where the holder of the certificate does not identified, or in cases where the holder of the certificate does not
participate in the sort of traditional carrier infrastructure taht participate in the sort of traditional carrier infrastructure that
the first approach assumes. the first approach assumes.
The first approach requires little change to existing Public Key The first approach requires little change to existing Public Key
Infrastructure (PKI) certificates; for the second approach, we must Infrastructure (PKI) certificates; for the second approach, we must
define an appropriate enrollment and authorization process. For the define an appropriate enrollment and authorization process. For the
purposes of STIR, the over-the-wire format specified in purposes of STIR, the over-the-wire format specified in
[I-D.ietf-stir-rfc4474bis] accommodates either of these approaches: [I-D.ietf-stir-rfc4474bis] accommodates either of these approaches:
the methods for canonicalizing, signing, for identifying and the methods for canonicalizing, signing, for identifying and
accessing the certificate and so on remain the same; it is only the accessing the certificate and so on remain the same; it is only the
verifier behavior and authorization decision that will change verifier behavior and authorization decision that will change
depending on the approach to telephone number authority taken by the depending on the approach to telephone number authority taken by the
certificate. For that reason, the two approaches are not mutually certificate. For that reason, the two approaches are not mutually
exclusive, and in fact a certificate issued to a traditional exclusive, and in fact a certificate issued to a traditional
telephone network service provider could contain a TN Authorization telephone network service provider could contain a TN Authorization
List or not, depending on the CA issuing the credential. Regardless List or not, were it supported by the CA issuing the credential.
of which approach is used, certificates that assert authority over Regardless of which approach is used, certificates that assert
telephone numbers are subject to the ordinary operational procedures authority over telephone numbers are subject to the ordinary
that govern certificate use per [RFC5280]. This means that operational procedures that govern certificate use per [RFC5280].
verification services must be mindful of the need to ensure that they This means that verification services must be mindful of the need to
trust the trust anchor that issued the certificate, and that they ensure that they trust the trust anchor that issued the certificate,
have some means to determine the freshness of the certificate (see and that they have some means to determine the freshness of the
Section 9). certificate (see Section 9).
4. Certificate Usage 4. Certificate Usage with STIR
[I-D.ietf-stir-rfc4474bis] requires that all credential systems used [I-D.ietf-stir-rfc4474bis] Section 7.4 requires that all credential
for signing the Identity header in SIP detail the following: systems used by STIR explain how they address the requirements
enumerated below. Certificates as described in this document address
the STIR requirements as follows:
1. The URI schemes permitted in the SIP Identity header "info" 1. The URI schemes permitted in the SIP Identity header "info"
parameter, as well as any special procedures required to parameter, as well as any special procedures required to
dereference the URIs. While normative text is given below in dereference the URIs. While normative text is given below in
Section 7, this mechanism permits the HTTP, CID and SIP URI Section 7, this mechanism permits the HTTP, CID and SIP URI
schemes to appear in the "info" parameter. schemes to appear in the "info" parameter.
2. Procedures required to extract keying material from the resources 2. Procedures required to extract keying material from the resources
designated by the URI. Implementations perform no special designated by the URI. Implementations perform no special
procedures beyond dereferencing the "info" URI. See Section 7. procedures beyond dereferencing the "info" URI. See Section 7.
3. Procedures used by the verification service to determine the 3. Procedures used by the verification service to determine the
scope of the credential. This specification effectively proposes scope of the credential. This specification effectively proposes
two methods, as outlined in Section 3: one where the subject (or two methods, as outlined in Section 3: one where the subject (or
more properly subjectAltName) of the certificate indicates the more properly subjectAltName) of the certificate indicates the
scope of authority through a domain name, and relying parties scope of authority through a domain name, and relying parties
either trust the subject entirely or have some direct means of either trust the subject entirely or have some direct means of
determining whether or not a number falls under a subject's determining whether or not a number falls under a subject's
authority; and another where an extension to the certificate as authority; and another where an extension to the certificate as
described in Section 8 identifies the scope of the certificate. described in Section 8 identifies the scope of authority of the
certificate.
4. The cryptographic algorithms required to validate the 4. The cryptographic algorithms required to validate the
credentials. For this specification, that means the signature credentials. For this specification, that means the signature
algorithms used to sign certificates. This specification algorithms used to sign certificates. This specification
REQUIRES that implementations support both ECDSA with the P-256 REQUIRES that implementations support both ECDSA with the P-256
curve (see [RFC4754]) and RSA PKCS#1 v1.5 (see [RFC3447] curve (see [RFC4754]) and RSA PKCS#1 v1.5 (see [RFC3447]
Section 8.2) for certificate signatures. Implementers are Section 8.2) for certificate signatures. Implementers are
advised that RS256 is mandated only as a transitional mechanism, advised that RS256 is mandated only as a transitional mechanism,
due to its widespread use in existing PKI, but we anticipate that due to its widespread use in existing PKI, but we anticipate that
this mechanism will eventually be deprecated. this mechanism will eventually be deprecated.
skipping to change at page 6, line 31 skipping to change at page 6, line 36
extension. extension.
o See Section 9.2 and Section 9.3 for requirements related to the o See Section 9.2 and Section 9.3 for requirements related to the
Authority Information Access (AIA) certificate extension. Authority Information Access (AIA) certificate extension.
o See Section 9.2.1 for requirements related to the authority key o See Section 9.2.1 for requirements related to the authority key
identifier and subject key identifier certificate extensions. identifier and subject key identifier certificate extensions.
5. Enrollment and Authorization using the TN Authorization List 5. Enrollment and Authorization using the TN Authorization List
This document assumes a threefold model for certificate enrollment This document covers three models for enrollment when using the TN
when using the TN Authorization List extension. Authorization List extension.
The first enrollment model is one where the CA acts in concert with The first enrollment model is one where the CA acts in concert with
national numbering authorities to issue credentials to those parties national numbering authorities to issue credentials to those parties
to whom numbers are assigned. In the United States, for example, to whom numbers are assigned. In the United States, for example,
telephone number blocks are assigned to Local Exchange Carriers telephone number blocks are assigned to Local Exchange Carriers
(LECs) by the North American Numbering Plan Administrator (NANPA), (LECs) by the North American Numbering Plan Administrator (NANPA),
who is in turn directed by the national regulator. LECs may also who is in turn directed by the national regulator. LECs may also
receive numbers in smaller allocations, through number pooling, or receive numbers in smaller allocations, through number pooling, or
via an individual assignment through number portability. LECs assign via an individual assignment through number portability. LECs assign
numbers to customers, who may be private individuals or organizations numbers to customers, who may be private individuals or organizations
- and organizations take responsibility for assigning numbers within - and organizations take responsibility for assigning numbers within
their own enterprise. This model requires top-down adoption of the their own enterprise. This model requires top-down adoption of the
model from regulators through to carriers. model from regulators through to carriers. Assignees of E.164
numbering resources participating in this enrollment model should
take appropriate steps to establish trust anchors.
The second enrollment model is a bottom-up approach where a CA The second enrollment model is a bottom-up approach where a CA
requires that an entity prove control by means of some sort of test, requires that an entity prove control by means of some sort of test,
which, as with certification authorities for web PKI, might either be which, as with certification authorities for web PKI, might either be
automated or a manual administrative process. As an example of an automated or a manual administrative process. As an example of an
automated process, an authority might send a text message to a automated process, an authority might send a text message to a
telephone number containing a URL (which might be dereferenced by the telephone number containing a URL (which might be dereferenced by the
recipient) as a means of verifying that a user has control of recipient) as a means of verifying that a user has control of
terminal corresponding to that number. Checks of this form are terminal corresponding to that number. Checks of this form are
frequently used in commercial systems today to validate telephone frequently used in commercial systems today to validate telephone
skipping to change at page 7, line 27 skipping to change at page 7, line 36
100 numbers used by an IP PBX, and the organization might in turn 100 numbers used by an IP PBX, and the organization might in turn
delegate authority for a particular number to an individual employee. delegate authority for a particular number to an individual employee.
This is analogous to delegation of organizational identities in This is analogous to delegation of organizational identities in
traditional hierarchical PKIs who use the name constraints extension traditional hierarchical PKIs who use the name constraints extension
[RFC5280]; the root CA delegates names in sales to the sales [RFC5280]; the root CA delegates names in sales to the sales
department CA, names in development to the development CA, etc. As department CA, names in development to the development CA, etc. As
lengthy certificate delegation chains are brittle, however, and can lengthy certificate delegation chains are brittle, however, and can
cause delays in the verification process, this document considers cause delays in the verification process, this document considers
optimizations to reduce the complexity of verification. optimizations to reduce the complexity of verification.
Future versions of this specification may also discuss methods of Future work might explore methods of partial delegation, where
partial delegation, where certificate holders delegate only part of certificate holders delegate only part of their authority. For
their authority. For example, individual assignees may want to example, individual assignees may want to delegate to a service
delegate to a service authority for text messages associated with authority for text messages associated with their telephone number,
their telephone number, but not for other functions. but not for other functions.
5.1. Levels Of Assurance 5.1. Levels Of Assurance
This specification supports different level of assurance (LOA). The This specification supports different level of assurance (LOA). The
LOA indications, which are Object Identifiers (OIDs) included in the LOA indications, which are Object Identifiers (OIDs) included in the
certificate's certificate policies extension [RFC5280], allow CAs to certificate's certificate policies extension [RFC5280], allow CAs to
differentiate those enrolled from proof-of-possession versus differentiate those enrolled from proof-of-possession versus
delegation. A Certification Policy and a Certification Practice delegation. A Certification Policy and a Certification Practice
Statement [RFC3647] are produced as part of the normal PKI Statement [RFC3647] are produced as part of the normal PKI
bootstrapping process (i.e., the CP is written first and then the CAs bootstrapping process (i.e., the CP is written first and then the CAs
skipping to change at page 8, line 10 skipping to change at page 8, line 15
to the CPS with the certificate policies extension. CAs that wish to to the CPS with the certificate policies extension. CAs that wish to
express different LOAs MUST include the certificate policies express different LOAs MUST include the certificate policies
extension in issued certificates. See Section 11 for additional extension in issued certificates. See Section 11 for additional
information about the LOA registry. information about the LOA registry.
5.2. Certificate Extension Scope and Structure 5.2. Certificate Extension Scope and Structure
This specification places no limits on the number of telephone This specification places no limits on the number of telephone
numbers that can be associated with any given certificate. Some numbers that can be associated with any given certificate. Some
service providers may be assigned millions of numbers, and may wish service providers may be assigned millions of numbers, and may wish
to have a single certificate that is capable of signing for any one to have a single certificate that can be applied to signing for any
of those numbers. Others may wish to compartmentalize authority over one of those numbers. Others may wish to compartmentalize authority
subsets of the numbers they control. over subsets of the numbers they control.
Moreover, service providers may wish to have multiple certificates Moreover, service providers may wish to have multiple certificates
with the same scope of authority. For example, a service provider with the same scope of authority. For example, a service provider
with several regional gateway systems may want each system to be with several regional gateway systems may want each system to be
capable of signing for each of their numbers, but not want to have capable of signing for each of their numbers, but not want to have
each system share the same private key. each system share the same private key.
The set of telephone numbers for which a particular certificate is The set of telephone numbers for which a particular certificate is
valid is expressed in the certificate through a certificate valid is expressed in the certificate through a certificate
extension; the certificate's extensibility mechanism is defined in extension; the certificate's extensibility mechanism is defined in
skipping to change at page 8, line 45 skipping to change at page 8, line 50
certificates with the TN Authorization List extensions may, in certificates with the TN Authorization List extensions may, in
accordance with their policies, obscure the identity of the subject, accordance with their policies, obscure the identity of the subject,
though mechanisms for doing so are outside the scope of this though mechanisms for doing so are outside the scope of this
document. document.
6. Provisioning Private Keying Material 6. Provisioning Private Keying Material
In order for authentication services to sign calls via the procedures In order for authentication services to sign calls via the procedures
described in [I-D.ietf-stir-rfc4474bis], they must hold a private key described in [I-D.ietf-stir-rfc4474bis], they must hold a private key
corresponding to a certificate with authority over the calling corresponding to a certificate with authority over the calling
number. This specification does not require that any particular number. [I-D.ietf-stir-rfc4474bis] does not require that any
entity in a SIP deployment architecture sign requests, only that it particular entity in a SIP deployment architecture sign requests,
be an entity with an appropriate private key; the authentication only that it be an entity with an appropriate private key; the
service role may be instantiated by any entity in a SIP network. For authentication service role may be instantiated by any entity in a
a certificate granting authority only over a particular number which SIP network. For a certificate granting authority only over a
has been issued to an end user, for example, an end user device might particular number which has been issued to an end user, for example,
hold the private key and generate the signature. In the case of a an end user device might hold the private key and generate the
service provider with authority over large blocks of numbers, an signature. In the case of a service provider with authority over
intermediary might hold the private key and sign calls. large blocks of numbers, an intermediary might hold the private key
and sign calls.
The specification recommends distribution of private keys through The specification recommends distribution of private keys through
PKCS#8 objects signed by a trusted entity, for example through the PKCS#8 objects signed by a trusted entity, for example through the
CMS package specified in [RFC5958]. CMS package specified in [RFC5958].
7. Acquiring Credentials to Verify Signatures 7. Acquiring Credentials to Verify Signatures
This specification documents multiple ways that a verifier can gain This specification documents multiple ways that a verifier can gain
access to the credentials needed to verify a request. As the access to the credentials needed to verify a request. As the
validity of certificates does not depend on the method of their validity of certificates does not depend on the method of their
acquisition, there is no need to standardize any single mechanism for acquisition, there is no need to standardize any single mechanism for
this purpose. All entities that comply with this purpose. All entities that comply with
[I-D.ietf-stir-rfc4474bis] necessarily support SIP, and consequently [I-D.ietf-stir-rfc4474bis] necessarily support SIP, and consequently
SIP itself can serve as a way to acquire certificates. SIP itself can serve as a way to deliver certificates.
[I-D.ietf-stir-rfc4474bis] provides an "info" parameter of the [I-D.ietf-stir-rfc4474bis] provides an "info" parameter of the
Identity header which contains a URI where the credential used to Identity header which contains a URI for the credential used to
generate the Identity header, and requires documents which define generate the Identity header; [I-D.ietf-stir-rfc4474bis] also
credential systems to list the URI schemes that may be present in the requires documents which define credential systems list the URI
"info" parameter. For implementations compliant with this schemes that may be present in the "info" parameter. For
specification, three URI schemes are REQUIRED: the CID URI, the SIP implementations compliant with this specification, three URI schemes
URI, and the HTTP URI. are REQUIRED: the CID URI, the SIP URI, and the HTTP URI.
The simplest way for a verifier to acquire the certificate needed to The simplest way for a verifier to acquire the certificate needed to
verify a signature is for the certificate be conveyed in a SIP verify a signature is for the certificate be conveyed in a SIP
request along with the signature itself. In SIP, for example, a request along with the signature itself. In SIP, for example, a
certificate could be carried in a multipart MIME body [RFC2046], and certificate could be carried in a multipart MIME body [RFC2046], and
the URI in the Identity header "info" parameter could specify that the URI in the Identity header "info" parameter could specify that
body with a CID URI [RFC2392]. However, in many environments this is body with a CID URI [RFC2392]. However, in many environments this is
not feasible due to message size restrictions or lack of necessary not feasible due to message size restrictions or lack of necessary
support for multipart MIME. support for multipart MIME.
More commonly, the Identity header "info" parameter in a SIP request The Identity header "info" parameter in a SIP request may contain a
may contain a URI that the verifier dereferences with a network call. URI that the verifier dereferences. Implementations of this
Implementations of this specification are required to support the use specification are required to support the use of SIP for this
of SIP for this function (via the SUBSCRIBE/NOTIFY mechanism), as function (via the SUBSCRIBE/NOTIFY mechanism), as well as HTTP, via
well as HTTP, via the Enrollment over Secure Transport mechanisms the Enrollment over Secure Transport mechanisms described in RFC 7030
described in RFC 7030 [RFC7030]. [RFC7030].
Note well that as an optimization, a verifier may have access to a Note well that as an optimization, a verifier may have access to a
service, a cache or other local store that grants access to service, a cache or other local store that grants access to
certificates for a particular telephone number. However, there may certificates for a particular telephone number. However, there may
be multiple valid certificates that can sign a call setup request for be multiple valid certificates that can sign a call setup request for
a telephone number, and as a consequence, there needs to be some a telephone number, and as a consequence, there needs to be some
discriminator that the signer uses to identify their credentials. discriminator that the signer uses to identify their credentials.
The Identity header "info" parameter itself can serve as such a The Identity header "info" parameter itself can serve as such a
discriminator, provided implementations use that parameter as a key discriminator, provided implementations use that parameter as a key
when accessing certificates from caches or other sources. when accessing certificates from caches or other sources.
8. Verifying Certificate Scope with TN Authorization List 8. TN Authorization List Syntax
The subjects of certificates containing the TN Authorization List The subjects of certificates containing the TN Authorization List
extension are the administrative entities to whom numbers are extension are the administrative entities to whom numbers are
assigned or delegated. When a verifier is validating a caller's assigned or delegated. When a verifier is validating a caller's
identity, local policy always determines the circumstances under identity, local policy always determines the circumstances under
which any particular subject may be trusted, but the purpose of the which any particular subject may be trusted, but the purpose of the
TN Authorization List extension particular is to allow a verifier to TN Authorization List extension in particular is to allow a verifier
ascertain when the CA has designed that the subject has authority to ascertain when the CA has designated that the subject has
over a particular telephone number or number range. authority over a particular telephone number or number range. The
Telephony Number (TN) Authorization List certificate extension is
included in the Certificate's extension field [RFC5280]. The
extension is defined with ASN.1, defined in [X.680] through [X.683].
What follows is the syntax and semantics of the extension.
The Telephony Number (TN) Authorization List certificate extension is The Telephony Number (TN) Authorization List certificate extension is
identified by the following object identifier: identified by the following object identifier (OID), which is defined
under the id-ce OID arc defined in [RFC5280] and managed by IANA (see
Section 10):
id-ce-TNAuthList OBJECT IDENTIFIER ::= { id-ce TBD } id-ce-TNAuthList OBJECT IDENTIFIER ::= { id-ce TBD }
The TN Authorization List certificate extension has the following The TN Authorization List certificate extension has the following
syntax: syntax:
TNAuthorizationList ::= SEQUENCE SIZE (1..MAX) OF TNAuthorization TNAuthorizationList ::= SEQUENCE SIZE (1..MAX) OF TNAuthorization
TNAuthorization ::= SEQUENCE SIZE (1..MAX) OF TNEntry TNAuthorization ::= SEQUENCE SIZE (1..MAX) OF TNEntry
skipping to change at page 11, line 5 skipping to change at page 11, line 31
count INTEGER } count INTEGER }
E164Number ::= IA5String (SIZE (1..15)) (FROM ("0123456789")) E164Number ::= IA5String (SIZE (1..15)) (FROM ("0123456789"))
The TN Authorization List certificate extension indicates the The TN Authorization List certificate extension indicates the
authorized phone numbers for the call setup signer. It indicates one authorized phone numbers for the call setup signer. It indicates one
or more blocks of telephone number entries that have been authorized or more blocks of telephone number entries that have been authorized
for use by the call setup signer. There are three ways to identify for use by the call setup signer. There are three ways to identify
the block: the block:
1. A Service Provider Identifier (SPID) can be used to indirectly 1. A Service Provider Identifier (SPID, also known as an Operating
name all of the telephone numbers associated with that service Company Number (OCN) or Carrier Identification Code (CIC), as
provider, specified in [ATIS-0300050]) can be used to indirectly name all
of the telephone numbers associated with that service provider,
2. Telephone numbers can be listed in a range, and 2. Telephone numbers can be listed in a range (in the
TelephoneNumberRange format), or
3. A single telephone number can be listed. 3. A single telephone number can be listed (as an E164Number).
Note that because large-scale service providers may want to associate Note that because large-scale service providers may want to associate
many numbers, possibly millions of numbers, with a particular many numbers, possibly millions of numbers, with a particular
certificate, optimizations are required for those cases to prevent certificate, optimizations are required for those cases to prevent
certificate size from becoming unmanageable. In these cases, the TN certificate size from becoming unmanageable. In these cases, the TN
Authorization List may be given by reference rather than by value, Authorization List may be given by reference rather than by value,
through the presence of a separate certificate extension that permits through the presence of a separate certificate extension that permits
verifiers to either securely download the list of numbers associated verifiers to either securely download the list of numbers associated
with a certificate, or to verify that a single number is under the with a certificate, or to verify that a single number is under the
authority of this certificate. This optimization will be detailed in authority of this certificate. This optimization is left for future
future version of this specification. work.
9. Certificate Freshness and Revocation 9. Certificate Freshness and Revocation
Regardless of which of the approaches in Section 3 is followed for Regardless of which of the approaches in Section 3 is followed for
using certificates, some sort of certificate verification mechanism using certificates, a certificate verification mechanism is required.
is required. However, the traditional problem of certificate However, the traditional problem of certificate freshness gains a new
freshness gains a new wrinkle when using the TN Authorization List wrinkle when using the TN Authorization List extension, because
extension, because verifiers must establish not only that a verifiers must establish not only that a certificate remains valid,
certificate remains valid, but also that the certificate's scope but also that the certificate's scope contains the telephone number
contains the telephone number that the verifier is validating. that the verifier is validating. Dynamic changes to number
Dynamic changes to number assignments can occur due to number assignments can occur due to number portability, for example. So
portability, for example. So even if a verifier has a valid cached even if a verifier has a valid cached certificate for a telephone
certificate for a telephone number (or a range containing the number (or a range containing the number), the verifier must
number), the verifier must determine that the entity that signed is determine that the entity that signed is still a proper authority for
still a proper authority for that number. that number.
To verify the status of the certificate, the verifier needs to To verify the status of the certificate, the verifier needs to
acquire the certificate if necessary (via the methods described in acquire the certificate if necessary (via the methods described in
Section 7), and then would need to either: Section 7), and then would need to either:
(a) Rely on short-lived certificates and not check the certificate's (a) Rely on short-lived certificates and not check the certificate's
status, or status, or
(b) Rely on status information from the authority (b) Rely on status information from the authority (e.g. OCSP, see
Section 9.2)
The tradeoff between short lived certificates and using status The tradeoff between short lived certificates and using status
information is the former's burden is on the front end (i.e., information is that the former's burden is on the front end (i.e.,
enrollment) and the latter's burden is on the back end (i.e., enrollment) and the latter's burden is on the back end (i.e.,
verification). Both impact call setup time, but it is assumed that verification). Both impact call setup time, but it is assumed that
performing enrollment for each call is more of an impact that using generating a short-lived certificate for each all, and consequently
status information. This document therefore recommends relying on performing enrollment for each call, is more of an impact than
status information. acquiring status information. This document therefore recommends
relying on status information.
9.1. Choosing a Verification Method 9.1. Choosing a Verification Method
There are three common certificate verification mechanisms employed There are three common certificate verification mechanisms employed
by CAs: by CAs:
1. Certificate Revocation Lists (CRLs) [RFC5280] 1. Certificate Revocation Lists (CRLs) [RFC5280]
2. Online Certificate Status Protocol (OCSP) [RFC6960], and 2. Online Certificate Status Protocol (OCSP) [RFC6960], and
skipping to change at page 12, line 40 skipping to change at page 13, line 23
by every CA. CRLs have a reputation of being quite large (10s of by every CA. CRLs have a reputation of being quite large (10s of
MBytes), because CAs maintain and issue one monolithic CRL with all MBytes), because CAs maintain and issue one monolithic CRL with all
of their revoked certificates, but CRLs do support a variety of of their revoked certificates, but CRLs do support a variety of
mechanisms to scope the size of the CRLs based on revocation reasons mechanisms to scope the size of the CRLs based on revocation reasons
(e.g., key compromise vs CA compromise), user certificates only, and (e.g., key compromise vs CA compromise), user certificates only, and
CA certificates only as well as just operationally deciding to keep CA certificates only as well as just operationally deciding to keep
the CRLs small. However, scoping the CRL introduces other issues the CRLs small. However, scoping the CRL introduces other issues
(i.e., does the RP have all of the CRL partitions). (i.e., does the RP have all of the CRL partitions).
CAs in the STIR architecture will likely all create CRLs for audit CAs in the STIR architecture will likely all create CRLs for audit
purposes, but it NOT RECOMMENDED that they be relying upon for status purposes, but it NOT RECOMMENDED that they be relied upon for status
information. Instead, one of the two "online" options is preferred. information. Instead, one of the two "online" options is preferred.
Between the two, OCSP is much more widely deployed and this document Between the two, OCSP is much more widely deployed and this document
therefore recommends the use of OCSP in high-volume environments therefore recommends the use of OCSP in high-volume environments
(HVE) for validating the freshness of certificates, based on (HVE) for validating the freshness of certificates, based on
[RFC6960], incorporating some (but not all) of the optimizations of [RFC6960], incorporating some (but not all) of the optimizations of
[RFC5019]. CRLs MUST be signed with the same algorithm as the [RFC5019]. CRLs MUST be signed with the same algorithm as the
certificate. certificate.
9.2. Using OCSP with TN Auth List 9.2. Using OCSP with TN Auth List
Certificates compliant with this specification therefore SHOULD Certificates compliant with this specification therefore SHOULD
include a URL pointing to an OCSP service in the Authority include a URL pointing to an OCSP service in the Authority
Information Access (AIA) certificate extension, via the "id-ad-ocsp" Information Access (AIA) certificate extension, via the "id-ad-ocsp"
accessMethod specified in [RFC5280]. Baseline OCSP however supports accessMethod specified in [RFC5280]. It is RECOMMENDED that entities
only three possible response values: good, revoked, or unknown. that issue certificates with the Telephone Number Authorization List
Without some extension, OCSP would not indicate whether the certificate extension run an OCSP server for this purpose. Baseline
certificate is authorized for a particular telephone number that the OCSP however supports only three possible response values: good,
verifier is validating. revoked, or unknown. Without some extension, OCSP would not indicate
whether the certificate is authorized for a particular telephone
number that the verifier is validating.
At a high level, there are two ways that a client might pose this At a high level, there are two ways that a client might pose this
authorization question: authorization question:
For this certificate, is the following number currently in its For this certificate, is the following number currently in its
scope of validity? scope of validity?
What are all the telephone numbers associated with this What are all the telephone numbers associated with this
certificate, or this certificate subject? certificate, or this certificate subject?
Only the former lends itself to piggybacking on the OCSP status Only the former lends itself to piggybacking on the OCSP status
mechanism; since the verifier is already asking an authority about mechanism; since the verifier is already asking an authority about
the certificate's status, why not reuse that mechanism, instead of the certificate's status, why not reuse that mechanism, instead of
creating a new service that requires additional round trips? Like creating a new service that requires additional round trips? Like
most PKIX-developed protocols, OCSP is extensible; OCSP supports most PKIX-developed protocols, OCSP is extensible; OCSP supports
request extensions (including sending multiple requests at once) and request extensions (including sending multiple requests at once) and
per-request extensions. It seems unlikely that the verifier will be per-request extensions. It seems unlikely that the verifier will be
skipping to change at page 14, line 9 skipping to change at page 14, line 40
optional: per [RFC6960] Section 4.4, support for all OCSP extensions optional: per [RFC6960] Section 4.4, support for all OCSP extensions
is optional. If the OCSP server does not understand the requested is optional. If the OCSP server does not understand the requested
extension, it will still provide the baseline validation of the extension, it will still provide the baseline validation of the
certificate itself. Moreover, in practical STIR deployments, the certificate itself. Moreover, in practical STIR deployments, the
issuer of the certificate will set the accessLocation for the OCSP issuer of the certificate will set the accessLocation for the OCSP
AIA extension to point to an OCSP service that supports this AIA extension to point to an OCSP service that supports this
extension, so the risk of interoperability failure due to lack of extension, so the risk of interoperability failure due to lack of
support for this extension is minimal. support for this extension is minimal.
The OCSP TNQuery extension is included as one of the request's The OCSP TNQuery extension is included as one of the request's
signlerequestExtensions. It may also appear in the response's singleRequestExtensions. It may also appear in the response's
singleExtensions. When an OCSP server includes a number in the singleExtensions. When an OCSP server includes a number in the
response's singleExtensions, this informs the client that the response's singleExtensions, this informs the client that the
certificate is still valid for the number that appears in the TNQuery certificate is still valid for the number that appears in the TNQuery
extension field. If the TNQuery is absent from a response to a query extension field. If the TNQuery is absent from a response to a query
containing a TNQuery in its singleRequestExtension, then the server containing a TNQuery in its singleRequestExtension, then the server
is not able to validate that the number is still in the scope of is not able to validate that the number is still in the scope of
authority of the certificate. authority of the certificate.
id-pkix-ocsp-stir-tn OBJECT IDENTIFIER ::= { id-pkix-ocsp TBD } id-pkix-ocsp-stir-tn OBJECT IDENTIFIER ::= { id-pkix-ocsp TBD }
skipping to change at page 14, line 31 skipping to change at page 15, line 14
The HVE OCSP profile [RFC5019] prohibits the use of per-request The HVE OCSP profile [RFC5019] prohibits the use of per-request
extensions. As it is anticipated that STIR will use OCSP in a high- extensions. As it is anticipated that STIR will use OCSP in a high-
volume environment, many of the optimizations recommended by HVE are volume environment, many of the optimizations recommended by HVE are
desirable for the STIR environment. This document therefore uses the desirable for the STIR environment. This document therefore uses the
HVE optimizations augmented as follows: HVE optimizations augmented as follows:
o Implementations MUST use SHA-256 as the hashing algorithm for the o Implementations MUST use SHA-256 as the hashing algorithm for the
CertID.issuerNameHash and the CertID.issuerKeyHash values. That CertID.issuerNameHash and the CertID.issuerKeyHash values. That
is CertID.hashAlgorithm is id-sha256 [RFC4055] and the values are is CertID.hashAlgorithm is id-sha256 [RFC4055] and the values are
truncated to 160-bits as specified Option 1 in Sectin 2 of as per truncated to 160-bits as specified Option 1 in Section 2 of
in [RFC7093]. [RFC7093].
o Clients MUST include the OCSP TNQuery extension in requests' o Clients MUST include the OCSP TNQuery extension in requests'
singleRequestExtensions. singleRequestExtensions.
o Servers MUST include the OCSP TNQuery extension in responses' o Servers MUST include the OCSP TNQuery extension in responses'
singleExtensions. singleExtensions.
o Servers SHOULD return responses that would otherwise have been o Servers SHOULD return responses that would otherwise have been
"unknown" as "not good" (i.e., return only "good" and "not good" "unknown" as "not good" (i.e., return only "good" and "not good"
responses). responses).
skipping to change at page 15, line 14 skipping to change at page 15, line 45
o There is no requirement to support SHA-1, RSA with SHA-1, or DSA o There is no requirement to support SHA-1, RSA with SHA-1, or DSA
with SHA-1. with SHA-1.
OCSP responses MUST be signed using the same algorithm as the OCSP responses MUST be signed using the same algorithm as the
certificate being checked. certificate being checked.
To facilitate matching the authority key identifier values found in To facilitate matching the authority key identifier values found in
CA certificates with the KeyHash used in the OCSP response, CA certificates with the KeyHash used in the OCSP response,
certificates compliant with this specification MUST generate certificates compliant with this specification MUST generate
authority key identifiers and subject key identifers using the authority key identifiers and subject key identifiers using the
SHA-256 and truncate the value to 160-bits as specified in Option 1 SHA-256 and truncate the value to 160-bits as specified in Option 1
in Section 2 of [RFC7093]. in Section 2 of [RFC7093].
Ideally, once a certificate has been acquired by a verifier, some Ideally, once a certificate has been acquired by a verifier, some
sort of asynchronous mechanism could notify and update the verifier sort of asynchronous mechanism could notify and update the verifier
if the scope of the certificate changes so that verifiers could if the scope of the certificate changes so that verifiers could
implement a cache. While not all possible categories of verifiers implement a cache. While not all possible categories of verifiers
could implement such behavior, some sort of event-driven notification could implement such behavior, some sort of event-driven notification
of certificate status is another potential subject of future work. of certificate status is another potential subject of future work.
One potential direction is that a future SIP SUBSCRIBE/NOTIFY-based One potential direction is that a future SIP SUBSCRIBE/NOTIFY-based
skipping to change at page 15, line 49 skipping to change at page 16, line 31
9.3. Acquiring TN Lists By Reference 9.3. Acquiring TN Lists By Reference
Acquiring a list of the telephone numbers associated with a Acquiring a list of the telephone numbers associated with a
certificate or its subject lends itself to an application-layer certificate or its subject lends itself to an application-layer
query/response interaction outside of OCSP, one which could be query/response interaction outside of OCSP, one which could be
initiated through a separate URI included in the certificate. The initiated through a separate URI included in the certificate. The
AIA extension (see [RFC5280]) supports such a mechanism: it AIA extension (see [RFC5280]) supports such a mechanism: it
designates an OID to identify the accessMethod and an accessLocation, designates an OID to identify the accessMethod and an accessLocation,
which would most likely be a URI. A verifier would then follow the which would most likely be a URI. A verifier would then follow the
URI to ascertain whether the list of TNs authorized for use by the URI to ascertain whether the list of TNs are authorized for use by
caller. the caller.
HTTPS is the most obvious candidate for a protocol to be used for HTTPS is the most obvious candidate for a protocol to be used for
fetching the list of telephone number associated with a particular fetching the list of telephone numbers associated with a particular
certificate. This document defines a new AIA accessMethod, called certificate. This document defines a new AIA accessMethod, called
"id-ad-stir-tn", which uses the following AIA OID: "id-ad-stir-tn", which uses the following AIA OID:
id-ad-stir-tn OBJECT IDENTIFIER ::= { id-ad TBD } id-ad-stir-tn OBJECT IDENTIFIER ::= { id-ad TBD }
When the "id-ad-stir-tn" accessMethod is used, the accessLocation When the "id-ad-stir-tn" accessMethod is used, the accessLocation
MUST be an HTTPS URI. The document returned by dereferencing that MUST be an HTTPS URI. The document returned by dereferencing that
URI will contain the complete TN Authorization List (see Section 8) URI will contain the complete TN Authorization List (see Section 8)
for the certificate. for the certificate.
Delivering the entire list of telephone numbers associated with a Delivering the entire list of telephone numbers associated with a
particular certificate will divulge to STIR verifiers information particular certificate will divulge to STIR verifiers information
about telephone numbers other than the one associated with the about telephone numbers other than the one associated with the
particular call that the verifier is checking. In some environments, particular call that the verifier is checking. In some environments,
where STIR verifiers handle a high volume of calls, maintaining an where STIR verifiers handle a high volume of calls, maintaining an
up-to-date and complete cache for the numbers associated with crucial up-to-date and complete cache for the numbers associated with crucial
certificate holders could give an important boost to performance. certificate holders could give an important boost to performance.
10. Acknowledgments 10. IANA Considerations
Russ Housley, Brian Rosen, Cullen Jennings and Eric Rescorla provided
key input to the discussions leading to this document.
11. IANA Considerations
This document makes use of object identifiers for the TN Certificate This document makes use of object identifiers for the TN Certificate
Extension defined in Section 8, TN-HVE OCSP extension in Extension defined in Section 8, TN-HVE OCSP extension in
Section 9.2.1, the TN by reference AIA access descriptor defined in Section 9.2.1, the TN by reference AIA access descriptor defined in
Section 9.3, and the ASN.1 module identifier defined in Appendix A. Section 9.3, and the ASN.1 module identifier defined in Appendix A.
It therefore requests that the IANA make the following assignments: It therefore requests that the IANA make the following assignments:
o TN Certificate Extension in the SMI Security for PKIX Certificate o TN Certificate Extension in the SMI Security for PKIX Certificate
Extension registry: http://www.iana.org/assignments/smi-numbers/ Extension registry: http://www.iana.org/assignments/smi-numbers/
smi-numbers.xhtml#smi-numbers-1.3.6.1.5.5.7.1 smi-numbers.xhtml#smi-numbers-1.3.6.1.5.5.7.1
skipping to change at page 17, line 43 skipping to change at page 18, line 18
Informational URL https://foo.example.com/assurance/ Informational URL https://foo.example.com/assurance/
Certificate Policy Object Identifier: 0.0.0.0 Certificate Policy Object Identifier: 0.0.0.0
NOTE: Do not register this example. The OID is purposely invalid. NOTE: Do not register this example. The OID is purposely invalid.
Experts are expected to ensure the reference CP includes the OID Experts are expected to ensure the reference CP includes the OID
being registered. being registered.
12. Security Considerations 11. Security Considerations
This document is entirely about security. For further information on This document is entirely about security. For further information on
certificate security and practices, see [RFC5280], in particular its certificate security and practices, see [RFC5280], in particular its
Security Considerations. For OCSP-related security considerations Security Considerations. For OCSP-related security considerations
see [RFC6960] and [RFC5019] see [RFC6960] and [RFC5019]
12. Acknowledgments
Russ Housley, Brian Rosen, Cullen Jennings, Dave Crocker, Tony
Rutkowski, John Braunberger, and Eric Rescorla provided key input to
the discussions leading to this document.
13. References 13. References
[ATIS-0300050]
ATIS Recommendation 0300050, "Carrier Identification Code
(CIC) Assignment Guidelines", 2012.
[I-D.ietf-stir-passport] [I-D.ietf-stir-passport]
Wendt, C. and J. Peterson, "Persona Assertion Token", Wendt, C. and J. Peterson, "Persona Assertion Token",
draft-ietf-stir-passport-03 (work in progress), June 2016. draft-ietf-stir-passport-07 (work in progress), September
2016.
[I-D.ietf-stir-rfc4474bis] [I-D.ietf-stir-rfc4474bis]
Peterson, J., Jennings, C., Rescorla, E., and C. Wendt, Peterson, J., Jennings, C., Rescorla, E., and C. Wendt,
"Authenticated Identity Management in the Session "Authenticated Identity Management in the Session
Initiation Protocol (SIP)", draft-ietf-stir-rfc4474bis-09 Initiation Protocol (SIP)", draft-ietf-stir-rfc4474bis-11
(work in progress), May 2016. (work in progress), August 2016.
[RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail
Extensions (MIME) Part Two: Media Types", RFC 2046, Extensions (MIME) Part Two: Media Types", RFC 2046,
DOI 10.17487/RFC2046, November 1996, DOI 10.17487/RFC2046, November 1996,
<http://www.rfc-editor.org/info/rfc2046>. <http://www.rfc-editor.org/info/rfc2046>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <http://www.rfc-editor.org/info/rfc2119>.
skipping to change at page 20, line 23 skipping to change at page 21, line 5
<http://www.rfc-editor.org/info/rfc7340>. <http://www.rfc-editor.org/info/rfc7340>.
[RFC7375] Peterson, J., "Secure Telephone Identity Threat Model", [RFC7375] Peterson, J., "Secure Telephone Identity Threat Model",
RFC 7375, DOI 10.17487/RFC7375, October 2014, RFC 7375, DOI 10.17487/RFC7375, October 2014,
<http://www.rfc-editor.org/info/rfc7375>. <http://www.rfc-editor.org/info/rfc7375>.
[RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token [RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token
(JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015, (JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015,
<http://www.rfc-editor.org/info/rfc7519>. <http://www.rfc-editor.org/info/rfc7519>.
[X.680] USC/Information Sciences Institute, "Information [X.509] ITU-T Recommendation X.520 (10/2012) | ISO/IEC 9594-8,
Technology - Abstract Syntax Notation One.", ITU-T X.680, "Information technology - Open Systems Interconnection -
ISO/IEC 8824-1:2002, 2002. The Directory: Public-key and attribute certificate
frameworks", 2012.
[X.681] USC/Information Sciences Institute, "Information [X.520] ITU-T Recommendation X.520 (10/2012) | ISO/IEC 9594-6,
Technology - Abstract Syntax Notation One: Information "Information technology - Open Systems Interconnection -
Object Specification", ITU-T X.681, ISO/IEC 8824-2:2002, The Directory: Selected Attribute Types", 2012.
2002.
[X.682] USC/Information Sciences Institute, "Information [X.680] ITU-T Recommendation X.680 (08/2015) | ISO/IEC 8824-1,
Technology - Abstract Syntax Notation One: Constraint "Information Technology - Abstract Syntax Notation One:
Specification", ITU-T X.682, ISO/IEC 8824-3:2002, 2002. Specification of basic notation".
[X.683] USC/Information Sciences Institute, "Information [X.681] ITU-T Recommendation X.681 (08/2015) | ISO/IEC 8824-2,
Technology - Abstract Syntax Notation One: "Information Technology - Abstract Syntax Notation One:
Parameterization of ASN.1 Specifications", ITU-T X.683, Information Object Specification".
ISO/IEC 8824-4:2002, 2002.
[X.682] ITU-T Recommendation X.682 (08/2015) | ISO/IEC 8824-2,
"Information Technology - Abstract Syntax Notation One:
Constraint Specification".
[X.683] ITU-T Recommendation X.683 (08/2015) | ISO/IEC 8824-3,
"Information Technology - Abstract Syntax Notation One:
Parameterization of ASN.1 Specifications".
Appendix A. ASN.1 Module Appendix A. ASN.1 Module
This appendix provides the normative ASN.1 [X.680] definitions for This appendix provides the normative ASN.1 [X.680] definitions for
the structures described in this specification using ASN.1, as the structures described in this specification using ASN.1, as
defined in [X.680] through [X.683]. defined in [X.680] through [X.683].
The modules defined in this document are compatible with the most
current ASN.1 specification published in 2015 (see [X.680], [X.681],
[X.682], [X.683]). None of the newly defined tokens in the 2008
ASN.1 (DATE, DATE-TIME, DURATION, NOT-A-NUMBER, OID-IRI, RELATIVE-
OID-IRI, TIME, TIME-OF-DAY)) are currently used in any of the ASN.1
specifications referred to here.
This ASN.1 module imports ASN.1 from [RFC5912]. This ASN.1 module imports ASN.1 from [RFC5912].
TN-Module { TN-Module {
iso(1) identified-organization(3) dod(6) internet(1) iso(1) identified-organization(3) dod(6) internet(1)
security(5) mechanisms(5) pkix(7) id-mod(0) security(5) mechanisms(5) pkix(7) id-mod(0)
id-mod-tn-module(TBD) } id-mod-tn-module(TBD) }
DEFINITIONS EXPLICIT TAGS ::= BEGIN DEFINITIONS EXPLICIT TAGS ::= BEGIN
IMPORTS IMPORTS
id-ad, id-ad-ocsp -- From [RFC5912] id-ad, id-ad-ocsp -- From [RFC5912]
FROM PKIX1Explicit-2009 { FROM PKIX1Explicit-2009 {
iso(1) identified-organization(3) dod(6) internet(1) security(5) iso(1) identified-organization(3) dod(6) internet(1) security(5)
mechanisms(5) pkix(7) id-mod(0) id-mod-pkix1-explicit-02(51) } mechanisms(5) pkix(7) id-mod(0) id-mod-pkix1-explicit-02(51) }
id-ce -- From [RFC5912] id-ce -- From [RFC5912]
FROM PKIX1Implicit-2009 { FROM PKIX1Implicit-2009 {
iso(1) identified-organization(3) dod(6) internet(1) security(5) iso(1) identified-organization(3) dod(6) internet(1) security(5)
mechanisms(5) pkix(7) id-mod(0) id-mod-pkix1-implicit-02(59) } mechanisms(5) pkix(7) id-mod(0) id-mod-pkix1-implicit-02(59) }
 End of changes. 56 change blocks. 
154 lines changed or deleted 194 lines changed or added

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