<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-chuang-dkim2-dns-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.29.0 -->
  <front>
    <title abbrev="DKIM2 DNS">Domain Name Specification for DKIM2</title>
    <seriesInfo name="Internet-Draft" value="draft-chuang-dkim2-dns-01"/>
    <author initials="W." surname="Chuang" fullname="Wei Chuang">
      <organization>Google</organization>
      <address>
        <email>weihaw@google.com</email>
      </address>
    </author>
    <date year="2025" month="July" day="07"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 32?>

<t>The updated DomainKeys Identified Mail (DKIM2) permits an organization
that owns the signing domain to claim some responsibility for a
message by associating the domain with the message through a digital
signature. This is done by publishing to Domain Name Service (DNS) of
the domain a public key that is then associated to the domain and
where messages can be signed by the corresponding private key.
Assertion of responsibility is validated through a cryptographic
signature and by querying the Signer’s domain directly to retrieve the
appropriate public key.  This document describes DKIM2 DNS record format
and how to find the record.</t>
    </abstract>
  </front>
  <middle>
    <?line 45?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The updated DomainKeys Identified Mail (DKIM2) permits an organization
that owns the signing domain to claim some responsibility for a
message <xref target="RFC5322"/> by associating the domain with the message through a
digital signature.  This is done by publishing to Domain Name Service
(DNS) of the domain a public key that is then associated to the domain
<xref target="RFC1034"/> and where messages can be signed by the corresponding
private key.  Assertion of responsibility is validated through a
cryptographic signature and by querying the Signer’s domain directly
to retrieve the appropriate public key.</t>
      <t>This document describes DKIM2 DNS record format and how to find the
record.  The updated DomainKeys Identified Mail (DKIM2) adopts a
subset of the DKIM <xref target="RFC6376"/> DNS specification, but to prevent
ambiguity from using the using normative references to RFC6376, this
document copies over the RFC6376 and updates as necessary.  However,
this document still does normatively reference RFC6376 for the IANA
registrations. This document and the other DKIM2 documents do not
deprecate RFC6376 as it is expected that both DKIM and DKIM2 will
co-exist for at least some period of time.</t>
      <t>INFORMATIVE NOTE: another reason for separating the DKIM2 DNS
specification from DKIM, is that in the future, it is likely that
DKIM2 will diverge from the parent specification.</t>
      <t>There are other updated DomainKeys Identified Mail (DKIM2) documents
as well: the first document describes the motivation; the second
document describes the headers.</t>
    </section>
    <section anchor="terminology-and-definitions">
      <name>Terminology and Definitions</name>
      <t>This section defines terms used in the rest of the document.
DKIM2 is designed to operate within the Internet Mail service, as
defined in <xref target="RFC5598"/>. Basic email terminology is taken from that
specification.</t>
      <t>Syntax descriptions use Augmented BNF (ABNF) <xref target="RFC5234"/>.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
<xref target="RFC2119"/>. These words take their normative meanings only when they
are presented in ALL UPPERCASE.</t>
      <section anchor="signers">
        <name>Signers</name>
        <t>Elements in the mail system that sign messages on behalf of a domain
are referred to as Signers. These may be MUAs (Mail User Agents),
MSAs (Mail Submission Agents), MTAs (Mail Transfer Agents), or other
agents such as mailing list exploders. In general, any Signer will
be involved in the injection of a message into the message system in
some way. The key issue is that a message must be signed before it
leaves the administrative domain of the Signer.</t>
      </section>
      <section anchor="verifiers">
        <name>Verifiers</name>
        <t>Elements in the mail system that verify signatures are referred to as
Verifiers. These may be MTAs, Mail Delivery Agents (MDAs), or MUAs.
In most cases, it is expected that Verifiers will be close to an end
user (reader) of the message or some consuming agent such as a
mailing list exploder.</t>
      </section>
      <section anchor="identity">
        <name>Identity</name>
        <t>This specification DKIM2 calls for the Identity to correspond to an
organization while DKIM permitted person, or role as well. In the
context of email architecture specification <xref target="RFC5598"/>, this
corresponds to an ADministrative Management Domain (ADMD).  Some
examples include the the author’s organization, an ISP along the
handling path, an independent trust assessment service, and a mailing
list operator.</t>
      </section>
      <section anchor="identifier">
        <name>Identifier</name>
        <t>A label that refers to an identity.</t>
      </section>
      <section anchor="signing-domain-identifier-sdid">
        <name>Signing Domain Identifier (SDID)</name>
        <t>A single domain name that is the mandatory payload output of DKIM and
that refers to the identity claiming some responsibility</t>
      </section>
      <section anchor="identity-assessor">
        <name>Identity Assessor</name>
        <t>An element in the mail system that consumes DKIM2’s payload, which is
the responsible Signing Domain Identifier (SDID). The Identity
Assessor is dedicated to the assessment of the delivered identifier.
Other DKIM2 (and non-DKIM2) values can also be used by the Identity
Assessor (if they are available) to provide a more general message
evaluation filtering engine. However, this additional activity is
outside the scope of this specification.</t>
      </section>
      <section anchor="whitespace">
        <name>Whitespace</name>
        <t>There are three forms of whitespace:</t>
        <ul spacing="normal">
          <li>
            <t>WSP represents simple whitespace, i.e., a space or a tab character (formal definition in <xref target="RFC5234"/>)</t>
          </li>
          <li>
            <t>LWSP is linear whitespace, defined as WSP plus CRLF (formal definition in <xref target="RFC5234"/>).</t>
          </li>
          <li>
            <t>FWS is folding whitespace. It allows multiple lines separated by CRLF followed by at least one whitespace, to be joined.</t>
          </li>
        </ul>
        <t>The formal ABNF for these are (WSP and LWSP are given for information  only):</t>
        <artwork><![CDATA[
WSP = SP / HTAB
LWSP = *(WSP / CRLF WSP)
FWS = [*WSP CRLF] 1*WSP
]]></artwork>
        <t>The definition of FWS is identical to that in <xref target="RFC5322"/> except for the exclusion of obs-FWS.</t>
      </section>
      <section anchor="imported-abnf-tokens">
        <name>Imported ABNF Tokens</name>
        <t>The following tokens are imported from other RFCs as noted. Those RFCs should be connsidered definitive.</t>
        <t>The following tokens are imported from <xref target="RFC2045"/>:</t>
        <ul spacing="normal">
          <li>
            <t>"qp-section" (a single line of quoted-printable-encoded text)</t>
          </li>
        </ul>
        <t>Tokens not defined herein are imported from <xref target="RFC5234"/>. These are intuitive primitives such as SP, HTAB, WSP, ALPHA, DIGIT, CRLF, etc.</t>
      </section>
      <section anchor="common-abnf-tokens">
        <name>Common ABNF Tokens</name>
        <t>The following ABNF tokens are used elsewhere in this document:</t>
        <artwork><![CDATA[
 hyphenated-word = ALPHA [ *(ALPHA / DIGIT / "-") (ALPHA / DIGIT) ]
 ALPHADIGITPS = (ALPHA / DIGIT / "+" / "/")
 base64string = ALPHADIGITPS *([FWS] ALPHADIGITPS)
 [ [FWS] "=" [ [FWS] "=" ] ]
]]></artwork>
      </section>
    </section>
    <section anchor="protocol-elements">
      <name>Protocol Elements</name>
      <t>Protocol Elements are conceptual parts of the protocol that are not
specific to either Signers or Verifiers. The protocol descriptions
for Signers and Verifiers will be described in a separate document. NOTE: This
section must be read in the context of those elements.</t>
      <section anchor="selectors">
        <name>Selectors</name>
        <t>To support multiple concurrent public keys per signing domain, the
key namespace is subdivided using "selectors". For example,
selectors might indicate the names of office locations (e.g.,
"sanfrancisco", "coolumbeach", and "reykjavik"), the signing date
(e.g., "january2005", "february2005", etc.), or even an individual
user.</t>
        <t>Selectors are needed to support some important use cases. For
example:</t>
        <ul spacing="normal">
          <li>
            <t>Domains that want to delegate signing capability for a specific address for a given duration to a partner, such as an advertising provider or other outsourced function.</t>
          </li>
          <li>
            <t>Domains that want to allow frequent travelers to send messages locally without the need to connect with a particular MSA.</t>
          </li>
          <li>
            <t>"Affinity" domains (e.g., college alumni associations) that provide forwarding of incoming mail, but that do not operate a mail submission agent for outgoing mail.</t>
          </li>
        </ul>
        <t>Periods are allowed in selectors and are component separators. When
keys are retrieved from the DNS, periods in selectors define DNS label
boundaries in a manner similar to the conventional use in domain
names. Selector components might be used to combine dates with
locations, for example, "march2005.reykjavik". In a DNS
implementation, this can be used to allow delegation of a portion of
he selector namespace.</t>
        <artwork><![CDATA[
ABNF:
selector = sub-domain *( "." sub-domain )
]]></artwork>
        <t>The number of public keys and corresponding selectors for each domain
is determined by the domain owner. Many domain owners will be
satisfied with just one selector, whereas administratively
distributed organizations can choose to manage disparate selectors
and key pairs in different regions or on different email servers.</t>
        <t>Beyond administrative convenience, selectors make it possible to
seamlessly replace public keys on a routine basis. If a domain
wishes to change from using a public key associated with selector
"january2005" to a public key associated with selector
"february2005", it merely makes sure that both public keys are
advertised in the public-key repository concurrently for the
transition period during which email may be in transit prior to
verification. At the start of the transition period, the outbound
email servers are configured to sign with the "february2005" private
key. At the end of the transition period, the "january2005" public
key is removed from the public-key repository.</t>
        <t>INFORMATIVE NOTE: A key may also be revoked as described below.
The distinction between revoking and removing a key selector
record is subtle. When phasing out keys as described above, a
signing domain would probably simply remove the key record after
the transition period. However, a signing domain could elect to
revoke the key (but maintain the key record) for a further period.
There is no defined semantic difference between a revoked key and
a removed key.</t>
        <t>While some domains may wish to make selector values well-known,
others will want to take care not to allocate selector names in a way
that allows harvesting of data by outside parties.</t>
        <t>INFORMATIVE OPERATIONS NOTE: Reusing a selector with a new key
(for example, changing the key associated with a user’s name)
makes it impossible to tell the difference between a message that
didn’t verify because the key is no longer valid and a message
that is actually forged. For this reason, Signers are ill-advised
to reuse selectors for new keys. A better strategy is to assign
new keys to new selectors.</t>
      </section>
      <section anchor="tagvalue">
        <name>Tag=Value Lists</name>
        <t>DKIM2 uses a simple "tag=value" syntax in several contexts, including
in messages and domain signature records.
Values are a series of strings containing either plain text, "base64"
text (as defined in <xref target="RFC2045"/>, Section 6.8), or "qp-section" (ibid,
Section 6.7). The name of the tag will determine the encoding of
each value. Unencoded semicolon (";") characters MUST NOT occur in
the tag value, since that separates tag-specs.</t>
        <t>INFORMATIVE IMPLEMENTATION NOTE: Although the "plain text" defined
below (as "tag-value") only includes 7-bit characters, an
implementation that wished to anticipate future standards would be
advised not to preclude the use of UTF-8-encoded <xref target="RFC3629"/> text
in tag=value lists.</t>
        <t>Formally, the ABNF syntax rules are as follows:</t>
        <artwork><![CDATA[
tag-list = tag-spec *( ";" tag-spec ) [ ";" ]
tag-spec = [FWS] tag-name [FWS] "=" [FWS] tag-value [FWS]
tag-name = ALPHA *ALNUMPUNC
tag-value = [ tval *( 1*(WSP / FWS) tval ) ]
; Prohibits WSP and FWS at beginning and end
tval = 1*VALCHAR
VALCHAR = %x21-3A / %x3C-7E
; EXCLAMATION to TILDE except SEMICOLON
ALNUMPUNC = ALPHA / DIGIT / "_"
 
Note that WSP is allowed anywhere around tags. In particular, any
WSP after the "=" and any WSP before the terminating ";" is not part
of the value; however, WSP inside the value is signicant.
]]></artwork>
        <t>MUST be interpreted in a case-sensitive manner. Values MUST be
processed as case sensitive unless the specific tag description of
semantics specifies case insensitivity.</t>
        <t>Tags with duplicate names MUST NOT occur within a single tag-list; if
a tag name does occur more than once, the entire tag-list is invalid.</t>
        <t>Whitespace within a value MUST be retained unless explicitly excluded
by the specific tag description.</t>
        <t>Tag=value pairs that represent the default value MAY be included to
aid legibility.</t>
        <t>Unrecognized tags MUST be ignored.</t>
        <t>Tags that have an empty value are not the same as omitted tags. An
omitted tag is treated as having the default value; a tag with an
empty value explicitly designates the empty string as the value.</t>
      </section>
      <section anchor="algorithm">
        <name>Signing and Verification Algorithms</name>
        <t>DKIM2 supports multiple digital signature algorithms.  Two algorithms
are referenced by this specification at this time: rsa-sha256 and
ed25519-sha256. rsa-sha256 is specified in <xref target="RFC6376"/> while
ed25519-sha256 is specified in <xref target="RFC8463"/>.  Signers and Verifiers MUST
implement rsa-sha256 and SHOULD implement ed25519-sha256.  Futher they
MUST NOT validate the legacy DKIM <xref target="RFC6376"/> rsa-sha1 algorithm
i.e. ignore the public key and signatures associated with it.</t>
        <t>INFORMATIVE NOTE: rsa-sha256 enjoys virtually universal deployment
while ed25519-sha256 has very little deployment at the creation of
this draft.  It does provide better capability in reduced key size,
and faster signing and verification speed.  Support for at least two
algorithms provides algorithmic diversity that provides defense
against some unforeseen future algorithm breakage.  Thus
implementation of ed25519-sha256 will be changed to MUST upon the
completion of the DKIM2 specification.  rsa-sha1 algorithm is
deprecated for DKIM2 as sha1 is demonstrateably broken.</t>
      </section>
      <section anchor="key-management-and-representation">
        <name>Key Management and Representation</name>
        <t>Signature applications require some level of assurance that the
verification public key is associated with the claimed Signer. Many
applications achieve this by using public-key certificates issued by
a trusted third party. However, DKIM2 can achieve a sufficient level
of security, with significantly enhanced scalability, by simply
having the Verifier query the purported Signer’s DNS entry (or some
security-equivalent) in order to retrieve the public key.
DKIM2 keys can potentially be stored in multiple types of key servers
and in multiple formats. The storage and format of keys are
irrelevant to the remainder of the DKIM2 algorithm.
Parameters to the key lookup algorithm are the type of the lookup
(the "q=" tag), the domain of the Signer (the "d=" tag of the DKIM2
signature header field), and the selector (the "s=" tag).</t>
        <artwork><![CDATA[
public_key = dkim2_find_key(q_val, d_val, s_val)
]]></artwork>
        <t>This document defines a single binding, using DNS TXT RRs to
distribute the keys. Other bindings may be defined in the future.</t>
        <section anchor="textualrepresentation">
          <name>Textual Representation</name>
          <t>It is expected that many key servers will choose to present the keys
in an otherwise unstructured text format (for example, an XML form
would not be considered to be unstructured text for this purpose).
The following definition MUST be used for any DKIM2 key represented in
an otherwise unstructured textual form.</t>
          <t>The overall syntax is a tag-list as described in <xref target="tagvalue"/>. The
current valid tags are described below. Other tags MAY be present
and MUST be ignored by any implementation that does not understand
them.</t>
          <dl>
            <dt>v=</dt>
            <dd>
              <t>Version of the DKIM key record (plain-text; RECOMMENDED,
default is "DKIM1"). If specified, this tag MUST be set to
"DKIM1" (without the quotes). This tag MUST be the first tag in
the record. Records beginning with a "v=" tag with any other
value MUST be discarded. Note that Verifiers must do a string
comparison on this value; for example, "DKIM1" is not the same
as "DKIM1.0".</t>
            </dd>
          </dl>
          <t>INFORMATIVE NOTE: DKIM2 reuses a subset of the DKIM textual
representation including this version number for compatibility
with existing key deployment.  Consequently DKIM2 does not
increment the version number.</t>
          <artwork><![CDATA[
ABNF:
key-v-tag = %x76 [FWS] "=" [FWS] %x44.4B.49.4D.31
]]></artwork>
          <dl>
            <dt>h=</dt>
            <dd>
              <t>Acceptable hash algorithms (plain-text; OPTIONAL, defaults to
allowing all algorithms). A colon-separated list of hash
algorithms that might be used. Unrecognized algorithms MUST be
ignored. Refer to <xref target="algorithm"/> for a discussion of the hash
algorithms implemented by Signers and Verifiers. The set of
algorithms listed in this tag in each record is an operational
choice made by the Signer.</t>
            </dd>
          </dl>
          <artwork><![CDATA[
ABNF:
key-h-tag = %x68 [FWS] "=" [FWS] key-h-tag-alg
*( [FWS] ":" [FWS] key-h-tag-alg )
key-h-tag-alg = "sha1" / "sha256" / x-key-h-tag-alg
x-key-h-tag-alg = hyphenated-word ; for future extension
]]></artwork>
          <dl>
            <dt>k= Key type (plain-text; OPTIONAL, default is "rsa"). Signers and</dt>
            <dd>
              <t>Verifiers MUST support the "rsa" key type. The "rsa" key type
indicates that an ASN.1 DER-encoded [ITU-X660-1997] RSAPublicKey
(see <xref target="RFC8017"/>, Sections 3.1 and A.1.1) is being used in the "p="
tag. (Note: the "p=" tag further encodes the value using the
base64 algorithm.) Unrecognized key types MUST be ignored.</t>
            </dd>
          </dl>
          <artwork><![CDATA[
ABNF:
key-k-tag = %x76 [FWS] "=" [FWS] key-k-tag-type
key-k-tag-type = "rsa" / x-key-k-tag-type
x-key-k-tag-type = hyphenated-word ; for future extension
]]></artwork>
          <dl>
            <dt>n= Notes that might be of interest to a human (qp-section; OPTIONAL,</dt>
            <dd>
              <t>default is empty). No interpretation is made by any program.
This tag should be used sparingly in any key server mechanism that
has space limitations (notably DNS). This is intended for use by
administrators, not end users.</t>
            </dd>
          </dl>
          <artwork><![CDATA[
ABNF:
key-n-tag = %x6e [FWS] "=" [FWS] qp-section
]]></artwork>
          <dl>
            <dt>p= Public-key data (base64; REQUIRED). An empty value means that</dt>
            <dd>
              <t>this public key has been revoked. The syntax and semantics of
this tag value before being encoded in base64 are defined by the
"k=" tag.</t>
            </dd>
          </dl>
          <t>INFORMATIVE RATIONALE: If a private key has been compromised or
otherwise disabled (e.g., an outsourcing contract has been
terminated), a Signer might want to explicitly state that it
knows about the selector, but all messages using that selector</t>
          <artwork><![CDATA[
ABNF:
key-p-tag = %x70 [FWS] "=" [ [FWS] base64string]
]]></artwork>
          <t>INFORMATIVE NOTE: A base64string is permitted to include
whitespace (FWS) at arbitrary places; however, any CRLFs must
be followed by at least one WSP character. Implementers and
administrators are cautioned to ensure that selector TXT RRs
conform to this specification.</t>
          <dl>
            <dt>s= Service Type (plain-text; OPTIONAL; default is "*"). A colon-</dt>
            <dd>
              <t>separated list of service types to which this record applies.
Verifiers for a given service type MUST ignore this record if the
appropriate type is not listed. Unrecognized service types MUST
be ignored. Currently defined service types are as follows:
</t>
              <dl>
                <dt>*</dt>
                <dd>
                  <t>matches all service types</t>
                </dd>
                <dt>email</dt>
                <dd>
                  <t>electronic mail (not necessarily limited to SMTP)</t>
                </dd>
              </dl>
              <t>This tag is intended to constrain the use of keys for other
purposes, should use of DKIM2 be defined by other services in the
future.</t>
            </dd>
          </dl>
          <artwork><![CDATA[
ABNF:
key-s-tag = %x73 [FWS] "=" [FWS] key-s-tag-type
*( [FWS] ":" [FWS] key-s-tag-type )
key-s-tag-type = "email" / "*" / x-key-s-tag-type
x-key-s-tag-type = hyphenated-word ; for future extension
]]></artwork>
          <dl>
            <dt>t= Flags, represented as a colon-separated list of names (plain-</dt>
            <dd>
              <t>text; OPTIONAL, default is no flags set). Unrecognized flags MUST
be ignored. The defined flags are as follows:
</t>
              <dl>
                <dt>y</dt>
                <dd>
                  <t>This domain is testing DKIM2. Verifiers MUST NOT treat messages
from Signers in testing mode differently from unsigned email,
even should the signature fail to verify. Verifiers MAY wish
to track testing mode results to assist the Signer.</t>
                </dd>
                <dt>s</dt>
                <dd>
                  <t>Any DKIM2 signature header fields using the "i=" tag MUST have
the same domain value on the right-hand side of the "@" in the
"i=" tag and the value of the "d=" tag. That is, the "i="
domain MUST NOT be a subdomain of "d=". Use of this flag is</t>
                </dd>
              </dl>
              <t>RECOMMENDED unless subdomaining is required.</t>
            </dd>
          </dl>
          <artwork><![CDATA[
ABNF:
key-t-tag = %x74 [FWS] "=" [FWS] key-t-tag-flag
*( [FWS] ":" [FWS] key-t-tag-flag )
key-t-tag-flag = "y" / "s" / x-key-t-tag-flag
x-key-t-tag-flag = hyphenated-word ; for future extension
]]></artwork>
        </section>
        <section anchor="dns-binding">
          <name>DNS Binding</name>
          <t>A binding using DNS TXT RRs as a key service is hereby defined. All
implementations MUST support this binding.</t>
          <section anchor="namespace">
            <name>Namespace</name>
            <t>All DKIM2 keys are stored in a subdomain named "_domainkey". Given a
DKIM2 signature header field with a "d=" tag of "example.com" and an
"s=" tag of "foo.bar", the DNS query will be for
"foo.bar._domainkey.example.com".</t>
          </section>
          <section anchor="resource-record-types-for-key-storage">
            <name>Resource Record Types for Key Storage</name>
            <t>The DNS Resource Record type used is specified by an option to the
query-type ("q=") tag. The only option defined in this base
specification is "txt", indicating the use of a TXT RR. A later
extension of this standard may define another RR type.</t>
            <t>Strings in a TXT RR MUST be concatenated together before use with no
intervening whitespace. TXT RRs MUST be unique for a particular
selector name; that is, if there are multiple records in an RRset,
the results are undefined.</t>
            <t>TXT RRs are encoded as described in <xref target="textualrepresentation"/>.</t>
          </section>
        </section>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document reuses the IANA registrations in <xref target="RFC6376"/> in Section 7.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document recommends thorough review and adherence to the Security
Consideration in <xref target="RFC6376"/> in Section 8.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="RFC1034">
        <front>
          <title>Domain names - concepts and facilities</title>
          <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
          <date month="November" year="1987"/>
          <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 used for host address look up and electronic mail forwarding. It discusses the clients 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="RFC2045">
        <front>
          <title>Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies</title>
          <author fullname="N. Freed" initials="N." surname="Freed"/>
          <author fullname="N. Borenstein" initials="N." surname="Borenstein"/>
          <date month="November" year="1996"/>
          <abstract>
            <t>This initial document specifies the various headers used to describe the structure of MIME messages. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2045"/>
        <seriesInfo name="DOI" value="10.17487/RFC2045"/>
      </reference>
      <reference anchor="RFC2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
          <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 Community, 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="RFC3629">
        <front>
          <title>UTF-8, a transformation format of ISO 10646</title>
          <author fullname="F. Yergeau" initials="F." surname="Yergeau"/>
          <date month="November" year="2003"/>
          <abstract>
            <t>ISO/IEC 10646-1 defines a large character set called the Universal Character Set (UCS) which encompasses most of the world's writing systems. The originally proposed encodings of the UCS, however, were not compatible with many current applications and protocols, and this has led to the development of UTF-8, the object of this memo. UTF-8 has the characteristic of preserving the full US-ASCII range, providing compatibility with file systems, parsers and other software that rely on US-ASCII values but are transparent to other values. This memo obsoletes and replaces RFC 2279.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="63"/>
        <seriesInfo name="RFC" value="3629"/>
        <seriesInfo name="DOI" value="10.17487/RFC3629"/>
      </reference>
      <reference anchor="RFC5234">
        <front>
          <title>Augmented BNF for Syntax Specifications: ABNF</title>
          <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
          <author fullname="P. Overell" initials="P." surname="Overell"/>
          <date month="January" year="2008"/>
          <abstract>
            <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [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="RFC5322">
        <front>
          <title>Internet Message Format</title>
          <author fullname="P. Resnick" initials="P." role="editor" surname="Resnick"/>
          <date month="October" year="2008"/>
          <abstract>
            <t>This document specifies the Internet Message Format (IMF), a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages. This specification is a revision of Request For Comments (RFC) 2822, which itself superseded Request For Comments (RFC) 822, "Standard for the Format of ARPA Internet Text Messages", updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5322"/>
        <seriesInfo name="DOI" value="10.17487/RFC5322"/>
      </reference>
      <reference anchor="RFC5598">
        <front>
          <title>Internet Mail Architecture</title>
          <author fullname="D. Crocker" initials="D." surname="Crocker"/>
          <date month="July" year="2009"/>
          <abstract>
            <t>Over its thirty-five-year history, Internet Mail has changed significantly in scale and complexity, as it has become a global infrastructure service. These changes have been evolutionary, rather than revolutionary, reflecting a strong desire to preserve both its installed base and its usefulness. To collaborate productively on this large and complex system, all participants need to work from a common view of it and use a common language to describe its components and the interactions among them. But the many differences in perspective currently make it difficult to know exactly what another participant means. To serve as the necessary common frame of reference, this document describes the enhanced Internet Mail architecture, reflecting the current service. This memo provides information for the Internet community.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5598"/>
        <seriesInfo name="DOI" value="10.17487/RFC5598"/>
      </reference>
      <reference anchor="RFC6376">
        <front>
          <title>DomainKeys Identified Mail (DKIM) Signatures</title>
          <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
          <author fullname="T. Hansen" initials="T." role="editor" surname="Hansen"/>
          <author fullname="M. Kucherawy" initials="M." role="editor" surname="Kucherawy"/>
          <date month="September" year="2011"/>
          <abstract>
            <t>DomainKeys Identified Mail (DKIM) permits a person, role, or organization that owns the signing domain to claim some responsibility for a message by associating the domain with the message. This can be an author's organization, an operational relay, or one of their agents. DKIM separates the question of the identity of the Signer of the message from the purported author of the message. Assertion of responsibility is validated through a cryptographic signature and by querying the Signer's domain directly to retrieve the appropriate public key. Message transit from author to recipient is through relays that typically make no substantive change to the message content and thus preserve the DKIM signature.</t>
            <t>This memo obsoletes RFC 4871 and RFC 5672. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="76"/>
        <seriesInfo name="RFC" value="6376"/>
        <seriesInfo name="DOI" value="10.17487/RFC6376"/>
      </reference>
      <reference anchor="RFC8017">
        <front>
          <title>PKCS #1: RSA Cryptography Specifications Version 2.2</title>
          <author fullname="K. Moriarty" initials="K." role="editor" surname="Moriarty"/>
          <author fullname="B. Kaliski" initials="B." surname="Kaliski"/>
          <author fullname="J. Jonsson" initials="J." surname="Jonsson"/>
          <author fullname="A. Rusch" initials="A." surname="Rusch"/>
          <date month="November" year="2016"/>
          <abstract>
            <t>This document provides recommendations for the implementation of public-key cryptography based on the RSA algorithm, covering cryptographic primitives, encryption schemes, signature schemes with appendix, and ASN.1 syntax for representing keys and for identifying the schemes.</t>
            <t>This document represents a republication of PKCS #1 v2.2 from RSA Laboratories' Public-Key Cryptography Standards (PKCS) series. By publishing this RFC, change control is transferred to the IETF.</t>
            <t>This document also obsoletes RFC 3447.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8017"/>
        <seriesInfo name="DOI" value="10.17487/RFC8017"/>
      </reference>
      <reference anchor="RFC8463">
        <front>
          <title>A New Cryptographic Signature Method for DomainKeys Identified Mail (DKIM)</title>
          <author fullname="J. Levine" initials="J." surname="Levine"/>
          <date month="September" year="2018"/>
          <abstract>
            <t>This document adds a new signing algorithm, Ed25519-SHA256, to "DomainKeys Identified Mail (DKIM) Signatures" (RFC 6376). DKIM verifiers are required to implement this algorithm.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8463"/>
        <seriesInfo name="DOI" value="10.17487/RFC8463"/>
      </reference>
    </references>
    <?line 521?>

<section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The parent document to this is DKIM <xref target="RFC6376"/> from which the vast
majority of content is copied from with only slight editing to update
for DKIM2.  The DKIM RFC was editted by Dave Crocker, Tony Hansen, and
Murray Kucherawy.  Credit for the content and specification for DKIM,
from which DKIM2 is derived from, goes to them.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA81c624bR5b+X09RYDCA6CU5lq+JDAHDWPJEiCR7JTnJwBCC
IrtJdtzsZrq6JXOCDPY19vX2SfZ855yq7qbozHj2zw4yFtms66lz+c6lejwe
mzqr8/TInpRrlxX20q1Te71J59kim7s6Kwu7KCt78v3ZxRPjZrMqvTuSb/bk
8tok5bygHkc2qdyiHs9XjSuW4+Rjtn4yTgo/fnxofDNbZ97TSDfbDbU8O715
Y2jodFlW2yPr68Rkm+rI1lXj6yePH3/z+In5mG7vyyqhxkWdVkVaj08wvvG1
K5KfXV4WNNA29WaTHdkPdTkfWV9WdZUuPH3arvHh1hjX1KuyOjJ2bCz9Lyv8
kf1xYl/zKvmRLP7HNOs+LKvlkf1rWS7zlL+nRJn8yN6n2crd/2XJP0zm5dqY
oqzWRKS79IgbXr15ffj46bP45cnjZ8/bL4eH38QvT188ab88f9Lp8/zpkyft
l+fffB2/vHj68kX88vXjw5ftl2cvnh6ZrFi0yzHj8di6ma8rN6+NuVmlttkk
RPVET/r7dOvtWZIWNZ00Pb2gPdoDPtmh3aTVOqu9dQWI4Yrs78wKpl652pb3
hbc1DeizZZEVS5sI69SlnecuW9NREA9Vqd+Uhc9mWZ7VW2YiZ9ap926Z2tnW
Ou/LeUbD0gAYTAe5z+oVfw9N61VVNsuVdTbJllntcoNpXd1U6cTerDJv6b+E
GAKDbppZnvkVj1n2WTqt7rJ5Sju8vB7acmE6czrpN7fEdpa3mPEGi7hIog+N
1+1SJOZ+lVZxnd7OiVgzIQo1n225+byshBAJ1rSpsjsaDPNMzNT7tGIBKxe7
1KL571yeyXm1FJhX201dLiu3WWXzlg5YDSb8tUmrbaDnNdZR/c9//bcPa06y
Kp3X+RZbqdK6ytI7kDc1brOpSlobltZSYmKFvCTizZrYxCapn1fZjLYa5Z/G
oR0mVhjPYB2r8h4TLLIi4XVIi4kw5DpLEhIq8xUEuyqTZs5s9f+OPz+oIN7+
W5xqlFNth1O/nFVNYFX7f2JV80G10i2zyRczrekyrbVfzrWmx7X23+Vas8O1
9jNcC176Iq61e7jWKNfi2L6IMV1SbsCXsHo+rcPp4VdmKujwW16D79rYkZ01
NRawIftKIxu3nmXLhhmzKte28YFA8inaHdrKgg60mNP+qLvOMKKmmTeRBvNy
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
tXXgTjhTAAA=

-->

</rfc>
