| < draft-ietf-stir-certificates-01.txt | draft-ietf-stir-certificates-02.txt > | |||
|---|---|---|---|---|
| STIR 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 25, 2015 IECA | Expires: January 6, 2016 IECA | |||
| March 24, 2015 | July 5, 2015 | |||
| Secure Telephone Identity Credentials: Certificates | Secure Telephone Identity Credentials: Certificates | |||
| draft-ietf-stir-certificates-01.txt | draft-ietf-stir-certificates-02.txt | |||
| Abstract | Abstract | |||
| In order to prove ownership of telephone numbers on the Internet, | In order to prove ownership of telephone numbers on the Internet, | |||
| some kind of public infrastructure needs to exist that binds | some kind of public infrastructure needs to exist that binds | |||
| cryptographic keys to authority over telephone numbers. This | cryptographic keys to authority over telephone numbers. This | |||
| document describes a certificate-based credential system for | document describes a certificate-based credential system for | |||
| telephone numbers, which could be used as a part of a broader | telephone numbers, which could be used as a part of a broader | |||
| architecture for managing telephone numbers as identities in | architecture for managing telephone numbers as identities in | |||
| protocols like SIP. | protocols like SIP. | |||
| skipping to change at page 1, line 37 ¶ | skipping to change at page 1, line 37 ¶ | |||
| 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, 2015. | This Internet-Draft will expire on January 6, 2016. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2015 IETF Trust and the persons identified as the | Copyright (c) 2015 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 | |||
| 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 | |||
| Table of Contents | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | ||||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2 | 3. Enrollment and Authorization . . . . . . . . . . . . . . . . 3 | |||
| 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 3.1. Certificate Scope and Structure . . . . . . . . . . . . . 4 | |||
| 3. Enrollment and Authorization . . . . . . . . . . . . . . . . . 3 | 3.2. Provisioning Private Keying Material . . . . . . . . . . 5 | |||
| 3.1. Certificate Scope and Structure . . . . . . . . . . . . . 4 | 4. Acquiring Credentials to Verify Signatures . . . . . . . . . 5 | |||
| 3.2. Provisioning Private Keying Material . . . . . . . . . . . 5 | 4.1. Verifying Certificate Scope . . . . . . . . . . . . . . . 6 | |||
| 4. Acquiring Credentials to Verify Signatures . . . . . . . . . . 5 | 4.2. Certificate Freshness and Revocation . . . . . . . . . . 8 | |||
| 4.1. Verifying Certificate Scope . . . . . . . . . . . . . . . 6 | 4.2.1. Choosing a Verification Method . . . . . . . . . . . 8 | |||
| 4.2. Certificate Freshness and Revocation . . . . . . . . . . . 7 | 4.2.2. Using OCSP with STIR Certificates . . . . . . . . . . 9 | |||
| 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 10 | 4.2.2.1. OCSP Extension Specification . . . . . . . . . . 10 | |||
| 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | 4.2.3. Acquiring TN Lists By Reference . . . . . . . . . . . 11 | |||
| 7. Security Considerations . . . . . . . . . . . . . . . . . . . 10 | 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
| 8. Informative References . . . . . . . . . . . . . . . . . . . . 10 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 12 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
| 8. Informative References . . . . . . . . . . . . . . . . . . . 12 | ||||
| Appendix A. ASN.1 Module . . . . . . . . . . . . . . . . . . . . 14 | ||||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 | ||||
| 1. Introduction | 1. Introduction | |||
| As is discussed in the STIR problem statement [13], the primary | As is discussed in the STIR problem statement | |||
| enabler of robocalling, vishing, swatting and related attacks is the | [I-D.ietf-stir-problem-statement], the primary enabler of | |||
| capability to impersonate a calling party number. The starkest | robocalling, vishing, swatting and related attacks is the capability | |||
| examples of these attacks are cases where automated callees on the | to impersonate a calling party number. The starkest examples of | |||
| Public Switched Telephone Network (PSTN) rely on the calling number | these attacks are cases where automated callees on the PSTN rely on | |||
| as a security measure, for example to access a voicemail system. | the calling number as a security measure, for example to access a | |||
| Robocallers use impersonation as a means of obscuring identity; while | voicemail system. Robocallers use impersonation as a means of | |||
| robocallers can, in the ordinary PSTN, block (that is, withhold) | obscuring identity; while robocallers can, in the ordinary PSTN, | |||
| their caller identity, callees are less likely to pick up calls from | block (that is, withhold) their caller identity, callees are less | |||
| blocked identities, and therefore appearing to calling from some | likely to pick up calls from blocked identities, and therefore | |||
| number, any number, is preferable. Robocallers however prefer not to | appearing to calling from some number, any number, is preferable. | |||
| call from a number that can trace back to the robocaller, and | Robocallers however prefer not to call from a number that can trace | |||
| therefore they impersonate numbers that are not assigned to them. | back to the robocaller, and therefore they impersonate numbers that | |||
| 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 an authority responsible for issuing credentials to | impersonation is an authority responsible for issuing credentials to | |||
| 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 credentials. This document describes a credential system for | present credentials. This document describes a credential system for | |||
| telephone numbers based on X.509 version 3 certificates in accordance | telephone numbers based on X.509 version 3 certificates in accordance | |||
| with [7]. While telephone numbers have long been a part of the X.509 | with [RFC5280]. While telephone numbers have long been a part of the | |||
| standard, the certificates described in this document may contain | X.509 standard, the certificates described in this document may | |||
| telephone number blocks or ranges, and accordingly it uses an | contain telephone number blocks or ranges, and accordingly it uses an | |||
| alternate syntax. | alternate syntax. | |||
| In the STIR in-band architecture, two basic types of entities need | In the STIR in-band architecture, two basic types of entities need | |||
| access to these credentials: authentication services, and | access to these credentials: authentication services, and | |||
| verification services (or verifiers); see [15]. An authentication | verification services (or verifiers); see [I-D.ietf-stir-rfc4474bis]. | |||
| service must be operated by an entity enrolled with the certification | An authentication service must be operated by an entity enrolled with | |||
| authority (see Section 3), whereas a verifier need only trust the | the certification authority (see Section 3), whereas a verifier need | |||
| root certificate of the authority, and have a means to acquire and | only trust the root certificate of the authority, and have a means to | |||
| validate certificates. | acquire and validate certificates. | |||
| This document attempts to specify only the basic elements necessary | This document attempts to specify only the basic elements necessary | |||
| for this architecture. Only through deployment experience will it be | for this architecture. Only through deployment experience will it be | |||
| possible to decide directions for future work. | possible to decide directions for future work. | |||
| 2. Terminology | 2. Terminology | |||
| In this document, the key words "MUST", "MUST NOT", "REQUIRED", | In this document, the key words "MUST", "MUST NOT", "REQUIRED", | |||
| "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT | "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT | |||
| RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as | RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as | |||
| described in RFC 2119 [1] and RFC 6919 [2]. | described in RFC 2119 [RFC2119] and RFC 6919 [RFC6919]. | |||
| 3. Enrollment and Authorization | 3. Enrollment and Authorization | |||
| This document assumes a threefold model for certificate enrollment. | This document assumes a threefold model for certificate enrollment. | |||
| The first enrollment model is one where the certification authority | The first enrollment model is one where the certification authority | |||
| (CA) 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 | |||
| regulator. LECs may also receive numbers in smaller allocations, | regulator. LECs may also receive numbers in smaller allocations, | |||
| through number pooling, or via an individual assignment through | through number pooling, or via an individual assignment through | |||
| number portability. LECs assign numbers to customers, who may be | number portability. LECs assign numbers to customers, who may be | |||
| private individuals or organizations - and organizations take | private individuals or organizations - and organizations take | |||
| responsibility for assigning numbers within their own enterprise. | responsibility for assigning numbers within their own enterprise. | |||
| The second enrollment model is one where a certification authority | The second enrollment model is one where a certification authority | |||
| requires that an entity prove control by means of some sort of test. | requires that an entity prove control by means of some sort of test. | |||
| For example, an authority might send a text message to a telephone | For example, an authority might send a text message to a telephone | |||
| number containing a URL (which might be deferenced by the recipient) | number containing a URL (which might be dereferenced by the | |||
| as a means of verifying that a user has control of terminal | recipient) as a means of verifying that a user has control of | |||
| corresponding to that number. Checks of this form are frequently | terminal corresponding to that number. Checks of this form are | |||
| used in commercial systems today to validate telephone numbers | frequently used in commercial systems today to validate telephone | |||
| provided by users. This is comparable to existing enrollment systems | numbers provided by users. This is comparable to existing enrollment | |||
| used by some certificate authorities for issuing S/MIME credentials | systems used by some certificate authorities for issuing S/MIME | |||
| for email by verifying that the party applying for a credential | credentials for email by verifying that the party applying for a | |||
| receives mail at the email address in question. | credential receives mail at the email address in question. | |||
| The third enrollment model is delegation: that is, the holder of a | The third enrollment model is delegation: that is, the holder of a | |||
| certificate (assigned by either of the two methods above) may | certificate (assigned by either of the two methods above) may | |||
| delegate some or all of their authority to another party. In some | delegate some or all of their authority to another party. In some | |||
| cases, multiple levels of delegation could occur: a LEC, for example, | cases, multiple levels of delegation could occur: a LEC, for example, | |||
| might delegate authority to customer organization for a block of 100 | might delegate authority to customer organization for a block of 100 | |||
| numbers, and the organization might in turn delegate authority for a | numbers, and the organization might in turn delegate authority for a | |||
| particular number to an individual employee. This is analogous to | particular number to an individual employee. This is analogous to | |||
| delegation of organizational identities in traditional hierarchical | delegation of organizational identities in traditional hierarchical | |||
| Public Key Infrastructures (PKIs) who use the name constraints | Public Key Infrastructures (PKIs) who use the name constraints | |||
| extension [3]; the root CA delegates names in sales to the sales | extension [RFC5280]; the root CA delegates names in sales to the | |||
| department CA, names in development to the development CA, etc. As | sales department CA, names in development to the development CA, etc. | |||
| lengthy certificate delegation chains are brittle, however, and can | As lengthy certificate delegation chains are brittle, however, and | |||
| cause delays in the verification process, this document considers | can cause delays in the verification process, this document considers | |||
| optimizations to reduce the complexity of verification. | optimizations to reduce the complexity of verification. | |||
| [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. | |||
| 3.1. Certificate Scope and Structure | 3.1. Certificate Scope and Structure | |||
| The subjects of telephone number certificates are the administrative | The subjects of telephone number certificates are the administrative | |||
| entities to whom numbers are assigned or delegated. For example, a | entities to whom numbers are assigned or delegated. For example, a | |||
| LEC might hold a certificate for a range of telephone numbers. [TBD | LEC might hold a certificate for a range of telephone numbers. | |||
| - what if the subject is considered a privacy leak?] | ||||
| [TBD - what if the subject is considered a privacy leak?] | ||||
| 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 | |||
| with several regional gateway systems may want each system to be | with several regional gateway systems may want each system to be | |||
| capable of signing for each of their numbers, but not want to have | capable of signing for each of their numbers, but not want to have | |||
| each system share the same private key. | each system share the same private key. | |||
| The set of telephone numbers for which a particular certificate is | The set of telephone numbers for which a particular certificate is | |||
| valid is expressed in the certificate through a certificate | valid is expressed in the certificate through a certificate | |||
| extension; the certificate's extensibility mechanism is defined in | extension; the certificate's extensibility mechanism is defined in | |||
| [7] but the telephone number authorization extension is defined in | [RFC5280] but the telephone number authorization extension is defined | |||
| this document. | in this document. | |||
| 3.2. Provisioning Private Keying Material | 3.2. 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 [15], they must possess a private key corresponding to a | described in [I-D.ietf-stir-rfc4474bis], they must possess a private | |||
| certificate with authority over the calling number. This | key corresponding to a certificate with authority over the calling | |||
| specification does not require that any particular entity sign | number. This specification does not require that any particular | |||
| requests, only that it be an entity with an appropriate private key; | entity sign requests, only that it be an entity with an appropriate | |||
| the authentication service role may be instantiated by any entity in | private key; the authentication service role may be instantiated by | |||
| a SIP network. For a certificate granting authority only over a | any entity in a SIP network. For a certificate granting authority | |||
| particular number which has been issued to an end user, for example, | only over a particular number which has been issued to an end user, | |||
| an end user device might hold the private key and generate the | for example, an end user device might hold the private key and | |||
| signature. In the case of a service provider with authority over | generate the signature. In the case of a service provider with | |||
| large blocks of numbers, an intermediary might hold the private key | authority over large blocks of numbers, an intermediary might hold | |||
| and sign calls. | 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 [8]. | CMS package specified in [RFC5958]. | |||
| 4. Acquiring Credentials to Verify Signatures | 4. 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 circumstances of | validity of certificates does not depend on the circumstances of | |||
| their acquistion, there is no need to standardize any single | their acquisition, there is no need to standardize any single | |||
| mechanism for this purpose. All entities that comply with [15] | mechanism for this purpose. All entities that comply with | |||
| necessarily support SIP, and consequently SIP itself can serve as a | [I-D.ietf-stir-rfc4474bis] necessarily support SIP, and consequently | |||
| way to acquire certificates. This specific does allow delivery | SIP itself can serve as a way to acquire certificates. This specific | |||
| through alternate means as well. | does allow delivery through alternate means as well. | |||
| The simplest way for a verifier to acquire the certificate needed to | The simplest way for a verifier to acquire the certificate needed to | |||
| verify a signature is for the certificate be conveyed along with the | verify a signature is for the certificate be conveyed along with the | |||
| signature itself. In SIP, for example, a certificate could be | signature itself. In SIP, for example, a certificate could be | |||
| carried in a multipart MIME body [9], and the URI in the Identity- | carried in a multipart MIME body [RFC2046], and the URI in the | |||
| Info header could specify that body with a CID URI [10]. However, in | Identity-Info header could specify that body with a CID URI | |||
| many environments this is not feasible due to message size | [RFC2392]. However, in many environments this is not feasible due to | |||
| restrictions or lack of necessary support for multipart MIME. | message size restrictions or lack of necessary support for multipart | |||
| MIME. | ||||
| Alternatively, the Identity-Info header of a SIP request may contain | Alternatively, the Identity-Info header of a SIP request may contain | |||
| a URI that the verifier dereferences with a network call. | a URI that the verifier dereferences with a network call. | |||
| Implementations of this specification are required to support the use | Implementations of this specification are required to support the use | |||
| of SIP for this function (via the SUBSCRIBE/NOTIFY mechanism), as | of SIP for this function (via the SUBSCRIBE/NOTIFY mechanism), as | |||
| well as HTTP, via the Enrollment over Secure Transport mechanisms | well as HTTP, via the Enrollment over Secure Transport mechanisms | |||
| described in RFC 7030 [11]. | described in RFC 7030 [RFC7030]. | |||
| A verifier can however have access to a service that grants access to | A verifier can however have access to a service that grants access to | |||
| certificates for a particular telephone number. Note however that | certificates for a particular telephone number. Note however that | |||
| there may be multiple valid certificates that can sign a call setup | there may be multiple valid certificates that can sign a call setup | |||
| request for a telephone number, and that as a consequence, there | request for a telephone number, and that as a consequence, there | |||
| needs to be some discriminator that the signer uses to identify their | needs to be some discriminator that the signer uses to identify their | |||
| credentials. The Identity-Info header itself can serve as such a | credentials. The Identity-Info header itself can serve as such a | |||
| discriminator. | discriminator. | |||
| 4.1. Verifying Certificate Scope | 4.1. Verifying Certificate Scope | |||
| The subjects of these certificates are the administrative entities to | The subjects of these certificates are the administrative entities to | |||
| whom numbers are assigned or delegated. When a verifier is | whom numbers are assigned or delegated. When a verifier is | |||
| validating a caller's identity, local policy always determines the | validating a caller's identity, local policy always determines the | |||
| circumstances under which any particular subject may be trusted, but | circumstances under which any particular subject may be trusted, but | |||
| for the purpose of validating a caller's identity, this certificate | for the purpose of validating a caller's identity, this certificate | |||
| extension establishes whether or not a signer is authorized to sign | extension establishes whether or not a signer is authorized to sign | |||
| for a particular number. | for a particular number. | |||
| The telephone number (TN) Authorization List certificate extension is | The Telephony Number (TN) Authorization List certificate extension is | |||
| identified by the following object identifier: | identified by the following object identifier: | |||
| id-ce-TNAuthList OBJECT IDENTIFIER ::= { TBD } | id-ce-TNAuthList OBJECT IDENTIFIER ::= { TBD } | |||
| The TN Authorization List certificate extension has the following | The TN Authorization List certificate extension has the following | |||
| syntax: | syntax: | |||
| TNAuthorizationList ::= SEQUENCE SIZE (1..MAX) OF TNAuthorization | TNAuthorizationList ::= SEQUENCE SIZE (1..MAX) OF TNAuthorization | |||
| TNAuthorization ::= SEQUENCE SIZE (1..MAX) OF TNEntry | TNAuthorization ::= SEQUENCE SIZE (1..MAX) OF TNEntry | |||
| TNEntry ::= CHOICE { | TNEntry ::= CHOICE { | |||
| spid ServiceProviderIdentifierList, | spid ServiceProviderIdentifierList, | |||
| range TelephoneNumberRange, | range TelephoneNumberRange, | |||
| one E164Number } | one E164Number } | |||
| ServiceProviderIdentifierList ::= SEQUENCE SIZE (1..3) OF | ServiceProviderIdentifierList ::= SEQUENCE SIZE (1..3) OF | |||
| OCTET STRING | ||||
| OCTET STRING | ||||
| -- When all three are present: SPID, Alt SPID, and Last Alt SPID | -- When all three are present: SPID, Alt SPID, and Last Alt SPID | |||
| TelephoneNumberRange ::= SEQUENCE { | TelephoneNumberRange ::= SEQUENCE { | |||
| start E164Number, | start E164Number, | |||
| count INTEGER } | count INTEGER } | |||
| E164Number ::= IA5String (SIZE (1..15)) (FROM ("0123456789")) | E164Number ::= IA5String (SIZE (1..15)) (FROM ("0123456789")) | |||
| [TBD] Do we really need to do IA5String? The alternative would be | [TBD- do we really need to do IA5String? The alternative would be | |||
| UTF8String, e.g.: UTF8String (SIZE (1..15)) (FROM ("0123456789")) | UTF8String, e.g.: UTF8String (SIZE (1..15)) (FROM ("0123456789")) ] | |||
| The TN Authorization List certificate extension indicates the | The TN Authorization List certificate extension indicates the | |||
| authorized phone numbers for the call setup signer. It indicates one | authorized phone numbers for the call setup signer. It indicates one | |||
| or more blocks of telephone number entries that have been authorized | or more blocks of telephone number entries that have been authorized | |||
| for use by the call setup signer. There are three ways to identify | for use by the call setup signer. There are three ways to identify | |||
| the block: 1) a Service Provider Identifier (SPID) can be used to | the block: 1) a Service Provider Identifier (SPID) can be used to | |||
| indirectly name all of the telephone numbers associated with that | indirectly name all of the telephone numbers associated with that | |||
| service provider, 2) telephone numbers can be listed in a range, and | service provider, 2) telephone numbers can be listed in a range, and | |||
| 3) a single telephone number can be listed. | 3) a single telephone number can be listed. | |||
| skipping to change at page 7, line 41 ¶ | skipping to change at page 8, line 24 ¶ | |||
| telephone number context, because verifiers must establish not only | telephone number context, because verifiers must establish not only | |||
| that a certificate remains valid, but also that the certificate's | that a certificate remains valid, but also that the certificate's | |||
| scope contains the telephone number that the verifier is validating. | scope 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 the | To verify the status of the certificate, the verifier needs the | |||
| certificate, which is included with the call, and they need to: | certificate, which is included with the call, and then would need to | |||
| either: | ||||
| o 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 | |||
| o Rely on status information from the authority; there are three | Rely on status information from the authority | |||
| common mechanisms employed by CAs: | ||||
| * Certificate Revocation Lists (CRLs) [7], | ||||
| * Online Certificate Status Protocol (OCSP) [RFC6560], and | ||||
| * Server-based Certificate Validation Protocol (SCVP) [RFC5055]. | ||||
| 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. | |||
| 4.2.1. Choosing a Verification Method | ||||
| There are three common certificate verification mechanisms employed | ||||
| by CAs: | ||||
| Certificate Revocation Lists (CRLs) [RFC5280] | ||||
| Online Certificate Status Protocol (OCSP) [RFC6960], and | ||||
| 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 | |||
| status information but before that can happen the verifier needs to | status information - but before that can happen, the verifier needs | |||
| know where to locate it. Placing the location of the status | to know where to locate it. Placing the location of the status | |||
| information in the certificate makes the certificate larger but it | information in the certificate makes the certificate larger, but it | |||
| eases the client workload. The CRL Distribution Point certificate | eases the client workload. The CRL Distribution Point certificate | |||
| extension includes the location of the CRL and the Authority | extension includes the location of the CRL and the Authority | |||
| Information Access certificate extension includes the location of | Information Access certificate extension includes the location of | |||
| OCSP and/or SCVP servers; both of these extensions are defined in | OCSP and/or SCVP servers; both of these extensions are defined in | |||
| [7]. In all cases, the status information location is provided in | [RFC5280]. In all cases, the status information location is provided | |||
| the form of an URI. | in the form of an URI. | |||
| CRLs are an obviously attractive solution because they are supported | CRLs are an obviously attractive solution because they are supported | |||
| by every CA. CRLs have a reputation of being quite large (10s of | by every CA. CRLs have a reputation of being quite large (10s of | |||
| MBytes) because CAs issue one with all of their revoked certificates | MBytes), because CAs maintain and issue one monolithic CRL with all | |||
| but CRLs do support a variety of mechanisms to scope the size of the | of their revoked certificates, but CRLs do support a variety of | |||
| CRLs based on revocation reasons (e.g., key compromise vs CA | mechanisms to scope the size of the CRLs based on revocation reasons | |||
| compromise), user certificates only, and CA certificates only as well | (e.g., key compromise vs CA compromise), user certificates only, and | |||
| as just operationally deciding to keep the CRLs small. Scoping the | CA certificates only as well as just operationally deciding to keep | |||
| CRL though introduces other issues (i.e., does the RP have all of the | the CRLs small. However, scoping the CRL introduces other issues | |||
| CRL partitions). CAs in this system will likely all create CRLs for | (i.e., does the RP have all of the CRL partitions). | |||
| audit purposes but it not recommended that they be relying upon for | ||||
| status information. Instead, one of the two "online" options is | ||||
| recommended. Between the two, OCSP is much more widely deployed and | ||||
| this document therefore recommends the use of OCSP in high-volume | ||||
| environments for validating the freshness of certificates, based on | ||||
| [12]. Note that OCSP responses have three possible values: good, | ||||
| revoked, or unknown. | ||||
| [TBD] HVE OCSP requires SHA-1 be used as the hash algorithm, we're | CAs in the STIR architecture will likely all create CRLs for audit | |||
| obviously going to change this to be SHA-256. | purposes, but it NOT RECOMMENDED that they be relying upon for status | |||
| information. Instead, one of the two "online" options is preferred. | ||||
| Between the two, OCSP is much more widely deployed and this document | ||||
| therefore recommends the use of OCSP in high-volume environments for | ||||
| validating the freshness of certificates, based on [RFC6960], | ||||
| incorporating some (but not all) of the optimizations of [RFC5019]. | ||||
| [TBD] What would happen in the unknown case? | 4.2.2. Using OCSP with STIR Certificates | |||
| The wrinkle here is that OCSP only provides status information it | Certificates compliant with this specification therefore SHOULD | |||
| does not indicate whether the certificate's is authorized for the | include a URL pointing to an OCSP service in the Authority | |||
| telephone number that the verifier is validating. There's two ways | Information Access (AIA) certificate extension, via the "id-ad-ocsp" | |||
| to ask the authorization question: | accessMethod specified in [RFC5280]. Baseline OCSP however supports | |||
| only three possible response values: good, revoked, or unknown. With | ||||
| some extension, OCSP would not indicate whether the certificate is | ||||
| authorized for a particular telephone number that the verifier is | ||||
| validating. | ||||
| o For this certificate, is the following number currently in its | [TBD] What would happen in the unknown case? Can we profile OCSP | |||
| scope of validity? | usage so that unknown is never returned for our extension? | |||
| o What are the numbers associated with this certificate? | At a high level, there are two ways that a client might pose this | |||
| authorization question: | ||||
| The former seems to lend itself to piggybacking on the status | For this certificate, is the following number currently in its | |||
| scope of validity? | ||||
| What are all the telephone numbers associated with this | ||||
| certificate, or this certificate subject? | ||||
| Only the former lends itself to piggybacking on the OCSP status | ||||
| mechanism; since the verifier is already asking an authority about | mechanism; since the verifier is already asking an authority about | |||
| the certificate's status why not use that mechanism instead of | the certificate's status, why not reuse that mechanism, instead of | |||
| creating a new service that requires additional round trips. Like | creating a new service that requires additional round trips? Like | |||
| most PKIX-developed protocols, OCSP is extensible; OCSP supports | most PKIX-developed protocols, OCSP is extensible; OCSP supports | |||
| request extensions (OCSP supports sending multiple requests at once) | request extensions (including sending multiple requests at once) and | |||
| and per-request extensions. It seems unlikely that the verifier will | per-request extensions. It seems unlikely that the verifier will be | |||
| be requesting authorization checks on multiple callers in one request | requesting authorization checks on multiple telephone numbers in one | |||
| so a per-request extension is what is needed. But, support for any | request, so a per-request extension is what is needed. | |||
| particular extension is optional and the HVE OCSP profile [12] | ||||
| prohibits the use of per-request extensions so there is some | ||||
| additional work required to modify existing OCSP responders. | ||||
| The extension mechanism itself is fairly straightforward and it's | [TBD] HVE OCSP requires SHA-1 be used as the hash algorithm, | |||
| based on the X.509 v3 certificate extensions: an OID, a criticality | we're6960 obviously going to change this to be SHA-256. | |||
| flag, and ASN.1 syntax as defined by the OID. The OID would be | ||||
| registered in the IANA PKIX arc, the criticality would likely be set | ||||
| to critical (i.e., if the OCSP responder doesn't understand the | ||||
| extension stop processing), and the syntax can be anything we desire. | ||||
| Applying the KISS principle, the syntax could simply be the TN being | ||||
| asserted by caller. The responder could then determine whether the | ||||
| TN asserted in the OCSP per-request extension is still authorized for | ||||
| the certificate referred to in the certificate request field; the | ||||
| reference is a tuple of hash algorithm, issuer name hash, issuer key | ||||
| hash, and serial number. | ||||
| The second option seems more like a query response type of | The requirement to consult OCSP in real time results in a network | |||
| interaction and could be initiated through a URI included in the | round-trip time of day, which is something to consider because it | |||
| certificate. Luckily, the AIA extension supports such a mechanism; | will add to the call setup time. OCSP server implementations | |||
| it's an OID to identify the "access method" and an "access location", | commonly pre-generate responses, and to speed up HTTPS connections, | |||
| which would most most likely be a URI. The verifier would then | servers often provide OCSP responses for each certificate in their | |||
| follow the URI to ascertain whether the list of TNs authorized for | hierarchy. If possible, both of these OCSP concepts should be | |||
| use by the caller. There are obviously some privacy considerations | adopted for use with STIR. | |||
| with this approach. | ||||
| The need to check the authorizations in another round-trip is also | 4.2.2.1. OCSP Extension Specification | |||
| something to consider because it will add to the call setup time. | ||||
| OCSP implementations commonly pre-generate responses and to speed up | The extension mechanism for OCSP follows X.509 v3 certificate | |||
| HTTPS connections the server provides OCSP responses for each | extensions, and thus requires an OID, a criticality flag, and ASN.1 | |||
| certificate in their hierarchy. If possible, both of these OCSP | syntax as defined by the OID. The criticality specified here is | |||
| concepts should be adopted. | optional: per [RFC6960] Section 4.4, support for all OCSP extensions | |||
| is optional. If the OCSP server does not understand the requested | ||||
| extension, it will still provide the baseline validation of the | ||||
| certificate itself. Moreover, in practical STIR deployments, the | ||||
| issuer of the certificate will set the accessLocation for the OCSP | ||||
| AIA extension to point to an OCSP service that supports this | ||||
| extension, so the risk of interoperability failure due to lack of | ||||
| support for this extension is minimal. | ||||
| The OCSP TNQuery extension is included as one of the | ||||
| requestExtensions in requests. It may also appear in the | ||||
| responseExtensions. When an OCSP server includes a number in the | ||||
| responseExtensions, this informs the client that the certificate is | ||||
| still valid for the number that appears in the TNQuery extension | ||||
| field. If the TNQuery is absent from a response to a query | ||||
| containing a TNQuery in its requestExtensions, then the server is not | ||||
| able to validate that the number is still in the scope of authority | ||||
| of the certificate. | ||||
| id-pkix-ocsp-stir-tn OBJECT IDENTIFIER ::= { id-pkix-ocsp TBD } | ||||
| TNQuery ::= E164Number | ||||
| Note that HVE OCSP profile [RFC5019] prohibits the use of per-request | ||||
| extensions. As it is anticipated that STIR will use OCSP in a high- | ||||
| volume environment, many of the optimizations recommended by HVE are | ||||
| desirable for the STIR environment. This document therefore uses | ||||
| these extensions in a baseline OCSP environment with some HVE | ||||
| optimizations. [More TBD] | ||||
| Ideally, once a certificate has been acquired by a verifier, some | Ideally, once a certificate has been acquired by a verifier, some | |||
| sort of asynchronous mechanism could notify and update the verifier | sort of asynchronous mechanism could notify and update the verifier | |||
| if the scope of the certificate changes. While not all possible | if the scope of the certificate changes so that verifiers could | |||
| categories of verifiers could implement such behavior, some sort of | implement a cache. While not all possible categories of verifiers | |||
| event-driven notification of certificate status is another potential | could implement such behavior, some sort of event-driven notification | |||
| subject of future work. | of certificate status is another potential subject of future work. | |||
| One potential direction is that a future SIP SUBSCRIBE/NOTIFY-based | ||||
| accessMethod for AIA might be defined (which would also be applicable | ||||
| to the method described in the following section) by some future | ||||
| specification. | ||||
| 4.2.3. Acquiring TN Lists By Reference | ||||
| Acquiring a list of the telephone numbers associated with a | ||||
| certificate or its subject lends itself to an application-layer | ||||
| query/response interaction outside of OCSP, one which could be | ||||
| initiated through a separate URI included in the certificate. The | ||||
| AIA extension (see [RFC5280]) supports such a mechanism: it | ||||
| designates an OID to identify the accessMethod and an accessLocation, | ||||
| 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 | ||||
| caller. | ||||
| HTTPS is the most obvious candidate for a protocol to be used for | ||||
| fetching the list of telephone number associated with a particular | ||||
| certificate. This document defines a new AIA accessMethod, called | ||||
| "id-ad-stir-tn", which uses the following AIA OID: | ||||
| id-ad-stir-tn OBJECT IDENTIFIER ::= { id-ad TBD } | ||||
| When the "id-ad-stir-tn" accessMethod is used, the accessLocation | ||||
| MUST be an HTTPS URI. The document returned by dereferencing that | ||||
| URI will contain the complete TN Authorization List (see Section 4.1) | ||||
| for the certificate. | ||||
| Delivering the entire list of telephone numbers associated with a | ||||
| particular certificate will divulge to STIR verifiers information | ||||
| about telephone numbers other than the one associated with the | ||||
| particular call that the verifier is checking. In some environments, | ||||
| where STIR verifiers handle a high volume of calls, maintaining an | ||||
| up-to-date and complete cache for the numbers associated with crucial | ||||
| certificate holders could give an important boost to performance. | ||||
| 5. Acknowledgments | 5. 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. | |||
| 6. IANA Considerations | 6. IANA Considerations | |||
| This memo includes no request to IANA at this time. If we define an | This document makes use of object identifiers for the TN Certificate | |||
| OCSP extension or AIA access method then we'll need an OID from the | Extension defined in Section 4.1, TN-HVE OCSP extension in | |||
| PKIX. | Section 4.2.2.1, and the TN by reference AIA access descriptor | |||
| defined in Section 4.2.3. It therefore requests that the IANA make | ||||
| the following assignments: | ||||
| - TN Certificate Extension in the SMI Security for PKIX | ||||
| Certificate Extension registry: http://www.iana.org/assignments/ | ||||
| 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 | ||||
| Certificate Status Protocol (OCSP) registry: | ||||
| http://www.iana.org/assignments/smi-numbers/smi-numbers.xhtml#smi- | ||||
| numbers-1.3.6.1.5.5.7.48.1 | ||||
| - TNS by reference access descriptor in the SMI Security for PKIX | ||||
| Access Descriptor registry: http://www.iana.org/assignments/smi- | ||||
| numbers/smi-numbers.xhtml#smi-numbers-1.3.6.1.5.5.7.48 | ||||
| 7. Security Considerations | 7. 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 [5], in particular | certificate security and practices, see RFC 3280 [RFC3280], in | |||
| its Security Considerations. | particular its Security Considerations. | |||
| 8. Informative References | 8. Informative References | |||
| [1] Bradner, S., "Key words for use in RFCs to Indicate | [I-D.ietf-stir-problem-statement] | |||
| Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure | ||||
| Telephone Identity Problem Statement and Requirements", | ||||
| draft-ietf-stir-problem-statement-05 (work in progress), | ||||
| May 2014. | ||||
| [I-D.ietf-stir-rfc4474bis] | ||||
| Peterson, J., Jennings, C., and E. Rescorla, | ||||
| "Authenticated Identity Management in the Session | ||||
| Initiation Protocol (SIP)", draft-ietf-stir-rfc4474bis-03 | ||||
| (work in progress), March 2015. | ||||
| [I-D.peterson-sipping-retarget] | ||||
| Peterson, J., "Retargeting and Security in SIP: A | ||||
| Framework and Requirements", draft-peterson-sipping- | ||||
| retarget-00 (work in progress), February 2005. | ||||
| [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail | ||||
| Extensions (MIME) Part Two: Media Types", RFC 2046, | ||||
| November 1996. | ||||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | ||||
| Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
| [2] Barnes, R., Kent, S., and E. Rescorla, "Further Key Words | [RFC2392] Levinson, E., "Content-ID and Message-ID Uniform Resource | |||
| for Use in RFCs to Indicate Requirement Levels", RFC 6919, | Locators", RFC 2392, August 1998. | |||
| April 1 2013. | ||||
| [3] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, | [RFC2818] Rescorla, E., "HTTP Over TLS", RFC 2818, May 2000. | |||
| [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, | |||
| June 2002. | June 2002. | |||
| [4] Rosenberg, J. and H. Schulzrinne, "Session Initiation | [RFC3263] Rosenberg, J. and H. Schulzrinne, "Session Initiation | |||
| Protocol (SIP): Locating SIP Servers", RFC 3263, June | Protocol (SIP): Locating SIP Servers", RFC 3263, June | |||
| 2002. | 2002. | |||
| [5] 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, | |||
| April 2002. | April 2002. | |||
| [6] Rescorla, E., "HTTP Over TLS", RFC 2818, May 2000. | [RFC5019] Deacon, A. and R. Hurst, "The Lightweight Online | |||
| Certificate Status Protocol (OCSP) Profile for High-Volume | ||||
| Environments", RFC 5019, September 2007. | ||||
| [7] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., | [RFC5055] Freeman, T., Housley, R., Malpani, A., Cooper, D., and W. | |||
| Polk, "Server-Based Certificate Validation Protocol | ||||
| (SCVP)", RFC 5055, December 2007. | ||||
| [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., | ||||
| Housley, R., and W. Polk, "Internet X.509 Public Key | Housley, R., and W. Polk, "Internet X.509 Public Key | |||
| Infrastructure Certificate and Certificate Revocation List | Infrastructure Certificate and Certificate Revocation List | |||
| (CRL) Profile", RFC 5280, May 2008. | (CRL) Profile", RFC 5280, May 2008. | |||
| [8] Turner, S., "Asymmetric Key Packages", RFC 5958, August | [RFC5958] Turner, S., "Asymmetric Key Packages", RFC 5958, August | |||
| 2010. | 2010. | |||
| [9] Freed, N. and N. Borenstein, "Multipurpose Internet Mail | [RFC6919] Barnes, R., Kent, S., and E. Rescorla, "Further Key Words | |||
| Extensions (MIME) Part Two: Media Types", RFC 2046, | for Use in RFCs to Indicate Requirement Levels", RFC 6919, | |||
| November 1996. | April 2013. | |||
| [10] Levinson, E., "Content-ID and Message-ID Uniform Resource | [RFC6960] Santesson, S., Myers, M., Ankney, R., Malpani, A., | |||
| Locators", RFC 2392, August 1998. | Galperin, S., and C. Adams, "X.509 Internet Public Key | |||
| Infrastructure Online Certificate Status Protocol - OCSP", | ||||
| RFC 6960, June 2013. | ||||
| [11] Pritikin, M., Yee, P., and D. Harkins, "Enrollment over | [RFC7030] Pritikin, M., Yee, P., and D. Harkins, "Enrollment over | |||
| Secure Transport", RFC 7030, October 2013. | Secure Transport", RFC 7030, October 2013. | |||
| [12] Deacon, A. and R. Hurst, "The Lightweight Online | [RFC7299] Housley, R., "Object Identifier Registry for the PKIX | |||
| Certificate Status Protocol (OCSP) Profile for High-Volume | Working Group", RFC 7299, July 2014. | |||
| Environments", RFC 5019, September 2007. | ||||
| [13] Peterson, J., Schulzrinne, H., and H. Tschofenig, "Secure | [X.680] USC/Information Sciences Institute, "Information | |||
| Telephone Identity Problem Statement and Requirements", | Technology - Abstract Syntax Notation One.", ITU-T X.680, | |||
| draft-ietf-stir-problem-statement-05 (work in progress), | ISO/IEC 8824-1:2002, 2002. | |||
| May 2014. | ||||
| [14] Peterson, J., "Retargeting and Security in SIP: A | [X.681] USC/Information Sciences Institute, "Information | |||
| Framework and Requirements", draft-peterson-sipping- | Technology - Abstract Syntax Notation One: Information | |||
| retarget-00 (work in progress), February 2005. | Object Specification", ITU-T X.681, ISO/IEC 8824-2:2002, | |||
| 2002. | ||||
| [15] Peterson, J., Jennings, C., and E. Rescorla, | [X.682] USC/Information Sciences Institute, "Information | |||
| "Authenticated Identity Management in the Session | Technology - Abstract Syntax Notation One: Constraint | |||
| Initiation Protocol (SIP)", draft-ietf-stir-rfc4474bis-02 | Specification", ITU-T X.682, ISO/IEC 8824-3:2002, 2002. | |||
| (work in progress), October 2014. | ||||
| [X.683] USC/Information Sciences Institute, "Information | ||||
| Technology - Abstract Syntax Notation One: | ||||
| Parameterization of ASN.1 Specifications", ITU-T X.683, | ||||
| ISO/IEC 8824-4:2002, 2002. | ||||
| Appendix A. ASN.1 Module | ||||
| This appendix provides the normative ASN.1 [X.680] definitions for | ||||
| the structures described in this specification using ASN.1, as | ||||
| defined in [X.680] through [X.683]. | ||||
| TBD | ||||
| Authors' Addresses | Authors' Addresses | |||
| Jon Peterson | Jon Peterson | |||
| Neustar, Inc. | Neustar, Inc. | |||
| 1800 Sutter St Suite 570 | 1800 Sutter St Suite 570 | |||
| Concord, CA 94520 | Concord, CA 94520 | |||
| US | US | |||
| Email: jon.peterson@neustar.biz | Email: jon.peterson@neustar.biz | |||
| End of changes. 64 change blocks. | ||||
| 199 lines changed or deleted | 332 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/ | ||||