6944
PROPOSED STANDARD

Applicability Statement: DNS Security (DNSSEC) DNSKEY Algorithm Implementation Status (Obsoleted)

Authors: S. Rose
Date: April 2013
Area: int
Working Group: dnsext
Stream: IETF
Obsoleted by: RFC 8624
Updates: RFC 2536

Abstract

The DNS Security Extensions (DNSSEC) requires the use of cryptographic algorithm suites for generating digital signatures over DNS data. There is currently an IANA registry for these algorithms, but there is no record of the recommended implementation status of each algorithm. This document provides an applicability statement on algorithm implementation status for DNSSEC component software. This document lists each algorithm's status based on the current reference. In the case that an algorithm is specified without an implementation status, this document assigns one. This document updates RFCs 2536, 2539, 3110, 4034, 4398, 5155, 5702, and 5933.

RFC 6944: Applicability Statement: DNS Security (DNSSEC) DNSKEY Algorithm Implementation Status [RFC Home] [TEXT|PDF|HTML] [Tracker] [IPR] [Errata] [Info page]

Obsoleted by: 8624 PROPOSED STANDARD
Errata Exist
Internet Engineering Task Force (IETF)                           S. Rose
Request for Comments: 6944                                          NIST
Updates: <a href="./rfc2536">2536</a>, <a href="./rfc2539">2539</a>, <a href="./rfc3110">3110</a>, <a href="./rfc4034">4034</a>, <a href="./rfc4398">4398</a>,                        April 2013
         <a href="./rfc5155">5155</a>, <a href="./rfc5702">5702</a>, <a href="./rfc5933">5933</a>
Category: Standards Track
ISSN: 2070-1721


    <span class="h1">Applicability Statement: DNS Security (DNSSEC) DNSKEY Algorithm</span>
                         <span class="h1">Implementation Status</span>

Abstract

   The DNS Security Extensions (DNSSEC) requires the use of
   cryptographic algorithm suites for generating digital signatures over
   DNS data.  There is currently an IANA registry for these algorithms,
   but there is no record of the recommended implementation status of
   each algorithm.  This document provides an applicability statement on
   algorithm implementation status for DNSSEC component software.  This
   document lists each algorithm's status based on the current
   reference.  In the case that an algorithm is specified without an
   implementation status, this document assigns one.  This document
   updates RFCs 2536, 2539, 3110, 4034, 4398, 5155, 5702, and 5933.

Status of This Memo

   This is an Internet Standards Track document.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Further information on
   Internet Standards is available in <a href="./rfc5741#section-2">Section 2 of RFC 5741</a>.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   <a href="https://www.rfc-editor.org/info/rfc6944">http://www.rfc-editor.org/info/rfc6944</a>.














<span class="grey">Rose                         Standards Track                    [Page 1]</span>

<span id="page-2" ></span>
<span class="grey"><a href="./rfc6944">RFC 6944</a>             DNSSEC DNSKEY Algorithm Status           April 2013</span>


Copyright Notice

   Copyright (c) 2013 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a> and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (<a href="http://trustee.ietf.org/license-info">http://trustee.ietf.org/license-info</a>) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   <a href="#section-1">1</a>.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . <a href="#page-3">3</a>
     <a href="#section-1.1">1.1</a>.  Requirements Language . . . . . . . . . . . . . . . . . . . <a href="#page-3">3</a>
   <a href="#section-2">2</a>.  The DNS Security Algorithm Implementation Status Lists  . . . . <a href="#page-3">3</a>
     <a href="#section-2.1">2.1</a>.  Status Definitions  . . . . . . . . . . . . . . . . . . . . <a href="#page-3">3</a>
     <a href="#section-2.2">2.2</a>.  Algorithm Implementation Status Assignment Rationale  . . . <a href="#page-4">4</a>
     <a href="#section-2.3">2.3</a>.  DNSSEC Implementation Status Table  . . . . . . . . . . . . <a href="#page-4">4</a>
     2.4.  Specifying New Algorithms and Updating the Status of
           Existing Entries  . . . . . . . . . . . . . . . . . . . . . <a href="#page-5">5</a>
   <a href="#section-3">3</a>.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . <a href="#page-5">5</a>
   <a href="#section-4">4</a>.  Security Considerations . . . . . . . . . . . . . . . . . . . . <a href="#page-5">5</a>
   <a href="#section-5">5</a>.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . <a href="#page-6">6</a>
     <a href="#section-5.1">5.1</a>.  Normative References  . . . . . . . . . . . . . . . . . . . <a href="#page-6">6</a>
     <a href="#section-5.2">5.2</a>.  Informative References  . . . . . . . . . . . . . . . . . . <a href="#page-7">7</a>





















<span class="grey">Rose                         Standards Track                    [Page 2]</span>

<span id="page-3" ></span>
<span class="grey"><a href="./rfc6944">RFC 6944</a>             DNSSEC DNSKEY Algorithm Status           April 2013</span>


<span class="h2"><a class="selflink" id="section-1" href="#section-1">1</a>.  Introduction</span>

   The Domain Name System (DNS) Security Extensions (DNSSEC) ([<a href="./rfc4033" title=""DNS Security Introduction and Requirements"">RFC4033</a>],
   [<a href="./rfc4034" title=""Resource Records for the DNS Security Extensions"">RFC4034</a>], [<a href="./rfc4035" title=""Protocol Modifications for the DNS Security Extensions"">RFC4035</a>], [<a href="./rfc4509" title=""Use of SHA-256 in DNSSEC Delegation Signer (DS) Resource Records (RRs)"">RFC4509</a>], [<a href="./rfc5155" title=""DNS Security (DNSSEC) Hashed Authenticated Denial of Existence"">RFC5155</a>], and [<a href="./rfc5702" title=""Use of SHA-2 Algorithms with RSA in DNSKEY and RRSIG Resource Records for DNSSEC"">RFC5702</a>]) uses
   digital signatures over DNS data to provide source authentication and
   integrity protection.  DNSSEC uses an IANA registry to list codes for
   digital signature algorithms (consisting of a cryptographic algorithm
   and one-way hash function).

   The original list of algorithm status is found in [<a href="./rfc4034" title=""Resource Records for the DNS Security Extensions"">RFC4034</a>].  Other
   DNSSEC RFCs have added new algorithms or changed the status of
   algorithms in the registry.  However, implementers must read through
   all the documents in order to discover which algorithms are
   considered wise to implement, which are not, and which algorithms may
   become widely used in the future.

   This document defines the current implementation status for all
   registered algorithms.  If the status of algorithms changes, this
   document will be replaced with a new one establishing the new status;
   see <a href="#section-2.4">Section 2.4</a>.

   This document updates the following: [<a href="./rfc2536" title=""DSA KEYs and SIGs in the Domain Name System (DNS)"">RFC2536</a>], [<a href="./rfc2539" title=""Storage of Diffie-Hellman Keys in the Domain Name System (DNS)"">RFC2539</a>], [<a href="./rfc3110" title=""RSA/SHA-1 SIGs and RSA KEYs in the Domain Name System (DNS)"">RFC3110</a>],
   [<a href="./rfc4034" title=""Resource Records for the DNS Security Extensions"">RFC4034</a>], [<a href="./rfc4398" title=""Storing Certificates in the Domain Name System (DNS)"">RFC4398</a>], [<a href="./rfc5155" title=""DNS Security (DNSSEC) Hashed Authenticated Denial of Existence"">RFC5155</a>], [<a href="./rfc5702" title=""Use of SHA-2 Algorithms with RSA in DNSKEY and RRSIG Resource Records for DNSSEC"">RFC5702</a>], and [<a href="./rfc5933" title=""Use of GOST Signature Algorithms in DNSKEY and RRSIG Resource Records for DNSSEC"">RFC5933</a>].

<span class="h3"><a class="selflink" id="section-1.1" href="#section-1.1">1.1</a>.  Requirements Language</span>

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [<a href="./rfc2119" title=""Key words for use in RFCs to Indicate Requirement Levels"">RFC2119</a>].

<span class="h2"><a class="selflink" id="section-2" href="#section-2">2</a>.  The DNS Security Algorithm Implementation Status Lists</span>

<span class="h3"><a class="selflink" id="section-2.1" href="#section-2.1">2.1</a>.  Status Definitions</span>

   Must Implement:  The algorithm MUST be implemented to interoperate
      with other implementations of this specification.

   Must Not Implement:  The algorithm MUST NOT be implemented.  An
      algorithm with this status has known weaknesses.

   Recommended to Implement:  The algorithm SHOULD be implemented.
      Utility and interoperability with other implementations will be
      improved when an algorithm with this status is implemented, though
      there might be occasions where it is reasonable not to implement
      the algorithm.  An implementer must understand and weigh the full
      implications of choosing not to implement this particular
      algorithm.




<span class="grey">Rose                         Standards Track                    [Page 3]</span>

<span id="page-4" ></span>
<span class="grey"><a href="./rfc6944">RFC 6944</a>             DNSSEC DNSKEY Algorithm Status           April 2013</span>


   Optional:  The algorithm MAY be implemented, but all implementations
      MUST be prepared to interoperate with implementations that do or
      do not implement this algorithm.

<span class="h3"><a class="selflink" id="section-2.2" href="#section-2.2">2.2</a>.  Algorithm Implementation Status Assignment Rationale</span>

   RSASHA1 has an implementation status of Must Implement, consistent
   with [<a href="./rfc4034" title=""Resource Records for the DNS Security Extensions"">RFC4034</a>].  RSAMD5 has an implementation status of Must Not
   Implement because of known weaknesses in MD5.

   The status of RSASHA1-NSEC3-SHA1 is set to Recommended to Implement
   as many deployments use NSEC3.  The status of RSA/SHA-256 and RSA/
   SHA-512 are also set to Recommended to Implement as major deployments
   (such as the root zone) use these algorithms [<a href="#ref-ROOTDPS" title=""DNSSEC Practice Statement for the Root Zone KSK Operator"">ROOTDPS</a>].  It is
   believed that RSA/SHA-256 or RSA/SHA-512 algorithms will replace
   older algorithms (e.g., RSA/SHA-1) that have a perceived weakness.

   Likewise, ECDSA with the two identified curves (ECDSAP256SHA256 and
   ECDSAP384SHA384) is an algorithm that may see widespread use due to
   the perceived similar level of security offered with smaller key size
   compared to the key sizes of algorithms such as RSA.  Therefore,
   ECDSAP256SHA256 and ECDSAP384SHA384 are Recommended to Implement.

   All other algorithms used in DNSSEC specified without an
   implementation status are currently set to Optional.

<span class="h3"><a class="selflink" id="section-2.3" href="#section-2.3">2.3</a>.  DNSSEC Implementation Status Table</span>

   The DNSSEC algorithm implementation status table is listed below.
   Only the algorithms already specified for use with DNSSEC at the time
   of writing are listed.

    +------------+------------+-------------------+-------------------+
    |    Must    |  Must Not  |    Recommended    |      Optional     |
    |  Implement | Implement  |   to Implement    |                   |
    +------------+------------+-------------------+-------------------+
    |            |            |                   |                   |
    |   RSASHA1  |   RSAMD5   |   RSASHA256       |   Any             |
    |            |            |   RSASHA1-NSEC3   |   registered      |
    |            |            |    -SHA1          |   algorithm       |
    |            |            |   RSASHA512       |   not listed in   |
    |            |            |   ECDSAP256SHA256 |   this table      |
    |            |            |   ECDSAP384SHA384 |                   |
    +------------+------------+-------------------+-------------------+







<span class="grey">Rose                         Standards Track                    [Page 4]</span>

<span id="page-5" ></span>
<span class="grey"><a href="./rfc6944">RFC 6944</a>             DNSSEC DNSKEY Algorithm Status           April 2013</span>


   This table does not list the Reserved values in the IANA registry
   table or the values for INDIRECT (252), PRIVATE (253), and PRIVATEOID
   (254).  These values may relate to more than one algorithm and are
   therefore up to the implementer's discretion.  As noted, any
   algorithm not listed in the table is Optional.  As of this writing,
   the Optional algorithms are DSASHA1, DH, DSA-NSEC3-SHA1, and GOST-
   ECC, but in general, anything not explicitly listed is Optional.

<span class="h3"><a class="selflink" id="section-2.4" href="#section-2.4">2.4</a>.  Specifying New Algorithms and Updating the Status of Existing</span>
<span class="h3">      Entries</span>

   [<a id="ref-RFC6014">RFC6014</a>] establishes a parallel procedure for adding a registry
   entry for a new algorithm other than a standards track document.
   Because any algorithm not listed in the foregoing table is Optional,
   algorithms entered into the registry using the [<a href="./rfc6014" title=""Cryptographic Algorithm Identifier Allocation for DNSSEC"">RFC6014</a>] procedure
   are automatically Optional.

   It has turned out to be useful for implementations to refer to a
   single document that specifies the implementation status of every
   algorithm.  Accordingly, when a new algorithm is to be registered
   with a status other than Optional, this document shall be made
   obsolete by a new document that adds the new algorithm to the table
   in <a href="#section-2.3">Section 2.3</a>.  Similarly, if the status of any algorithm in the
   table in <a href="#section-2.3">Section 2.3</a> changes, a new document shall make this document
   obsolete; that document shall include a replacement of the table in
   <a href="#section-2.3">Section 2.3</a>.  This way, the goal of having one authoritative document
   to specify all the status values is achieved.

   This document cannot be updated, only made obsolete and replaced by a
   successor document.

<span class="h2"><a class="selflink" id="section-3" href="#section-3">3</a>.  IANA Considerations</span>

   This document lists the implementation status of cryptographic
   algorithms used with DNSSEC.  These algorithms are maintained in an
   IANA registry at <a href="http://www.iana.org/assignments/dns-sec-alg-numbers">http://www.iana.org/assignments/dns-sec-alg-numbers</a>.
   Because this document establishes the implementation status of every
   algorithm, it has been listed as a reference for the registry itself.

<span class="h2"><a class="selflink" id="section-4" href="#section-4">4</a>.  Security Considerations</span>

   This document lists, and in some cases assigns, the implementation
   status of cryptographic algorithms used with DNSSEC.  It is not meant
   to be a discussion on algorithm superiority.  No new security
   considerations are raised in this document, though prior description
   of algorithms as NOT RECOMMENDED (see [<a href="./rfc4034" title=""Resource Records for the DNS Security Extensions"">RFC4034</a>]) has been recast as
   Must Not Implement.




<span class="grey">Rose                         Standards Track                    [Page 5]</span>

<span id="page-6" ></span>
<span class="grey"><a href="./rfc6944">RFC 6944</a>             DNSSEC DNSKEY Algorithm Status           April 2013</span>


<span class="h2"><a class="selflink" id="section-5" href="#section-5">5</a>.  References</span>

<span class="h3"><a class="selflink" id="section-5.1" href="#section-5.1">5.1</a>.  Normative References</span>

   [<a id="ref-RFC2119">RFC2119</a>]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", <a href="https://www.rfc-editor.org/bcp/bcp14">BCP 14</a>, <a href="./rfc2119">RFC 2119</a>, March 1997.

   [<a id="ref-RFC2536">RFC2536</a>]  Eastlake, D., "DSA KEYs and SIGs in the Domain Name System
              (DNS)", <a href="./rfc2536">RFC 2536</a>, March 1999.

   [<a id="ref-RFC2539">RFC2539</a>]  Eastlake, D., "Storage of Diffie-Hellman Keys in the
              Domain Name System (DNS)", <a href="./rfc2539">RFC 2539</a>, March 1999.

   [<a id="ref-RFC3110">RFC3110</a>]  Eastlake, D., "RSA/SHA-1 SIGs and RSA KEYs in the Domain
              Name System (DNS)", <a href="./rfc3110">RFC 3110</a>, May 2001.

   [<a id="ref-RFC4033">RFC4033</a>]  Arends, R., Austein, R., Larson, M., Massey, D., and S.
              Rose, "DNS Security Introduction and Requirements",
              <a href="./rfc4033">RFC 4033</a>, March 2005.

   [<a id="ref-RFC4034">RFC4034</a>]  Arends, R., Austein, R., Larson, M., Massey, D., and S.
              Rose, "Resource Records for the DNS Security Extensions",
              <a href="./rfc4034">RFC 4034</a>, March 2005.

   [<a id="ref-RFC4035">RFC4035</a>]  Arends, R., Austein, R., Larson, M., Massey, D., and S.
              Rose, "Protocol Modifications for the DNS Security
              Extensions", <a href="./rfc4035">RFC 4035</a>, March 2005.

   [<a id="ref-RFC4398">RFC4398</a>]  Josefsson, S., "Storing Certificates in the Domain Name
              System (DNS)", <a href="./rfc4398">RFC 4398</a>, March 2006.

   [<a id="ref-RFC4509">RFC4509</a>]  Hardaker, W., "Use of SHA-256 in DNSSEC Delegation Signer
              (DS) Resource Records (RRs)", <a href="./rfc4509">RFC 4509</a>, May 2006.

   [<a id="ref-RFC5155">RFC5155</a>]  Laurie, B., Sisson, G., Arends, R., and D. Blacka, "DNS
              Security (DNSSEC) Hashed Authenticated Denial of
              Existence", <a href="./rfc5155">RFC 5155</a>, March 2008.

   [<a id="ref-RFC5702">RFC5702</a>]  Jansen, J., "Use of SHA-2 Algorithms with RSA in DNSKEY
              and RRSIG Resource Records for DNSSEC", <a href="./rfc5702">RFC 5702</a>,
              October 2009.

   [<a id="ref-RFC5933">RFC5933</a>]  Dolmatov, V., Chuprina, A., and I. Ustinov, "Use of GOST
              Signature Algorithms in DNSKEY and RRSIG Resource Records
              for DNSSEC", <a href="./rfc5933">RFC 5933</a>, July 2010.

   [<a id="ref-RFC6014">RFC6014</a>]  Hoffman, P., "Cryptographic Algorithm Identifier
              Allocation for DNSSEC", <a href="./rfc6014">RFC 6014</a>, November 2010.



<span class="grey">Rose                         Standards Track                    [Page 6]</span>

<span id="page-7" ></span>
<span class="grey"><a href="./rfc6944">RFC 6944</a>             DNSSEC DNSKEY Algorithm Status           April 2013</span>


<span class="h3"><a class="selflink" id="section-5.2" href="#section-5.2">5.2</a>.  Informative References</span>

   [<a id="ref-ROOTDPS">ROOTDPS</a>]  Ljunggren, F., Okubo, T., Lamb, R., and J. Schlyter,
              "DNSSEC Practice Statement for the Root Zone KSK
              Operator", DNS ROOTDPS, May 2010,
              <<a href="http://www.root-dnssec.org/wp-content/uploads/2010/06/icann-dps-00.txt">http://www.root-dnssec.org/wp-content/uploads/2010/06/</a>
              <a href="http://www.root-dnssec.org/wp-content/uploads/2010/06/icann-dps-00.txt">icann-dps-00.txt</a>>.

Author's Address

   Scott Rose
   NIST
   100 Bureau Dr.
   Gaithersburg, MD  20899
   USA

   Phone: +1-301-975-8439
   EMail: [email protected]

































Rose                         Standards Track                    [Page 7]

Additional Resources