draft-ietf-stir-certificates-03.txt   draft-ietf-stir-certificates-04.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: September 22, 2016 Sn3rd Expires: November 27, 2016 Sn3rd
March 21, 2016 May 26, 2016
Secure Telephone Identity Credentials: Certificates Secure Telephone Identity Credentials: Certificates
draft-ietf-stir-certificates-03.txt draft-ietf-stir-certificates-04.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 proves 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.
skipping to change at page 1, line 36 skipping to change at page 1, line 36
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 September 22, 2016. This Internet-Draft will expire on November 27, 2016.
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. Enrollment and Authorization using the TN Authorization List 5 4. Certificate Usage . . . . . . . . . . . . . . . . . . . . . . 5
4.1. Certificate Extension Scope and Structure . . . . . . . . 6 5. Enrollment and Authorization using the TN Authorization List 6
5. Provisioning Private Keying Material . . . . . . . . . . . . 7 5.1. Certificate Extension Scope and Structure . . . . . . . . 7
6. Acquiring Credentials to Verify Signatures . . . . . . . . . 7 6. Provisioning Private Keying Material . . . . . . . . . . . . 8
7. Verifying Certificate Scope with TN Authorization List . . . 8 7. Acquiring Credentials to Verify Signatures . . . . . . . . . 8
8. Certificate Freshness and Revocation . . . . . . . . . . . . 10 8. Verifying Certificate Scope with TN Authorization List . . . 9
8.1. Choosing a Verification Method . . . . . . . . . . . . . 10 9. Certificate Freshness and Revocation . . . . . . . . . . . . 11
8.2. Using OCSP with TN Auth List . . . . . . . . . . . . . . 11 9.1. Choosing a Verification Method . . . . . . . . . . . . . 11
8.2.1. OCSP Extension Specification . . . . . . . . . . . . 12 9.2. Using OCSP with TN Auth List . . . . . . . . . . . . . . 12
8.3. Acquiring TN Lists By Reference . . . . . . . . . . . . . 13 9.2.1. OCSP Extension Specification . . . . . . . . . . . . 13
9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 14 9.3. Acquiring TN Lists By Reference . . . . . . . . . . . . . 14
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14 10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 15
11. Security Considerations . . . . . . . . . . . . . . . . . . . 15 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15
12. Informative References . . . . . . . . . . . . . . . . . . . 15 12. Security Considerations . . . . . . . . . . . . . . . . . . . 16
Appendix A. ASN.1 Module . . . . . . . . . . . . . . . . . . . . 17 13. Informative References . . . . . . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 Appendix A. ASN.1 Module . . . . . . . . . . . . . . . . . . . . 19
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19
1. Introduction 1. Introduction
The STIR problem statement [I-D.ietf-stir-problem-statement] The STIR problem statement [RFC7340] identifies the primary enabler
identifies the primary enabler of robocalling, vishing, swatting and of robocalling, vishing, swatting and related attacks as the
related attacks as the capability to impersonate a calling party capability to impersonate a calling party number. The starkest
number. The starkest examples of these attacks are cases where examples of these attacks are cases where automated callees on the
automated callees on the PSTN rely on the calling number as a PSTN rely on the calling number as a security measure, for example to
security measure, for example to access a voicemail system. access a voicemail system. Robocallers use impersonation as a means
Robocallers use impersonation as a means of obscuring identity; while of obscuring identity; while robocallers can, in the ordinary PSTN,
robocallers can, in the ordinary PSTN, block (that is, withhold) block (that is, withhold) their caller identity, callees are less
their caller identity, callees are less likely to pick up calls from likely to pick up calls from blocked identities, and therefore
blocked identities, and therefore appearing to calling from some appearing to calling from some number, any number, is preferable.
number, any number, is preferable. Robocallers however prefer not to Robocallers however prefer not to call from a number that can trace
call from a number that can trace back to the robocaller, and back to the robocaller, and therefore they impersonate numbers that
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 prove 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. This document describes credential systems present such credentials. For that reason the STIR threat model
for telephone numbers based on X.509 version 3 certificates in
accordance with [RFC5280]. While telephone numbers have long been a [RFC7375] stipulates, "The design of the credential system envisioned
part of the X.509 standard, this document extends X.509 with a as a solution to these threats must, for example, limit the scope of
Telephone Number Authorization List which binds certificates to the credentials issued to carriers or national authorities to those
authority for particular telephone numbers, or potentially telephone numbers that fall under their purview." This document describes
number blocks or ranges. credential systems for telephone numbers based on X.509 version 3
certificates in accordance with [RFC5280]. While telephone numbers
have long been a part of the X.509 standard, this document provides
ways to determine authority more aligned with telephone network
requirements, including extending X.509 with a Telephone Number
Authorization List which binds certificates to authority for
particular telephone numbers, or potentially telephone number blocks
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 (see by an entity enrolled with the certification authority (see
Section 4), whereas a verifier need only trust the root certificate Section 5), whereas a verifier need only trust the root certificate
of the authority, and have a means to access and validate the public of 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 prove
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 certification authority or deployment environment. We particular certification authority or deployment environment. We
skipping to change at page 4, line 46 skipping to change at page 5, line 5
over-the-wire format specified in [I-D.ietf-stir-rfc4474bis] over-the-wire format specified in [I-D.ietf-stir-rfc4474bis]
accommodates either of these approaches: the methods for accommodates either of these approaches: the methods for
canonicalizing, signing, for identifying and accessing the canonicalizing, signing, for identifying and accessing the
certificate and so on remain the same; it is only the verifier certificate and so on remain the same; it is only the verifier
behavior and authorization decision that will change depending on the behavior and authorization decision that will change depending on the
approach to telephone number authority taken by the certificate. For approach to telephone number authority taken by the certificate. For
that reason, the two approaches are not mutually exclusive, and in that reason, the two approaches are not mutually exclusive, and in
fact a certificate issued to a traditional telephone network service fact a certificate issued to a traditional telephone network service
provider could contain a TN Authorization List or not, depending on provider could contain a TN Authorization List or not, depending on
the certification authority issuing the credential. Regardless of the certification authority issuing the credential. Regardless of
which approaches is used, certificates that assert authority over which approach is used, certificates that assert authority over
telephone numbers are subject to the ordinary operational procedures telephone numbers are subject to the ordinary operational procedures
that govern certificate use per [RFC5280]. This means that that govern certificate use per [RFC5280]. This means that
verification services must be mindful of the need to ensure that they verification services must be mindful of the need to ensure that they
trust the root certificate authority that issued the certificate, and trust the root certificate authority that issued the certificate, and
that they have some means to determine the freshness of the that they have some means to determine the freshness of the
certificate (see Section 8). certificate (see Section 9).
4. Enrollment and Authorization using the TN Authorization List 4. Certificate Usage
[I-D.ietf-stir-rfc4474bis] requires that all credential systems used
for signing the Identity header in SIP detail the following:
1. The URI schemes permitted in the SIP Identity header "info"
parameter, as well as any special procedures required to
dereference the URIs. While normative text is given below in
Section 7, this mechanism permits the HTTP, CID and SIP URI
schemes to appear in the "info" parameter.
2. Procedures required to extract keying material from the resources
designated by the URI. Implementations perform no special
procedures beyond dereferencing the "info" URI. See Section 7.
3. Procedures used by the verification service to determine the
scope of the credential. This specification effectively proposes
two methods, as outlined in Section 3: one where the subject (or
more properly subjectAltName) of the certificate indicates the
scope of authority through a domain name, and relying parties
either trust the subject entirely or have some direct means of
determining whether or not a number falls under a subject's
authority; and another where an extension to the certificate as
described in Section 8 identifies the scope of the certificate.
4. The cryptographic algorithms required to validate the
credentials. For this specification, that means the signature
algorithms used to sign certificates. This specification
REQUIRES that implementations support both ECDSA with the P-256
curve (see [RFC4754]) and RSA PKCS#1 v1.5 (see [RFC3447]
Section 8.2) for certificate signatures. Implementers are
advised that RS256 is mandated only as a transitional mechanism,
due to its widespread use in existing PKI, but we anticipate that
this mechanism will eventually be deprecated.
5. Finally, note that all certificates compliant with this
specification MUST provide cryptographic keying material
sufficient to generate the ECDSA P-256 signatures necessary to
support the ES256 hashed signatures required by PASSporT
[I-D.ietf-stir-passport], which in turn follows JWT [RFC7519].
5. Enrollment and Authorization using the TN Authorization List
This document assumes a threefold model for certificate enrollment This document assumes a threefold model for certificate enrollment
when using the TN Authorization List extension. when using the TN Authorization List extension.
The first enrollment model is one where the certification authority The first enrollment model is one where the certification authority
acts in concert with national numbering authorities to issue acts in concert with national numbering authorities to issue
credentials to those parties to whom numbers are assigned. In the credentials to those parties to whom numbers are assigned. In the
United States, for example, telephone number blocks are assigned to United States, for example, telephone number blocks are assigned to
Local Exchange Carriers (LECs) by the North American Numbering Plan Local Exchange Carriers (LECs) by the North American Numbering Plan
Administrator (NANPA), who is in turn directed by the national Administrator (NANPA), who is in turn directed by the national
skipping to change at page 6, line 19 skipping to change at page 7, line 19
[TBD] Future versions of this specification may address adding a [TBD] Future versions of this specification may address adding a
level of assurance indication to certificates to differentiate those level of assurance indication to certificates to differentiate those
enrolled from proof-of-possession versus delegation. enrolled from proof-of-possession versus delegation.
[TBD] Future versions of this specification may also discuss methods [TBD] Future versions of this specification may also discuss methods
of partial delegation, where certificate holders delegate only part of partial delegation, where certificate holders delegate only part
of their authority. For example, individual assignees may want to of their authority. For example, individual assignees may want to
delegate to a service authority for text messages associated with delegate to a service authority for text messages associated with
their telephone number, but not for other functions. their telephone number, but not for other functions.
4.1. Certificate Extension Scope and Structure 5.1. 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 is capable of signing for any one
of those numbers. Others may wish to compartmentalize authority over of those numbers. Others may wish to compartmentalize authority over
subsets of the numbers they control. 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
skipping to change at page 7, line 7 skipping to change at page 8, line 7
organization or individual issued such a certificate may not want to organization or individual issued such a certificate may not want to
associate themselves with a certificate; for example, a private associate themselves with a certificate; for example, a private
individual with a certificate for a single telephone number might not individual with a certificate for a single telephone number might not
want to distribute that certificate publicly if every verifier want to distribute that certificate publicly if every verifier
immediately knew their name. The certification authorities issuing immediately knew their name. The certification authorities issuing
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.
5. 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. This specification does not require that any particular
entity in a SIP deployment architecture sign requests, only that it entity in a SIP deployment architecture sign requests, only that it
be an entity with an appropriate private key; the authentication be an entity with an appropriate private key; the authentication
service role may be instantiated by any entity in a SIP network. For service role may be instantiated by any entity in a SIP network. For
a certificate granting authority only over a particular number which a certificate granting authority only over a particular number which
has been issued to an end user, for example, an end user device might has been issued to an end user, for example, an end user device might
hold the private key and generate the signature. In the case of a hold the private key and generate the signature. In the case of a
service provider with authority over large blocks of numbers, an service provider with authority over large blocks of numbers, an
intermediary might hold the private key and sign calls. 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].
6. 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 acquire 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 where the credential used to
skipping to change at page 8, line 20 skipping to change at page 9, line 20
described in RFC 7030 [RFC7030]. described in RFC 7030 [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. Verifiers when accessing certificates from caches or other sources.
still
7. Verifying Certificate Scope with TN Authorization List 8. Verifying Certificate Scope with TN Authorization List
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 particular is to allow a verifier to
ascertain when the certification authority has designed that the ascertain when the certification authority has designed that the
subject has authority over a particular telephone number or number subject has authority over a particular telephone number or number
range. range.
skipping to change at page 10, line 11 skipping to change at page 11, line 11
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 will be detailed in
future version of this specification. future version of this specification.
8. 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, some sort of certificate verification mechanism
is required. However, the traditional problem of certificate is required. However, the traditional problem of certificate
freshness gains a new wrinkle when using the TN Authorization List freshness gains a new wrinkle when using the TN Authorization List
extension, because verifiers must establish not only that a extension, because verifiers must establish not only that a
certificate remains valid, but also that the certificate's scope certificate remains valid, but also that the certificate's scope
contains the telephone number that the verifier is validating. contains the telephone number that the verifier is validating.
Dynamic changes to number assignments can occur due to number Dynamic changes to number assignments can occur due to number
portability, for example. So even if a verifier has a valid cached portability, for example. So even if a verifier has a valid cached
certificate for a telephone number (or a range containing the certificate for a telephone number (or a range containing the
number), the verifier must determine that the entity that signed is number), the verifier must determine that the entity that signed is
still a proper authority for that number. still a proper authority for 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 6), and then would need to either: Section 7), and then would need to either:
Rely on short-lived certificates and not check the certificate's Rely on short-lived certificates and not check the certificate's
status, or status, or
Rely on status information from the authority Rely on status information from the authority
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 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 performing enrollment for each call is more of an impact that using
status information. This document therefore recommends relying on status information. This document therefore recommends relying on
status information. status information.
8.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:
Certificate Revocation Lists (CRLs) [RFC5280] Certificate Revocation Lists (CRLs) [RFC5280]
Online Certificate Status Protocol (OCSP) [RFC6960], and Online Certificate Status Protocol (OCSP) [RFC6960], and
Server-based Certificate Validation Protocol (SCVP) [RFC5055]. Server-based Certificate Validation Protocol (SCVP) [RFC5055].
When relying on status information, the verifier needs to obtain the When relying on status information, the verifier needs to obtain the
skipping to change at page 11, line 35 skipping to change at page 12, line 35
(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 relying 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 for therefore recommends the use of OCSP in high-volume environments for
validating the freshness of certificates, based on [RFC6960], validating the freshness of certificates, based on [RFC6960],
incorporating some (but not all) of the optimizations of [RFC5019]. incorporating some (but not all) of the optimizations of [RFC5019].
8.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]. Baseline OCSP however supports
only three possible response values: good, revoked, or unknown. With only three possible response values: good, revoked, or unknown. With
some extension, OCSP would not indicate whether the certificate is some extension, OCSP would not indicate whether the certificate is
authorized for a particular telephone number that the verifier is authorized for a particular telephone number that the verifier is
validating. validating.
skipping to change at page 12, line 32 skipping to change at page 13, line 32
we're6960 obviously going to change this to be SHA-256. we're6960 obviously going to change this to be SHA-256.
The requirement to consult OCSP in real time results in a network The requirement to consult OCSP in real time results in a network
round-trip time of day, which is something to consider because it round-trip time of day, which is something to consider because it
will add to the call setup time. OCSP server implementations will add to the call setup time. OCSP server implementations
commonly pre-generate responses, and to speed up HTTPS connections, commonly pre-generate responses, and to speed up HTTPS connections,
servers often provide OCSP responses for each certificate in their servers often provide OCSP responses for each certificate in their
hierarchy. If possible, both of these OCSP concepts should be hierarchy. If possible, both of these OCSP concepts should be
adopted for use with STIR. adopted for use with STIR.
8.2.1. OCSP Extension Specification 9.2.1. OCSP Extension Specification
The extension mechanism for OCSP follows X.509 v3 certificate The extension mechanism for OCSP follows X.509 v3 certificate
extensions, and thus requires an OID, a criticality flag, and ASN.1 extensions, and thus requires an OID, a criticality flag, and ASN.1
syntax as defined by the OID. The criticality specified here is syntax as defined by the OID. The criticality specified here is
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
skipping to change at page 13, line 40 skipping to change at page 14, line 40
PKI environments as an optimization which allows web servers to send PKI environments as an optimization which allows web servers to send
up-to-date certificate status information acquired from OCSP to up-to-date certificate status information acquired from OCSP to
clients as TLS is negotiated. A similar mechanism could be clients as TLS is negotiated. A similar mechanism could be
implemented for SIP requests, in which the authentication service implemented for SIP requests, in which the authentication service
adds status information for its certificate to the SIP request, which adds status information for its certificate to the SIP request, which
would save the verifier the trouble of performing the OCSP dip would save the verifier the trouble of performing the OCSP dip
itself. Especially for high-volume authentication and verification itself. Especially for high-volume authentication and verification
services, this could result in significant performance improvements. services, this could result in significant performance improvements.
This is left as an optimization for future work. This is left as an optimization for future work.
8.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 authorized for use by the
caller. 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 number 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 7) 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.
9. Acknowledgments 10. Acknowledgments
Russ Housley, Brian Rosen, Cullen Jennings and Eric Rescorla provided Russ Housley, Brian Rosen, Cullen Jennings and Eric Rescorla provided
key input to the discussions leading to this document. key input to the discussions leading to this document.
10. IANA Considerations 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 7, TN-HVE OCSP extension in Extension defined in Section 8, TN-HVE OCSP extension in
Section 8.2.1, and the TN by reference AIA access descriptor defined Section 9.2.1, and the TN by reference AIA access descriptor defined
in Section 8.3. It therefore requests that the IANA make the in Section 9.3. It therefore requests that the IANA make the
following assignments: following assignments:
- TN Certificate Extension in the SMI Security for PKIX - TN Certificate Extension in the SMI Security for PKIX
Certificate Extension registry: http://www.iana.org/assignments/ Certificate Extension registry: http://www.iana.org/assignments/
smi-numbers/smi-numbers.xhtml#smi-numbers-1.3.6.1.5.5.7.1 smi-numbers/smi-numbers.xhtml#smi-numbers-1.3.6.1.5.5.7.1
- TN-HVE OCSP extension in the SMI Security for PKIX Online - TN-HVE OCSP extension in the SMI Security for PKIX Online
Certificate Status Protocol (OCSP) registry: Certificate Status Protocol (OCSP) registry:
http://www.iana.org/assignments/smi-numbers/smi-numbers.xhtml#smi- http://www.iana.org/assignments/smi-numbers/smi-numbers.xhtml#smi-
numbers-1.3.6.1.5.5.7.48.1 numbers-1.3.6.1.5.5.7.48.1
- TNS by reference access descriptor in the SMI Security for PKIX - TNS by reference access descriptor in the SMI Security for PKIX
Access Descriptor registry: http://www.iana.org/assignments/smi- Access Descriptor registry: http://www.iana.org/assignments/smi-
numbers/smi-numbers.xhtml#smi-numbers-1.3.6.1.5.5.7.48 numbers/smi-numbers.xhtml#smi-numbers-1.3.6.1.5.5.7.48
11. Security Considerations 12. 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 RFC 3280 [RFC3280], in certificate security and practices, see [RFC3280], in particular its
particular its Security Considerations. Security Considerations.
12. Informative References 13. Informative References
[I-D.ietf-stir-problem-statement] [I-D.ietf-stir-passport]
Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure Wendt, C. and J. Peterson, "Persona Assertion Token",
Telephone Identity Problem Statement and Requirements", draft-ietf-stir-passport-02 (work in progress), May 2016.
draft-ietf-stir-problem-statement-05 (work in progress),
May 2014.
[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-07 Initiation Protocol (SIP)", draft-ietf-stir-rfc4474bis-09
(work in progress), February 2016. (work in progress), May 2016.
[I-D.peterson-sipping-retarget] [I-D.peterson-sipping-retarget]
Peterson, J., "Retargeting and Security in SIP: A Peterson, J., "Retargeting and Security in SIP: A
Framework and Requirements", draft-peterson-sipping- Framework and Requirements", draft-peterson-sipping-
retarget-00 (work in progress), February 2005. retarget-00 (work in progress), February 2005.
[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>.
skipping to change at page 16, line 22 skipping to change at page 17, line 22
Protocol (SIP): Locating SIP Servers", RFC 3263, Protocol (SIP): Locating SIP Servers", RFC 3263,
DOI 10.17487/RFC3263, June 2002, DOI 10.17487/RFC3263, June 2002,
<http://www.rfc-editor.org/info/rfc3263>. <http://www.rfc-editor.org/info/rfc3263>.
[RFC3280] Housley, R., Polk, W., Ford, W., and D. Solo, "Internet [RFC3280] Housley, R., Polk, W., Ford, W., and D. Solo, "Internet
X.509 Public Key Infrastructure Certificate and X.509 Public Key Infrastructure Certificate and
Certificate Revocation List (CRL) Profile", RFC 3280, Certificate Revocation List (CRL) Profile", RFC 3280,
DOI 10.17487/RFC3280, April 2002, DOI 10.17487/RFC3280, April 2002,
<http://www.rfc-editor.org/info/rfc3280>. <http://www.rfc-editor.org/info/rfc3280>.
[RFC3447] Jonsson, J. and B. Kaliski, "Public-Key Cryptography
Standards (PKCS) #1: RSA Cryptography Specifications
Version 2.1", RFC 3447, DOI 10.17487/RFC3447, February
2003, <http://www.rfc-editor.org/info/rfc3447>.
[RFC4754] Fu, D. and J. Solinas, "IKE and IKEv2 Authentication Using
the Elliptic Curve Digital Signature Algorithm (ECDSA)",
RFC 4754, DOI 10.17487/RFC4754, January 2007,
<http://www.rfc-editor.org/info/rfc4754>.
[RFC5019] Deacon, A. and R. Hurst, "The Lightweight Online [RFC5019] Deacon, A. and R. Hurst, "The Lightweight Online
Certificate Status Protocol (OCSP) Profile for High-Volume Certificate Status Protocol (OCSP) Profile for High-Volume
Environments", RFC 5019, DOI 10.17487/RFC5019, September Environments", RFC 5019, DOI 10.17487/RFC5019, September
2007, <http://www.rfc-editor.org/info/rfc5019>. 2007, <http://www.rfc-editor.org/info/rfc5019>.
[RFC5055] Freeman, T., Housley, R., Malpani, A., Cooper, D., and W. [RFC5055] Freeman, T., Housley, R., Malpani, A., Cooper, D., and W.
Polk, "Server-Based Certificate Validation Protocol Polk, "Server-Based Certificate Validation Protocol
(SCVP)", RFC 5055, DOI 10.17487/RFC5055, December 2007, (SCVP)", RFC 5055, DOI 10.17487/RFC5055, December 2007,
<http://www.rfc-editor.org/info/rfc5055>. <http://www.rfc-editor.org/info/rfc5055>.
skipping to change at page 17, line 19 skipping to change at page 18, line 30
[RFC7030] Pritikin, M., Ed., Yee, P., Ed., and D. Harkins, Ed., [RFC7030] Pritikin, M., Ed., Yee, P., Ed., and D. Harkins, Ed.,
"Enrollment over Secure Transport", RFC 7030, "Enrollment over Secure Transport", RFC 7030,
DOI 10.17487/RFC7030, October 2013, DOI 10.17487/RFC7030, October 2013,
<http://www.rfc-editor.org/info/rfc7030>. <http://www.rfc-editor.org/info/rfc7030>.
[RFC7299] Housley, R., "Object Identifier Registry for the PKIX [RFC7299] Housley, R., "Object Identifier Registry for the PKIX
Working Group", RFC 7299, DOI 10.17487/RFC7299, July 2014, Working Group", RFC 7299, DOI 10.17487/RFC7299, July 2014,
<http://www.rfc-editor.org/info/rfc7299>. <http://www.rfc-editor.org/info/rfc7299>.
[RFC7340] Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure
Telephone Identity Problem Statement and Requirements",
RFC 7340, DOI 10.17487/RFC7340, September 2014,
<http://www.rfc-editor.org/info/rfc7340>.
[RFC7375] Peterson, J., "Secure Telephone Identity Threat Model",
RFC 7375, DOI 10.17487/RFC7375, October 2014,
<http://www.rfc-editor.org/info/rfc7375>.
[RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token
(JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015,
<http://www.rfc-editor.org/info/rfc7519>.
[X.680] USC/Information Sciences Institute, "Information [X.680] USC/Information Sciences Institute, "Information
Technology - Abstract Syntax Notation One.", ITU-T X.680, Technology - Abstract Syntax Notation One.", ITU-T X.680,
ISO/IEC 8824-1:2002, 2002. ISO/IEC 8824-1:2002, 2002.
[X.681] USC/Information Sciences Institute, "Information [X.681] USC/Information Sciences Institute, "Information
Technology - Abstract Syntax Notation One: Information Technology - Abstract Syntax Notation One: Information
Object Specification", ITU-T X.681, ISO/IEC 8824-2:2002, Object Specification", ITU-T X.681, ISO/IEC 8824-2:2002,
2002. 2002.
[X.682] USC/Information Sciences Institute, "Information [X.682] USC/Information Sciences Institute, "Information
 End of changes. 32 change blocks. 
73 lines changed or deleted 142 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/