<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.6 (Ruby 3.2.4) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>

<?rfc docmapping="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-dnsop-must-not-sha1-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="MUST NOT DNSSEC with SHA-1">Remove SHA-1 from active use within DNSSEC</title>

    <author initials="W." surname="Hardaker" fullname="Wes Hardaker">
      <organization>USC/ISI</organization>
      <address>
        <email>ietf@hardakers.net</email>
      </address>
    </author>
    <author initials="W." surname="Kumari" fullname="Warren Kumari">
      <organization>Google</organization>
      <address>
        <email>warren@kumari.net</email>
      </address>
    </author>

    <date year="2024" month="July" day="08"/>

    
    
    

    <abstract>


<?line 50?>

<t>This document retires the use of SHA-1 within DNSSEC.</t>



    </abstract>



  </front>

  <middle>


<?line 54?>

<section anchor="introduction"><name>Introduction</name>

<t>The security of the SHA-1 algorithm <xref target="RFC3174"/> has been slowly
diminishing over time as various forms of attacks have weakened its
cryptographic underpinning.  DNSSEC <xref target="RFC4033"/> <xref target="RFC4034"/>
<xref target="RFC4035"/> originally made extensive use of SHA-1 as a cryptographic
verification algorithm in RRSIG and Delegation Signer (DS) records,
for example.  Since then, multiple other signing algorithms with
stronger cryptographic strength are now widely available for DS
records (such as SHA-256 <xref target="RFC4509"/>, SHA-384 (<xref target="RFC6605"/>)) and for
DNSKEY and RRSIG records (such as RSASHA256 (<xref target="RFC5702"/>), RSASHA512
(<xref target="RFC5702"/>), ECDSAP256SHA256 <xref target="RFC6605"/>, ECDSAP384SHA384
<xref target="RFC6605"/>, ED25519 <xref target="RFC8080"/>, and ED448 <xref target="RFC8080"/>). Further,
support for validating SHA-1 based signatures has been removed from
some systems. As a result, SHA-1 is no longer fully interoperable in
the context of DNSSEC. As adequate alternatives exist, the use of SHA-1 is no
longer advisable.</t>

<t>This document thus further deprecates the use of RSASHA1 and
RSASHA1-NSEC3-SHA1 for DNS Security Algorithms.</t>

<section anchor="requirements-notation"><name>Requirements notation</name>

<t>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 BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear
   in all capitals, as shown here.</t>

</section>
</section>
<section anchor="deprecating-sha-1-algorithms-in-dnssec"><name>Deprecating SHA-1 algorithms in DNSSEC</name>

<t>The RSASHA1 <xref target="RFC4034"/> and RSASHA1-NSEC3-SHA1 <xref target="RFC5155"/> algorithms
MUST NOT be used when creating DNSKEY and RRSIG records.</t>

<t>Validating resolvers MUST continue to support validation using these
algorithms as they are diminishing in use but still actively in use
for some domains as of this publication.  Validating resolvers MAY
treat RRSIG records created from DNSKEY records using these algorithms
as an unsupported algorithm.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>This document reduces the risk that a zone cannot be validated due
to lack of SHA-1 support in a validator, by guiding signers to choose
a more interoperable signing algorithm.</t>

</section>
<section anchor="operational-considerations"><name>Operational Considerations</name>

<t>Zone owners currently making use of SHA-1 based algorithms should
immediately switch to algorithms with stronger cryptographic strengths,
such as those listed in the introduction.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>IANA is requested to set the "Use for DNSSEC Delegation" field of the
"Digest Algorithms" registry <xref target="DS-IANA"/> for SHA-1 (1) to MUST NOT.</t>

<t>IANA is requested to set the "Use for DNSSEC Signing" column of the
DNS Security Algorithm Numbers registry <xref target="DNSKEY-IANA"/> to MUST NOT
for the RSASHA1 (5) and RSASHA1-NSEC3-SHA1 (7) algorithms.</t>

<t>All other columns should remain as currently specified.</t>

</section>


  </middle>

  <back>


    <references title='Normative References' anchor="sec-normative-references">



<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="RFC3174">
  <front>
    <title>US Secure Hash Algorithm 1 (SHA1)</title>
    <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd"/>
    <author fullname="P. Jones" initials="P." surname="Jones"/>
    <date month="September" year="2001"/>
    <abstract>
      <t>The purpose of this document is to make the SHA-1 (Secure Hash Algorithm 1) hash algorithm conveniently available to the Internet community. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3174"/>
  <seriesInfo name="DOI" value="10.17487/RFC3174"/>
</reference>

<reference anchor="RFC4033">
  <front>
    <title>DNS Security Introduction and Requirements</title>
    <author fullname="R. Arends" initials="R." surname="Arends"/>
    <author fullname="R. Austein" initials="R." surname="Austein"/>
    <author fullname="M. Larson" initials="M." surname="Larson"/>
    <author fullname="D. Massey" initials="D." surname="Massey"/>
    <author fullname="S. Rose" initials="S." surname="Rose"/>
    <date month="March" year="2005"/>
    <abstract>
      <t>The Domain Name System Security Extensions (DNSSEC) add data origin authentication and data integrity to the Domain Name System. This document introduces 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">
  <front>
    <title>Resource Records for the DNS Security Extensions</title>
    <author fullname="R. Arends" initials="R." surname="Arends"/>
    <author fullname="R. Austein" initials="R." surname="Austein"/>
    <author fullname="M. Larson" initials="M." surname="Larson"/>
    <author fullname="D. Massey" initials="D." surname="Massey"/>
    <author fullname="S. Rose" initials="S." surname="Rose"/>
    <date month="March" year="2005"/>
    <abstract>
      <t>This document is part of a family of documents that describe the DNS 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 existence (NSEC) resource records. The purpose and format of each resource record is 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 RFC 2535. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4034"/>
  <seriesInfo name="DOI" value="10.17487/RFC4034"/>
</reference>

<reference anchor="RFC4035">
  <front>
    <title>Protocol Modifications for the DNS Security Extensions</title>
    <author fullname="R. Arends" initials="R." surname="Arends"/>
    <author fullname="R. Austein" initials="R." surname="Austein"/>
    <author fullname="M. Larson" initials="M." surname="Larson"/>
    <author fullname="D. Massey" initials="D." surname="Massey"/>
    <author fullname="S. Rose" initials="S." surname="Rose"/>
    <date month="March" year="2005"/>
    <abstract>
      <t>This document is part of a family of documents that describe the DNS Security Extensions (DNSSEC). The DNS Security Extensions are a collection of new resource records and protocol modifications that add data origin authentication 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 allow a security-aware resolver to authenticate both DNS resource records and authoritative DNS error indications.</t>
      <t>This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4035"/>
  <seriesInfo name="DOI" value="10.17487/RFC4035"/>
</reference>

<reference anchor="RFC4509">
  <front>
    <title>Use of SHA-256 in DNSSEC Delegation Signer (DS) Resource Records (RRs)</title>
    <author fullname="W. Hardaker" initials="W." surname="Hardaker"/>
    <date month="May" year="2006"/>
    <abstract>
      <t>This document specifies how to use the SHA-256 digest type in DNS Delegation Signer (DS) Resource Records (RRs). DS records, when stored in a parent zone, point to DNSKEYs in a child zone. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4509"/>
  <seriesInfo name="DOI" value="10.17487/RFC4509"/>
</reference>

<reference anchor="RFC5155">
  <front>
    <title>DNS Security (DNSSEC) Hashed Authenticated Denial of Existence</title>
    <author fullname="B. Laurie" initials="B." surname="Laurie"/>
    <author fullname="G. Sisson" initials="G." surname="Sisson"/>
    <author fullname="R. Arends" initials="R." surname="Arends"/>
    <author fullname="D. Blacka" initials="D." surname="Blacka"/>
    <date month="March" year="2008"/>
    <abstract>
      <t>The Domain Name System Security (DNSSEC) Extensions introduced the NSEC resource record (RR) for authenticated denial of existence. This document introduces an alternative resource record, NSEC3, which similarly provides authenticated denial of existence. However, it also provides measures against zone enumeration 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="RFC5702">
  <front>
    <title>Use of SHA-2 Algorithms with RSA in DNSKEY and RRSIG Resource Records for DNSSEC</title>
    <author fullname="J. Jansen" initials="J." surname="Jansen"/>
    <date month="October" year="2009"/>
    <abstract>
      <t>This document describes how to produce RSA/SHA-256 and RSA/SHA-512 DNSKEY and RRSIG resource records for use in the Domain Name System Security Extensions (RFC 4033, RFC 4034, and RFC 4035). [STANDARDS TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5702"/>
  <seriesInfo name="DOI" value="10.17487/RFC5702"/>
</reference>

<reference anchor="RFC6605">
  <front>
    <title>Elliptic Curve Digital Signature Algorithm (DSA) for DNSSEC</title>
    <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
    <author fullname="W.C.A. Wijngaards" initials="W.C.A." surname="Wijngaards"/>
    <date month="April" year="2012"/>
    <abstract>
      <t>This document describes how to specify Elliptic Curve Digital Signature Algorithm (DSA) keys and signatures in DNS Security (DNSSEC). It lists curves of different sizes and uses the SHA-2 family of hashes for signatures. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6605"/>
  <seriesInfo name="DOI" value="10.17487/RFC6605"/>
</reference>

<reference anchor="RFC8080">
  <front>
    <title>Edwards-Curve Digital Security Algorithm (EdDSA) for DNSSEC</title>
    <author fullname="O. Sury" initials="O." surname="Sury"/>
    <author fullname="R. Edmonds" initials="R." surname="Edmonds"/>
    <date month="February" year="2017"/>
    <abstract>
      <t>This document describes how to specify Edwards-curve Digital Security Algorithm (EdDSA) keys and signatures in DNS Security (DNSSEC). It uses EdDSA with the choice of two curves: Ed25519 and Ed448.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8080"/>
  <seriesInfo name="DOI" value="10.17487/RFC8080"/>
</reference>


<reference anchor="DNSKEY-IANA" target="https://www.iana.org/assignments/dns-sec-alg-numbers/dns-sec-alg-numbers.xhtml">
  <front>
    <title>Domain Name System Security (DNSSEC) Algorithm Numbers</title>
    <author initials="" surname="IANA" fullname="IANA">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="DS-IANA" target="http://www.iana.org/assignments/ds-rr-types">
  <front>
    <title>Delegation Signer (DS) Resource Record (RR) Type Digest Algorithms</title>
    <author initials="" surname="IANA" fullname="IANA">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>


    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>




    </references>


<?line 119?>

<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>TBD</t>

</section>
<section anchor="current-algorithm-usage-levels"><name>Current algorithm usage levels</name>

<t>The DNSSEC scanning project by Viktor Dukhovni and Wes Hardaker
highlights the current deployment of various algorithms on the
https://stats.dnssec-tools.org/ website.</t>

<t>&lt;RFC Editor: please delete this section upon publication&gt;</t>

</section>
<section anchor="github-version-of-this-document"><name>Github Version of this document</name>

<t>While this document is under development, it can be viewed, tracked,
fill here:</t>

<t>https://github.com/hardaker/draft-hardaker-dnsop-must-not-sha1</t>

</section>


  </back>

<!-- ##markdown-source:
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
fwdoH7/1twDG/g2lgeCjkBAAAA==

-->

</rfc>

