rfc9060.original | rfc9060.txt | |||
---|---|---|---|---|
Network Working Group J. Peterson | Internet Engineering Task Force (IETF) J. Peterson | |||
Internet-Draft Neustar | Request for Comments: 9060 Neustar | |||
Intended status: Standards Track February 21, 2021 | Category: Standards Track June 2021 | |||
Expires: August 25, 2021 | ISSN: 2070-1721 | |||
STIR Certificate Delegation | Secure Telephone Identity Revisited (STIR) Certificate Delegation | |||
draft-ietf-stir-cert-delegation-04 | ||||
Abstract | Abstract | |||
The Secure Telephone Identity Revisited (STIR) certificate profile | The Secure Telephone Identity Revisited (STIR) certificate profile | |||
provides a way to attest authority over telephone numbers and related | provides a way to attest authority over telephone numbers and related | |||
identifiers for the purpose of preventing telephone number spoofing. | identifiers for the purpose of preventing telephone number spoofing. | |||
This specification details how that authority can be delegated from a | This specification details how that authority can be delegated from a | |||
parent certificate to a subordinate certificate. This supports a | parent certificate to a subordinate certificate. This supports a | |||
number of use cases, including those where service providers grant | number of use cases, including those where service providers grant | |||
credentials to enterprises or other customers capable of signing | credentials to enterprises or other customers capable of signing | |||
calls with STIR. | calls with STIR. | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This is an Internet Standards Track document. | |||
provisions of BCP 78 and BCP 79. | ||||
Internet-Drafts are working documents of the Internet Engineering | ||||
Task Force (IETF). Note that other groups may also distribute | ||||
working documents as Internet-Drafts. The list of current Internet- | ||||
Drafts is at https://datatracker.ietf.org/drafts/current/. | ||||
Internet-Drafts are draft documents valid for a maximum of six months | This document is a product of the Internet Engineering Task Force | |||
and may be updated, replaced, or obsoleted by other documents at any | (IETF). It represents the consensus of the IETF community. It has | |||
time. It is inappropriate to use Internet-Drafts as reference | received public review and has been approved for publication by the | |||
material or to cite them other than as "work in progress." | Internet Engineering Steering Group (IESG). Further information on | |||
Internet Standards is available in Section 2 of RFC 7841. | ||||
This Internet-Draft will expire on August 25, 2021. | Information about the current status of this document, any errata, | |||
and how to provide feedback on it may be obtained at | ||||
https://www.rfc-editor.org/info/rfc9060. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2021 IETF Trust and the persons identified as the | Copyright (c) 2021 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 | |||
(https://trustee.ietf.org/license-info) in effect on the date of | (https://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 | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
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. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Terminology | |||
3. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 3. Motivation | |||
4. Delegation of STIR Certificates . . . . . . . . . . . . . . . 4 | 4. Delegation of STIR Certificates | |||
4.1. Scope of Delegation . . . . . . . . . . . . . . . . . . . 5 | 4.1. Scope of Delegation | |||
5. Authentication Services Signing with Delegate Certificates . 6 | 5. Authentication Service Signing with Delegate Certificates | |||
6. Verification Service Behavior for Delegate Certificate | 6. Verification Service Behavior for Delegate Certificate | |||
Signatures . . . . . . . . . . . . . . . . . . . . . . . . . 7 | Signatures | |||
7. Acquiring Multiple Certificates in STIR . . . . . . . . . . . 7 | 7. Acquiring Multiple Certificates in STIR | |||
8. Certification Authorities and Service Providers . . . . . . . 8 | 8. Certification Authorities and Service Providers | |||
8.1. ACME and Delegation . . . . . . . . . . . . . . . . . . . 9 | 8.1. ACME and Delegation | |||
8.2. Handling Multiple Certificates . . . . . . . . . . . . . 9 | 8.2. Handling Multiple Certificates | |||
9. Alternative Solutions . . . . . . . . . . . . . . . . . . . . 10 | 9. Alternative Solutions | |||
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | 10. IANA Considerations | |||
11. Privacy Considerations . . . . . . . . . . . . . . . . . . . 10 | 11. Privacy Considerations | |||
12. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | 12. Security Considerations | |||
13. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 11 | 13. References | |||
14. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 | 13.1. Normative References | |||
14.1. Normative References . . . . . . . . . . . . . . . . . . 12 | 13.2. Informative References | |||
14.2. Informative References . . . . . . . . . . . . . . . . . 13 | Acknowledgments | |||
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 14 | Author's Address | |||
1. Introduction | 1. Introduction | |||
The STIR problem statement [RFC7340] reviews the difficulties facing | The STIR problem statement [RFC7340] reviews the difficulties facing | |||
the telephone network that are enabled by impersonation, including | the telephone network that are enabled by impersonation, including | |||
various forms of robocalling, voicemail hacking, and swatting | various forms of robocalling, voicemail hacking, and swatting | |||
[RFC7375]. One of the most important components of a system to | [RFC7375]. One of the most important components of a system to | |||
prevent impersonation is the implementation of credentials which | prevent impersonation is the implementation of credentials that | |||
identify the parties who control telephone numbers. The STIR | identify the parties who control telephone numbers. The STIR | |||
certificates [RFC8226] specification describes a credential system | certificate specification [RFC8226] describes a credential system | |||
based on [X.509] version 3 certificates in accordance with [RFC5280] | based on version 3 certificates [X.509] in accordance with [RFC5280] | |||
for that purpose. Those credentials can then be used by STIR | for that purpose. Those credentials can then be used by STIR | |||
authentication services [RFC8224] to sign PASSporT objects [RFC8225] | authentication services [RFC8224] to sign PASSporT objects [RFC8225] | |||
carried in SIP [RFC3261] requests. | carried in SIP [RFC3261] requests. | |||
[RFC8226] specifies an extension to X.509 that defines a Telephony | [RFC8226] specifies an extension to X.509 that defines a Telephony | |||
Number (TN) Authorization List that may be included by certification | Number (TN) Authorization List that may be included by certification | |||
authorities (CAs) in certificates. This extension provides | authorities (CAs) in certificates. This extension provides | |||
additional information that relying parties can use when validating | additional information that relying parties can use when validating | |||
transactions with the certificate. When a SIP request, for example, | transactions with the certificate. When a SIP request, for example, | |||
arrives at a terminating administrative domain, the calling number | arrives at a terminating administrative domain, the calling number | |||
attested by the SIP request can be compared to the TN Authorization | attested by the SIP request can be compared to the TN Authorization | |||
List of the certificate that signed the PASSporT to determine if the | List of the certificate that signed the PASSporT to determine if the | |||
caller is authorized to use that calling number. | caller is authorized to use that calling number. | |||
Initial deployment of [RFC8226] has focused on the use of Service | Initial deployment of [RFC8226] has focused on the use of Service | |||
Provider Codes (SPCs) to attest the scope of authority of a | Provider Codes (SPCs) to attest to the scope of authority of a | |||
certificate. Typically, these codes are internal telephone network | certificate. Typically, these codes are internal telephone network | |||
identifiers such as the Operating Company Numbers (OCNs) assigned to | identifiers such as the Operating Company Numbers (OCNs) assigned to | |||
carriers in the United States. However, these network identifiers | carriers in the United States. However, these network identifiers | |||
are effectively unavailable to non-carrier entities, and this has | are effectively unavailable to non-carrier entities, and this has | |||
raised questions about how such entities might best participate in | raised questions about how such entities might best participate in | |||
STIR, when needed. Additionally, a carrier may sometimes operate | STIR when needed. Additionally, a carrier may sometimes operate | |||
numbers that are formally assigned to another carrier. [RFC8226] | numbers that are formally assigned to another carrier. [RFC8226] | |||
gave an overview of a certificate enrollment model based on | gives an overview of a certificate enrollment model based on | |||
"delegation," whereby the holder of a certificate might allocate a | "delegation", whereby the holder of a certificate might allocate a | |||
subset of that certificate's authority to another party. This | subset of that certificate's authority to another party. This | |||
specification details how delegation of authority works for STIR | specification details how delegation of authority works for STIR | |||
certificates. | certificates. | |||
2. Terminology | 2. Terminology | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
"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 BCP | "OPTIONAL" in this document are to be interpreted as described in | |||
14 [RFC2119] [RFC8174] when, and only when, they appear in all | BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
capitals, as shown here. | capitals, as shown here. | |||
This specification also uses the terms: | This specification also uses the following terms: | |||
delegation: the concept of STIR certificate delegation and its terms | delegation: The concept of STIR certificate delegation and its terms | |||
are defined in [RFC8226]. | are defined in [RFC8226]. | |||
legitimate spoofing: the practice of selecting an alternative | legitimate spoofing: The practice of selecting an alternative | |||
presentation number for a telephone caller legitimately. | presentation number for a telephone caller legitimately. | |||
3. Motivation | 3. Motivation | |||
The most pressing need for delegation in STIR arises in a set of use | The most pressing need for delegation in STIR arises in a set of use | |||
cases where callers want to use a particular calling number, but for | cases where callers want to use a particular calling number, but for | |||
whatever reason, their outbound calls will not pass through the | whatever reason, their outbound calls will not pass through the | |||
authentication service of the service provider that controls that | authentication service of the service provider that controls that | |||
numbering resource. | numbering resource. | |||
One example would be an enterprise that places outbound calls through | One example would be an enterprise that places outbound calls through | |||
a set of service providers, for each call choosing a provider based | a set of service providers; for each call, a provider is chosen based | |||
on a least-cost routing algorithm or similar local policy. The | on a least-cost routing algorithm or similar local policy. The | |||
enterprise was assigned a calling number by a particular service | enterprise was assigned a calling number by a particular service | |||
provider, but some calls originating from that number will go out | provider, but some calls originating from that number will go out | |||
through other service providers. | through other service providers. | |||
A user might also roam from their usual service provider to a | A user might also roam from their usual service provider to a | |||
different network or administrative domain, for various reasons. | different network or administrative domain for various reasons. Most | |||
Most "legitimate spoofing" examples are of this form: where a user | "legitimate spoofing" examples are of this form, where a user wants | |||
wants to be able to use the main call-back number for their business | to be able to use the main callback number for their business as a | |||
as a calling party number, even when the user is away from the | calling party number, even when the user is away from the business. | |||
business. | ||||
These sorts of use cases could be addressed if the carrier who | These sorts of use cases could be addressed if the carrier who | |||
controls the numbering resource were able to delegate a credential | controls the numbering resource were able to delegate a credential | |||
that could be used to sign calls regardless of which network or | that could be used to sign calls regardless of which network or | |||
administrative domain handles the outbound routing for the call. In | administrative domain handles the outbound routing for the call. In | |||
the absence of something like a delegation mechanism, outbound | the absence of something like a delegation mechanism, outbound | |||
carriers may be forced to sign calls with credentials that do not | carriers may be forced to sign calls with credentials that do not | |||
cover the originating number in question. Unfortunately, that | cover the originating number in question. Unfortunately, that | |||
practice would be difficult to distinguish from malicious spoofing, | practice would be difficult to distinguish from malicious spoofing, | |||
and if it becomes widespread, it could erode trust in STIR overall. | and if it becomes widespread, it could erode trust in STIR overall. | |||
4. Delegation of STIR Certificates | 4. Delegation of STIR Certificates | |||
STIR delegate certificates are certificates containing a TNAuthList | STIR delegate certificates are certificates containing a TNAuthList | |||
object that have been signed with the private key of a parent | object that have been signed with the private key of a parent | |||
certificate that itself contains a TNAuthList object (either by-value | certificate that itself contains a TNAuthList object (either by value | |||
or by-reference, see Section 4.1). The parent certificate needs to | or by reference; see Section 4.1). The parent certificate needs to | |||
contain a basic constraints extension with the [RFC5280] cA boolean | contain a basic constraints extension with the cA boolean set to | |||
set to "true", indicating that the subject can sign certificates. | "true" [RFC5280], indicating that the subject can sign certificates. | |||
Every STIR delegate certificate identifies its parent certificate | Every STIR delegate certificate identifies its parent certificate | |||
with a standard [RFC5280] Authority Key Identifier extension. | with a standard Authority Key Identifier extension [RFC5280]. | |||
The authority bestowed on the holder of the delegate certificate by | The authority bestowed on the holder of the delegate certificate by | |||
the parent certificate is recorded in the delegate certificate's | the parent certificate is recorded in the delegate certificate's | |||
TNAuthList. Because STIR certificates use the TNAuthList object | TNAuthList. Because STIR certificates use the TNAuthList object | |||
rather than the Subject Name for indicating the scope of their | rather than the Subject Name for indicating the scope of their | |||
authority, traditional [RFC5280] name constraints are not directly | authority, traditional name constraints [RFC5280] are not directly | |||
applicable to STIR. In a manner similar to the RPKI [RFC6480] | applicable to STIR. In a manner similar to the Resource Public Key | |||
"encompassing" semantics, each delegate certificate MUST have a | Infrastructure (RPKI) [RFC6480] "encompassing" semantics, each | |||
TNAuthList scope that is equal to or a subset of its parent | delegate certificate MUST have a TNAuthList scope that is equal to or | |||
certificate's scope: it must be "encompassed." For example, a parent | a subset of its parent certificate's scope: it must be "encompassed". | |||
certificate with a TNAuthList that attested authority for the | For example, a parent certificate with a TNAuthList that attested | |||
numbering range +1-212-555-1000 through 1999 could issue a | authority for the numbering range +1-212-555-1000 through 1999 could | |||
certificate to one delegate attesting authority for the range | issue a certificate to one delegate attesting authority for the range | |||
+1-212-555-1500 through 1599, and to another delegate a certificate | +1-212-555-1500 through 1599 and, to another delegate, a certificate | |||
for the individual number +1-212-555-1824. | for the individual number +1-212-555-1824. | |||
Delegate certificates MAY also contain a basic constraints extension | Delegate certificates MAY also contain a basic constraints extension | |||
with the cA boolean set to "true", indicating that they can sign | with the cA boolean set to "true", indicating that they can sign | |||
subordinate certificates for further delegates. As only end-entity | subordinate certificates for further delegates. As only end-entity | |||
certificates can actually sign PASSporTs, the holder of a STIR | certificates can actually sign PASSporTs, the holder of a STIR | |||
certificate with a "true" cA boolean may create a separate end-entity | certificate with a "true" cA boolean may create a separate end-entity | |||
certificate either with an identical TNAuthList to its parent, or | certificate with either an identical TNAuthList to its parent or a | |||
with a subset of the parents authority, that would be used to sign | subset of the parent's authority, which would be used to sign | |||
PASSporTs. | PASSporTs. | |||
4.1. Scope of Delegation | 4.1. Scope of Delegation | |||
The TNAuthList of a STIR certificate may contain one or more SPCs, or | The TNAuthList of a STIR certificate may contain one or more SPCs, | |||
one or more telephone number ranges, or even a mix of SPCs and | one or more telephone number ranges, or even a mix of SPCs and | |||
telephone number ranges. When delegating from a STIR certificate, a | telephone number ranges. When delegating from a STIR certificate, a | |||
child certificate may inherit from its parent either or both of the | child certificate may inherit from its parent either or both of the | |||
above, and this specification explicitly permits SPC-only parent | above, and this specification explicitly permits SPC-only parent | |||
certificates to delegate individual telephone numbers or ranges to a | certificates to delegate individual telephone numbers or ranges to a | |||
child certificate, as this will be necessary in some operating | child certificate, as this will be necessary in some operating | |||
environments. Depending on the sort of numbering resources that a | environments. Depending on the sort of numbering resources that a | |||
delegate has been assigned, various syntaxes can be used to capture | delegate has been assigned, various syntaxes can be used to capture | |||
the delegated resource. | the delegated resource. | |||
Some non-carrier entities may be assigned large and complex | Some non-carrier entities may be assigned large and complex | |||
allocations of telephone numbers, which may be only partially | allocations of telephone numbers, which may be only partially | |||
contiguous or entirely disparate. Allocations may also change | contiguous or entirely disparate. Allocations may also change | |||
frequently, in minor or significant ways. These resources may be so | frequently in minor or significant ways. These resources may be so | |||
complex, dynamic, or extensive that listing them in a certificate is | complex, dynamic, or extensive that listing them in a certificate is | |||
prohibitively difficult. Section 10.1 of [RFC8226] describes one | prohibitively difficult. Section 10.1 of [RFC8226] describes one | |||
potential way to address this, including the TNAuthList (specified in | potential way to address this: including the TNAuthList (specified in | |||
[RFC8226]) in the certificate by-reference rather than by value, | [RFC8226]) in the certificate by reference rather than by value, | |||
where a URL in the certificate points to a secure, dynamically- | where a URL in the certificate points to a secure, dynamically | |||
updated list of the telephone numbers in the scope of authority of a | updated list of the telephone numbers in the scope of authority of a | |||
certificate. For entities that are carriers in all but name, another | certificate. For entities that are carriers in all but name, another | |||
alternative is the allocation of an SPC; this yields much the same | alternative is the allocation of an SPC; this yields much the same | |||
property, as the SPC is effectively a pointer to an external database | property, as the SPC is effectively a pointer to an external database | |||
which dynamically tracks the numbers associated with the SPC. Either | that dynamically tracks the numbers associated with the SPC. Either | |||
of these approaches may make sense for a given deployment. | of these approaches may make sense for a given deployment. | |||
Certification path construction as detailed below treats by-reference | Certification path construction as detailed below treats by-reference | |||
TNAuthLists in a certificate as if it had been included by-value. | TNAuthLists in a certificate as if they had been included by value. | |||
Other non-carrier entities may have straightforward telephone number | Other non-carrier entities may have straightforward telephone number | |||
assignments, such as enterprises receiving a set of thousand blocks | assignments, such as enterprises receiving a set of a thousand blocks | |||
from a carrier that may be kept for years or decades. Particular | from a carrier that may be kept for years or decades. Particular | |||
freephone numbers may also have a long-term association with an | freephone numbers may also have a long-term association with an | |||
enterprise and its brand. For these sorts of assignments, assigning | enterprise and its brand. For these sorts of assignments, assigning | |||
an SPC may seem like overkill, and using the TN ranges of the | an SPC may seem like overkill, and using the TN ranges of the | |||
TNAuthList (by-value) is sufficient. | TNAuthList (by value) is sufficient. | |||
Whichever approach is taken to representing the delegated resource, | Whichever approach is taken to represent the delegated resource, | |||
there are fundamental trade-offs regarding when and where in the | there are fundamental trade-offs regarding when and where in the | |||
architecture a delegation is validated: that is, when the delegated | architecture a delegation is validated -- that is, when the delegated | |||
TNAuthList is checked to be "encompassed" by the TNAuthList of its | TNAuthList is checked and determined to be "encompassed" by the | |||
parent. This might be performed at the time the delegate certificate | TNAuthList of its parent. This might be performed at the time the | |||
is issued, or at the time that a verification service receives an | delegate certificate is issued, at the time that a verification | |||
inbound call, or potentially both. It is generally desirable to | service receives an inbound call, or potentially both. It is | |||
offload as much of this as possible to the certification process, as | generally desirable to offload as much of this as possible to the | |||
verification occurs during call setup and thus additional network | certification process as verification occurs during call setup; thus, | |||
dips could lead to perceptible delay, whereas certification happens | additional network dips could lead to perceptible delay, whereas | |||
outside of call processing as a largely administrative function. | certification happens outside of call processing as a largely | |||
Ideally, if a delegate certificate can supply a by-value TN range, | administrative function. Ideally, if a delegate certificate can | |||
then a verification service could ascertain that an attested calling | supply a by-value TN range, then a verification service could | |||
party number is within the scope of the provided certificate without | ascertain that an attested calling party number is within the scope | |||
requiring any additional transactions with a service. In practice, | of the provided certificate without requiring any additional | |||
verification services may already incorporate network queries into | transactions with a service. In practice, verification services may | |||
their processing (for example, to dereference the "x5u" field of a | already incorporate network queries into their processing (for | |||
PASSporT) that could piggyback any additional information needed by | example, to dereference the "x5u" field of a PASSporT) that could | |||
the verification service. | piggyback any additional information needed by the verification | |||
service. | ||||
Note that the permission semantics of the [RFC8226] TNAuthList are | Note that the permission semantics of the TNAuthList [RFC8226] are | |||
additive: that is, the scope of a certificate is the superset of all | additive: that is, the scope of a certificate is the superset of all | |||
of the SPCs and telephone number ranges enumerated in the TNAuthList. | of the SPCs and telephone number ranges enumerated in the TNAuthList. | |||
As SPCs themselves are effectively pointers to a set of telephone | As SPCs themselves are effectively pointers to a set of telephone | |||
number ranges, and a telephone number may belong to more than one | number ranges, and a telephone number may belong to more than one | |||
SPC, this may introduce some redundancy to the set of telephone | SPC, this may introduce some redundancy to the set of telephone | |||
numbers specified as the scope of a certificate. The presence of one | numbers specified as the scope of a certificate. The presence of one | |||
or more SPCs and one or more sets of telephone number ranges are | or more SPCs and one or more sets of telephone number ranges are | |||
similarly treated additively, even if the telephone number ranges | similarly treated additively, even if the telephone number ranges | |||
turn out to be redundant to the scope of an SPC. | turn out to be redundant to the scope of an SPC. | |||
5. Authentication Services Signing with Delegate Certificates | 5. Authentication Service Signing with Delegate Certificates | |||
Authentication service behavior varies from [RFC8224] as follows, | Authentication service behavior varies from [RFC8224] as follows, | |||
although the same checks are performed by the authentication service | although the same checks are performed by the authentication service | |||
when comparing the calling party number attested in call signaling | when comparing the calling party number attested in call signaling | |||
with the scope of the authority of the signing certificate. | with the scope of the authority of the signing certificate. | |||
Authentication services SHOULD NOT use a delegate certificate without | Authentication services SHOULD NOT use a delegate certificate without | |||
validating that its scope of authority is encompassed by that of its | validating that its scope of authority is encompassed by that of its | |||
parent certificate, and if that certificate has its own parent, the | parent certificate, and if that certificate has its own parent, the | |||
entire certification path SHOULD be validated. | entire certification path SHOULD be validated. | |||
This delegation architecture does not require that a non-carrier | This delegation architecture does not require that a non-carrier | |||
entity act as its own authentication service. That function may be | entity act as its own authentication service. That function may be | |||
performed by any authentication service that holds the private key | performed by any authentication service that holds the private key | |||
corresponding to the delegate certificate, including one run by an | corresponding to the delegate certificate, including one run by an | |||
outbound service provider, a third party in an enterprise's outbound | outbound service provider, a third party in an enterprise's outbound | |||
call path, or in the SIP User Agent itself. | call path, or in the SIP User Agent itself. | |||
Note that authentication services creating a PASSporT for a call | Note that authentication services creating a PASSporT for a call | |||
signed with a delegate certificate MUST provide an "x5u" link | signed with a delegate certificate MUST provide an "x5u" link | |||
corresponding to the entire certification path, rather than just the | corresponding to the entire certification path rather than just the | |||
delegate certificate used to sign the call, as described in | delegate certificate used to sign the call, as described in | |||
Section 7. | Section 7. | |||
6. Verification Service Behavior for Delegate Certificate Signatures | 6. Verification Service Behavior for Delegate Certificate Signatures | |||
The responsibility of a verification service validating PASSporTs | The responsibility of a verification service validating PASSporTs | |||
signed with delegate certificates, while largely following baseline | signed with delegate certificates, while largely following baseline | |||
[RFC8224] and [RFC8225], requires some additional procedures. When | specifications [RFC8224] and [RFC8225], requires some additional | |||
the verification service dereferences the "x5u" parameter, it will | procedures. When the verification service dereferences the "x5u" | |||
acquire a certificate list rather than a single certificate. It MUST | parameter, it will acquire a certificate list rather than a single | |||
then validate all of the credentials in the list, identifying the | certificate. It MUST then validate all of the credentials in the | |||
parent certificate for each delegate through its Authority Key | list, identifying the parent certificate for each delegate through | |||
Identifier extension. | its Authority Key Identifier extension. | |||
While ordinarily, relying parties have significant latitude in | While relying parties ordinarily have significant latitude in | |||
certification path construction when validating a certification path, | certification path construction when validating a certification path, | |||
STIR assumes a more rigid hierarchical subordination model, rather | STIR assumes a more rigid hierarchical subordination model rather | |||
than one where relying parties may want to derive their own | than one where relying parties may want to derive their own | |||
certification path to particular trust anchors. If the certificates | certification path to particular trust anchors. If the certificates | |||
acquired from the "x5u" element of a PASSporT do not lead to an | acquired from the "x5u" element of a PASSporT do not lead to an | |||
anchor that the verification service trusts, it treats the validation | anchor that the verification service trusts, it treats the validation | |||
no differently than it would when a non-delegated certificate was | no differently than it would when a non-delegated certificate was | |||
issued by an untrusted root; in SIP, it MAY return a 437 "Unsupported | issued by an untrusted root; in SIP, it MAY return a 437 "Unsupported | |||
Credential" response if the call should be failed for lack of a valid | Credential" response if the call should be failed for lack of a valid | |||
Identity header. | Identity header. | |||
7. Acquiring Multiple Certificates in STIR | 7. Acquiring Multiple Certificates in STIR | |||
PASSporT [RFC8225] uses the "x5u" element to convey the URL where | PASSporT [RFC8225] uses the "x5u" element to convey the URL where | |||
verification services can acquire the certificate used to sign a | verification services can acquire the certificate used to sign a | |||
PASSporT. This value is mirrored by the "info" parameter of the | PASSporT. This value is mirrored by the "info" parameter of the | |||
Identity header when a PASSporT is conveyed via SIP. Commonly, this | Identity header when a PASSporT is conveyed via SIP. Commonly, this | |||
is an HTTPS URI. | is an HTTPS URI. | |||
When a STIR delegate certificate is used to sign a PASSporT, the | When a STIR delegate certificate is used to sign a PASSporT, the | |||
"x5u" element in the PASSporT will contain a URI indicating where a | "x5u" element in the PASSporT will contain a URI indicating where a | |||
certificate list is available. While baseline JSON Web Signature | certificate list is available. While the baseline JSON Web Signature | |||
(JWS) also supports an "x5c" element specifically for certificate | (JWS) also supports an "x5c" element specifically for certificate | |||
chains, in operational practice, certification paths are already | chains, in operational practice, certification paths are already | |||
being delivered in the STIR environment via the "x5u" element, so | being delivered in the STIR environment via the "x5u" element, so | |||
this specification RECOMMENDS implementations contain to use "x5u"; | this specification RECOMMENDS that implementations continue to use | |||
"x5c" is OPTIONAL for environments where it is known to be supported. | "x5u". "x5c" is OPTIONAL for environments where it is known to be | |||
That list will be a concatenation of PEM-encoded certificates of the | supported. That list will be a concatenation of certificates encoded | |||
type "application/pem-certificate-chain" defined in [RFC8555]. The | with Privacy Enhanced Mail (PEM) of the type "application/pem- | |||
certificate path [RFC5280] ordering MUST be ordered from the signer | certificate-chain" defined in [RFC8555]. The certificate path | |||
to the trust anchor. The list begins with the certificate used to | [RFC5280] ordering MUST be ordered from the signer to the trust | |||
sign the PASSporT, followed by its parent, and then any subsequent | anchor. The list begins with the certificate used to sign the | |||
PASSporT, followed by its parent, and then any subsequent | ||||
grandparents, great-grandparents, and so on. The key identifier in | grandparents, great-grandparents, and so on. The key identifier in | |||
the Authority Key Identifier extension in the first certificate MUST | the Authority Key Identifier extension in the first certificate MUST | |||
appear in the Subject Key Identifier extension in the second | appear in the Subject Key Identifier extension in the second | |||
certificate. The key identifier pairing MUST match in this way | certificate. The key identifier pairing MUST match in this way | |||
throughout the entire chain of certificates. Note that ACME | throughout the entire chain of certificates. Note that Automatic | |||
[RFC8555] requires the first element in a pem-certificate-chain to be | Certificate Management Environment (ACME) [RFC8555] requires the | |||
an end-entity certificate. | first element in a pem-certificate-chain to be an end-entity | |||
certificate. | ||||
8. Certification Authorities and Service Providers | 8. Certification Authorities and Service Providers | |||
Once a telephone service provider has received a CA certificate | Once a telephone service provider has received a CA certificate | |||
attesting their numbering resources, they may delegate resources from | attesting to their numbering resources, they may delegate resources | |||
it as they see fit. Note that the allocation to a service provider | from it as they see fit. Note that the allocation to a service | |||
of a certificate with a basic constraints extension with the cA | provider of a certificate with a basic constraints extension with the | |||
boolean set to "true" does not require that a service provider act as | cA boolean set to "true" does not require that a service provider act | |||
a certification authority itself; serving as a certification | as a certification authority itself; serving as a certification | |||
authority is a function requiring specialized expertise and | authority is a function requiring specialized expertise and | |||
infrastructure. Certification authorities are for example | infrastructure. Certification authorities are, for example, | |||
responsible for maintain certificate revocation lists and related | responsible for maintaining certificate revocation lists and related | |||
functions, as well as publishing certification practice statements. | functions as well as publishing certification practice statements. A | |||
A third-party certification authority, including the same one that | third-party certification authority, including the same one that | |||
issued the service provider its parent certificate, could act as the | issued the service provider its parent certificate, could act as the | |||
CA that issues delegate certificates for the service provider, if the | CA that issues delegate certificates for the service provider if the | |||
necessary business relationships permit it. A service provider might | necessary business relationships permit it. A service provider might | |||
in this case act as a Token Authority (see Section 8.1) granting its | in this case act as a Token Authority (see Section 8.1) granting its | |||
customers permissions to receive certificates from the CA. | customers permissions to receive certificates from the CA. | |||
Note that if the same CA that issued the parent certificate is also | Note that if the same CA that issued the parent certificate is also | |||
issuing a delegate certificate, it may be possible to shorten the | issuing a delegate certificate, it may be possible to shorten the | |||
certification path, which reduces the work required of verification | certification path, which reduces the work required of verification | |||
services. The trade-off here is that if the CA simply issued a non- | services. The trade-off here is that if the CA simply issued a non- | |||
delegate certificate (whose parent is the CA's trust anchor) with the | delegate certificate (whose parent is the CA's trust anchor) with the | |||
proper TNAuthList value, relying parties might not be able to | proper TNAuthList value, relying parties might not be able to | |||
ascertain which service provider owned those telephone numbers, | ascertain which service provider owned those telephone numbers, | |||
information which might be used to make an authorization decision on | information that might be used to make an authorization decision on | |||
the terminating side. However, some additional object in the | the terminating side. However, some additional object in the | |||
certificate outside of the TNAuthList could preserve that | certificate outside of the TNAuthList could preserve that | |||
information; this is a potential area for future work, and longer | information; this is a potential area for future work, and longer | |||
certification paths are the only mechanism currently defined. | certification paths are the only mechanism currently defined. | |||
All CAs must detail in their practices and policies a requirement to | All CAs must detail in their practices and policies a requirement to | |||
validate that the "encompassing" of a delegate certificate by its | validate that the "encompassing" of a delegate certificate is done by | |||
parent. Note that this requires that CAs have access to the | its parent. Note that this requires that CAs have access to the | |||
necessary industry databases to ascertain whether, for example, a | necessary industry databases to ascertain whether, for example, a | |||
particular telephone number is encompassed by an SPC. Alternatively, | particular telephone number is encompassed by an SPC. Alternatively, | |||
a CA may acquire an Authority Token (see Section 8.1) that affirms | a CA may acquire an Authority Token (see Section 8.1) that affirms | |||
that a delegation is in the proper scope. Exactly what operational | that a delegation is in the proper scope. Exactly what operational | |||
practices this entails may vary in different national telephone | practices this entails may vary in different national telephone | |||
administrations, and are thus left to the CP/CPS [RFC3647]. | administrations and are thus left to the Certificate Policy / | |||
Certification Practice Statement (CP/CPS) [RFC3647]. | ||||
8.1. ACME and Delegation | 8.1. ACME and Delegation | |||
STIR deployments commonly use ACME [RFC8555] for certificate | STIR deployments commonly use ACME [RFC8555] for certificate | |||
acquisition, and it is anticipated that delegate certificates as well | acquisition, and it is anticipated that delegate certificates will | |||
will be acquired through an ACME interface. An entity can acquire a | also be acquired through an ACME interface. An entity can acquire a | |||
certificate from a particular CA by requesting an Authority Token | certificate from a particular CA by requesting an Authority Token | |||
[I-D.ietf-acme-authority-token] from the parent with the desired | [ACME-CHAL] from the parent with the desired TNAuthList [ACME-TOKEN] | |||
TNAuthList [I-D.ietf-acme-authority-token-tnauthlist] object. Note | object. Note that if the client intends to do further subdelegation | |||
that if the client intends to do further subdelegation of its own, it | of its own, it should request a token with the "ca" Authority Token | |||
should request a token with the "ca" Authority Token flag set. | flag set. | |||
The entity then presents that Authority Token to a CA to acquire a | The entity then presents that Authority Token to a CA to acquire a | |||
STIR delegate certificate. ACME returns an "application/pem- | STIR delegate certificate. ACME returns an "application/pem- | |||
certificate-chain" object, and that object would be suitable for | certificate-chain" object, and that object would be suitable for | |||
publishing as an HTTPS resource for retrieval with the PASSporT "x5u" | publication as an HTTPS resource for retrieval with the PASSporT | |||
mechanism as discussed in Section 7. If the CSR presented to the | "x5u" mechanism as discussed in Section 7. If the Certificate | |||
ACME server is for a certificate with the cA boolean set to "true", | Signing Request (CSR) presented to the ACME server is for a | |||
then the ACME server makes a policy decision to determine whether or | certificate with the cA boolean set to "true", then the ACME server | |||
not it is appropriate to issue that certificate to the requesting | makes a policy decision to determine whether or not it is appropriate | |||
entity. That policy decision will be reflected by the "ca" flag in | to issue that certificate to the requesting entity. That policy | |||
the Authority Token. | decision will be reflected by the "ca" flag in the Authority Token. | |||
Service providers that want the capability to rapidly age out | Service providers that want the capability to rapidly age out | |||
delegated certificates can rely on the ACME STAR [I-D.ietf-acme-star] | delegated certificates can rely on the ACME Short-Term, Automatically | |||
mechanism to automate the process of short-term certificate expiry. | Renewed (STAR) [RFC8739] mechanism to automate the process of short- | |||
term certificate expiry. | ||||
8.2. Handling Multiple Certificates | 8.2. Handling Multiple Certificates | |||
In some deployments, non-carrier entities may receive telephone | In some deployments, non-carrier entities may receive telephone | |||
numbers from several different carriers. This could lead to | numbers from several different carriers. This could lead to | |||
enterprises needing to maintain a sort of STIR keyring, with | enterprises needing to maintain a sort of STIR keyring, with | |||
different certificates delegated to them from different providers, | different certificates delegated to them from different providers. | |||
potentially issued by different CAs, which they choose between when | These certificates are potentially issued by different CAs, which | |||
signing a call. This could be the case regardless of which syntax is | enterprises choose between when signing a call. This could be the | |||
used in the TNAuthList to represent the scope of the delegation (see | case regardless of which syntax is used in the TNAuthList to | |||
Section 4.1). As noted in Section 8, if the parent certs use the | represent the scope of the delegation (see Section 4.1). As noted in | |||
same CA, it may be possible to shorten the certification path. | Section 8, if the parent certs use the same CA, it may be possible to | |||
shorten the certification path. | ||||
For non-carrier entities handling a small number of certificates, | For non-carrier entities handling a small number of certificates, | |||
this is probably not a significant burden. For cases where it | this is probably not a significant burden. For cases where it | |||
becomes burdensome, a few potential approaches exist. A delegate | becomes burdensome, a few potential approaches exist. A delegate | |||
certificate could be cross-certified with another delegate | certificate could be cross-certified with another delegate | |||
certificate via an Authority Information Access field containing the | certificate via an Authority Information Access (AIA) field | |||
URL of a Certificate Authority Issuer, so that a signer would only | containing the URL of a Certificate Authority Issuer so that a signer | |||
need to sign with a single certificate to inherit the privileges of | would only need to sign with a single certificate to inherit the | |||
the other certificate(s) it has cross-certified with. In very | privileges of the other certificate(s) with which it has cross- | |||
complex delegation cases, it might make more sense to establish a | certified. In very complex delegation cases, it might make more | |||
bridge CA that cross-certifies with all of the certificates held by | sense to establish a bridge CA that cross-certifies with all of the | |||
the enterprise, rather than requiring a mesh of cross-certification | certificates held by the enterprise rather than requiring a mesh of | |||
between a large number of certificates. Again, this bridge CA | cross-certification between a large number of certificates. Again, | |||
function would likely be performed by some existing CA in the STIR | this bridge CA function would likely be performed by some existing CA | |||
ecosystem. These procedures would however complicated the fairly | in the STIR ecosystem. These procedures would, however, complicate | |||
straightforward certification path reconstruction approach described | the fairly straightforward certification path reconstruction approach | |||
in Section 7 and would require further specification. | described in Section 7 and would require further specification. | |||
9. Alternative Solutions | 9. Alternative Solutions | |||
At the time this specification was written, STIR was only starting to | At the time this specification was written, STIR was only starting to | |||
see deployment. In some future environment, the policies that govern | see deployment. In some future environment, the policies that govern | |||
CAs may not permit them to issue intermediate certificates with a | CAs may not permit them to issue intermediate certificates with a | |||
TNAuthList object and a cA boolean set to "true" in the basic | TNAuthList object and a cA boolean set to "true" in the basic | |||
constraints certificate extension [RFC5280]. Similar problems in the | constraints certificate extension [RFC5280]. Similar problems in the | |||
web PKI space motivated the development of TLS subcerts | web PKI space motivated the development of TLS subcerts [TLS-CRED], | |||
[I-D.ietf-tls-subcerts], which substitutes a signed "delegated | which substitutes a signed "delegated credential" token for a | |||
credential" token for a certificate for such environments. A | certificate for such environments. A comparable mechanism could be | |||
comparable mechanism could be developed for the STIR space, allowing | developed for the STIR space, which would allow STIR certificates to | |||
STIR certificates to sign a data object which contains effectively | sign a data object that contains effectively the same data as the | |||
the same data as the delegate certificate specified here, including a | delegate certificate specified here, including a public key that | |||
public key that could sign PASSporTs. The TLS subcerts system has | could sign PASSporTs. The TLS subcerts system has further explored | |||
furthermore exploring leveraging ACME to issue short-lived | leveraging ACME to issue short-lived certificates for temporary | |||
certificates for temporary delegation as a means of obviating the | delegation as a means of obviating the need for revocation. | |||
need for revocation. Specification of a mechanism similar to TLS | Specification of a mechanism similar to TLS subcerts for STIR is | |||
subcerts for STIR is future work, and will be undertaken only if the | future work and will be undertaken only if the market requires it. | |||
market require it. | ||||
10. IANA Considerations | 10. IANA Considerations | |||
This document contains no actions for the IANA. | This document has no IANA actions. | |||
11. Privacy Considerations | 11. Privacy Considerations | |||
Any STIR certificate that identifies a narrow range of telephone | Any STIR certificate that identifies a narrow range of telephone | |||
numbers potentially exposes information about the entities that are | numbers potentially exposes information about the entities that are | |||
placing calls. As such a telephone number range is necessarily a | placing calls. As such a telephone number range is a necessary | |||
superset of the calling party number that is openly signaled during | superset of the calling party number that is openly signaled during | |||
call setup, the privacy risks associated with this mechanism are not | call setup, the privacy risks associated with this mechanism are not | |||
substantially greater than baseline STIR. See [RFC8224] for guidance | substantially greater than baseline STIR. See [RFC8224] for guidance | |||
on the use of anonymization mechanisms in STIR. | on the use of anonymization mechanisms in STIR. | |||
12. Security Considerations | 12. Security Considerations | |||
This document is entirely about security. As delegation can allow | This document is entirely about security. As delegation can allow | |||
signing in scenarios where unauthenticated "legitimate" spoofing | signing-in scenarios where unauthenticated "legitimate" spoofing | |||
would otherwise be used, it is hoped that delegation will improve the | would otherwise be used, the hope is that delegation will improve the | |||
overall security of the STIR ecosystem. For further information on | overall security of the STIR ecosystem. For further information on | |||
certificate security and practices, see [RFC5280], in particular its | certificate security and practices, see [RFC5280], particularly its | |||
Security Considerations. Also see the Security Considerations of | security considerations. Also see the security considerations of | |||
[RFC8226] for general guidance on the implications of the use of | [RFC8226] for general guidance on the implications of the use of | |||
certificates in STIR, and [RFC7375] for the STIR threat model. | certificates in STIR and [RFC7375] for the STIR threat model. | |||
Much of the security of delegation depends on the implementation of | Much of the security of delegation depends on the implementation of | |||
the encompassing semantics described in Section 4. When delegating | the encompassing semantics described in Section 4. When delegating | |||
from an SPC-based TNAuthList to a set of telephone number ranges, | from an SPC-based TNAuthList to a set of telephone number ranges, | |||
understanding the encompassing semantics may require access to | understanding the encompassing semantics may require access to | |||
industry databases that track the numbering assets of service | industry databases that track the numbering assets of service | |||
providers associated with a given SPC. In some operating | providers associated with a given SPC. In some operating | |||
environments, such databases might not exist. How encompassing is | environments, such databases might not exist. How encompassing is | |||
policed is therefore a matter outside the scope of this document, and | policed is therefore a matter outside the scope of this document and | |||
specific to operational profiles of STIR. | specific to operational profiles of STIR. | |||
The use of by-reference TNAuthLists as described in Section 4 entails | The use of by-reference TNAuthLists as described in Section 4 means | |||
that the TNAuthList associated with a certificate can change over | that the TNAuthList associated with a certificate can change over | |||
time; see the security considerations of [RFC3986] for more on the | time; see the security considerations of [RFC3986] for more on the | |||
implications of this property. It is considered a useful feature | implications of this property. It is considered a useful feature | |||
here due to the potential dynamism of large lists of telephone | here due to the potential dynamism of large lists of telephone | |||
numbers, but this dynamism entails that a relying party might once | numbers, but this dynamism means that a relying party might at one | |||
accept that a particular telephone number is associated with a | point accept that a particular telephone number is associated with a | |||
certificate, but later reject it for the same certificate as the | certificate but later reject it for the same certificate as the | |||
dynamic list changes. Also that note if the HTTPS service housing | dynamic list changes. Also note that if the HTTPS service housing | |||
the by-reference telephone number list is improperly secured, that | the by-reference telephone number list is improperly secured, that | |||
too can lead to vulnerabilities. Ultimately, the CA that issued a | too can lead to vulnerabilities. Ultimately, the CA that issued a | |||
delegated certificate populates the URL in the AIA field, and is | delegated certificate populates the URL in the AIA field and is | |||
responsible for making a secure selection. Service providers acting | responsible for making a secure selection. Service providers acting | |||
as CAs are directed to the cautionary words about running a CA in | as CAs are directed to the cautionary words about running a CA in | |||
Section 8 regarding the obligations this entails for certificate | Section 8 regarding the obligations this entails for certificate | |||
revocation and so on. | revocation and so on. | |||
13. Acknowledgments | 13. References | |||
We would like to thank Ines Robles, Richard Barnes, Chris Wendt, Dave | ||||
Hancock, Russ Housley, Benjamin Kaduk, and Sean Turner for key input | ||||
on this document. | ||||
14. References | ||||
14.1. Normative References | 13.1. Normative References | |||
[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, | |||
<https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | |||
Resource Identifier (URI): Generic Syntax", STD 66, | Resource Identifier (URI): Generic Syntax", STD 66, | |||
RFC 3986, DOI 10.17487/RFC3986, January 2005, | RFC 3986, DOI 10.17487/RFC3986, January 2005, | |||
<https://www.rfc-editor.org/info/rfc3986>. | <https://www.rfc-editor.org/info/rfc3986>. | |||
skipping to change at page 13, line 5 ¶ | skipping to change at line 558 ¶ | |||
[RFC8226] Peterson, J. and S. Turner, "Secure Telephone Identity | [RFC8226] Peterson, J. and S. Turner, "Secure Telephone Identity | |||
Credentials: Certificates", RFC 8226, | Credentials: Certificates", RFC 8226, | |||
DOI 10.17487/RFC8226, February 2018, | DOI 10.17487/RFC8226, February 2018, | |||
<https://www.rfc-editor.org/info/rfc8226>. | <https://www.rfc-editor.org/info/rfc8226>. | |||
[RFC8555] Barnes, R., Hoffman-Andrews, J., McCarney, D., and J. | [RFC8555] Barnes, R., Hoffman-Andrews, J., McCarney, D., and J. | |||
Kasten, "Automatic Certificate Management Environment | Kasten, "Automatic Certificate Management Environment | |||
(ACME)", RFC 8555, DOI 10.17487/RFC8555, March 2019, | (ACME)", RFC 8555, DOI 10.17487/RFC8555, March 2019, | |||
<https://www.rfc-editor.org/info/rfc8555>. | <https://www.rfc-editor.org/info/rfc8555>. | |||
14.2. Informative References | 13.2. Informative References | |||
[I-D.ietf-acme-authority-token] | [ACME-CHAL] | |||
Peterson, J., Barnes, M., Hancock, D., and C. Wendt, "ACME | Peterson, J., Barnes, M., Hancock, D., and C. Wendt, "ACME | |||
Challenges Using an Authority Token", draft-ietf-acme- | Challenges Using an Authority Token", Work in Progress, | |||
authority-token-05 (work in progress), March 2020. | Internet-Draft, draft-ietf-acme-authority-token-06, 12 | |||
July 2021, <https://datatracker.ietf.org/doc/html/draft- | ||||
ietf-acme-authority-token-06>. | ||||
[I-D.ietf-acme-authority-token-tnauthlist] | [ACME-TOKEN] | |||
Wendt, C., Hancock, D., Barnes, M., and J. Peterson, | Wendt, C., Hancock, D., Barnes, M., and J. Peterson, | |||
"TNAuthList profile of ACME Authority Token", draft-ietf- | "TNAuthList profile of ACME Authority Token", Work in | |||
acme-authority-token-tnauthlist-06 (work in progress), | Progress, Internet-Draft, draft-ietf-acme-authority-token- | |||
March 2020. | tnauthlist-08, 27 March 2021, | |||
<https://datatracker.ietf.org/doc/html/draft-ietf-acme- | ||||
[I-D.ietf-acme-star] | authority-token-tnauthlist-08>. | |||
Sheffer, Y., Lopez, D., Dios, O., Pastor, A., and T. | ||||
Fossati, "Support for Short-Term, Automatically-Renewed | ||||
(STAR) Certificates in Automated Certificate Management | ||||
Environment (ACME)", draft-ietf-acme-star-11 (work in | ||||
progress), October 2019. | ||||
[I-D.ietf-tls-subcerts] | ||||
Barnes, R., Iyengar, S., Sullivan, N., and E. Rescorla, | ||||
"Delegated Credentials for TLS", draft-ietf-tls- | ||||
subcerts-10 (work in progress), January 2021. | ||||
[RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, | [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, | |||
A., Peterson, J., Sparks, R., Handley, M., and E. | A., Peterson, J., Sparks, R., Handley, M., and E. | |||
Schooler, "SIP: Session Initiation Protocol", RFC 3261, | Schooler, "SIP: Session Initiation Protocol", RFC 3261, | |||
DOI 10.17487/RFC3261, June 2002, | DOI 10.17487/RFC3261, June 2002, | |||
<https://www.rfc-editor.org/info/rfc3261>. | <https://www.rfc-editor.org/info/rfc3261>. | |||
[RFC3647] Chokhani, S., Ford, W., Sabett, R., Merrill, C., and S. | [RFC3647] Chokhani, S., Ford, W., Sabett, R., Merrill, C., and S. | |||
Wu, "Internet X.509 Public Key Infrastructure Certificate | Wu, "Internet X.509 Public Key Infrastructure Certificate | |||
Policy and Certification Practices Framework", RFC 3647, | Policy and Certification Practices Framework", RFC 3647, | |||
skipping to change at page 14, line 9 ¶ | skipping to change at line 600 ¶ | |||
[RFC7340] Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure | [RFC7340] Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure | |||
Telephone Identity Problem Statement and Requirements", | Telephone Identity Problem Statement and Requirements", | |||
RFC 7340, DOI 10.17487/RFC7340, September 2014, | RFC 7340, DOI 10.17487/RFC7340, September 2014, | |||
<https://www.rfc-editor.org/info/rfc7340>. | <https://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, | |||
<https://www.rfc-editor.org/info/rfc7375>. | <https://www.rfc-editor.org/info/rfc7375>. | |||
[X.509] ITU-T Recommendation X.509 (10/2012) | ISO/IEC 9594-8, | [RFC8739] Sheffer, Y., Lopez, D., Gonzalez de Dios, O., Pastor | |||
"Information technology - Open Systems Interconnection - | Perales, A., and T. Fossati, "Support for Short-Term, | |||
The Directory: Public-key and attribute certificate | Automatically Renewed (STAR) Certificates in the Automated | |||
frameworks", 2012. | Certificate Management Environment (ACME)", RFC 8739, | |||
DOI 10.17487/RFC8739, March 2020, | ||||
<https://www.rfc-editor.org/info/rfc8739>. | ||||
[TLS-CRED] Barnes, R., Iyengar, S., Sullivan, N., and E. Rescorla, | ||||
"Delegated Credentials for TLS", Work in Progress, | ||||
Internet-Draft, draft-ietf-tls-subcerts-10, 24 January | ||||
2021, <https://datatracker.ietf.org/doc/html/draft-ietf- | ||||
tls-subcerts-10>. | ||||
[X.509] ITU-T, "Information technology - Open Systems | ||||
Interconnection - The Directory: Public-key and attribute | ||||
certificate frameworks", ITU-T Recommendation X.509, | ||||
October 2016, <https://www.itu.int/rec/T-REC-X.509>. | ||||
Acknowledgments | ||||
We would like to thank Ines Robles, Richard Barnes, Chris Wendt, Dave | ||||
Hancock, Russ Housley, Benjamin Kaduk, and Sean Turner for key input | ||||
on this document. | ||||
Author's Address | Author's Address | |||
Jon Peterson | Jon Peterson | |||
Neustar, Inc. | Neustar, Inc. | |||
Email: jon.peterson@team.neustar | Email: jon.peterson@team.neustar | |||
End of changes. 70 change blocks. | ||||
228 lines changed or deleted | 233 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |