rfc8995v6.txt | rfc8995.txt | |||
---|---|---|---|---|
skipping to change at line 12 ¶ | skipping to change at line 12 ¶ | |||
Internet Engineering Task Force (IETF) M. Pritikin | Internet Engineering Task Force (IETF) M. Pritikin | |||
Request for Comments: 8995 Cisco | Request for Comments: 8995 Cisco | |||
Category: Standards Track M. Richardson | Category: Standards Track M. Richardson | |||
ISSN: 2070-1721 Sandelman Software Works | ISSN: 2070-1721 Sandelman Software Works | |||
T. Eckert | T. Eckert | |||
Futurewei USA | Futurewei USA | |||
M. Behringer | M. Behringer | |||
K. Watsen | K. Watsen | |||
Watsen Networks | Watsen Networks | |||
April 2021 | May 2021 | |||
Bootstrapping Remote Secure Key Infrastructure (BRSKI) | Bootstrapping Remote Secure Key Infrastructure (BRSKI) | |||
Abstract | Abstract | |||
This document specifies automated bootstrapping of an Autonomic | This document specifies automated bootstrapping of an Autonomic | |||
Control Plane. To do this, a Secure Key Infrastructure is | Control Plane. To do this, a Secure Key Infrastructure is | |||
bootstrapped. This is done using manufacturer-installed X.509 | bootstrapped. This is done using manufacturer-installed X.509 | |||
certificates, in combination with a manufacturer's authorizing | certificates, in combination with a manufacturer's authorizing | |||
service, both online and offline. We call this process the | service, both online and offline. We call this process the | |||
skipping to change at line 1241 ¶ | skipping to change at line 1241 ¶ | |||
3.3. Examples | 3.3. Examples | |||
This section provides voucher-request examples for illustration | This section provides voucher-request examples for illustration | |||
purposes. These examples show JSON prior to CMS wrapping. JSON | purposes. These examples show JSON prior to CMS wrapping. JSON | |||
encoding rules specify that any binary content be base64 encoded | encoding rules specify that any binary content be base64 encoded | |||
([RFC4648], Section 4). The contents of the (base64) encoded | ([RFC4648], Section 4). The contents of the (base64) encoded | |||
certificates have been elided to save space. For detailed examples, | certificates have been elided to save space. For detailed examples, | |||
see Appendix C.2. These examples conform to the encoding rules | see Appendix C.2. These examples conform to the encoding rules | |||
defined in [RFC7951]. | defined in [RFC7951]. | |||
Example (1) The following example illustrates a pledge voucher- | Example (1): The following example illustrates a pledge voucher- | |||
request. The assertion leaf is indicated as | request. The assertion leaf is indicated as | |||
"proximity", and the registrar's TLS server certificate | "proximity", and the registrar's TLS server certificate | |||
is included in the proximity-registrar-cert leaf. See | is included in the proximity-registrar-cert leaf. See | |||
Section 5.2. | Section 5.2. | |||
{ | { | |||
"ietf-voucher-request:voucher": { | "ietf-voucher-request:voucher": { | |||
"assertion": "proximity", | "assertion": "proximity", | |||
"nonce": "62a2e7693d82fcda2624de58fb6722e5", | "nonce": "62a2e7693d82fcda2624de58fb6722e5", | |||
"serial-number" : "JADA123456789", | "serial-number" : "JADA123456789", | |||
"created-on": "2017-01-01T00:00:00.000Z", | "created-on": "2017-01-01T00:00:00.000Z", | |||
"proximity-registrar-cert": "base64encodedvalue==" | "proximity-registrar-cert": "base64encodedvalue==" | |||
} | } | |||
} | } | |||
Figure 6: JSON Representation of an Example Voucher-Request | Figure 6: JSON Representation of an Example Voucher-Request | |||
Example (2) The following example illustrates a registrar voucher- | Example (2): The following example illustrates a registrar voucher- | |||
request. The prior-signed-voucher-request leaf is | request. The prior-signed-voucher-request leaf is | |||
populated with the pledge's voucher-request (such as the | populated with the pledge's voucher-request (such as | |||
prior example). The pledge's voucher-request is a | the prior example). The pledge's voucher-request is a | |||
binary CMS-signed object. In the JSON encoding used | binary CMS-signed object. In the JSON encoding used | |||
here, it must be base64 encoded. The nonce and | here, it must be base64 encoded. The nonce and | |||
assertion have been carried forward from the pledge | assertion have been carried forward from the pledge | |||
request to the registrar request. The serial-number is | request to the registrar request. The serial-number is | |||
extracted from the pledge's Client Certificate from the | extracted from the pledge's Client Certificate from the | |||
TLS connection. See Section 5.5. | TLS connection. See Section 5.5. | |||
{ | { | |||
"ietf-voucher-request:voucher": { | "ietf-voucher-request:voucher": { | |||
"assertion" : "proximity", | "assertion" : "proximity", | |||
"nonce": "62a2e7693d82fcda2624de58fb6722e5", | "nonce": "62a2e7693d82fcda2624de58fb6722e5", | |||
"created-on": "2017-01-01T00:00:02.000Z", | "created-on": "2017-01-01T00:00:02.000Z", | |||
"idevid-issuer": "base64encodedvalue==", | "idevid-issuer": "base64encodedvalue==", | |||
"serial-number": "JADA123456789", | "serial-number": "JADA123456789", | |||
"prior-signed-voucher-request": "base64encodedvalue==" | "prior-signed-voucher-request": "base64encodedvalue==" | |||
} | } | |||
} | } | |||
Figure 7: JSON Representation of an Example Prior-Signed Voucher- | Figure 7: JSON Representation of an Example Prior-Signed Voucher- | |||
Request | Request | |||
Example (3) The following example illustrates a registrar voucher- | Example (3): The following example illustrates a registrar voucher- | |||
request. The prior-signed-voucher-request leaf is not | request. The prior-signed-voucher-request leaf is not | |||
populated with the pledge's voucher-request nor is the | populated with the pledge's voucher-request nor is the | |||
nonce leaf. This form might be used by a registrar | nonce leaf. This form might be used by a registrar | |||
requesting a voucher when the pledge cannot communicate | requesting a voucher when the pledge cannot communicate | |||
with the registrar (such as when it is powered down or | with the registrar (such as when it is powered down or | |||
still in packaging) and therefore cannot submit a nonce. | still in packaging) and therefore cannot submit a | |||
This scenario is most useful when the registrar is aware | nonce. This scenario is most useful when the registrar | |||
that it will not be able to reach the MASA during | is aware that it will not be able to reach the MASA | |||
deployment. See Section 5.5. | during deployment. See Section 5.5. | |||
{ | { | |||
"ietf-voucher-request:voucher": { | "ietf-voucher-request:voucher": { | |||
"created-on": "2017-01-01T00:00:02.000Z", | "created-on": "2017-01-01T00:00:02.000Z", | |||
"idevid-issuer": "base64encodedvalue==", | "idevid-issuer": "base64encodedvalue==", | |||
"serial-number": "JADA123456789" | "serial-number": "JADA123456789" | |||
} | } | |||
} | } | |||
Figure 8: JSON Representation of an Offline Voucher-Request | Figure 8: JSON Representation of an Offline Voucher-Request | |||
skipping to change at line 1539 ¶ | skipping to change at line 1539 ¶ | |||
4.1. Pledge Discovery of Proxy | 4.1. Pledge Discovery of Proxy | |||
The result of discovery is a logical communication with a registrar, | The result of discovery is a logical communication with a registrar, | |||
through a proxy. The proxy is transparent to the pledge. The | through a proxy. The proxy is transparent to the pledge. The | |||
communication between the pledge and Join Proxy is over IPv6 link- | communication between the pledge and Join Proxy is over IPv6 link- | |||
local addresses. | local addresses. | |||
To discover the proxy, the pledge performs the following actions: | To discover the proxy, the pledge performs the following actions: | |||
1. MUST: Obtain a local address using IPv6 methods as described in | 1. MUST: Obtain a local address using IPv6 methods as described in | |||
"IPv6 Stateless Address AutoConfiguration" [RFC4862]. Use of | "IPv6 Stateless Address Autoconfiguration" [RFC4862]. Use of | |||
temporary addresses [RFC4941] is encouraged. To limit pervasive | temporary addresses [RFC8981] is encouraged. To limit pervasive | |||
monitoring [RFC7258], a new temporary address MAY use a short | monitoring [RFC7258], a new temporary address MAY use a short | |||
lifetime (that is, set TEMP_PREFERRED_LIFETIME to be short). | lifetime (that is, set TEMP_PREFERRED_LIFETIME to be short). | |||
Pledges will generally prefer use of IPv6 link-local addresses, | Pledges will generally prefer use of IPv6 link-local addresses, | |||
and discovery of the proxy will be by link-local mechanisms. | and discovery of the proxy will be by link-local mechanisms. | |||
IPv4 methods are described in Appendix A. | IPv4 methods are described in Appendix A. | |||
2. MUST: Listen for GRASP M_FLOOD [RFC8990] announcements of the | 2. MUST: Listen for GRASP M_FLOOD [RFC8990] announcements of the | |||
objective: "AN_Proxy". See Section 4.1.1 for the details of the | objective: "AN_Proxy". See Section 4.1.1 for the details of the | |||
objective. The pledge MAY listen concurrently for other sources | objective. The pledge MAY listen concurrently for other sources | |||
of information; see Appendix B. | of information; see Appendix B. | |||
skipping to change at line 1963 ¶ | skipping to change at line 1963 ¶ | |||
IDevID), | IDevID), | |||
* a specific device from a vendor (as determined by the X.509 | * a specific device from a vendor (as determined by the X.509 | |||
IDevID) against a domain acceptlist. (The mechanism for checking | IDevID) against a domain acceptlist. (The mechanism for checking | |||
a shared acceptlist potentially used by multiple registrars is out | a shared acceptlist potentially used by multiple registrars is out | |||
of scope.) | of scope.) | |||
If validation fails, the registrar SHOULD respond with the HTTP 404 | If validation fails, the registrar SHOULD respond with the HTTP 404 | |||
error code. If the voucher-request is in an unknown format, then an | error code. If the voucher-request is in an unknown format, then an | |||
HTTP 406 error code is more appropriate. A situation that could be | HTTP 406 error code is more appropriate. A situation that could be | |||
resolved with administrative action (such as adding a vendor to a | resolved with administrative action (such as adding a vendor to an | |||
whitelist) MAY be responded to with a 403 HTTP error code. | acceptlist) MAY be responded to with a 403 HTTP error code. | |||
If authorization is successful, the registrar obtains a voucher from | If authorization is successful, the registrar obtains a voucher from | |||
the MASA service (see Section 5.5) and returns that MASA-signed | the MASA service (see Section 5.5) and returns that MASA-signed | |||
voucher to the pledge as described in Section 5.6. | voucher to the pledge as described in Section 5.6. | |||
5.4. BRSKI-MASA TLS Establishment Details | 5.4. BRSKI-MASA TLS Establishment Details | |||
The BRSKI-MASA TLS connection is a "normal" TLS connection | The BRSKI-MASA TLS connection is a "normal" TLS connection | |||
appropriate for HTTPS REST interfaces. The registrar initiates the | appropriate for HTTPS REST interfaces. The registrar initiates the | |||
connection and uses the MASA URL that is obtained as described in | connection and uses the MASA URL that is obtained as described in | |||
skipping to change at line 3364 ¶ | skipping to change at line 3364 ¶ | |||
* Reason | * Reason | |||
* reason-context | * reason-context | |||
8.6. DNS Service Names | 8.6. DNS Service Names | |||
IANA has registered the following service names: | IANA has registered the following service names: | |||
Service Name: brski-proxy | Service Name: brski-proxy | |||
Transport Protocol(s): tcp | Transport Protocol(s): tcp | |||
Assignee: IESG <iesg@ietf.org>. | Assignee: IESG <iesg@ietf.org> | |||
Contact: IESG <iesg@ietf.org> | Contact: IESG <iesg@ietf.org> | |||
Description: The Bootstrapping Remote Secure Key Infrastructure | Description: The Bootstrapping Remote Secure Key Infrastructure | |||
Proxy | Proxy | |||
Reference: RFC 8995 | Reference: RFC 8995 | |||
Service Name: brski-registrar | Service Name: brski-registrar | |||
Transport Protocol(s): tcp | Transport Protocol(s): tcp | |||
Assignee: IESG <iesg@ietf.org>. | Assignee: IESG <iesg@ietf.org> | |||
Contact: IESG <iesg@ietf.org> | Contact: IESG <iesg@ietf.org> | |||
Description: The Bootstrapping Remote Secure Key Infrastructure | Description: The Bootstrapping Remote Secure Key Infrastructure | |||
Registrar | Registrar | |||
Reference: RFC 8995 | Reference: RFC 8995 | |||
8.7. GRASP Objective Names | 8.7. GRASP Objective Names | |||
IANA has registered the following GRASP Objective Names: | IANA has registered the following GRASP Objective Names: | |||
IANA has registered the value "AN_Proxy" (without quotes) to the | IANA has registered the value "AN_Proxy" (without quotes) to the | |||
skipping to change at line 3667 ¶ | skipping to change at line 3667 ¶ | |||
anchor. However, this is not a global PKI-anchored name within | anchor. However, this is not a global PKI-anchored name within | |||
the WebPKI, so this identity could be pseudonymous. If there is | the WebPKI, so this identity could be pseudonymous. If there is | |||
sales channel integration, then the MASA will have authenticated | sales channel integration, then the MASA will have authenticated | |||
the domain owner, via either a pinned certificate or perhaps | the domain owner, via either a pinned certificate or perhaps | |||
another HTTP authentication method, as per Section 5.5.4. | another HTTP authentication method, as per Section 5.5.4. | |||
* the time the device is activated. | * the time the device is activated. | |||
* the IP address of the domain owner's registrar. For ISPs and | * the IP address of the domain owner's registrar. For ISPs and | |||
enterprises, the IP address provides very clear geolocation of the | enterprises, the IP address provides very clear geolocation of the | |||
owner. No amount of IP address privacy extensions [RFC4941] can | owner. No amount of IP address privacy extensions [RFC8981] can | |||
do anything about this, as a simple whois lookup likely identifies | do anything about this, as a simple whois lookup likely identifies | |||
the ISP or enterprise from the upper bits anyway. A passive | the ISP or enterprise from the upper bits anyway. A passive | |||
attacker who observes the connection definitely may conclude that | attacker who observes the connection definitely may conclude that | |||
the given enterprise/ISP is a customer of the particular equipment | the given enterprise/ISP is a customer of the particular equipment | |||
vendor. The precise model that is being enrolled will remain | vendor. The precise model that is being enrolled will remain | |||
private. | private. | |||
Based upon the above information, the manufacturer is able to track a | Based upon the above information, the manufacturer is able to track a | |||
specific device from pseudonymous domain identity to the next | specific device from pseudonymous domain identity to the next | |||
pseudonymous domain identity. If there is sales-channel integration, | pseudonymous domain identity. If there is sales-channel integration, | |||
skipping to change at line 3775 ¶ | skipping to change at line 3775 ¶ | |||
daily or even monthly occurrence. | daily or even monthly occurrence. | |||
10.5. Manufacturers and Grey Market Equipment | 10.5. Manufacturers and Grey Market Equipment | |||
Manufacturers of devices often sell different products into different | Manufacturers of devices often sell different products into different | |||
regional markets. Which product is available in which market can be | regional markets. Which product is available in which market can be | |||
driven by price differentials, support issues (some markets may | driven by price differentials, support issues (some markets may | |||
require manuals and tech support to be done in the local language), | require manuals and tech support to be done in the local language), | |||
and government export regulation (such as whether strong crypto is | and government export regulation (such as whether strong crypto is | |||
permitted to be exported or permitted to be used in a particular | permitted to be exported or permitted to be used in a particular | |||
market). When an domain owner obtains a device from a different | market). When a domain owner obtains a device from a different | |||
market (they can be new) and transfers it to a different location, | market (they can be new) and transfers it to a different location, | |||
this is called a Grey Market. | this is called a Grey Market. | |||
A manufacturer could decide not to issue a voucher to an enterprise/ | A manufacturer could decide not to issue a voucher to an enterprise/ | |||
ISP based upon their location. There are a number of ways that this | ISP based upon their location. There are a number of ways that this | |||
could be determined: from the geolocation of the registrar, from | could be determined: from the geolocation of the registrar, from | |||
sales channel knowledge about the customer, and from what products | sales channel knowledge about the customer, and from what products | |||
are available or unavailable in that market. If the device has a | are available or unavailable in that market. If the device has a | |||
GPS, the coordinates of the device could even be placed into an | GPS, the coordinates of the device could even be placed into an | |||
extension of the voucher. | extension of the voucher. | |||
skipping to change at line 4358 ¶ | skipping to change at line 4358 ¶ | |||
[RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data | [RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data | |||
Encodings", RFC 4648, DOI 10.17487/RFC4648, October 2006, | Encodings", RFC 4648, DOI 10.17487/RFC4648, October 2006, | |||
<https://www.rfc-editor.org/info/rfc4648>. | <https://www.rfc-editor.org/info/rfc4648>. | |||
[RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless | [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless | |||
Address Autoconfiguration", RFC 4862, | Address Autoconfiguration", RFC 4862, | |||
DOI 10.17487/RFC4862, September 2007, | DOI 10.17487/RFC4862, September 2007, | |||
<https://www.rfc-editor.org/info/rfc4862>. | <https://www.rfc-editor.org/info/rfc4862>. | |||
[RFC4941] Narten, T., Draves, R., and S. Krishnan, "Privacy | ||||
Extensions for Stateless Address Autoconfiguration in | ||||
IPv6", RFC 4941, DOI 10.17487/RFC4941, September 2007, | ||||
<https://www.rfc-editor.org/info/rfc4941>. | ||||
[RFC5272] Schaad, J. and M. Myers, "Certificate Management over CMS | [RFC5272] Schaad, J. and M. Myers, "Certificate Management over CMS | |||
(CMC)", RFC 5272, DOI 10.17487/RFC5272, June 2008, | (CMC)", RFC 5272, DOI 10.17487/RFC5272, June 2008, | |||
<https://www.rfc-editor.org/info/rfc5272>. | <https://www.rfc-editor.org/info/rfc5272>. | |||
[RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., | [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, DOI 10.17487/RFC5280, May 2008, | (CRL) Profile", RFC 5280, DOI 10.17487/RFC5280, May 2008, | |||
<https://www.rfc-editor.org/info/rfc5280>. | <https://www.rfc-editor.org/info/rfc5280>. | |||
skipping to change at line 4473 ¶ | skipping to change at line 4468 ¶ | |||
Definition Language (CDDL): A Notational Convention to | Definition Language (CDDL): A Notational Convention to | |||
Express Concise Binary Object Representation (CBOR) and | Express Concise Binary Object Representation (CBOR) and | |||
JSON Data Structures", RFC 8610, DOI 10.17487/RFC8610, | JSON Data Structures", RFC 8610, DOI 10.17487/RFC8610, | |||
June 2019, <https://www.rfc-editor.org/info/rfc8610>. | June 2019, <https://www.rfc-editor.org/info/rfc8610>. | |||
[RFC8951] Richardson, M., Werner, T., and W. Pan, "Clarification of | [RFC8951] Richardson, M., Werner, T., and W. Pan, "Clarification of | |||
Enrollment over Secure Transport (EST): Transfer Encodings | Enrollment over Secure Transport (EST): Transfer Encodings | |||
and ASN.1", RFC 8951, DOI 10.17487/RFC8951, November 2020, | and ASN.1", RFC 8951, DOI 10.17487/RFC8951, November 2020, | |||
<https://www.rfc-editor.org/info/rfc8951>. | <https://www.rfc-editor.org/info/rfc8951>. | |||
[RFC8990] Bormann, C., Carpenter, B., Ed., and B. Liu, Ed., "A | [RFC8981] Gont, F., Krishnan, S., Narten, T., and R. Draves, | |||
GeneRic Autonomic Signaling Protocol (GRASP)", RFC 8990, | "Temporary Address Extensions for Stateless Address | |||
DOI 10.17487/RFC8990, April 2021, | Autoconfiguration in IPv6", RFC 8981, | |||
DOI 10.17487/RFC8981, February 2021, | ||||
<https://www.rfc-editor.org/info/rfc8981>. | ||||
[RFC8990] Bormann, C., Carpenter, B., Ed., and B. Liu, Ed., "GeneRic | ||||
Autonomic Signaling Protocol (GRASP)", RFC 8990, | ||||
DOI 10.17487/RFC8990, May 2021, | ||||
<https://www.rfc-editor.org/rfc/rfc8990>. | <https://www.rfc-editor.org/rfc/rfc8990>. | |||
[RFC8994] Eckert, T., Ed., Behringer, M., Ed., and S. Bjarnason, "An | [RFC8994] Eckert, T., Ed., Behringer, M., Ed., and S. Bjarnason, "An | |||
Autonomic Control Plane (ACP)", RFC 8994, | Autonomic Control Plane (ACP)", RFC 8994, | |||
DOI 10.17487/RFC8994, April 2021, | DOI 10.17487/RFC8994, May 2021, | |||
<https://www.rfc-editor.org/rfc/rfc8994>. | <https://www.rfc-editor.org/rfc/rfc8994>. | |||
12.2. Informative References | 12.2. Informative References | |||
[ACE-COAP-EST] | [ACE-COAP-EST] | |||
Stok, P. V. D., Kampanakis, P., Richardson, M. C., and S. | van der Stok, P., Kampanakis, P., Richardson, M., and S. | |||
Raza, "EST over secure CoAP (EST-coaps)", Work in | Raza, "EST over secure CoAP (EST-coaps)", Work in | |||
Progress, Internet-Draft, draft-ietf-ace-coap-est-18, 6 | Progress, Internet-Draft, draft-ietf-ace-coap-est-18, 6 | |||
January 2020, | January 2020, | |||
<https://tools.ietf.org/html/draft-ietf-ace-coap-est-18>. | <https://tools.ietf.org/html/draft-ietf-ace-coap-est-18>. | |||
[ANIMA-CONSTRAINED-VOUCHER] | [ANIMA-CONSTRAINED-VOUCHER] | |||
Richardson, M., Stok, P. V. D., Kampanakis, P., and E. | Richardson, M., van der Stok, P., Kampanakis, P., and E. | |||
Dijk, "Constrained Voucher Artifacts for Bootstrapping | Dijk, "Constrained Voucher Artifacts for Bootstrapping | |||
Protocols", Work in Progress, Internet-Draft, draft-ietf- | Protocols", Work in Progress, Internet-Draft, draft-ietf- | |||
anima-constrained-voucher-10, 21 February 2021, | anima-constrained-voucher-10, 21 February 2021, | |||
<https://tools.ietf.org/html/draft-ietf-anima-constrained- | <https://tools.ietf.org/html/draft-ietf-anima-constrained- | |||
voucher-10>. | voucher-10>. | |||
[ANIMA-STATE] | [ANIMA-STATE] | |||
Richardson, M. C., "Considerations for stateful vs | Richardson, M., "Considerations for stateful vs stateless | |||
stateless join router in ANIMA bootstrap", Work in | join router in ANIMA bootstrap", Work in Progress, | |||
Progress, Internet-Draft, draft-richardson-anima-state- | Internet-Draft, draft-richardson-anima-state-for- | |||
for-joinrouter-03, 22 September 2020, | joinrouter-03, 22 September 2020, | |||
<https://tools.ietf.org/html/draft-richardson-anima-state- | <https://tools.ietf.org/html/draft-richardson-anima-state- | |||
for-joinrouter-03>. | for-joinrouter-03>. | |||
[brewski] Urban Dictionary, "brewski", March 2003, | [brewski] Urban Dictionary, "brewski", March 2003, | |||
<https://www.urbandictionary.com/define.php?term=brewski>. | <https://www.urbandictionary.com/define.php?term=brewski>. | |||
[cabforumaudit] | [cabforumaudit] | |||
CA/Browser Forum, "Information for Auditors and | CA/Browser Forum, "Information for Auditors and | |||
Assessors", August 2019, <https://cabforum.org/ | Assessors", August 2019, <https://cabforum.org/ | |||
information-for-auditors-and-assessors/>. | information-for-auditors-and-assessors/>. | |||
skipping to change at line 4620 ¶ | skipping to change at line 4621 ¶ | |||
[RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | |||
BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | |||
<https://www.rfc-editor.org/info/rfc8340>. | <https://www.rfc-editor.org/info/rfc8340>. | |||
[RFC8615] Nottingham, M., "Well-Known Uniform Resource Identifiers | [RFC8615] Nottingham, M., "Well-Known Uniform Resource Identifiers | |||
(URIs)", RFC 8615, DOI 10.17487/RFC8615, May 2019, | (URIs)", RFC 8615, DOI 10.17487/RFC8615, May 2019, | |||
<https://www.rfc-editor.org/info/rfc8615>. | <https://www.rfc-editor.org/info/rfc8615>. | |||
[RFC8993] Behringer, M., Ed., Carpenter, B., Eckert, T., Ciavaglia, | [RFC8993] Behringer, M., Ed., Carpenter, B., Eckert, T., Ciavaglia, | |||
L., and J. Nobre, "A Reference Model for Autonomic | L., and J. Nobre, "A Reference Model for Autonomic | |||
Networking", RFC 8993, DOI 10.17487/RFC8993, April 2021, | Networking", RFC 8993, DOI 10.17487/RFC8993, May 2021, | |||
<https://www.rfc-editor.org/info/rfc8993>. | <https://www.rfc-editor.org/info/rfc8993>. | |||
[slowloris] | [slowloris] | |||
Wikipedia, "Slowloris (computer security)", January 2021, | Wikipedia, "Slowloris (computer security)", January 2021, | |||
<https://en.wikipedia.org/w/index.php?title=Slowloris_(com | <https://en.wikipedia.org/w/index.php?title=Slowloris_(com | |||
puter_security)&oldid=1001473290/>. | puter_security)&oldid=1001473290/>. | |||
[softwareescrow] | [softwareescrow] | |||
Wikipedia, "Source code escrow", March 2020, | Wikipedia, "Source code escrow", March 2020, | |||
<https://en.wikipedia.org/w/ | <https://en.wikipedia.org/w/ | |||
End of changes. 17 change blocks. | ||||
50 lines changed or deleted | 51 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/ |