<?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.3 (Ruby 3.2.2) -->
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-hardaker-dnsop-must-not-sha1-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.20.0 -->
  <front>
    <title abbrev="MUST NOT DNSSEC with SHA-1">Remove SHA-1 from active use within DNSSEC</title>
    <seriesInfo name="Internet-Draft" value="draft-hardaker-dnsop-must-not-sha1-01"/>
    <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="February" day="27"/>
    <abstract>
      <?line 51?>

<t>This document retires the use of SHA-1 within DNSSEC.</t>
    </abstract>
  </front>
  <middle>
    <?line 55?>

<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"/>), the use of
SHA-1 is no longer needed.</t>
      <t>This document retires the use of SHA-1 within DNSSEC.</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 SHA-1 <xref target="RFC3685"/> algorithm MUST NOT be used when creating DS records.
Validating resolvers MUST treat DS records as insecure.  If no other DS
records of accepted cryptographic algorithms are available, the DNS
records below the delegation point MUST be treated as insecure.</t>
      <t>The RSASHA1 <xref target="RFC4034"/>, DSA-NSEC3-SHA1 <xref target="RFC5155"/>, and
RSASHA1-NSEC3-SHA1 <xref target="RFC5155"/> algorithms MUST NOT be used when
creating DNSKEY and RRSIG records.  Validating resolvers MUST treat
RRSIG records created from DNSKEY records using these algorithms as
insecure.  If no other RRSIG records of accepted cryptographic
algorithms are available, the validating resolver MUST consider the
associated resource records as Bogus.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document increases the security of the DNSSEC ecosystem by
deprecating algorithms that make use of older algorithms with SHA-1
derived uses.</t>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <t>Zone owners currently making use of SHA-1 based algorithms should
immediate switch to algorithms with stronger cryptographic strengths,
such as those listed in the introduction.  DNS registries <xref target="RFC8499"/>
should prohibit their clients to upload and publish SHA-1 based DS
records.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA is requested to set the "DNSSEC Validation" of the "Digest
Algorithms" registry <xref target="DS-IANA"/> for SHA-1 (1) to MUST NOT.</t>
      <t>IANA is requested to set the "Recommended for DNSSEC Validation"
column of the DNS Security Algorithm Numbers registry <xref target="DNSKEY-IANA"/>
to MUST NOT:</t>
      <ul spacing="normal">
        <li>
          <t>RSASHA1 (5)</t>
        </li>
        <li>
          <t>RSASHA1-NSEC3-SHA1 (7)</t>
        </li>
      </ul>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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="RFC3685">
          <front>
            <title>SIEVE Email Filtering: Spamtest and VirusTest Extensions</title>
            <author fullname="C. Daboo" initials="C." surname="Daboo"/>
            <date month="February" year="2004"/>
            <abstract>
              <t>The SIEVE mail filtering language "spamtest" and "virustest" extensions permit users to use simple, portable commands for spam and virus tests on email messages. Each extension provides a new test using matches against numeric 'scores'. It is the responsibility of the underlying SIEVE implementation to do the actual checks that result in values returned by the tests. [PROPOSED STANDARD]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3685"/>
          <seriesInfo name="DOI" value="10.17487/RFC3685"/>
        </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/>
            </author>
            <date>n.d.</date>
          </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/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC8499">
          <front>
            <title>DNS Terminology</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="A. Sullivan" initials="A." surname="Sullivan"/>
            <author fullname="K. Fujiwara" initials="K." surname="Fujiwara"/>
            <date month="January" year="2019"/>
            <abstract>
              <t>The Domain Name System (DNS) is defined in literally dozens of different RFCs. The terminology used by implementers and developers of DNS protocols, and by operators of DNS systems, has sometimes changed in the decades since the DNS was first defined. This document gives current definitions for many of the terms used in the DNS in a single document.</t>
              <t>This document obsoletes RFC 7719 and updates RFC 2308.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="219"/>
          <seriesInfo name="RFC" value="8499"/>
          <seriesInfo name="DOI" value="10.17487/RFC8499"/>
        </reference>
        <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>
    </references>
    <?line 124?>

<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>[RFC Editor: please delete this section upon publication]</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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

-->

</rfc>
