draft-ietf-regext-rdap-redacted-03.txt   draft-ietf-regext-rdap-redacted-04.txt 
Network Working Group J.G. Gould Network Working Group J.G. Gould
Internet-Draft D.S. Smith Internet-Draft D.S. Smith
Intended status: Standards Track VeriSign, Inc. Intended status: Standards Track VeriSign, Inc.
Expires: 3 September 2022 J.K. Kolker Expires: 3 November 2022 J.K. Kolker
R.C. Carney R.C. Carney
GoDaddy Inc. GoDaddy Inc.
2 March 2022 2 May 2022
Redacted Fields in the Registration Data Access Protocol (RDAP) Response Redacted Fields in the Registration Data Access Protocol (RDAP) Response
draft-ietf-regext-rdap-redacted-03 draft-ietf-regext-rdap-redacted-04
Abstract Abstract
This document describes an RDAP extension for explicitly identifying This document describes an RDAP extension for explicitly identifying
redacted RDAP response fields, using JSONPath as the default redacted RDAP response fields, using JSONPath as the default
expression language. expression language.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
skipping to change at page 1, line 35 skipping to change at page 1, line 35
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 https://datatracker.ietf.org/drafts/current/. Drafts is at https://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 3 September 2022. This Internet-Draft will expire on 3 November 2022.
Copyright Notice Copyright Notice
Copyright (c) 2022 IETF Trust and the persons identified as the Copyright (c) 2022 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 (https://trustee.ietf.org/ Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document. license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights Please review these documents carefully, as they describe your rights
skipping to change at page 2, line 11 skipping to change at page 2, line 11
extracted from this document must include Revised BSD License text as extracted from this document must include Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License. provided without warranty as described in the Revised BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions Used in This Document . . . . . . . . . . . . . . 3 2. Conventions Used in This Document . . . . . . . . . . . . . . 3
3. Redaction Methods . . . . . . . . . . . . . . . . . . . . . . 3 3. Redaction Methods . . . . . . . . . . . . . . . . . . . . . . 3
3.1. Redaction by Removal Method . . . . . . . . . . . . . . . 4 3.1. Redaction by Removal Method . . . . . . . . . . . . . . . 4
3.2. Redaction by Empty Value Method . . . . . . . . . . . . . 4 3.2. Redaction by Empty Value Method . . . . . . . . . . . . . 5
4. Redacted RDAP Response . . . . . . . . . . . . . . . . . . . 5 3.3. Redaction by Replacement Value Method . . . . . . . . . . 6
4.1. RDAP Conformance . . . . . . . . . . . . . . . . . . . . 6 4. Redacted RDAP Response . . . . . . . . . . . . . . . . . . . 8
4.2. "redacted" Member . . . . . . . . . . . . . . . . . . . . 6 4.1. RDAP Conformance . . . . . . . . . . . . . . . . . . . . 8
5. JSONPath Considerations . . . . . . . . . . . . . . . . . . . 27 4.2. "redacted" Member . . . . . . . . . . . . . . . . . . . . 8
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 5. JSONPath Considerations . . . . . . . . . . . . . . . . . . . 29
6.1. RDAP Extensions Registry . . . . . . . . . . . . . . . . 29 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30
6.2. JSON Values Registry . . . . . . . . . . . . . . . . . . 29 6.1. RDAP Extensions Registry . . . . . . . . . . . . . . . . 31
7. Implementation Status . . . . . . . . . . . . . . . . . . . . 29 6.2. JSON Values Registry . . . . . . . . . . . . . . . . . . 31
7.1. IIT-CNR/Registro.it RDAP Server . . . . . . . . . . . . . 30 7. Implementation Status . . . . . . . . . . . . . . . . . . . . 31
8. Security Considerations . . . . . . . . . . . . . . . . . . . 30 7.1. IIT-CNR/Registro.it RDAP Server . . . . . . . . . . . . . 32
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 30 8. Security Considerations . . . . . . . . . . . . . . . . . . . 32
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 30 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 32
10.1. Informative References . . . . . . . . . . . . . . . . . 30 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 32
10.2. Normative References . . . . . . . . . . . . . . . . . . 31 10.1. Informative References . . . . . . . . . . . . . . . . . 32
Appendix A. Change History . . . . . . . . . . . . . . . . . . . 32 10.2. Normative References . . . . . . . . . . . . . . . . . . 33
A.1. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 32 Appendix A. Change History . . . . . . . . . . . . . . . . . . . 34
A.2. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 33 A.1. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 34
A.3. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 33 A.2. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 35
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 33 A.3. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 35
A.4. Change from 03 to 04 . . . . . . . . . . . . . . . . . . 35
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 35
1. Introduction 1. Introduction
This document describes an RDAP extension for explicitly identifying This document describes an RDAP extension for explicitly identifying
redacted RDAP response fields, using JSONPath as the default redacted RDAP response fields, using JSONPath as the default
expression language. A redacted RDAP field is one that has data expression language. A redacted RDAP field is one that has data
removed from the RDAP response due to the lack of client privilege to removed from the RDAP response due to the lack of client privilege to
receive the field. This extension can be used to identify redacted receive the field. This extension can be used to identify redacted
RDAP fields in any RDAP object class, as defined in [RFC9083], or RDAP fields in any RDAP object class, as defined in [RFC9083], or
RDAP fields defined in RDAP extensions. Because an RDAP response may RDAP fields defined in RDAP extensions. Because an RDAP response may
skipping to change at page 5, line 13 skipping to change at page 5, line 25
when redacting JSON response fields that use the position in an array when redacting JSON response fields that use the position in an array
to signal the redacted field (e.g., jCard [RFC7095] arrays). to signal the redacted field (e.g., jCard [RFC7095] arrays).
Optional jCard [RFC7095] properties SHOULD use the Redaction by Optional jCard [RFC7095] properties SHOULD use the Redaction by
Removal Method (Section 3.1) to redact the entire property. The Removal Method (Section 3.1) to redact the entire property. The
required jCard [RFC7095] "fn" property, defined in section 6.2.1 of required jCard [RFC7095] "fn" property, defined in section 6.2.1 of
vCard [RFC6350], MUST use the Redaction by Empty Value Method to vCard [RFC6350], MUST use the Redaction by Empty Value Method to
redact the property value. Removing the "fn" property would violate redact the property value. Removing the "fn" property would violate
vCard [RFC6350] and removing the property value would violate the vCard [RFC6350] and removing the property value would violate the
fixed array positions defined in jCard [RFC7095]. fixed array positions defined in jCard [RFC7095].
An example of the redacted field "fn" jCard property using the An example of the redacted "fn" jCard property using the Redaction by
Redaction by Empty Value Method: Empty Value Method:
[ [
"fn", "fn",
{}, {},
"text", "text",
"" ""
] ]
Figure 2: Redacted "fn" jCard Property using Redaction by Empty Figure 2: Redacted "fn" jCard Property using Redaction by Empty
Value Method Value Method
skipping to change at page 5, line 46 skipping to change at page 6, line 22
"pathLang": "jsonpath", "pathLang": "jsonpath",
"method": "emptyValue", "method": "emptyValue",
"reason": { "reason": {
"type": "Server policy" "type": "Server policy"
} }
} }
] ]
Figure 3: Redacted Registrant Name using Array Position Figure 3: Redacted Registrant Name using Array Position
3.3. Redaction by Replacement Value Method
The Redaction by Replacement Value Method is when a redacted field is
not removed, but its value is replaced with a different value, such
as protecting the "email" jCard [RFC7095] property value with an
anonymized email "text" value or the use of an alternate "uri" value
to a web form. Replacing a property value is a form of redaction,
since it protects the true property value for privacy reasons.
An example of the redacted "email" jCard property using the Redaction
by Replacement Value Method with an anonymized email:
[
"email",
{},
"text",
"anonymized123@example.com"
]
Figure 4: Redacted "email" jCard Property using Redaction by
Replacement Value Method with an anonymized email
An example of the "redacted" member for the redacted registrant
"email" jCard property value with an anonymized "text" value.
"redacted": [
{
"name": {
"type": "Registrant Email"
},
"path": "$.entities[?(@.roles[0]=='registrant')].
vcardArray[1][?(@[0]=='email')][3]",
"pathLang": "jsonpath",
"method": "replacementValue",
}
]
Figure 5: Redacted Email using Replacement Value with an
anonymized "text" value
An example of the redacted "email" jCard property using the Redaction
by Replacement Value Method with a "related" links member to a web
form:
"links": [
{
"value": "https://email.example.com/123",
"rel": "related",
"href": "https://email.example.com/123",
"type": "text/html"
}
Figure 6: Redacted "email" jCard Property using Redaction by
Replacement Value Method with with an "related" links member to a
web form
An example of the "redacted" member for the redacted registrant
"email" jCard property value with a "related" links member to a web
form:
"redacted": [
{
"name": {
"type": "Registrant Email"
},
"path": "$.entities[?(@.roles[0]=='registrant')].
links[?(@[1]=='related')][2]",
"pathLang": "jsonpath",
"method": "replacementValue",
}
]
Figure 7: Redacted Email using Replacement Value a "related"
links member to a web form
4. Redacted RDAP Response 4. Redacted RDAP Response
4.1. RDAP Conformance 4.1. RDAP Conformance
RDAP responses that contain values described in this document MUST RDAP responses that contain values described in this document MUST
indicate conformance with this specification by including an indicate conformance with this specification by including an
rdapConformance ([RFC9083]) value of "redacted_0.1". The information rdapConformance ([RFC9083]) value of "redacted_level_0.2". The
needed to register this value in the RDAP Extensions Registry is "redacted" extension identifier, used as the prefix of the
described in Section 6.1. rdapConformance value, is described in Section 6.1.
Example rdapConformance member with the redacted extension: Example rdapConformance member with the redacted extension:
"rdapConformance": [ "rdapConformance": [
"rdap_level_0", "rdap_level_0",
"redacted_0.1" "redacted_level_0.2"
] ]
Figure 4: rdapConformance with Redacted Extension Figure 8: rdapConformance with Redacted Extension
4.2. "redacted" Member 4.2. "redacted" Member
The "redacted" member MUST be added to the RDAP response when there The "redacted" member MUST be added to the RDAP response when there
are redacted fields. The "redacted" member is included as a member are redacted fields. The "redacted" member is included as a member
of the object class in a lookup response, such as the object classes of the object class in a lookup response, such as the object classes
defined in [RFC9083], and as a member of the object instances in a defined in [RFC9083], and as a member of the object instances in a
search response, such as the object instances defined in [RFC9083]. search response, such as the object instances defined in [RFC9083].
The "redacted" member contains an array of redacted objects with the The "redacted" member contains an array of redacted objects with the
following child members: following child members:
skipping to change at page 7, line 4 skipping to change at page 9, line 9
expression language defined by the "pathLang" member. The JSON expression language defined by the "pathLang" member. The JSON
expression references a removed JSON field or an empty field expression references a removed JSON field or an empty field
value based on Section 3. value based on Section 3.
"pathLang": OPTIONAL JSON path expression language used, with the "pathLang": OPTIONAL JSON path expression language used, with the
default value of "jsonpath" for JSONPath default value of "jsonpath" for JSONPath
([I-D.ietf-jsonpath-base]). Other JSON path expression languages ([I-D.ietf-jsonpath-base]). Other JSON path expression languages
MAY be used based on server policy. MAY be used based on server policy.
"method": OPTIONAL redaction method used with "removal" indicating "method": OPTIONAL redaction method used with "removal" indicating
the Redaction By Removed Method (Section 3.1) and "emptyValue" the Redaction By Removed Method (Section 3.1), "emptyValue"
indicating the Redaction by Empty Value Method (Section 3.2), indicating the Redaction by Empty Value Method (Section 3.2), and
with the default value of "removal". "replacementValue" indicating the Redaction by Replacement Value
Method (Section 3.3). The default value is "removal" when not
provided.
"reason": OPTIONAL human readable reason(s) for the redacted field "reason": OPTIONAL human readable reason(s) for the redacted field
in the language defined by the [RFC9083] "lang" member. The in the language defined by the [RFC9083] "lang" member. The
default language is "en" if the [RFC9083] "lang" member is not default language is "en" if the [RFC9083] "lang" member is not
specified. The reason is defined using an object with an specified. The reason is defined using an object with an
OPTIONAL "type" field denoting a registered redacted reason (see OPTIONAL "type" field denoting a registered redacted reason (see
see Section 6.2) and an OPTIONAL "description" field denoting an see Section 6.2) and an OPTIONAL "description" field denoting an
unregistered redacted reason. The "description" field MUST NOT unregistered redacted reason. The "description" field MUST NOT
be a client processing dependency. be a client processing dependency.
skipping to change at page 15, line 29 skipping to change at page 17, line 35
} }
], ],
"status": [ "status": [
"server delete prohibited", "server delete prohibited",
"server update prohibited", "server update prohibited",
"server transfer prohibited", "server transfer prohibited",
"client transfer prohibited" "client transfer prohibited"
] ]
} }
Figure 5: Unredacted RDAP Lookup Response Figure 9: Unredacted RDAP Lookup Response
Example redacted version of an RDAP lookup response: Example redacted version of an RDAP lookup response:
{ {
"rdapConformance": [ "rdapConformance": [
"rdap_level_0", "rdap_level_0",
"redacted_0" "redacted_level_0.2"
], ],
"objectClassName": "domain", "objectClassName": "domain",
"ldhName": "example.com", "ldhName": "example.com",
"secureDNS": { "secureDNS": {
"delegationSigned": false "delegationSigned": false
}, },
"notices": [ "notices": [
{ {
"title": "Terms of Use", "title": "Terms of Use",
"description": [ "description": [
skipping to change at page 24, line 4 skipping to change at page 26, line 11
"name": { "name": {
"description": "Billing Contact" "description": "Billing Contact"
}, },
"path": "$.entities[?(@.roles[0]=='billing')]", "path": "$.entities[?(@.roles[0]=='billing')]",
"method": "removal", "method": "removal",
"reason": { "reason": {
"description": "Refer to the registrant contact" "description": "Refer to the registrant contact"
} }
} }
] ]
} }
Figure 6: Redacted RDAP Lookup Response Figure 10: Redacted RDAP Lookup Response
Example unredacted version of an RDAP search response: Example unredacted version of an RDAP search response:
{ {
"rdapConformance": [ "rdapConformance": [
"rdap_level_0" "rdap_level_0"
], ],
"domainSearchResults":[ "domainSearchResults":[
{ {
"objectClassName": "domain", "objectClassName": "domain",
skipping to change at page 25, line 51 skipping to change at page 27, line 51
"value":"https://example.com/rdap/domain/example2.com", "value":"https://example.com/rdap/domain/example2.com",
"rel":"related", "rel":"related",
"href":"https://example.com/rdap/domain/example2.com", "href":"https://example.com/rdap/domain/example2.com",
"type":"application/rdap+json" "type":"application/rdap+json"
} }
] ]
} }
] ]
} }
Figure 7: Unredacted RDAP Search Response Figure 11: Unredacted RDAP Search Response
Example redacted version of an RDAP search response: Example redacted version of an RDAP search response:
{ {
"rdapConformance": [ "rdapConformance": [
"rdap_level_0", "rdap_level_0",
"redacted_0.1" "redacted_level_0.2"
], ],
"domainSearchResults":[ "domainSearchResults":[
{ {
"objectClassName": "domain", "objectClassName": "domain",
"ldhName": "example1.com", "ldhName": "example1.com",
"links":[ "links":[
{ {
"value":"https://example.com/rdap/domain/example1.com", "value":"https://example.com/rdap/domain/example1.com",
"rel":"self", "rel":"self",
"href":"https://example.com/rdap/domain/example1.com", "href":"https://example.com/rdap/domain/example1.com",
skipping to change at page 27, line 30 skipping to change at page 29, line 30
"method": "removal", "method": "removal",
"reason": { "reason": {
"type": "Server policy" "type": "Server policy"
} }
} }
] ]
} }
] ]
} }
Figure 8: Redacted RDAP Search Response Figure 12: Redacted RDAP Search Response
5. JSONPath Considerations 5. JSONPath Considerations
JSONPath [I-D.ietf-jsonpath-base] is the default JSON path expression JSONPath [I-D.ietf-jsonpath-base] is the default JSON path expression
language. This section covers considerations for servers using language. This section covers considerations for servers using
[I-D.ietf-jsonpath-base] to identify redacted RDAP fields with the [I-D.ietf-jsonpath-base] to identify redacted RDAP fields with the
"path" member of redacted objects in the "redacted" member. The list "path" member of redacted objects in the "redacted" member. The list
of JSONPath considerations include: of JSONPath considerations include:
1. Use absolute paths with the '$' JSONPath element. An example is 1. Use absolute paths with the '$' JSONPath element. An example is
skipping to change at page 29, line 9 skipping to change at page 31, line 9
9. RDAP extensions should define any special JSONPath considerations 9. RDAP extensions should define any special JSONPath considerations
required to identify redacted RDAP fields if these considerations required to identify redacted RDAP fields if these considerations
are insufficient. are insufficient.
6. IANA Considerations 6. IANA Considerations
6.1. RDAP Extensions Registry 6.1. RDAP Extensions Registry
IANA is requested to register the following value in the RDAP IANA is requested to register the following value in the RDAP
Extensions Registry: Extensions Registry:
Extension identifier: redacted_0.1 Extension identifier: redacted
Registry operator: Any Registry operator: Any
Published specification: This document. Published specification: This document.
Contact: IESG <iesg@ietf.org> Contact: IESG <iesg@ietf.org>
Intended usage: This extension identifies the redacted fields in an Intended usage: This extension identifies the redacted fields in an
RDAP response. RDAP response.
6.2. JSON Values Registry 6.2. JSON Values Registry
Section 10.2 of [RFC9083] defines the JSON Values Registry with pre- Section 10.2 of [RFC9083] defines the JSON Values Registry with pre-
defined Type field values and the use of the "Expert Review" policy defined Type field values and the use of the "Expert Review" policy
skipping to change at page 30, line 48 skipping to change at page 32, line 48
Gustavo Lozano, and Rick Wilhelm. Gustavo Lozano, and Rick Wilhelm.
10. References 10. References
10.1. Informative References 10.1. Informative References
[I-D.ietf-regext-rdap-jscontact] [I-D.ietf-regext-rdap-jscontact]
Loffredo, M. and G. Brown, "Using JSContact in Loffredo, M. and G. Brown, "Using JSContact in
Registration Data Access Protocol (RDAP) JSON Responses", Registration Data Access Protocol (RDAP) JSON Responses",
Work in Progress, Internet-Draft, draft-ietf-regext-rdap- Work in Progress, Internet-Draft, draft-ietf-regext-rdap-
jscontact-08, 15 February 2022, jscontact-12, 2 May 2022,
<https://datatracker.ietf.org/doc/html/draft-ietf-regext- <https://datatracker.ietf.org/doc/html/draft-ietf-regext-
rdap-jscontact-08>. rdap-jscontact-12>.
10.2. Normative References 10.2. Normative References
[I-D.ietf-jsonpath-base] [I-D.ietf-jsonpath-base]
Gössner, S., Normington, G., and C. Bormann, "JSONPath: Gössner, S., Normington, G., and C. Bormann, "JSONPath:
Query expressions for JSON", Work in Progress, Internet- Query expressions for JSON", Work in Progress, Internet-
Draft, draft-ietf-jsonpath-base-03, 16 January 2022, Draft, draft-ietf-jsonpath-base-05, 25 April 2022,
<https://datatracker.ietf.org/doc/html/draft-ietf- <https://datatracker.ietf.org/doc/html/draft-ietf-
jsonpath-base-03>. jsonpath-base-05>.
[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>.
[RFC6350] Perreault, S., "vCard Format Specification", RFC 6350, [RFC6350] Perreault, S., "vCard Format Specification", RFC 6350,
DOI 10.17487/RFC6350, August 2011, DOI 10.17487/RFC6350, August 2011,
<https://www.rfc-editor.org/info/rfc6350>. <https://www.rfc-editor.org/info/rfc6350>.
skipping to change at page 33, line 38 skipping to change at page 35, line 38
implementation feedback from Mario Loffredo. implementation feedback from Mario Loffredo.
3. Added the Implementation Status section that includes the server 3. Added the Implementation Status section that includes the server
implementation by Mario Loffredo. implementation by Mario Loffredo.
4. Added use of numbered figures for easy reference for JSON Values 4. Added use of numbered figures for easy reference for JSON Values
Registry registrations. Registry registrations.
5. Updated the example unredacted and redacted lookup responses to 5. Updated the example unredacted and redacted lookup responses to
include the "objectClassName" and "handle" members. include the "objectClassName" and "handle" members.
6. Changed RFC7482 and RFC7483 references to RFC9082 and RFC9083, 6. Changed RFC7482 and RFC7483 references to RFC9082 and RFC9083,
respectively. respectively.
Authors' Addresses A.4. Change from 03 to 04
1. Changed the exstension identifier to be "redacted" instead of a
versioned value, which will be leveraged for both the
rdapConformance value and the JSON Values.
2. Changed the RDAP Conformance to be "redaced_level_0.2", which
leveraged the extension identifier as a prefix along with
"_level_" and a pointed version number. The version number will
become "1.0" once the draft passes WGLC.
3. Added the Redaction by Replacement Value Method.
Authors' Addresses
James Gould James Gould
VeriSign, Inc. VeriSign, Inc.
12061 Bluemont Way 12061 Bluemont Way
Reston, VA 20190 Reston, VA 20190
United States of America United States of America
Email: jgould@verisign.com Email: jgould@verisign.com
URI: http://www.verisigninc.com URI: http://www.verisigninc.com
David Smith David Smith
VeriSign, Inc. VeriSign, Inc.
12061 Bluemont Way 12061 Bluemont Way
Reston, VA 20190 Reston, VA 20190
United States of America United States of America
Email: dsmith@verisign.com Email: dsmith@verisign.com
URI: http://www.verisigninc.com URI: http://www.verisigninc.com
Jody Kolker Jody Kolker
GoDaddy Inc. GoDaddy Inc.
 End of changes. 27 change blocks. 
47 lines changed or deleted 136 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/