rfc8659xml2.original.xml | rfc8659.xml | |||
---|---|---|---|---|
<?xml version="1.0" encoding="UTF-8"?> | <?xml version='1.0' encoding='utf-8'?> | |||
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?> | ||||
<!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.2.9 --> | ||||
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [ | ||||
]> | ||||
<?rfc toc="yes"?> | ||||
<?rfc sortrefs="yes"?> | ||||
<?rfc symrefs="yes"?> | ||||
<rfc docName="draft-ietf-lamps-rfc6844bis-07" category="std" obsoletes="6844"> | <!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | |||
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" | ||||
category="std" consensus="true" docName="draft-ietf-lamps-rfc6844bis-07" nu | ||||
mber="8659" ipr="trust200902" obsoletes="6844" updates="" xml:lang="en" tocInclu | ||||
de="true" sortRefs="true" symRefs="true" version="3"> | ||||
<!-- xml2rfc v2v3 conversion 2.31.0 --> | ||||
<front> | <front> | |||
<title abbrev="CAA">DNS Certification Authority Authorization (CAA) Resource Record</title> | <title abbrev="CAA">DNS Certification Authority Authorization (CAA) Resource Record</title> | |||
<seriesInfo name="RFC" value="8659"/> | ||||
<author initials="P." surname="Hallam-Baker" fullname="Phillip Hallam-Baker" > | <author initials="P." surname="Hallam-Baker" fullname="Phillip Hallam-Baker" > | |||
<organization></organization> | <organization>Venture Cryptography</organization> | |||
<address> | <address> | |||
<email>phill@hallambaker.com</email> | <email>phill@hallambaker.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author initials="R." surname="Stradling" fullname="Rob Stradling"> | <author initials="R." surname="Stradling" fullname="Rob Stradling"> | |||
<organization abbrev="Sectigo">Sectigo Ltd.</organization> | <organization abbrev="Sectigo">Sectigo Ltd.</organization> | |||
<address> | <address> | |||
<email>rob@sectigo.com</email> | <email>rob@sectigo.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author initials="J." surname="Hoffman-Andrews" fullname="Jacob Hoffman-Andr ews"> | <author initials="J." surname="Hoffman-Andrews" fullname="Jacob Hoffman-Andr ews"> | |||
<organization>Let's Encrypt</organization> | <organization>Let's Encrypt</organization> | |||
<address> | <address> | |||
<email>jsha@letsencrypt.org</email> | <email>jsha@letsencrypt.org</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<date year="2019" month="November"/> | ||||
<keyword>certificate</keyword> | ||||
<keyword>ca</keyword> | ||||
<keyword>pki</keyword> | ||||
<keyword>issue</keyword> | ||||
<keyword>issuance</keyword> | ||||
<keyword>wildcard</keyword> | ||||
<date year="2019" month="May" day="30"/> | <abstract> | |||
<t>The Certification Authority Authorization (CAA) DNS Resource Record | ||||
<abstract> | ||||
<t>The Certification Authority Authorization (CAA) DNS Resource Record | ||||
allows a DNS domain name holder to specify one or more Certification | allows a DNS domain name holder to specify one or more Certification | |||
Authorities (CAs) authorized to issue certificates for that domain name. | Authorities (CAs) authorized to issue certificates for that domain name. | |||
CAA Resource Records allow a public Certification Authority to | CAA Resource Records allow a public CA to | |||
implement additional controls to reduce the risk of unintended | implement additional controls to reduce the risk of unintended | |||
certificate mis-issue. This document defines the syntax of the CAA | certificate mis-issue. This document defines the syntax of the CAA | |||
record and rules for processing CAA records by certificate issuers.</t> | record and rules for processing CAA records by CAs.</t> | |||
<t>This document obsoletes RFC 6844.</t> | ||||
<t>This document obsoletes RFC 6844.</t> | ||||
</abstract> | </abstract> | |||
</front> | </front> | |||
<middle> | <middle> | |||
<section anchor="introduction" numbered="true" toc="default"> | ||||
<section anchor="introduction" title="Introduction"> | <name>Introduction</name> | |||
<t>The Certification Authority Authorization (CAA) DNS Resource Record | ||||
<t>The Certification Authority Authorization (CAA) DNS Resource Record | ||||
allows a DNS domain name holder to specify the Certification | allows a DNS domain name holder to specify the Certification | |||
Authorities (CAs) authorized to issue certificates for that domain name. | Authorities (CAs) authorized to issue certificates for that domain name. | |||
Publication of CAA Resource Records allows a public Certification | Publication of CAA Resource Records allows a public CA to implement additional c | |||
Authority to implement additional controls to reduce the risk of | ontrols to reduce the risk of | |||
unintended certificate mis-issue.</t> | unintended certificate mis-issue.</t> | |||
<t>Like the TLSA record defined in DNS-Based Authentication of Named | ||||
Entities (DANE) <xref target="RFC6698" format="default"/>, CAA records are used | ||||
as a part of a | ||||
mechanism for checking PKIX <xref target="RFC6698" format="default"/> certificat | ||||
e data. The distinction | ||||
between CAA and TLSA is that CAA records specify an | ||||
authorization control to be performed by a CA before | ||||
issuing a certificate and TLSA records specify a verification | ||||
control to be performed by a Relying Party after the certificate is | ||||
issued. | ||||
<t>Like the TLSA record defined in DNS-Based Authentication of Named | </t> | |||
Entities (DANE) <xref target="RFC6698"/>, CAA records are used as a part of a | <t>Conformance with a published CAA record is a necessary, but not | |||
mechanism for checking PKIX <xref target="RFC6698"/> certificate data. The dist | sufficient, condition for the issuance of a certificate.</t> | |||
inction | <t>Criteria for the inclusion of embedded trust anchor certificates in | |||
between the two specifications is that CAA records specify an | ||||
authorization control to be performed by a certificate issuer before | ||||
issue of a certificate and TLSA records specify a verification | ||||
control to be performed by a relying party after the certificate is | ||||
issued.</t> | ||||
<t>Conformance with a published CAA record is a necessary but not | ||||
sufficient condition for issuance of a certificate.</t> | ||||
<t>Criteria for inclusion of embedded trust anchor certificates in | ||||
applications are outside the scope of this document. Typically, such | applications are outside the scope of this document. Typically, such | |||
criteria require the CA to publish a Certification Practices Statement | criteria require the CA to publish a Certification Practices Statement | |||
(CPS) that specifies how the requirements of the Certificate Policy | (CPS) that specifies how the requirements of the Certificate Policy | |||
(CP) are achieved. It is also common for a CA to engage an | (CP) are achieved. It is also common for a CA to engage an | |||
independent third-party auditor to prepare an annual audit statement | independent third-party auditor to prepare an annual audit statement | |||
of its performance against its CPS.</t> | of its performance against its CPS.</t> | |||
<t>A set of CAA records describes only current grants of authority to | ||||
<t>A set of CAA records describes only current grants of authority to | ||||
issue certificates for the corresponding DNS domain name. Since | issue certificates for the corresponding DNS domain name. Since | |||
certificates are valid for a period of time, it is possible | certificates are valid for a period of time, it is possible | |||
that a certificate that is not conformant with the CAA records | that a certificate that is not conformant with the CAA records | |||
currently published was conformant with the CAA records published at | currently published was conformant with the CAA records published at | |||
the time that the certificate was issued. Relying parties MUST | the time that the certificate was issued. Relying Parties <bcp14>MUST | |||
NOT use CAA records as part of certificate validation.</t> | NOT</bcp14> use CAA records as part of certificate validation.</t> | |||
<t>CAA records <bcp14>MAY</bcp14> be used by Certificate Evaluators as a p | ||||
<t>CAA records MAY be used by Certificate Evaluators as a possible | ossible | |||
indicator of a security policy violation. Such use SHOULD take | indicator of a security policy violation. Such use <bcp14>SHOULD</bcp14> take i | |||
account of the possibility that published CAA records changed between | nto | |||
account the possibility that published CAA records changed between | ||||
the time a certificate was issued and the time at which the | the time a certificate was issued and the time at which the | |||
certificate was observed by the Certificate Evaluator.</t> | certificate was observed by the Certificate Evaluator.</t> | |||
</section> | ||||
</section> | <section anchor="definitions" numbered="true" toc="default"> | |||
<section anchor="definitions" title="Definitions"> | <name>Definitions</name> | |||
<section anchor="requirements-language" numbered="true" toc="default"> | ||||
<section anchor="requirements-language" title="Requirements Language"> | <name>Requirements Language</name> | |||
<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp | ||||
<t>The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, | 14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", | |||
“SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “NOT RECOMMENDED”, “MAY”, and | "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>" | |||
“OPTIONAL” in this document are to be interpreted as described in | , "<bcp14>RECOMMENDED</bcp14>", | |||
BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, th | "<bcp14>NOT RECOMMENDED</bcp14>", "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bc | |||
ey appear in all | p14>" in this document | |||
capitals, as shown here.</t> | are to be interpreted as described in BCP 14 | |||
<xref target="RFC2119" format="default"/> <xref target="RFC8174" format="default | ||||
</section> | "/> when, | |||
<section anchor="defined-terms" title="Defined Terms"> | and only when, they appear in all capitals, as shown here.</t> | |||
</section> | ||||
<t>The following terms are used in this document:</t> | <section anchor="defined-terms" numbered="true" toc="default"> | |||
<name>Defined Terms</name> | ||||
<t>Certificate: An X.509 Certificate, as specified in <xref target="RFC5280"/>. | <t>The following terms are used in this document:</t> | |||
</t> | <dl> | |||
<dt>Certificate:</dt><dd>An X.509 Certificate, as specified in <xref t | ||||
<t>Certificate Evaluator: A party other than a Relying Party that | arget="RFC5280" format="default"/>.</dd> | |||
<dt>Certificate Evaluator:</dt><dd>A party other than a Relying Party | ||||
that | ||||
evaluates the trustworthiness of certificates issued by | evaluates the trustworthiness of certificates issued by | |||
Certification Authorities.</t> | Certification Authorities.</dd> | |||
<dt>Certification Authority (CA):</dt><dd>An Issuer that issues certif | ||||
<t>Certification Authority (CA): An Issuer that issues certificates in | icates in | |||
accordance with a specified Certificate Policy.</t> | accordance with a specified Certificate Policy.</dd> | |||
<dt>Certificate Policy (CP):</dt><dd>Specifies the criteria that a CA | ||||
<t>Certificate Policy (CP): Specifies the criteria that a Certification | undertakes to meet in its issue of certificates. See | |||
Authority undertakes to meet in its issue of certificates. See | <xref target="RFC3647" format="default"/>.</dd> | |||
<xref target="RFC3647"/>.</t> | <dt>Certification Practices Statement (CPS):</dt><dd>Specifies the mea | |||
ns by | ||||
<t>Certification Practices Statement (CPS): Specifies the means by | which the criteria of the CP are met. In most | |||
which the criteria of the Certificate Policy are met. In most | ||||
cases, this will be the document against which the operations of | cases, this will be the document against which the operations of | |||
the Certification Authority are audited. See <xref target="RFC3647"/>.</t> | the CA are audited. See <xref target="RFC3647" format="default"/>.</dd> | |||
<dt>Domain Name:</dt><dd>The label assigned to a node in the Domain Na | ||||
<t>Domain Name: The label assigned to a node in the Domain Name System.</t> | me System.</dd> | |||
<dt>Domain Name System (DNS):</dt><dd>The Internet naming system speci | ||||
<t>Domain Name System (DNS): The Internet naming system specified in | fied in | |||
<xref target="RFC1034"/> and <xref target="RFC1035"/>.</t> | <xref target="RFC1034" format="default"/> and <xref target="RFC1035" format=" | |||
default"/>.</dd> | ||||
<t>DNS Security (DNSSEC): Extensions to the DNS that provide | <dt>DNS Security (DNSSEC):</dt><dd>Extensions to the DNS that provide | |||
authentication services as specified in <xref target="RFC4033"/>, <xref targe | authentication services as specified in <xref target="RFC4033" format="defaul | |||
t="RFC4034"/>, | t"/>, <xref target="RFC4034" format="default"/>, | |||
<xref target="RFC4035"/>, <xref target="RFC5155"/>, and revisions.</t> | <xref target="RFC4035" format="default"/>, <xref target="RFC5155" format="def | |||
ault"/>, and | ||||
<t>Fully-Qualified Domain Name (FQDN): A Domain Name that includes the labels of | any revisions to these specifications.</dd> | |||
all | <dt>Fully Qualified Domain Name (FQDN):</dt><dd>A domain name that inc | |||
superior nodes in the Domain Name System.</t> | ludes the labels of all | |||
superior nodes in the DNS.</dd> | ||||
<t>Issuer: An entity that issues certificates. See <xref target="RFC5280"/>.</ | <dt>Issuer:</dt><dd>An entity that issues certificates. See <xref tar | |||
t> | get="RFC5280" format="default"/>.</dd> | |||
<dt>Property:</dt><dd>The tag-value portion of a CAA Resource Record.< | ||||
<t>Property: The tag-value portion of a CAA Resource Record.</t> | /dd> | |||
<dt>Property Tag:</dt><dd>The tag portion of a CAA Resource Record.</d | ||||
<t>Property Tag: The tag portion of a CAA Resource Record.</t> | d> | |||
<dt>Property Value:</dt><dd>The value portion of a CAA Resource Record | ||||
<t>Property Value: The value portion of a CAA Resource Record.</t> | .</dd> | |||
<dt>Relevant Resource Record Set (Relevant RRset):</dt><dd>A set of CA | ||||
<t>Resource Record (RR): A particular entry in the DNS including the | A | |||
Resource Records resulting | ||||
from applying the algorithm in <xref target="relevant-resource-record-set" | ||||
format="default"/> to a specific FQDN or Wildcard Domain Name.</dd> | ||||
<dt>Relying Party:</dt><dd>A party that makes use of an application wh | ||||
ose | ||||
operation depends on the use of a certificate for making a security | ||||
decision. See <xref target="RFC5280" format="default"/>.</dd> | ||||
<dt>Resource Record (RR):</dt><dd>A particular entry in the DNS, inclu | ||||
ding the | ||||
owner name, class, type, time to live, and data, as defined in | owner name, class, type, time to live, and data, as defined in | |||
<xref target="RFC1034"/> and <xref target="RFC2181"/>.</t> | <xref target="RFC1034" format="default"/> and <xref target="RFC2181" format=" | |||
default"/>.</dd> | ||||
<t>Resource Record Set (RRSet): A set of Resource Records of a | <dt>Resource Record Set (RRset):</dt><dd>A set of RRs of a | |||
particular owner name, class, and type. The time to live on all | particular owner name, class, and type. The time to live on all | |||
RRs within an RRSet is always the same, but the data may be | RRs within an RRset is always the same, but the data may be | |||
different among RRs in the RRSet.</t> | different among RRs in the RRset.</dd> | |||
<dt>Wildcard Domain Name:</dt><dd>A domain name consisting of a single | ||||
<t>Relevant Resource Record Set (Relevant RRSet): A set of CAA Resource Records | asterisk | |||
resulting | character followed by a single "full stop" character ("*.") followed | |||
from applying the algorithm in Section 3 to a specific Fully-Qualified Domain | by an FQDN.</dd> | |||
Name or | </dl> | |||
Wildcard Domain Name.</t> | </section> | |||
</section> | ||||
<t>Relying Party: A party that makes use of an application whose | <section anchor="relevant-resource-record-set" numbered="true" toc="default" | |||
operation depends on use of a certificate for making a security | > | |||
decision. See <xref target="RFC5280"/>.</t> | <name>Relevant Resource Record Set</name> | |||
<t>Before issuing a certificate, a compliant CA <bcp14>MUST</bcp14> check | ||||
<t>Wildcard Domain Name: A Domain Name consisting of a single asterisk | for | |||
character followed by a single full stop character (“*.”) followed | publication of a Relevant RRset. If such an RRset | |||
by a Fully-Qualified Domain Name.</t> | exists, a CA <bcp14>MUST NOT</bcp14> issue a certificate unless the CA | |||
determines that either (1) the certificate request is consistent with | ||||
</section> | the applicable CAA RRset or (2) an exception specified | |||
</section> | in the relevant CP or CPS applies. If the Relevant RRset for an FQDN | |||
<section anchor="relevant-resource-record-set" title="Relevant Resource Record S | ||||
et"> | ||||
<t>Before issuing a certificate, a compliant CA MUST check for | ||||
publication of a Relevant RRSet. If such an RRSet | ||||
exists, a CA MUST NOT issue a certificate unless the CA | ||||
determines that either (1) the certificate request is consistent with | ||||
the applicable CAA Resource Record set or (2) an exception specified | ||||
in the relevant Certificate Policy or Certification Practices | ||||
Statement applies. If the Relevant RRSet for a Fully-Qualified Domain Name | ||||
or Wildcard Domain Name contains no Property Tags that restrict issuance | or Wildcard Domain Name contains no Property Tags that restrict issuance | |||
(for instance, if it contains only iodef Property Tags, or only Property | (for instance, if it contains only iodef Property Tags or only Property | |||
Tags unrecognized by the CA), CAA does not restrict issuance.</t> | Tags unrecognized by the CA), CAA does not restrict issuance.</t> | |||
<t>A certificate request <bcp14>MAY</bcp14> specify more than one FQDN and | ||||
<bcp14>MAY</bcp14> | ||||
specify Wildcard Domain Names. Issuers <bcp14>MUST</bcp14> verify authorization | ||||
for all | ||||
the FQDNs and Wildcard Domain Names specified in the request.</t> | ||||
<t>The search for a CAA RRset climbs the DNS name tree from the | ||||
specified label up to, but not including, the DNS root "." | ||||
until a CAA RRset is found.</t> | ||||
<t>Given a request for a specific FQDN X or a request for a Wildcard Domai | ||||
n | ||||
Name *.X, the Relevant RRset RelevantCAASet(X) is determined as follows (in pseu | ||||
docode):</t> | ||||
<ul empty="true" spacing="normal"> | ||||
<li>Let CAA(X) be the RRset returned by performing a CAA record query fo | ||||
r the | ||||
FQDN X, according to the lookup algorithm | ||||
specified in <xref target="RFC1034" sectionFormat="of" section="4.3.2" /> (in pa | ||||
rticular, chasing | ||||
aliases). Let Parent(X) be the FQDN produced by | ||||
removing the leftmost label of X.</li> | ||||
</ul> | ||||
<sourcecode name="pseudocode-1" type="pseudocode"><![CDATA[ | ||||
RelevantCAASet(domain): | ||||
while domain is not ".": | ||||
if CAA(domain) is not Empty: | ||||
return CAA(domain) | ||||
domain = Parent(domain) | ||||
return Empty ]]></sourcecode> | ||||
<t>A certificate request MAY specify more than one Fully-Qualified Domain Name a | <ul empty="true" spacing="normal"> | |||
nd MAY | <li>For example, processing CAA for the FQDN "X.Y.Z" where there are | |||
specify Wildcard Domain Names. Issuers MUST verify authorization for all | ||||
the Fully-Qualified Domain Names and Wildcard Domain Names specified in the requ | ||||
est.</t> | ||||
<t>The search for a CAA RRSet climbs the DNS name tree from the | ||||
specified label up to but not including the DNS root ‘.’ | ||||
until a CAA RRSet is found.</t> | ||||
<t>Given a request for a specific Fully-Qualified Domain Name X, or a request fo | ||||
r a Wildcard Domain | ||||
Name *.X, the Relevant Resource Record Set RelevantCAASet(X) is determined as fo | ||||
llows (in pseudocode):</t> | ||||
<t>Let CAA(X) be the RRSet returned by performing a CAA record query for the | ||||
Fully-Qualified Domain Name X, according to the lookup algorithm specified in RF | ||||
C 1034 section | ||||
4.3.2 (in particular chasing aliases). Let Parent(X) be the Fully-Qualified Doma | ||||
in Name | ||||
produced by removing the leftmost label of X.</t> | ||||
<figure><artwork><![CDATA[ | ||||
RelevantCAASet(domain): | ||||
while domain is not ".": | ||||
if CAA(domain) is not Empty: | ||||
return CAA(domain) | ||||
domain = Parent(domain) | ||||
return Empty | ||||
]]></artwork></figure> | ||||
<t>For example, processing CAA for the Fully-Qualified Domain Name “X.Y.Z” where | ||||
there are | ||||
no CAA records at any level in the tree RelevantCAASet would have the | no CAA records at any level in the tree RelevantCAASet would have the | |||
following steps:</t> | following steps:</li> | |||
</ul> | ||||
<figure><artwork><![CDATA[ | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
CAA("X.Y.Z.") = Empty; domain = Parent("X.Y.Z.") = "Y.Z." | CAA("X.Y.Z.") = Empty; domain = Parent("X.Y.Z.") = "Y.Z." | |||
CAA("Y.Z.") = Empty; domain = Parent("Y.Z.") = "Z." | CAA("Y.Z.") = Empty; domain = Parent("Y.Z.") = "Z." | |||
CAA("Z.") = Empty; domain = Parent("Z.") = "." | CAA("Z.") = Empty; domain = Parent("Z.") = "." | |||
return Empty | return Empty ]]></artwork> | |||
]]></artwork></figure> | <ul empty="true" spacing="normal"> | |||
<li>Processing CAA for the FQDN "A.B.C" where there is a CAA record | ||||
<t>Processing CAA for the Fully-Qualified Domain Name “A.B.C” where there is a C | "issue example.com" at "B.C" would terminate early upon finding the CAA | |||
AA record | record:</li> | |||
“issue example.com” at “B.C” would terminate early upon finding the CAA | </ul> | |||
record:</t> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
CAA("A.B.C.") = Empty; domain = Parent("A.B.C.") = "B.C." | ||||
<figure><artwork><![CDATA[ | CAA("B.C.") = "issue example.com" | |||
CAA("A.B.C.") = Empty; domain = Parent("A.B.C.") = "B.C." | return "issue example.com" ]]></artwork> | |||
CAA("B.C.") = "issue example.com" | </section> | |||
return "issue example.com" | <section anchor="mechanism" numbered="true" toc="default"> | |||
]]></artwork></figure> | <name>Mechanism</name> | |||
<section anchor="syntax" numbered="true" toc="default"> | ||||
</section> | <name>Syntax</name> | |||
<section anchor="mechanism" title="Mechanism"> | <t>A CAA RR contains a single Property consisting of a tag‑value | |||
pair. An FQDN <bcp14>MAY</bcp14> have multiple CAA RRs associated with it, and a | ||||
<section anchor="syntax" title="Syntax"> | given Property Tag <bcp14>MAY</bcp14> be specified more than once across those R | |||
Rs.</t> | ||||
<t>A CAA Resource Record contains a single Property consisting of a tag-value | <t>The RDATA section for a CAA RR contains one Property. A Property | |||
pair. A Fully-Qualified Domain Name MAY have multiple CAA RRs associated with it | ||||
and a | ||||
given Property Tag MAY be specified more than once across those RRs.</t> | ||||
<t>The RDATA section for a CAA Resource Record contains one Property. A Property | ||||
consists of the following:</t> | consists of the following:</t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
<figure><artwork><![CDATA[ | ||||
+0-1-2-3-4-5-6-7-|0-1-2-3-4-5-6-7-| | +0-1-2-3-4-5-6-7-|0-1-2-3-4-5-6-7-| | |||
| Flags | Tag Length = n | | | Flags | Tag Length = n | | |||
+----------------|----------------+...+---------------+ | +----------------|----------------+...+---------------+ | |||
| Tag char 0 | Tag char 1 |...| Tag char n-1 | | | Tag char 0 | Tag char 1 |...| Tag char n-1 | | |||
+----------------|----------------+...+---------------+ | +----------------|----------------+...+---------------+ | |||
+----------------|----------------+.....+----------------+ | +----------------|----------------+.....+----------------+ | |||
| Value byte 0 | Value byte 1 |.....| Value byte m-1 | | | Value byte 0 | Value byte 1 |.....| Value byte m-1 | | |||
+----------------|----------------+.....+----------------+ | +----------------|----------------+.....+----------------+ | |||
]]></artwork></figure> | ]]></artwork> | |||
<t>Where n is the length specified in the Tag Length field and m is the | ||||
<t>Where n is the length specified in the Tag length field and m is the | number of remaining octets in the Value field. They are related by | |||
remaining octets in the Value field. They are related by (m = d - n - 2) | (m = d - n - 2) | |||
where d is the length of the RDATA section.</t> | where d is the length of the RDATA section.</t> | |||
<t>The fields are defined as follows:</t> | ||||
<dl newline="false" spacing="normal"> | ||||
<dt>Flags:</dt> | ||||
<dd> | ||||
<t>One octet containing the following field: | ||||
<t>The fields are defined as follows:</t> | </t> | |||
<dl newline="false" spacing="normal"> | ||||
<t>Flags: One octet containing the following field:</t> | <dt>Bit 0, Issuer Critical Flag:</dt> | |||
<dd>If the value is set to "1", the | ||||
<t>Bit 0, Issuer Critical Flag: If the value is set to ‘1’, the | Property is critical. A CA <bcp14>MUST NOT</bcp14> issue | |||
Property is critical. A Certification Authority MUST NOT issue | certificates for any FQDN if the Relevant RRset for | |||
certificates for any FQDN the Relevant RRSet for | that FQDN contains a CAA critical | |||
that FQDN contains a CAA critical | Property for an unknown or unsupported Property Tag. | |||
Property for an unknown or unsupported Property Tag.</t> | ||||
<t>Note that according to the conventions set out in <xref target="RFC1035"/>, b | </dd> | |||
it 0 | </dl> | |||
</dd> | ||||
</dl> | ||||
<t>Note that according to the conventions set out in <xref target="RFC10 | ||||
35" format="default"/>, bit 0 | ||||
is the Most Significant Bit and bit 7 is the Least Significant | is the Most Significant Bit and bit 7 is the Least Significant | |||
Bit. Thus, the Flags value 1 means that bit 7 is set while a value | Bit. Thus, according to those conventions, the Flags value 1 means that bit 7 is | |||
of 128 means that bit 0 is set according to this convention.</t> | set, while a value of 128 means that bit 0 is set.</t> | |||
<t>All other bit positions are reserved for future use.</t> | ||||
<t>All other bit positions are reserved for future use.</t> | <t>To ensure compatibility with future extensions to CAA, DNS records | |||
compliant with this version of the CAA specification <bcp14>MUST</bcp14> clear | ||||
<t>To ensure compatibility with future extensions to CAA, DNS records | (set to "0") all reserved flag bits. | |||
compliant with this version of the CAA specification MUST clear | ||||
(set to “0”) all reserved flags bits. Applications that interpret | ||||
CAA records MUST ignore the value of all reserved flag bits.</t> | ||||
<t>Tag Length: A single octet containing an unsigned integer specifying | ||||
the tag length in octets. The tag length MUST be at least 1.</t> | ||||
<t>Tag: The Property identifier, a sequence of US-ASCII characters.</t> | ||||
<t>Tags MAY contain US-ASCII characters ‘a’ through ‘z’, ‘A’ | Applications that interpret | |||
through ‘Z’, and the numbers 0 through 9. Tags MUST NOT | CAA records <bcp14>MUST</bcp14> ignore the value of all reserved flag bits.</t> | |||
<dl newline="false" spacing="normal"> | ||||
<dt>Tag Length:</dt> | ||||
<dd>A single octet containing an unsigned integer specifying | ||||
the tag length in octets. The tag length <bcp14>MUST</bcp14> be at least 1.</dd | ||||
> | ||||
<dt>Tag:</dt> | ||||
<dd>The Property identifier -- a sequence of ASCII characters.</dd> | ||||
</dl> | ||||
<t>Tags <bcp14>MAY</bcp14> contain ASCII characters "a" through "z", "A" | ||||
through "Z", and the numbers 0 through 9. Tags <bcp14>MUST NOT</bcp14> | ||||
contain any other characters. Matching of tags is case | contain any other characters. Matching of tags is case | |||
insensitive.</t> | insensitive.</t> | |||
<t>Tags submitted for registration by IANA <bcp14>MUST NOT</bcp14> conta | ||||
<t>Tags submitted for registration by IANA MUST NOT contain any | in any | |||
characters other than the (lowercase) US-ASCII characters ‘a’ | characters other than the (lowercase) ASCII characters "a" | |||
through ‘z’ and the numbers 0 through 9.</t> | through "z" and the numbers 0 through 9.</t> | |||
<dl newline="false" spacing="normal"> | ||||
<t>Value: A sequence of octets representing the Property Value. | <dt>Value:</dt> | |||
Property Values are encoded as binary values and MAY employ | <dd>A sequence of octets representing the Property Value. | |||
sub-formats.</t> | Property Values are encoded as binary values and <bcp14>MAY</bcp14> employ | |||
sub‑formats.</dd> | ||||
<t>The length of the value field is specified implicitly as the | </dl> | |||
<t>The length of the Value field is specified implicitly as the | ||||
remaining length of the enclosing RDATA section.</t> | remaining length of the enclosing RDATA section.</t> | |||
<section anchor="canonical-presentation-format" numbered="true" toc="def | ||||
<section anchor="canonical-presentation-format" title="Canonical Presentation Fo | ault"> | |||
rmat"> | <name>Canonical Presentation Format</name> | |||
<t>The canonical presentation format of the CAA record is:</t> | ||||
<t>The canonical presentation format of the CAA record is:</t> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
CAA <flags> <tag> <value> | ||||
<t>CAA <flags> <tag> <value></t> | ]]></artwork> | |||
<t>Where:</t> | ||||
<t>Where:</t> | <dl newline="false" spacing="normal"> | |||
<dt>Flags:</dt> | ||||
<t>Flags: Is an unsigned integer between 0 and 255.</t> | <dd>An unsigned integer between 0 and 255.</dd> | |||
<dt>Tag:</dt> | ||||
<t>Tag: Is a non-zero-length sequence of US-ASCII letters and numbers in lower | <dd>A non-zero-length sequence of ASCII letters and numbers in lower | |||
case.</t> | case.</dd> | |||
<dt>Value:</dt> | ||||
<t>Value: The value field, expressed as a contiguous set of characters | <dd>The Value field, expressed as either (1) a contiguous set o | |||
without interior spaces, or as a quoted string. See the | f characters | |||
<character-string> format specified in <xref target="RFC1035"></xref>, | without interior spaces or (2) a quoted string. See the | |||
Section 5.1, | <character-string> format specified in <xref target="RFC1035" sectionFo | |||
but note that the value field contains no length byte and is not | rmat="comma" section="5.1"/>, | |||
limited to 255 characters.</t> | but note that the Value field contains no length byte and is not | |||
limited to 255 characters.</dd> | ||||
</section> | </dl> | |||
</section> | </section> | |||
<section anchor="caa-issue-property" title="CAA issue Property"> | </section> | |||
<section anchor="caa-issue-property" numbered="true" toc="default"> | ||||
<t>If the issue Property Tag is present in the Relevant RRSet for a | <name>CAA issue Property</name> | |||
Fully-Qualified Domain Name, it is a request that Issuers</t> | <t>If the issue Property Tag is present in the Relevant RRset for an | |||
FQDN, it is a request that Issuers:</t> | ||||
<t><list style="numbers"> | <ol spacing="normal" type="1"> | |||
<t>Perform CAA issue restriction processing for the FQDN, and</t> | <li>Perform CAA issue restriction processing for the FQDN, and</li> | |||
<t>Grant authorization to issue certificates containing that FQDN | <li>Grant authorization to issue certificates containing that FQDN | |||
to the holder of the issuer-domain-name | to the holder of the issuer-domain-name | |||
or a party acting under the explicit authority of the holder of the | or a party acting under the explicit authority of the holder of the | |||
issuer-domain-name.</t> | issuer-domain-name.</li> | |||
</list></t> | </ol> | |||
<t>The CAA issue Property Value has the following sub‑syntax (spec | ||||
<t>The CAA issue Property Value has the following sub-syntax (specified | ified | |||
in ABNF as per <xref target="RFC5234"/>).</t> | in ABNF as per <xref target="RFC5234" format="default"/>).</t> | |||
<sourcecode name="caa-issue-prop-value-abnf" type="abnf"><![CDATA[ | ||||
<figure><artwork><![CDATA[ | issue-value = *WSP [issuer-domain-name *WSP] | |||
issue-value = *WSP [issuer-domain-name *WSP] [";" *WSP [parameters *WSP]] | [";" *WSP [parameters *WSP]] | |||
issuer-domain-name = label *("." label) | issuer-domain-name = label *("." label) | |||
label = (ALPHA / DIGIT) *( *("-") (ALPHA / DIGIT)) | label = (ALPHA / DIGIT) *( *("-") (ALPHA / DIGIT)) | |||
parameters = (parameter *WSP ";" *WSP parameters) / parameter | parameters = (parameter *WSP ";" *WSP parameters) / parameter | |||
parameter = tag *WSP "=" *WSP value | parameter = tag *WSP "=" *WSP value | |||
tag = (ALPHA / DIGIT) *( *("-") (ALPHA / DIGIT)) | tag = (ALPHA / DIGIT) *( *("-") (ALPHA / DIGIT)) | |||
value = *(%x21-3A / %x3C-7E) | value = *(%x21-3A / %x3C-7E) | |||
]]></artwork></figure> | ]]></sourcecode> | |||
<t>For consistency with other aspects of DNS administration, FQDN | ||||
<t>For consistency with other aspects of DNS administration, FQDN | ||||
values are specified in letter-digit-hyphen Label (LDH-Label) form.</t> | values are specified in letter-digit-hyphen Label (LDH-Label) form.</t> | |||
<t>The following CAA RRset requests that no | ||||
<t>The following CAA record set requests that no | certificates be issued for the FQDN "certs.example.com" by any | |||
certificates be issued for the FQDN ‘certs.example.com’ by any | ||||
Issuer other than ca1.example.net or ca2.example.org.</t> | Issuer other than ca1.example.net or ca2.example.org.</t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
<figure><artwork><![CDATA[ | ||||
certs.example.com CAA 0 issue "ca1.example.net" | certs.example.com CAA 0 issue "ca1.example.net" | |||
certs.example.com CAA 0 issue "ca2.example.org" | certs.example.com CAA 0 issue "ca2.example.org" | |||
]]></artwork></figure> | ]]></artwork> | |||
<t>Because the presence of an issue Property Tag in the Relevant RRset | ||||
<t>Because the presence of an issue Property Tag in the Relevant RRSet | ||||
for an FQDN restricts issuance, FQDN owners can use an issue | for an FQDN restricts issuance, FQDN owners can use an issue | |||
Property Tag with no issuer-domain-name to request no issuance.</t> | Property Tag with no issuer-domain-name to request no issuance.</t> | |||
<t>For example, the following RRset requests that no | ||||
<t>For example, the following RRSet requests that no | certificates be issued for the FQDN "nocerts.example.com" by any | |||
certificates be issued for the FQDN ‘nocerts.example.com’ by any | ||||
Issuer.</t> | Issuer.</t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
<figure><artwork><![CDATA[ | ||||
nocerts.example.com CAA 0 issue ";" | nocerts.example.com CAA 0 issue ";" | |||
]]></artwork></figure> | ]]></artwork> | |||
<t>An issue Property Tag where the issue-value does not match the ABNF | ||||
<t>An issue Property Tag where the issue-value does not match the ABNF | grammar <bcp14>MUST</bcp14> be treated the same as one specifying an empty issue | |||
grammar MUST be treated the same as one specifying an empty issuer-domain-name. | r‑domain-name. For | |||
For | example, the following malformed CAA RRset forbids issuance:</t> | |||
example, the following malformed CAA RRSet forbids issuance:</t> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
<figure><artwork><![CDATA[ | ||||
malformed.example.com CAA 0 issue "%%%%%" | malformed.example.com CAA 0 issue "%%%%%" | |||
]]></artwork></figure> | ]]></artwork> | |||
<t>CAA authorizations are additive; thus, the result of specifying both | ||||
<t>CAA authorizations are additive; thus, the result of specifying both | ||||
an empty issuer-domain-name and a non-empty issuer-domain-name is the | an empty issuer-domain-name and a non-empty issuer-domain-name is the | |||
same as specifying just the non-empty issuer-domain-name.</t> | same as specifying just the non-empty issuer-domain-name.</t> | |||
<t>An Issuer <bcp14>MAY</bcp14> choose to specify parameters that furthe | ||||
<t>An Issuer MAY choose to specify parameters that further | r | |||
constrain the issue of certificates by that Issuer, for example, | constrain the issue of certificates by that Issuer -- for example, | |||
specifying that certificates are to be subject to specific validation | specifying that certificates are to be subject to specific validation | |||
polices, billed to certain accounts, or issued under specific trust | policies, billed to certain accounts, or issued under specific trust | |||
anchors.</t> | anchors.</t> | |||
<t>For example, if ca1.example.net has requested that its customer | ||||
<t>For example, if ca1.example.net has requested its customer | account.example.com specify their account number "230123" in each | |||
accountable.example.com to specify their account number “230123” in each | of the customer's CAA records using the (CA-defined) "account" parameter, | |||
of the customer’s CAA records using the (CA-defined) “account” parameter, | ||||
it would look like this:</t> | it would look like this:</t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
<figure><artwork><![CDATA[ | account.example.com CAA 0 issue "ca1.example.net; account=230123" | |||
accountable.example.com CAA 0 issue "ca1.example.net; account=230123" | ]]></artwork> | |||
]]></artwork></figure> | <t>The semantics of parameters to the issue Property Tag are determined | |||
by | ||||
<t>The semantics of parameters to the issue Property Tag are determined by | ||||
the Issuer alone.</t> | the Issuer alone.</t> | |||
</section> | ||||
</section> | <section anchor="caa-issuewild-property" numbered="true" toc="default"> | |||
<section anchor="caa-issuewild-property" title="CAA issuewild Property"> | <name>CAA issuewild Property</name> | |||
<t>The issuewild Property Tag has the same syntax and semantics as the i | ||||
<t>The issuewild Property Tag has the same syntax and semantics as the issue | ssue | |||
Property Tag except that it only grants authorization to | Property Tag except that it only grants authorization to | |||
issue certificates that specify a Wildcard Domain Name and issuewild | issue certificates that specify a Wildcard Domain Name and each issuewild | |||
properties take precedence over issue properties when specified. | Property takes precedence over each issue Property when specified. | |||
Specifically:</t> | Specifically:</t> | |||
<t>Each issuewild Property <bcp14>MUST</bcp14> be ignored when processin | ||||
<t>issuewild properties MUST be ignored when processing a request for | g a request for | |||
a Fully-Qualified Domain Name that is not a Wildcard Domain Name.</t> | an FQDN that is not a Wildcard Domain Name.</t> | |||
<t>If at least one issuewild Property is specified in the Relevant | ||||
<t>If at least one issuewild Property is specified in the Relevant | RRset for a Wildcard Domain Name, each issue Property <bcp14>MUST</bcp14> | |||
RRSet for a Wildcard Domain Name, all issue properties MUST | ||||
be ignored when processing a request for that Wildcard Domain Name.</t> | be ignored when processing a request for that Wildcard Domain Name.</t> | |||
<t>For example, the following RRset requests that <em>only</em> | ||||
<t>For example, the following RRSet requests that <spanx style="emph">only</span | ca1.example.net issue certificates for "wild.example.com" or | |||
x> | "sub.wild.example.com", and that <em>only</em> ca2.example.org issue certificate | |||
ca1.example.net issue certificates for “wild.example.com” or | s for | |||
“sub.wild.example.com”, and that <spanx style="emph">only</spanx> ca2.example.or | "*.wild.example.com" or "*.sub.wild.example.com". Note that this presumes | |||
g issue certificates for | that there are no CAA RRs for sub.wild.example.com.</t> | |||
“*.wild.example.com” or “*.sub.wild.example.com). Note that this presumes | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
there are no CAA RRs for sub.wild.example.com.</t> | ||||
<figure><artwork><![CDATA[ | ||||
wild.example.com CAA 0 issue "ca1.example.net" | wild.example.com CAA 0 issue "ca1.example.net" | |||
wild.example.com CAA 0 issuewild "ca2.example.org" | wild.example.com CAA 0 issuewild "ca2.example.org" | |||
]]></artwork></figure> | ]]></artwork> | |||
<t>The following RRset requests that <em>only</em> ca1.example.net issue | ||||
<t>The following RRSet requests that <spanx style="emph">only</spanx> ca1.exampl | certificates for "wild2.example.com", "*.wild2.example.com", or | |||
e.net issue | "*.sub.wild2.example.com".</t> | |||
certificates for “wild2.example.com”, “*.wild2.example.com” or | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
“*.sub.wild2.example.com”.</t> | ||||
<figure><artwork><![CDATA[ | ||||
wild2.example.com CAA 0 issue "ca1.example.net" | wild2.example.com CAA 0 issue "ca1.example.net" | |||
]]></artwork></figure> | ]]></artwork> | |||
<t>The following RRset requests that <em>only</em> ca2.example.org issue | ||||
<t>The following RRSet requests that <spanx style="emph">only</spanx> ca2.exampl | certificates for "*.wild3.example.com" or "*.sub.wild3.example.com". It | |||
e.org issue | does not permit any Issuer to issue for "wild3.example.com" or | |||
certificates for “*.wild3.example.com” or “*.sub.wild3.example.com”. It | "sub.wild3.example.com".</t> | |||
does not permit any Issuer to issue for “wild3.example.com” or | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
“sub.wild3.example.com”.</t> | ||||
<figure><artwork><![CDATA[ | ||||
wild3.example.com CAA 0 issuewild "ca2.example.org" | wild3.example.com CAA 0 issuewild "ca2.example.org" | |||
wild3.example.com CAA 0 issue ";" | wild3.example.com CAA 0 issue ";" | |||
]]></artwork></figure> | ]]></artwork> | |||
<t>The following RRset requests that <em>only</em> ca2.example.org issue | ||||
<t>The following RRSet requests that <spanx style="emph">only</spanx> ca2.exampl | certificates for "*.wild3.example.com" or "*.sub.wild3.example.com". It | |||
e.org issue | permits any Issuer to issue for "wild3.example.com" or "sub.wild3.example.com".< | |||
certificates for “*.wild3.example.com” or “*.sub.wild3.example.com”. It | /t> | |||
permits any Issuer to issue for “wild3.example.com” or “sub.wild3.example.com”.< | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
/t> | ||||
<figure><artwork><![CDATA[ | ||||
wild3.example.com CAA 0 issuewild "ca2.example.org" | wild3.example.com CAA 0 issuewild "ca2.example.org" | |||
]]></artwork></figure> | ]]></artwork> | |||
</section> | ||||
</section> | <section anchor="caa-iodef-property" numbered="true" toc="default"> | |||
<section anchor="caa-iodef-property" title="CAA iodef Property"> | <name>CAA iodef Property</name> | |||
<t>The iodef Property specifies a means of reporting certificate issue | ||||
<t>The iodef Property specifies a means of reporting certificate issue | ||||
requests or cases of certificate issue for domains for which the Property | requests or cases of certificate issue for domains for which the Property | |||
appears in the Relevant RRSet, when those requests or issuances | appears in the Relevant RRset, when those requests or issuances | |||
violate the security policy of the Issuer or the FQDN holder.</t> | violate the security policy of the Issuer or the FQDN holder.</t> | |||
<t>The Incident Object Description Exchange Format (IODEF) <xref target= | ||||
<t>The Incident Object Description Exchange Format (IODEF) <xref target="RFC7970 | "RFC7970" format="default"/> is | |||
"/> is | ||||
used to present the incident report in machine-readable form.</t> | used to present the incident report in machine-readable form.</t> | |||
<t>The iodef Property Tag takes a URL as its Property Value. The URL sc | ||||
<t>The iodef Property Tag takes a URL as its Property Value. The URL scheme typ | heme type | |||
e | ||||
determines the method used for reporting:</t> | determines the method used for reporting:</t> | |||
<dl newline="false" spacing="normal"> | ||||
<t>mailto: The IODEF incident report is reported as a MIME email | <dt>mailto:</dt> | |||
<dd>The IODEF report is reported as a MIME email | ||||
attachment to an SMTP email that is submitted to the mail address | attachment to an SMTP email that is submitted to the mail address | |||
specified. The mail message sent SHOULD contain a brief text | specified. The mail message sent <bcp14>SHOULD</bcp14> contain a brief text | |||
message to alert the recipient to the nature of the attachment.</t> | message to alert the recipient to the nature of the attachment.</dd> | |||
<dt>http or https:</dt> | ||||
<t>http or https: The IODEF report is submitted as a Web service | <dd>The IODEF report is submitted as a web service | |||
request to the HTTP address specified using the protocol specified | request to the HTTP address specified using the protocol specified | |||
in <xref target="RFC6546"/>.</t> | in <xref target="RFC6546" format="default"/>.</dd> | |||
</dl> | ||||
<t>These are the only supported URL schemes.</t> | <t>These are the only supported URL schemes.</t> | |||
<t>The following RRset specifies | ||||
<t>The following RRSet specifies | ||||
that reports may be made by means of email with the IODEF data as an | that reports may be made by means of email with the IODEF data as an | |||
attachment, a Web service <xref target="RFC6546"></xref>, or both:</t> | attachment, a web service <xref target="RFC6546" format="default"/>, or both:</t | |||
> | ||||
<figure><artwork><![CDATA[ | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
report.example.com CAA 0 issue "ca1.example.net" | report.example.com CAA 0 issue "ca1.example.net" | |||
report.example.com CAA 0 iodef "mailto:security@example.com" | report.example.com CAA 0 iodef "mailto:security@example.com" | |||
report.example.com CAA 0 iodef "http://iodef.example.com/" | report.example.com CAA 0 iodef "https://iodef.example.com/" | |||
]]></artwork></figure> | ]]></artwork> | |||
</section> | ||||
</section> | <section anchor="critical-flag" numbered="true" toc="default"> | |||
<section anchor="critical-flag" title="Critical Flag"> | <name>Critical Flag</name> | |||
<t>The critical flag is intended to permit future versions of CAA to | ||||
<t>The critical flag is intended to permit future versions of CAA to | introduce new semantics that <bcp14>MUST</bcp14> be understood for correct | |||
introduce new semantics that MUST be understood for correct | ||||
processing of the record, preventing conforming CAs that do not | processing of the record, preventing conforming CAs that do not | |||
recognize the new semantics from issuing certificates for the | recognize the new semantics from issuing certificates for the | |||
indicated FQDNs.</t> | indicated FQDNs.</t> | |||
<t>In the following example, the Property with a Property Tag of | ||||
<t>In the following example, the Property with a Property Tag of | "tbs" is flagged as critical. | |||
‘tbs’ is flagged as critical. | ||||
Neither the ca1.example.net CA nor any other Issuer is authorized to | Neither the ca1.example.net CA nor any other Issuer is authorized to | |||
issue for “new.example.com” (or any other domains for which this is | issue for "new.example.com" (or any other domains for which this is | |||
the Relevant RRSet) unless the Issuer has implemented the | the Relevant RRset) unless the Issuer has implemented the | |||
processing rules for the ‘tbs’ Property Tag.</t> | processing rules for the "tbs" Property Tag.</t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
<figure><artwork><![CDATA[ | ||||
new.example.com CAA 0 issue "ca1.example.net" | new.example.com CAA 0 issue "ca1.example.net" | |||
new.example.com CAA 128 tbs "Unknown" | new.example.com CAA 128 tbs "Unknown" | |||
]]></artwork></figure> | ]]></artwork> | |||
</section> | ||||
</section> | </section> | |||
</section> | <section anchor="security-considerations" numbered="true" toc="default"> | |||
<section anchor="security-considerations" title="Security Considerations"> | <name>Security Considerations</name> | |||
<t>CAA records assert a security policy that the holder of an FQDN | ||||
<t>CAA records assert a security policy that the holder of an FDQN | ||||
wishes to be observed by Issuers. The effectiveness of | wishes to be observed by Issuers. The effectiveness of | |||
CAA records as an access control mechanism is thus dependent on | CAA records as an access control mechanism is thus dependent on | |||
observance of CAA constraints by Issuers.</t> | observance of CAA constraints by Issuers.</t> | |||
<t>The objective of the CAA record properties described in this document | ||||
<t>The objective of the CAA record properties described in this document | ||||
is to reduce the risk of certificate mis-issue rather than avoid | is to reduce the risk of certificate mis-issue rather than avoid | |||
reliance on a certificate that has been mis-issued. DANE <xref target="RFC6698" /> | reliance on a certificate that has been mis-issued. DANE <xref target="RFC6698" format="default"/> | |||
describes a mechanism for avoiding reliance on mis-issued | describes a mechanism for avoiding reliance on mis-issued | |||
certificates.</t> | certificates.</t> | |||
<section anchor="use-of-dns-security" numbered="true" toc="default"> | ||||
<section anchor="use-of-dns-security" title="Use of DNS Security"> | <name>Use of DNS Security</name> | |||
<t>The use of DNSSEC to authenticate CAA RRs is strongly <bcp14>RECOMMEN | ||||
<t>Use of DNSSEC to authenticate CAA RRs is strongly RECOMMENDED but not | DED</bcp14> but not | |||
required. An Issuer MUST NOT issue certificates if doing so would | required. An Issuer <bcp14>MUST NOT</bcp14> issue certificates if doing so woul | |||
conflict with the Relevant RRSet, irrespective of | d | |||
conflict with the Relevant RRset, irrespective of | ||||
whether the corresponding DNS records are signed.</t> | whether the corresponding DNS records are signed.</t> | |||
<t>DNSSEC provides a proof of non-existence for both DNS FQDNs and | ||||
<t>DNSSEC provides a proof of non-existence for both DNS Fully-Qualified Domain | RRsets within FQDNs. DNSSEC verification thus enables an Issuer to | |||
Names and | determine whether the answer to a CAA record query (1) is empty because | |||
RRSets within FQDNs. DNSSEC verification thus enables an Issuer to | the RRset is empty or (2) is non-empty but the response has been | |||
determine if the answer to a CAA record query is empty because the RRSet | ||||
is empty or if it is non-empty but the response has been | ||||
suppressed.</t> | suppressed.</t> | |||
<t>The use of DNSSEC allows an Issuer to acquire and archive a proof tha | ||||
<t>Use of DNSSEC allows an Issuer to acquire and archive a proof that | t | |||
they were authorized to issue certificates for the FQDN. | they were authorized to issue certificates for the FQDN. | |||
Verification of such archives may be an audit requirement to verify | Verification of such archives may be an audit requirement to verify | |||
CAA record processing compliance. Publication of such archives may | CAA record-processing compliance. Publication of such archives may | |||
be a transparency requirement to verify CAA record processing | be a transparency requirement to verify CAA record-processing | |||
compliance.</t> | compliance.</t> | |||
</section> | ||||
</section> | <section anchor="non-compliance-by-certification-authority" numbered="true | |||
<section anchor="non-compliance-by-certification-authority" title="Non-Complianc | " toc="default"> | |||
e by Certification Authority"> | <name>Non-compliance by Certification Authority</name> | |||
<t>CAA records offer CAs a cost-effective means of mitigating the risk | ||||
<t>CAA records offer CAs a cost-effective means of mitigating the risk | ||||
of certificate mis-issue: the cost of implementing CAA checks is very | of certificate mis-issue: the cost of implementing CAA checks is very | |||
small and the potential costs of a mis-issue event include the | small, and the potential costs of a mis-issue event include the | |||
removal of an embedded trust anchor.</t> | removal of an embedded trust anchor.</t> | |||
</section> | ||||
</section> | <section anchor="mis-issue-by-authorized-certification-authority" numbered | |||
<section anchor="mis-issue-by-authorized-certification-authority" title="Mis-Iss | ="true" toc="default"> | |||
ue by Authorized Certification Authority"> | <name>Mis-Issue by Authorized Certification Authority</name> | |||
<t>The use of CAA records does not prevent mis-issue by an authorized | ||||
<t>Use of CAA records does not prevent mis-issue by an authorized | CA, i.e., a CA that is authorized to issue | |||
Certification Authority, i.e., a CA that is authorized to issue | ||||
certificates for the FQDN in question by CAA records.</t> | certificates for the FQDN in question by CAA records.</t> | |||
<t>FQDN holders <bcp14>SHOULD</bcp14> verify that the CAs they authorize | ||||
<t>FQDN holders SHOULD verify that the CAs they authorize to | to | |||
issue certificates for their FQDNs employ appropriate controls to | issue certificates for their FQDNs employ appropriate controls to | |||
ensure that certificates are issued only to authorized parties within | ensure that certificates are issued only to authorized parties within | |||
their organization.</t> | their organization.</t> | |||
<t>Such controls are most appropriately determined by the FQDN | ||||
<t>Such controls are most appropriately determined by the FQDN | holder and the authorized CA(s) directly and are thus outside the scope of | |||
holder and the authorized CA(s) directly and are thus out of scope of | ||||
this document.</t> | this document.</t> | |||
</section> | ||||
</section> | <section anchor="suppression-or-spoofing-of-caa-records" numbered="true" t | |||
<section anchor="suppression-or-spoofing-of-caa-records" title="Suppression or S | oc="default"> | |||
poofing of CAA Records"> | <name>Suppression or Spoofing of CAA Records</name> | |||
<t>Suppression of a CAA record or insertion of a bogus CAA record | ||||
<t>Suppression of the CAA record or insertion of a bogus CAA record | ||||
could enable an attacker to obtain a certificate from an Issuer that | could enable an attacker to obtain a certificate from an Issuer that | |||
was not authorized to issue for an affected FQDN.</t> | was not authorized to issue for an affected FQDN.</t> | |||
<t>Where possible, Issuers <bcp14>SHOULD</bcp14> perform DNSSEC validati | ||||
<t>Where possible, Issuers SHOULD perform DNSSEC validation to detect | on to detect | |||
missing or modified CAA record sets.</t> | missing or modified CAA RRsets.</t> | |||
<t>In cases where DNSSEC is not deployed for a corresponding FQDN, an | ||||
<t>In cases where DNSSEC is not deployed for a corresponding FQDN, an | Issuer <bcp14>SHOULD</bcp14> attempt to mitigate this risk by employing appropri | |||
Issuer SHOULD attempt to mitigate this risk by employing appropriate | ate | |||
DNS security controls. For example, all portions of the DNS lookup | DNS security controls. For example, all portions of the DNS lookup | |||
process SHOULD be performed against the authoritative name server. | process <bcp14>SHOULD</bcp14> be performed against the authoritative nameserver. | |||
Data cached by third parties MUST NOT be relied on as the sole source of DNS CAA | Data cached by third parties <bcp14>MUST NOT</bcp14> be relied on as the sole so | |||
information but MAY be used to | urce of DNS CAA | |||
support additional anti-spoofing or anti-suppression controls.</t> | information but <bcp14>MAY</bcp14> be used to | |||
support additional anti‑spoofing or anti-suppression controls.</t> | ||||
</section> | </section> | |||
<section anchor="denial-of-service" title="Denial of Service"> | <section anchor="denial-of-service" numbered="true" toc="default"> | |||
<name>Denial of Service</name> | ||||
<t>Introduction of a malformed or malicious CAA RR could in theory | <t>Introduction of a malformed or malicious CAA RR could, in theory, | |||
enable a Denial-of-Service (DoS) attack. This could happen by modification of | enable a Denial-of-Service (DoS) attack. This could happen by modification of | |||
authoritative DNS records or by spoofing inflight DNS responses.</t> | authoritative DNS records or by spoofing inflight DNS responses.</t> | |||
<t>This specific threat is not considered to add significantly to the | ||||
<t>This specific threat is not considered to add significantly to the | ||||
risk of running an insecure DNS service.</t> | risk of running an insecure DNS service.</t> | |||
<t>An attacker could, in principle, perform a DoS attack against an | ||||
<t>An attacker could, in principle, perform a DoS attack against an | ||||
Issuer by requesting a certificate with a maliciously long DNS name. | Issuer by requesting a certificate with a maliciously long DNS name. | |||
In practice, the DNS protocol imposes a maximum name length and CAA | In practice, the DNS protocol imposes a maximum name length, and CAA | |||
processing does not exacerbate the existing need to mitigate DoS | processing does not exacerbate the existing need to mitigate DoS | |||
attacks to any meaningful degree.</t> | attacks to any meaningful degree.</t> | |||
</section> | ||||
</section> | <section anchor="abuse-of-the-critical-flag" numbered="true" toc="default" | |||
<section anchor="abuse-of-the-critical-flag" title="Abuse of the Critical Flag"> | > | |||
<name>Abuse of the Critical Flag</name> | ||||
<t>A Certification Authority could make use of the critical flag to | <t>A CA could make use of the critical flag to | |||
trick customers into publishing records that prevent competing | trick customers into publishing records that prevent competing CAs | |||
Certification Authorities from issuing certificates even though the | from issuing certificates even though the | |||
customer intends to authorize multiple providers. This could happen if the | customer intends to authorize multiple providers. This could happen if the | |||
customers were setting CAA records based on data provided by the CA rather than | customers were setting CAA records based on data provided by the CA rather than | |||
generating those records themselves.</t> | generating those records themselves.</t> | |||
<t>In practice, such an attack would be of minimal effect, since any | ||||
<t>In practice, such an attack would be of minimal effect since any | ||||
competent competitor that found itself unable to issue certificates | competent competitor that found itself unable to issue certificates | |||
due to lack of support for a Property marked critical should | due to lack of support for a Property marked critical should | |||
investigate the cause and report the reason to the customer. The | investigate the cause and report the reason to the customer. The | |||
customer will thus discover that they had been deceived.</t> | customer will thus discover that they had been deceived.</t> | |||
</section> | ||||
</section> | </section> | |||
</section> | <section anchor="deployment-considerations" numbered="true" toc="default"> | |||
<section anchor="deployment-considerations" title="Deployment Considerations"> | <name>Deployment Considerations</name> | |||
<t>A CA implementing CAA may find that they receive errors looking up CAA | ||||
<t>A CA implementing CAA may find that they receive errors looking up CAA record | records. | |||
s. | ||||
The following are some common causes of such errors, so that CAs may provide | The following are some common causes of such errors, so that CAs may provide | |||
guidance to their subscribers on fixing the underlying problems.</t> | guidance to their subscribers on fixing the underlying problems.</t> | |||
<section anchor="blocked-queries-or-responses" numbered="true" toc="defaul | ||||
<section anchor="blocked-queries-or-responses" title="Blocked Queries or Respons | t"> | |||
es"> | <name>Blocked Queries or Responses</name> | |||
<t>Some middleboxes -- in particular, anti-DDoS appliances -- may be con | ||||
<t>Some middleboxes, in particular anti-DDoS appliances, may be configured to | figured to | |||
drop DNS packets of unknown types, or may start dropping such packets when | drop DNS packets of unknown types, or they may start dropping such packets when | |||
they consider themselves under attack. This generally manifests as a timed-out | they consider themselves under attack. This generally manifests as a timed-out | |||
DNS query, or a SERVFAIL at a local recursive resolver.</t> | DNS query or as a SERVFAIL at a local recursive resolver.</t> | |||
</section> | ||||
</section> | <section anchor="rejected-queries-and-malformed-responses" numbered="true" | |||
<section anchor="rejected-queries-and-malformed-responses" title="Rejected Queri | toc="default"> | |||
es and Malformed Responses"> | <name>Rejected Queries and Malformed Responses</name> | |||
<t>Some authoritative nameservers respond with REJECTED or NOTIMP when q | ||||
<t>Some authoritative nameservers respond with REJECTED or NOTIMP when queried | ueried | |||
for a Resource Record type they do not recognize. At least one authoritative | for an RR type they do not recognize. At least one authoritative | |||
resolver produces a malformed response (with the QR bit set to 0) when queried | resolver produces a malformed response (with the QR (Query/Response) bit set to | |||
for unknown Resource Record types. Per RFC 1034, the correct response for | "0") when queried | |||
unknown Resource Record types is NOERROR.</t> | for unknown RR types. Per <xref target="RFC1034"/>, the correct response RCODE | |||
for | ||||
</section> | unknown RR types is 0 ("No error condition"). | |||
<section anchor="delegation-to-private-nameservers" title="Delegation to Private | ||||
Nameservers"> | ||||
<t>Some FQDN administrators make the contents of a subdomain unresolvable on the | </t> | |||
</section> | ||||
<section anchor="delegation-to-private-nameservers" numbered="true" toc="d | ||||
efault"> | ||||
<name>Delegation to Private Nameservers</name> | ||||
<t>Some FQDN administrators make the contents of a subdomain unresolvabl | ||||
e on the | ||||
public Internet by delegating that subdomain to a nameserver whose IP address is | public Internet by delegating that subdomain to a nameserver whose IP address is | |||
private. A CA processing CAA records for such subdomains will receive | private. A CA processing CAA records for such subdomains will receive | |||
SERVFAIL from its recursive resolver. The CA MAY interpret that as preventing | SERVFAIL from its recursive resolver. The CA <bcp14>MAY</bcp14> interpret that a s preventing | |||
issuance. FQDN administrators wishing to issue certificates for private | issuance. FQDN administrators wishing to issue certificates for private | |||
FQDNs SHOULD use split-horizon DNS with a publicly available nameserver, so | FQDNs <bcp14>SHOULD</bcp14> use split-horizon DNS with a publicly available name server, so | |||
that CAs can receive a valid, empty CAA response for those FQDNs.</t> | that CAs can receive a valid, empty CAA response for those FQDNs.</t> | |||
</section> | ||||
</section> | <section anchor="bogus-dnssec-responses" numbered="true" toc="default"> | |||
<section anchor="bogus-dnssec-responses" title="Bogus DNSSEC Responses"> | <name>Bogus DNSSEC Responses</name> | |||
<t>Queries for CAA RRs are different from most DNS RR types, becaus | ||||
<t>Queries for CAA Resource Records are different from most DNS RR types, becaus | e | |||
e | ||||
a signed, empty response to a query for CAA RRs is meaningfully different | a signed, empty response to a query for CAA RRs is meaningfully different | |||
from a bogus response. A signed, empty response indicates that there is | from a bogus response. A signed, empty response indicates that there is | |||
definitely no CAA policy set at a given label. A bogus response may mean | definitely no CAA policy set at a given label. A bogus response may mean | |||
either a misconfigured zone, or an attacker tampering with records. DNSSEC | either a misconfigured zone or an attacker tampering with records. DNSSEC | |||
implementations may have bugs with signatures on empty responses that go | implementations may have bugs with signatures on empty responses that go | |||
unnoticed, because for more common Resource Record types like A and AAAA, | unnoticed, because for more common RR types like A and AAAA, | |||
the difference to an end user between empty and bogus is irrelevant; they | the difference to an end user between empty and bogus is irrelevant; they | |||
both mean a site is unavailable.</t> | both mean a site is unavailable.</t> | |||
<t>In particular, at least two authoritative resolvers that implement li | ||||
<t>In particular, at least two authoritative resolvers that implement live signi | ve signing | |||
ng | had bugs when returning empty RRsets for DNSSEC-signed zones, in | |||
had bugs when returning empty Resource Record sets for DNSSEC-signed zones, in | combination with mixed-case queries. Mixed‑case queries, also known as DNS | |||
combination with mixed-case queries. Mixed-case queries, also known as DNS 0x20, | 0x20, | |||
are used by some recursive resolvers to increase resilience against DNS | are used by some recursive resolvers to increase resilience against DNS | |||
poisoning attacks. DNSSEC-signing authoritative resolvers are expected to copy | poisoning attacks. DNSSEC-signing authoritative resolvers are expected to copy | |||
the same capitalization from the query into their ANSWER section, but sign the | the same capitalization from the query into their ANSWER section but also to sig n the | |||
response as if they had used all lowercase. In particular, PowerDNS versions | response as if they had used all lowercase. In particular, PowerDNS versions | |||
prior to 4.0.4 had this bug.</t> | prior to 4.0.4 had this bug.</t> | |||
</section> | ||||
</section> | </section> | |||
</section> | <section anchor="differences-versus-rfc6844" numbered="true" toc="default"> | |||
<section anchor="differences-versus-rfc6844" title="Differences versus RFC6844"> | <name>Differences from RFC 6844</name> | |||
<t>This document obsoletes <xref target="RFC6844"/>. The most important ch | ||||
<t>This document obsoletes RFC6844. The most important change is to | ange is to | |||
the Certification Authority Processing section. RFC6844 specified an | the "Certification Authority Processing" section (now called | |||
"Relevant Resource Record Set" (<xref target="relevant-resource-record-set"/>), | ||||
as noted below). <xref target="RFC6844"/> specified an | ||||
algorithm that performed DNS tree-climbing not only on the FQDN | algorithm that performed DNS tree-climbing not only on the FQDN | |||
being processed, but also on all CNAMEs and DNAMEs encountered along | being processed but also on all CNAMEs and DNAMEs encountered along | |||
the way. This made the processing algorithm very inefficient when used | the way. This made the processing algorithm very inefficient when used | |||
on FQDNs that utilize many CNAMEs, and would have made it difficult | on FQDNs that utilize many CNAMEs and would have made it difficult | |||
for hosting providers to set CAA policies on their own FQDNs without | for hosting providers to set CAA policies on their own FQDNs without | |||
setting potentially unwanted CAA policies on their customers’ FQDNs. | setting potentially unwanted CAA policies on their customers' FQDNs. | |||
This document specifies a simplified processing algorithm that only | This document specifies a simplified processing algorithm that only | |||
performs tree climbing on the FQDN being processed, and leaves | performs tree-climbing on the FQDN being processed, and it leaves the | |||
processing of CNAMEs and DNAMEs up to the CA’s recursive resolver.</t> | processing of CNAMEs and DNAMEs up to the CA's recursive resolver.</t> | |||
<t>This document also includes a "Deployment Considerations" section | ||||
<t>This document also includes a “Deployment Considerations” section | (<xref target="deployment-considerations"/>) detailing experience gained with pr | |||
detailing experience gained with practical deployment of CAA enforcement | actical deployment of CAA enforcement | |||
among CAs in the WebPKI.</t> | among CAs in the WebPKI.</t> | |||
<t>This document clarifies the ABNF grammar for the issue and issuewild ta | ||||
<t>This document clarifies the ABNF grammar for the issue and issuewild tags | gs | |||
and resolves some inconsistencies with the document text. In particular, | and resolves some inconsistencies with the document text. In particular, | |||
it specifies that parameters are separated with semicolons. It also allows | it specifies that parameters are separated with semicolons. It also allows | |||
hyphens in Property Tags.</t> | hyphens in Property Tags.</t> | |||
<t>This document also clarifies the processing of a CAA RRset that is not | ||||
<t>This document also clarifies processing of a CAA RRset that is not empty, | empty | |||
but contains no issue or issuewild tags.</t> | but that does not contain any issue or issuewild tags.</t> | |||
<t>This document removes the section titled "The CAA RR Type," merging it | ||||
<t>This document removes the section titled “The CAA RR Type,” merging it with | with | |||
“Mechanism” because the definitions were mainly duplicates. It moves the “Use of | "Mechanism" (<xref target="mechanism"/>) because the definitions were mainly dup | |||
DNS Security” section into Security Considerations. It renames “Certification | licates. It moves the "Use of | |||
Authority Processing” to “Relevant Resource Record Set,” and emphasizes the use | DNS Security" section into Security Considerations (<xref target="security-consi | |||
derations"/>). It renames "Certification | ||||
Authority Processing" to "Relevant Resource Record Set" (<xref target="relevant- | ||||
resource-record-set"/>) and emphasizes the use | ||||
of that term to more clearly define which domains are affected by a given RRset. </t> | of that term to more clearly define which domains are affected by a given RRset. </t> | |||
</section> | ||||
</section> | <section anchor="iana-considerations" numbered="true" toc="default"> | |||
<section anchor="iana-considerations" title="IANA Considerations"> | <name>IANA Considerations</name> | |||
<t>IANA has added this document as | ||||
<t>IANA is requested to add [[[ RFC Editor: Please replace with this RFC ]]] as | a reference for the "Certification Authority Restriction Flags" and | |||
a reference for the Certification Authority Restriction Flags and | "Certification Authority Restriction Properties" registries and updated | |||
Certification Authority Restriction Properties registries, and update references | references to <xref target="RFC6844" format="default"/> within those registries | |||
to <xref target="RFC6844"/> within those registries to refer to [[[ RFC Editor: | to refer instead to | |||
Please | this document. IANA has also updated the CAA TYPE in the | |||
replace with this RFC ]]]. IANA is also | "Resource Record (RR) TYPEs" subregistry of the "Domain Name System (DNS) Parame | |||
requested to update the CAA TYPE in the DNS Parameters registry with a reference | ters" registry with a reference | |||
to [[[ RFC Editor: Please replace with this RFC ]]].</t> | to this document.</t> | |||
</section> | ||||
</section> | </middle> | |||
<section anchor="acknowledgements" title="Acknowledgements"> | <back> | |||
<references> | ||||
<t>The authors would like to thank the following people who contributed | <name>References</name> | |||
<references> | ||||
<name>Normative References</name> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6698. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5280. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.1034. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.1035. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4033. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4034. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4035. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5155. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2181. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5234. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7970. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6546. | ||||
xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6844. | ||||
xml"/> | ||||
</references> | ||||
<references> | ||||
<name>Informative References</name> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3647. | ||||
xml"/> | ||||
</references> | ||||
</references> | ||||
<section anchor="acknowledgements" numbered="false" toc="default"> | ||||
<name>Acknowledgements</name> | ||||
<t>The authors would like to thank the following people who contributed | ||||
to the design and documentation of this work item: Corey Bonnell, Chris Evans, | to the design and documentation of this work item: Corey Bonnell, Chris Evans, | |||
Stephen Farrell, Jeff Hodges, Paul Hoffman, Tim Hollebeek, Stephen Kent, Adam | Stephen Farrell, Jeff Hodges, Paul Hoffman, Tim Hollebeek, Stephen Kent, Adam | |||
Langley, Ben Laurie, James Manger, Chris Palmer, Scott Schmit, Sean Turner, and | Langley, Ben Laurie, James Manger, Chris Palmer, Scott Schmit, Sean Turner, and | |||
Ben Wilson.</t> | Ben Wilson.</t> | |||
</section> | ||||
</section> | ||||
</middle> | ||||
<back> | ||||
<references title='Normative References'> | ||||
<reference anchor="RFC6698" target='https://www.rfc-editor.org/info/rfc6698'> | ||||
<front> | ||||
<title>The DNS-Based Authentication of Named Entities (DANE) Transport Layer Sec | ||||
urity (TLS) Protocol: TLSA</title> | ||||
<author initials='P.' surname='Hoffman' fullname='P. Hoffman'><organization /></ | ||||
author> | ||||
<author initials='J.' surname='Schlyter' fullname='J. Schlyter'><organization /> | ||||
</author> | ||||
<date year='2012' month='August' /> | ||||
<abstract><t>Encrypted communication on the Internet often uses Transport Layer | ||||
Security (TLS), which depends on third parties to certify the keys used. This d | ||||
ocument improves on that situation by enabling the administrators of domain name | ||||
s to specify the keys used in that domain's TLS servers. This requires matching | ||||
improvements in TLS client software, but no change in TLS server software. [ST | ||||
ANDARDS-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='6698'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC6698'/> | ||||
</reference> | ||||
<reference anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'> | ||||
<front> | ||||
<title>Key words for use in RFCs to Indicate Requirement Levels</title> | ||||
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></ | ||||
author> | ||||
<date year='1997' month='March' /> | ||||
<abstract><t>In many standards track documents several words are used to signify | ||||
the requirements in the specification. These words are often capitalized. This | ||||
document defines these words as they should be interpreted in IETF documents. | ||||
This document specifies an Internet Best Current Practices for the Internet Comm | ||||
unity, and requests discussion and suggestions for improvements.</t></abstract> | ||||
</front> | ||||
<seriesInfo name='BCP' value='14'/> | ||||
<seriesInfo name='RFC' value='2119'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC2119'/> | ||||
</reference> | ||||
<reference anchor="RFC8174" target='https://www.rfc-editor.org/info/rfc8174'> | ||||
<front> | ||||
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title> | ||||
<author initials='B.' surname='Leiba' fullname='B. Leiba'><organization /></auth | ||||
or> | ||||
<date year='2017' month='May' /> | ||||
<abstract><t>RFC 2119 specifies common key words that may be used in protocol s | ||||
pecifications. This document aims to reduce the ambiguity by clarifying that on | ||||
ly UPPERCASE usage of the key words have the defined special meanings.</t></abs | ||||
tract> | ||||
</front> | ||||
<seriesInfo name='BCP' value='14'/> | ||||
<seriesInfo name='RFC' value='8174'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC8174'/> | ||||
</reference> | ||||
<reference anchor="RFC5280" target='https://www.rfc-editor.org/info/rfc5280'> | ||||
<front> | ||||
<title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revo | ||||
cation List (CRL) Profile</title> | ||||
<author initials='D.' surname='Cooper' fullname='D. Cooper'><organization /></au | ||||
thor> | ||||
<author initials='S.' surname='Santesson' fullname='S. Santesson'><organization | ||||
/></author> | ||||
<author initials='S.' surname='Farrell' fullname='S. Farrell'><organization /></ | ||||
author> | ||||
<author initials='S.' surname='Boeyen' fullname='S. Boeyen'><organization /></au | ||||
thor> | ||||
<author initials='R.' surname='Housley' fullname='R. Housley'><organization /></ | ||||
author> | ||||
<author initials='W.' surname='Polk' fullname='W. Polk'><organization /></author | ||||
> | ||||
<date year='2008' month='May' /> | ||||
<abstract><t>This memo profiles the X.509 v3 certificate and X.509 v2 certificat | ||||
e revocation list (CRL) for use in the Internet. An overview of this approach a | ||||
nd model is provided as an introduction. The X.509 v3 certificate format is des | ||||
cribed in detail, with additional information regarding the format and semantics | ||||
of Internet name forms. Standard certificate extensions are described and two | ||||
Internet-specific extensions are defined. A set of required certificate extensi | ||||
ons is specified. The X.509 v2 CRL format is described in detail along with sta | ||||
ndard and Internet-specific extensions. An algorithm for X.509 certification pa | ||||
th validation is described. An ASN.1 module and examples are provided in the ap | ||||
pendices. [STANDARDS-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='5280'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC5280'/> | ||||
</reference> | ||||
<reference anchor="RFC1034" target='https://www.rfc-editor.org/info/rfc1034'> | ||||
<front> | ||||
<title>Domain names - concepts and facilities</title> | ||||
<author initials='P.V.' surname='Mockapetris' fullname='P.V. Mockapetris'><organ | ||||
ization /></author> | ||||
<date year='1987' month='November' /> | ||||
<abstract><t>This RFC is the revised basic definition of The Domain Name System. | ||||
It obsoletes RFC-882. This memo describes the domain style names and their us | ||||
ed for host address look up and electronic mail forwarding. It discusses the cl | ||||
ients and servers in the domain name system and the protocol used between them.< | ||||
/t></abstract> | ||||
</front> | ||||
<seriesInfo name='STD' value='13'/> | ||||
<seriesInfo name='RFC' value='1034'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC1034'/> | ||||
</reference> | ||||
<reference anchor="RFC1035" target='https://www.rfc-editor.org/info/rfc1035'> | ||||
<front> | ||||
<title>Domain names - implementation and specification</title> | ||||
<author initials='P.V.' surname='Mockapetris' fullname='P.V. Mockapetris'><organ | ||||
ization /></author> | ||||
<date year='1987' month='November' /> | ||||
<abstract><t>This RFC is the revised specification of the protocol and format us | ||||
ed in the implementation of the Domain Name System. It obsoletes RFC-883. This | ||||
memo documents the details of the domain name client - server communication.</t> | ||||
</abstract> | ||||
</front> | ||||
<seriesInfo name='STD' value='13'/> | ||||
<seriesInfo name='RFC' value='1035'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC1035'/> | ||||
</reference> | ||||
<reference anchor="RFC4033" target='https://www.rfc-editor.org/info/rfc4033'> | ||||
<front> | ||||
<title>DNS Security Introduction and Requirements</title> | ||||
<author initials='R.' surname='Arends' fullname='R. Arends'><organization /></au | ||||
thor> | ||||
<author initials='R.' surname='Austein' fullname='R. Austein'><organization /></ | ||||
author> | ||||
<author initials='M.' surname='Larson' fullname='M. Larson'><organization /></au | ||||
thor> | ||||
<author initials='D.' surname='Massey' fullname='D. Massey'><organization /></au | ||||
thor> | ||||
<author initials='S.' surname='Rose' fullname='S. Rose'><organization /></author | ||||
> | ||||
<date year='2005' month='March' /> | ||||
<abstract><t>The Domain Name System Security Extensions (DNSSEC) add data origin | ||||
authentication and data integrity to the Domain Name System. This document int | ||||
roduces these extensions and describes their capabilities and limitations. This | ||||
document also discusses the services that the DNS security extensions do and do | ||||
not provide. Last, this document describes the interrelationships between the | ||||
documents that collectively describe DNSSEC. [STANDARDS-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='4033'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC4033'/> | ||||
</reference> | ||||
<reference anchor="RFC4034" target='https://www.rfc-editor.org/info/rfc4034'> | ||||
<front> | ||||
<title>Resource Records for the DNS Security Extensions</title> | ||||
<author initials='R.' surname='Arends' fullname='R. Arends'><organization /></au | ||||
thor> | ||||
<author initials='R.' surname='Austein' fullname='R. Austein'><organization /></ | ||||
author> | ||||
<author initials='M.' surname='Larson' fullname='M. Larson'><organization /></au | ||||
thor> | ||||
<author initials='D.' surname='Massey' fullname='D. Massey'><organization /></au | ||||
thor> | ||||
<author initials='S.' surname='Rose' fullname='S. Rose'><organization /></author | ||||
> | ||||
<date year='2005' month='March' /> | ||||
<abstract><t>This document is part of a family of documents that describe the DN | ||||
S Security Extensions (DNSSEC). The DNS Security Extensions are a collection of | ||||
resource records and protocol modifications that provide source authentication | ||||
for the DNS. This document defines the public key (DNSKEY), delegation signer ( | ||||
DS), resource record digital signature (RRSIG), and authenticated denial of exis | ||||
tence (NSEC) resource records. The purpose and format of each resource record i | ||||
s described in detail, and an example of each resource record is given. </t><t> | ||||
This document obsoletes RFC 2535 and incorporates changes from all updates to RF | ||||
C 2535. [STANDARDS-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='4034'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC4034'/> | ||||
</reference> | ||||
<reference anchor="RFC4035" target='https://www.rfc-editor.org/info/rfc4035'> | ||||
<front> | ||||
<title>Protocol Modifications for the DNS Security Extensions</title> | ||||
<author initials='R.' surname='Arends' fullname='R. Arends'><organization /></au | ||||
thor> | ||||
<author initials='R.' surname='Austein' fullname='R. Austein'><organization /></ | ||||
author> | ||||
<author initials='M.' surname='Larson' fullname='M. Larson'><organization /></au | ||||
thor> | ||||
<author initials='D.' surname='Massey' fullname='D. Massey'><organization /></au | ||||
thor> | ||||
<author initials='S.' surname='Rose' fullname='S. Rose'><organization /></author | ||||
> | ||||
<date year='2005' month='March' /> | ||||
<abstract><t>This document is part of a family of documents that describe the DN | ||||
S Security Extensions (DNSSEC). The DNS Security Extensions are a collection of | ||||
new resource records and protocol modifications that add data origin authentica | ||||
tion and data integrity to the DNS. This document describes the DNSSEC protocol | ||||
modifications. This document defines the concept of a signed zone, along with | ||||
the requirements for serving and resolving by using DNSSEC. These techniques al | ||||
low a security-aware resolver to authenticate both DNS resource records and auth | ||||
oritative DNS error indications. </t><t> This document obsoletes RFC 2535 and in | ||||
corporates changes from all updates to RFC 2535. [STANDARDS-TRACK]</t></abstrac | ||||
t> | ||||
</front> | ||||
<seriesInfo name='RFC' value='4035'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC4035'/> | ||||
</reference> | ||||
<reference anchor="RFC5155" target='https://www.rfc-editor.org/info/rfc5155'> | ||||
<front> | ||||
<title>DNS Security (DNSSEC) Hashed Authenticated Denial of Existence</title> | ||||
<author initials='B.' surname='Laurie' fullname='B. Laurie'><organization /></au | ||||
thor> | ||||
<author initials='G.' surname='Sisson' fullname='G. Sisson'><organization /></au | ||||
thor> | ||||
<author initials='R.' surname='Arends' fullname='R. Arends'><organization /></au | ||||
thor> | ||||
<author initials='D.' surname='Blacka' fullname='D. Blacka'><organization /></au | ||||
thor> | ||||
<date year='2008' month='March' /> | ||||
<abstract><t>The Domain Name System Security (DNSSEC) Extensions introduced the | ||||
NSEC resource record (RR) for authenticated denial of existence. This document i | ||||
ntroduces an alternative resource record, NSEC3, which similarly provides authen | ||||
ticated denial of existence. However, it also provides measures against zone en | ||||
umeration and permits gradual expansion of delegation-centric zones. [STANDARDS | ||||
-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='5155'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC5155'/> | ||||
</reference> | ||||
<reference anchor="RFC2181" target='https://www.rfc-editor.org/info/rfc2181'> | ||||
<front> | ||||
<title>Clarifications to the DNS Specification</title> | ||||
<author initials='R.' surname='Elz' fullname='R. Elz'><organization /></author> | ||||
<author initials='R.' surname='Bush' fullname='R. Bush'><organization /></author | ||||
> | ||||
<date year='1997' month='July' /> | ||||
<abstract><t>This document considers some areas that have been identified as pro | ||||
blems with the specification of the Domain Name System, and proposes remedies fo | ||||
r the defects identified. [STANDARDS-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='2181'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC2181'/> | ||||
</reference> | ||||
<reference anchor="RFC5234" target='https://www.rfc-editor.org/info/rfc5234'> | ||||
<front> | ||||
<title>Augmented BNF for Syntax Specifications: ABNF</title> | ||||
<author initials='D.' surname='Crocker' fullname='D. Crocker' role='editor'><org | ||||
anization /></author> | ||||
<author initials='P.' surname='Overell' fullname='P. Overell'><organization /></ | ||||
author> | ||||
<date year='2008' month='January' /> | ||||
<abstract><t>Internet technical specifications often need to define a formal syn | ||||
tax. Over the years, a modified version of Backus-Naur Form (BNF), called Augme | ||||
nted BNF (ABNF), has been popular among many Internet specifications. The curre | ||||
nt specification documents ABNF. It balances compactness and simplicity with rea | ||||
sonable representational power. The differences between standard BNF and ABNF i | ||||
nvolve naming rules, repetition, alternatives, order-independence, and value ran | ||||
ges. This specification also supplies additional rule definitions and encoding | ||||
for a core lexical analyzer of the type common to several Internet specification | ||||
s. [STANDARDS-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='STD' value='68'/> | ||||
<seriesInfo name='RFC' value='5234'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC5234'/> | ||||
</reference> | ||||
<reference anchor="RFC7970" target='https://www.rfc-editor.org/info/rfc7970'> | ||||
<front> | ||||
<title>The Incident Object Description Exchange Format Version 2</title> | ||||
<author initials='R.' surname='Danyliw' fullname='R. Danyliw'><organization /></ | ||||
author> | ||||
<date year='2016' month='November' /> | ||||
<abstract><t>The Incident Object Description Exchange Format (IODEF) defines a d | ||||
ata representation for security incident reports and indicators commonly exchang | ||||
ed by operational security teams for mitigation and watch and warning. This doc | ||||
ument describes an updated information model for the IODEF and provides an assoc | ||||
iated data model specified with the XML schema. This new information and data m | ||||
odel obsoletes RFCs 5070 and 6685.</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='7970'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC7970'/> | ||||
</reference> | ||||
<reference anchor="RFC6546" target='https://www.rfc-editor.org/info/rfc6546'> | ||||
<front> | ||||
<title>Transport of Real-time Inter-network Defense (RID) Messages over HTTP/TLS | ||||
</title> | ||||
<author initials='B.' surname='Trammell' fullname='B. Trammell'><organization /> | ||||
</author> | ||||
<date year='2012' month='April' /> | ||||
<abstract><t>The Incident Object Description Exchange Format (IODEF) defines a c | ||||
ommon XML format for document exchange, and Real-time Inter-network Defense (RID | ||||
) defines extensions to IODEF intended for the cooperative handling of security | ||||
incidents within consortia of network operators and enterprises. This document | ||||
specifies an application-layer protocol for RID based upon the passing of RID me | ||||
ssages over HTTP/TLS. [STANDARDS-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='6546'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC6546'/> | ||||
</reference> | ||||
<reference anchor="RFC6844" target='https://www.rfc-editor.org/info/rfc6844'> | ||||
<front> | ||||
<title>DNS Certification Authority Authorization (CAA) Resource Record</title> | ||||
<author initials='P.' surname='Hallam-Baker' fullname='P. Hallam-Baker'><organiz | ||||
ation /></author> | ||||
<author initials='R.' surname='Stradling' fullname='R. Stradling'><organization | ||||
/></author> | ||||
<date year='2013' month='January' /> | ||||
<abstract><t>The Certification Authority Authorization (CAA) DNS Resource Record | ||||
allows a DNS domain name holder to specify one or more Certification Authoritie | ||||
s (CAs) authorized to issue certificates for that domain. CAA Resource Records a | ||||
llow a public Certification Authority to implement additional controls to reduce | ||||
the risk of unintended certificate mis-issue. This document defines the syntax | ||||
of the CAA record and rules for processing CAA records by certificate issuers. | ||||
[STANDARDS-TRACK]</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='6844'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC6844'/> | ||||
</reference> | ||||
</references> | ||||
<references title='Informative References'> | ||||
<reference anchor="RFC3647" target='https://www.rfc-editor.org/info/rfc3647'> | ||||
<front> | ||||
<title>Internet X.509 Public Key Infrastructure Certificate Policy and Certifica | ||||
tion Practices Framework</title> | ||||
<author initials='S.' surname='Chokhani' fullname='S. Chokhani'><organization /> | ||||
</author> | ||||
<author initials='W.' surname='Ford' fullname='W. Ford'><organization /></author | ||||
> | ||||
<author initials='R.' surname='Sabett' fullname='R. Sabett'><organization /></au | ||||
thor> | ||||
<author initials='C.' surname='Merrill' fullname='C. Merrill'><organization /></ | ||||
author> | ||||
<author initials='S.' surname='Wu' fullname='S. Wu'><organization /></author> | ||||
<date year='2003' month='November' /> | ||||
<abstract><t>This document presents a framework to assist the writers of certifi | ||||
cate policies or certification practice statements for participants within publi | ||||
c key infrastructures, such as certification authorities, policy authorities, an | ||||
d communities of interest that wish to rely on certificates. In particular, the | ||||
framework provides a comprehensive list of topics that potentially (at the writ | ||||
er's discretion) need to be covered in a certificate policy or a certification p | ||||
ractice statement. This document supersedes RFC 2527.</t></abstract> | ||||
</front> | ||||
<seriesInfo name='RFC' value='3647'/> | ||||
<seriesInfo name='DOI' value='10.17487/RFC3647'/> | ||||
</reference> | ||||
</references> | ||||
</back> | </back> | |||
<!-- ##markdown-source: | ||||
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 | ||||
GyIM924AAA== | ||||
</rfc> | </rfc> | |||
End of changes. 107 change blocks. | ||||
1171 lines changed or deleted | 599 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |