Skip to content

Commit 6cef633

Browse files
author
ID Bot
committed
Script updating gh-pages from ce59bee. [ci skip]
1 parent 3d88595 commit 6cef633

2 files changed

Lines changed: 20 additions & 18 deletions

File tree

link-rel-enhancement/draft-ietf-plants-merkle-tree-certs.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5110,9 +5110,9 @@ <h3 id="name-enhancement-link-relation">
51105110
<a href="#section-9.1" class="section-number selfRef">9.1. </a><a href="#name-enhancement-link-relation" class="section-name selfRef">Enhancement Link Relation</a>
51115111
</h3>
51125112
<p id="section-9.1-1">This section introduces a new link relation <span>[<a href="#RFC8288" class="cite xref">RFC8288</a>]</span>, "enhancement". It identifies an optional substitute for the original context. This substitute may be preferable in some way (e.g. it may be smaller) but is optional. Consumers that accept the substitute are expected to also accept the original context, so it is not an error if the resource is unavailable.<a href="#section-9.1-1" class="pilcrow">¶</a></p>
5113-
<p id="section-9.1-2">This is similar to the "alternate" link relation, except that it specifies the substitute is optional. In some applications, a client may fetch all alternates, so that it may forward the one of the alternates to another party. For example, <span><a href="https://rfc-editor.org/rfc/rfc8555#section-7.4.2" class="relref">Section 7.4.2</a> of [<a href="#RFC8555" class="cite xref">RFC8555</a>]</span> describes how an ACME server uses the "alternate" link relation to server multiple certificate chains for an ACME order. An ACME client might then fetch all of them and configure them in a TLS server, which presents them to TLS clients. Different TLS clients need different chains, so the ACME client would treat any unavailable alternate as an error.<a href="#section-9.1-2" class="pilcrow">¶</a></p>
5114-
<p id="section-9.1-3">This behavior is not ideal for landmark-relative certificates, which are available asynchronously and should not block deployment of their corresponding standalone certificate. The "enhancement" link relation allows an ACME server to specify which chains are necessary to fulfill the ACME order and which are optional additions:<a href="#section-9.1-3" class="pilcrow">¶</a></p>
5115-
<p id="section-9.1-4">When serving a certificate, an ACME server MAY provide one or more link relation header fields with relation "enhancement". Each such field SHOULD express a certificate chain that the ACME server expects to be redundant with (but potentially preferable to) either the original certificate chain or one of the chains served from an "alternate" relation. If the certificate chain is not yet available, the enhancement MAY serve an HTTP 202 (Accepted) response, with a Retry-After header (<span><a href="https://rfc-editor.org/rfc/rfc9110#section-10.2.3" class="relref">Section 10.2.3</a> of [<a href="#RFC9110" class="cite xref">RFC9110</a>]</span>) estimating when it will become available.<a href="#section-9.1-4" class="pilcrow">¶</a></p>
5113+
<p id="section-9.1-2">This is similar to the "alternate" link relation, except that it specifies the substitute is optional. In some applications, a client may fetch all alternates, so that it may forward one of the alternates to another party. For example, <span><a href="https://rfc-editor.org/rfc/rfc8555#section-7.4.2" class="relref">Section 7.4.2</a> of [<a href="#RFC8555" class="cite xref">RFC8555</a>]</span> describes how an ACME server uses the "alternate" link relation to serve multiple certificate chains for an ACME order. An ACME client might then fetch all of them and configure them in a TLS server, which presents them to TLS clients. Different TLS clients need different chains, so the ACME client would treat any unavailable alternate as an error.<a href="#section-9.1-2" class="pilcrow">¶</a></p>
5114+
<p id="section-9.1-3">This behavior is not ideal for landmark-relative certificates, which are available asynchronously and should not block deployment of their corresponding standalone certificate. The "enhancement" link relation allows an ACME server to specify which chains are necessary to fulfill the ACME order and which are optional additions.<a href="#section-9.1-3" class="pilcrow">¶</a></p>
5115+
<p id="section-9.1-4">When serving a certificate, an ACME server MAY provide one or more link relation header fields with relation "enhancement". Each such field SHOULD express a certificate chain that the ACME server expects to be redundant with (but potentially preferable to) either the original certificate chain or one of the chains served from an "alternate" relation. If the certificate chain is not yet available, the enhancement URL MAY serve an HTTP 202 (Accepted) response, with a Retry-After header (<span><a href="https://rfc-editor.org/rfc/rfc9110#section-10.2.3" class="relref">Section 10.2.3</a> of [<a href="#RFC9110" class="cite xref">RFC9110</a>]</span>) estimating when it will become available.<a href="#section-9.1-4" class="pilcrow">¶</a></p>
51165116
<p id="section-9.1-5">ACME clients can fetch enhancement URLs to collect additional alternate certificate chains. If the resource is unavailable, the ACME client SHOULD NOT fail the overall transaction. If the resource returns an HTTP 202 (Accepted) response, the ACME client SHOULD retry the request later, incorporating any Retry-After header, but it SHOULD NOT block deployment of other chains on this process.<a href="#section-9.1-5" class="pilcrow">¶</a></p>
51175117
</section>
51185118
</div>
@@ -5121,9 +5121,9 @@ <h3 id="name-enhancement-link-relation">
51215121
<h3 id="name-using-acme-with-merkle-tree">
51225122
<a href="#section-9.2" class="section-number selfRef">9.2. </a><a href="#name-using-acme-with-merkle-tree" class="section-name selfRef">Using ACME with Merkle Tree Certificates</a>
51235123
</h3>
5124-
<p id="section-9.2-1">When downloading the certificate (<span><a href="https://rfc-editor.org/rfc/rfc8555#section-7.4.2" class="relref">Section 7.4.2</a> of [<a href="#RFC8555" class="cite xref">RFC8555</a>]</span>), ACME clients supporting Merkle Tree certificates SHOULD send "application/pem-certificate-chain-with-properties" in their Accept header (<span><a href="https://rfc-editor.org/rfc/rfc9110#section-12.5.1" class="relref">Section 12.5.1</a> of [<a href="#RFC9110" class="cite xref">RFC9110</a>]</span>). ACME servers issuing Merkle Tree certificates SHOULD then respond with that content type and include trust anchor ID information as described in <span><a href="https://datatracker.ietf.org/doc/html/draft-ietf-tls-trust-anchor-ids-04#section-7" class="relref">Section 7</a> of [<a href="#I-D.ietf-tls-trust-anchor-ids" class="cite xref">I-D.ietf-tls-trust-anchor-ids</a>]</span>. <a href="#use-in-tls" class="auto internal xref">Section 8</a> decribes the trust anchor ID assignments for standalone and landmark-relative certificates.<a href="#section-9.2-1" class="pilcrow">¶</a></p>
5124+
<p id="section-9.2-1">When downloading the certificate (<span><a href="https://rfc-editor.org/rfc/rfc8555#section-7.4.2" class="relref">Section 7.4.2</a> of [<a href="#RFC8555" class="cite xref">RFC8555</a>]</span>), ACME clients supporting Merkle Tree certificates SHOULD send "application/pem-certificate-chain-with-properties" in their Accept header (<span><a href="https://rfc-editor.org/rfc/rfc9110#section-12.5.1" class="relref">Section 12.5.1</a> of [<a href="#RFC9110" class="cite xref">RFC9110</a>]</span>). ACME servers issuing Merkle Tree certificates SHOULD then respond with that content type and include trust anchor ID information as described in <span><a href="https://datatracker.ietf.org/doc/html/draft-ietf-tls-trust-anchor-ids-04#section-7" class="relref">Section 7</a> of [<a href="#I-D.ietf-tls-trust-anchor-ids" class="cite xref">I-D.ietf-tls-trust-anchor-ids</a>]</span>. <a href="#use-in-tls" class="auto internal xref">Section 8</a> describes the trust anchor ID assignments for standalone and landmark-relative certificates.<a href="#section-9.2-1" class="pilcrow">¶</a></p>
51255125
<p id="section-9.2-2">When processing an order for a Merkle Tree certificate, the ACME server moves the order to the "valid" state after the corresponding entry is sequenced in the issuance log, cosignatures are collected, and the standalone certificate is available. The order's certificate URL then serves the standalone certificate, constructed as described in <a href="#standalone-certificates" class="auto internal xref">Section 6.3</a>.<a href="#section-9.2-2" class="pilcrow">¶</a></p>
5126-
<p id="section-9.2-3">The standalone certificate response SHOULD additionally carry an enhancement URL (<a href="#enhancement-link-relation" class="auto internal xref">Section 9.1</a>) for the landmark-relative certificate, as described <span><a href="https://rfc-editor.org/rfc/rfc8555#section-7.4.2" class="relref">Section 7.4.2</a> of [<a href="#RFC8555" class="cite xref">RFC8555</a>]</span>. Before the landmark-relative certificate is available, the enhancement URL SHOULD return a HTTP 202 (Accepted) response. Once the next landmark is allocated, the ACME server constructs a landmark-relative certificate, as described in <a href="#landmark-relative-certificates" class="auto internal xref">Section 6.4</a>, and serves it from the enhancement URL.<a href="#section-9.2-3" class="pilcrow">¶</a></p>
5126+
<p id="section-9.2-3">The standalone certificate response SHOULD additionally carry an enhancement URL (<a href="#enhancement-link-relation" class="auto internal xref">Section 9.1</a>) for the landmark-relative certificate, as described in <span><a href="https://rfc-editor.org/rfc/rfc8555#section-7.4.2" class="relref">Section 7.4.2</a> of [<a href="#RFC8555" class="cite xref">RFC8555</a>]</span>. Before the landmark-relative certificate is available, the enhancement URL SHOULD return an HTTP 202 (Accepted) response. Once the next landmark is allocated, the ACME server constructs a landmark-relative certificate, as described in <a href="#landmark-relative-certificates" class="auto internal xref">Section 6.4</a>, and serves it from the enhancement URL.<a href="#section-9.2-3" class="pilcrow">¶</a></p>
51275127
</section>
51285128
</div>
51295129
</section>
@@ -5507,7 +5507,7 @@ <h3 id="name-link-relation-type">
55075507
<dd class="break"></dd>
55085508
<dt id="section-13.5-2.3">Description:</dt>
55095509
<dd style="margin-left: 1.5em" id="section-13.5-2.4">
5510-
<p id="section-13.5-2.4.1">Refers to an optional substitute for this context. Consumers that accept the substitute are expected to also accept this the original context, so it is not an error if the substitute is unavailable.<a href="#section-13.5-2.4.1" class="pilcrow">¶</a></p>
5510+
<p id="section-13.5-2.4.1">Refers to an optional substitute for this context. Consumers that accept the substitute are expected to also accept the original context, so it is not an error if the substitute is unavailable.<a href="#section-13.5-2.4.1" class="pilcrow">¶</a></p>
55115511
</dd>
55125512
<dd class="break"></dd>
55135513
<dt id="section-13.5-2.5">Reference:</dt>

link-rel-enhancement/draft-ietf-plants-merkle-tree-certs.txt

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2670,10 +2670,10 @@ Table of Contents
26702670

26712671
This is similar to the "alternate" link relation, except that it
26722672
specifies the substitute is optional. In some applications, a client
2673-
may fetch all alternates, so that it may forward the one of the
2673+
may fetch all alternates, so that it may forward one of the
26742674
alternates to another party. For example, Section 7.4.2 of [RFC8555]
26752675
describes how an ACME server uses the "alternate" link relation to
2676-
server multiple certificate chains for an ACME order. An ACME client
2676+
serve multiple certificate chains for an ACME order. An ACME client
26772677
might then fetch all of them and configure them in a TLS server,
26782678
which presents them to TLS clients. Different TLS clients need
26792679
different chains, so the ACME client would treat any unavailable
@@ -2683,15 +2683,15 @@ Table of Contents
26832683
are available asynchronously and should not block deployment of their
26842684
corresponding standalone certificate. The "enhancement" link
26852685
relation allows an ACME server to specify which chains are necessary
2686-
to fulfill the ACME order and which are optional additions:
2686+
to fulfill the ACME order and which are optional additions.
26872687

26882688
When serving a certificate, an ACME server MAY provide one or more
26892689
link relation header fields with relation "enhancement". Each such
26902690
field SHOULD express a certificate chain that the ACME server expects
26912691
to be redundant with (but potentially preferable to) either the
26922692
original certificate chain or one of the chains served from an
26932693
"alternate" relation. If the certificate chain is not yet available,
2694-
the enhancement MAY serve an HTTP 202 (Accepted) response, with a
2694+
the enhancement URL MAY serve an HTTP 202 (Accepted) response, with a
26952695
Retry-After header (Section 10.2.3 of [RFC9110]) estimating when it
26962696
will become available.
26972697

@@ -2710,8 +2710,9 @@ Table of Contents
27102710
(Section 12.5.1 of [RFC9110]). ACME servers issuing Merkle Tree
27112711
certificates SHOULD then respond with that content type and include
27122712
trust anchor ID information as described in Section 7 of
2713-
[I-D.ietf-tls-trust-anchor-ids]. Section 8 decribes the trust anchor
2714-
ID assignments for standalone and landmark-relative certificates.
2713+
[I-D.ietf-tls-trust-anchor-ids]. Section 8 describes the trust
2714+
anchor ID assignments for standalone and landmark-relative
2715+
certificates.
27152716

27162717
When processing an order for a Merkle Tree certificate, the ACME
27172718
server moves the order to the "valid" state after the corresponding
@@ -2722,11 +2723,12 @@ Table of Contents
27222723

27232724
The standalone certificate response SHOULD additionally carry an
27242725
enhancement URL (Section 9.1) for the landmark-relative certificate,
2725-
as described Section 7.4.2 of [RFC8555]. Before the landmark-
2726+
as described in Section 7.4.2 of [RFC8555]. Before the landmark-
27262727
relative certificate is available, the enhancement URL SHOULD return
2727-
a HTTP 202 (Accepted) response. Once the next landmark is allocated,
2728-
the ACME server constructs a landmark-relative certificate, as
2729-
described in Section 6.4, and serves it from the enhancement URL.
2728+
an HTTP 202 (Accepted) response. Once the next landmark is
2729+
allocated, the ACME server constructs a landmark-relative
2730+
certificate, as described in Section 6.4, and serves it from the
2731+
enhancement URL.
27302732

27312733
10. Deployment Considerations
27322734

@@ -3358,8 +3360,8 @@ Table of Contents
33583360

33593361
Description: Refers to an optional substitute for this context.
33603362
Consumers that accept the substitute are expected to also accept
3361-
this the original context, so it is not an error if the substitute
3362-
is unavailable.
3363+
the original context, so it is not an error if the substitute is
3364+
unavailable.
33633365

33643366
Reference: [this-RFC], Section 9.1
33653367

0 commit comments

Comments
 (0)