| rfc9905.original | rfc9905.txt | |||
|---|---|---|---|---|
| Network Working Group W. Hardaker | Internet Engineering Task Force (IETF) W. Hardaker | |||
| Internet-Draft USC/ISI | Request for Comments: 9905 USC/ISI | |||
| Updates: 4034, 5155 (if approved) W. Kumari | Updates: 4034, 5155 W. Kumari | |||
| Intended status: Standards Track Google | Category: Standards Track Google | |||
| Expires: 14 March 2026 10 September 2025 | ISSN: 2070-1721 October 2025 | |||
| Deprecating the use of SHA-1 in DNSSEC signature algorithms | Deprecating the Use of SHA-1 in DNSSEC Signature Algorithms | |||
| draft-ietf-dnsop-must-not-sha1-10 | ||||
| Abstract | Abstract | |||
| This document deprecates the use of the RSASHA1 and | This document deprecates the use of the RSASHA1 and | |||
| RSASHA1-NSEC3-SHA1 algorithms for the creation of DNS Public Key | RSASHA1-NSEC3-SHA1 algorithms for the creation of DNS Public Key | |||
| (DNSKEY) and Resource Record Signature (RRSIG) records. | (DNSKEY) and Resource Record Signature (RRSIG) records. | |||
| It updates RFC4034 and RFC5155 as it deprecates the use of these | It updates RFCs 4034 and 5155 as it deprecates the use of these | |||
| algorithms. | algorithms. | |||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This is an Internet Standards Track document. | |||
| provisions of BCP 78 and BCP 79. | ||||
| Internet-Drafts are working documents of the Internet Engineering | ||||
| Task Force (IETF). Note that other groups may also distribute | ||||
| working documents as Internet-Drafts. The list of current Internet- | ||||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | ||||
| Internet-Drafts are draft documents valid for a maximum of six months | This document is a product of the Internet Engineering Task Force | |||
| and may be updated, replaced, or obsoleted by other documents at any | (IETF). It represents the consensus of the IETF community. It has | |||
| time. It is inappropriate to use Internet-Drafts as reference | received public review and has been approved for publication by the | |||
| material or to cite them other than as "work in progress." | Internet Engineering Steering Group (IESG). Further information on | |||
| Internet Standards is available in Section 2 of RFC 7841. | ||||
| This Internet-Draft will expire on 14 March 2026. | Information about the current status of this document, any errata, | |||
| and how to provide feedback on it may be obtained at | ||||
| https://www.rfc-editor.org/info/rfc9905. | ||||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2025 IETF Trust and the persons identified as the | Copyright (c) 2025 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents (https://trustee.ietf.org/ | Provisions Relating to IETF Documents | |||
| license-info) in effect on the date of publication of this document. | (https://trustee.ietf.org/license-info) in effect on the date of | |||
| Please review these documents carefully, as they describe your rights | publication of this document. Please review these documents | |||
| and restrictions with respect to this document. Code Components | carefully, as they describe your rights and restrictions with respect | |||
| extracted from this document must include Revised BSD License text as | to this document. Code Components extracted from this document must | |||
| described in Section 4.e of the Trust Legal Provisions and are | include Revised BSD License text as described in Section 4.e of the | |||
| provided without warranty as described in the Revised BSD License. | Trust Legal Provisions and are provided without warranty as described | |||
| in the Revised BSD License. | ||||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction | |||
| 1.1. Requirements notation . . . . . . . . . . . . . . . . . . 3 | 1.1. Requirements Notation | |||
| 2. Deprecating SHA-1 from DNSSEC Signatures and Delegation | 2. Deprecating SHA-1 from DNSSEC Signatures and Delegation RRs | |||
| RRs . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 3. Security Considerations | |||
| 3. Security Considerations . . . . . . . . . . . . . . . . . . . 3 | 4. Operational Considerations | |||
| 4. Operational Considerations . . . . . . . . . . . . . . . . . 3 | 5. IANA Considerations | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | 6. Normative References | |||
| 6. Normative References . . . . . . . . . . . . . . . . . . . . 4 | Acknowledgments | |||
| Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 5 | Authors' Addresses | |||
| Appendix B. Current algorithm usage levels . . . . . . . . . . . 5 | ||||
| Appendix C. Github Version of this document . . . . . . . . . . 5 | ||||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | ||||
| 1. Introduction | 1. Introduction | |||
| The security of the protection provided by the SHA-1 algorithm | The security of the protection provided by the SHA-1 algorithm | |||
| [RFC3174] has been slowly diminishing over time as various forms of | [RFC3174] has been slowly diminishing over time as various forms of | |||
| attacks have weakened its cryptographic underpinning. DNSSEC | attacks have weakened its cryptographic underpinning. DNSSEC | |||
| [RFC9364] originally [RFC3110] made extensive use of SHA-1, for | [RFC9364] (originally defined in [RFC3110]) made extensive use of | |||
| example as a cryptographic hash algorithm in RRSIG and Delegation | SHA-1, for example, as a cryptographic hash algorithm in Resource | |||
| Signer (DS) records. Since then, multiple other algorithms with | Record Signature (RRSIG) and Delegation Signer (DS) records. Since | |||
| stronger cryptographic strength have become widely available for DS | then, multiple other algorithms with stronger cryptographic strength | |||
| records and for Resource Record Signature (DNSKEY) and DNS Public Key | have become widely available for DS records and for RRSIG and DNS | |||
| (RRSIG) records [RFC4034]. Operators are encouraged to consider | Public Key (DNSKEY) records [RFC4034]. Operators are encouraged to | |||
| switching to one of the recommended algorithms listed in the | consider switching to one of the recommended algorithms listed in the | |||
| [DNSKEY-IANA] and [DS-IANA] tables, respectively. Further, support | [DNSKEY-IANA] and [DS-IANA] tables, respectively. Further, support | |||
| for validating SHA-1 based signatures has been removed from some | for validating SHA-1-based signatures has been removed from some | |||
| systems. As a result, SHA-1 as part of a signature algorithm is no | systems. As a result, SHA-1 as part of a signature algorithm is no | |||
| longer fully interoperable in the context of DNSSEC. As adequate | longer fully interoperable in the context of DNSSEC. As adequate | |||
| alternatives exist, the use of SHA-1 is no longer advisable. | alternatives exist, the use of SHA-1 is no longer advisable. | |||
| This document thus further deprecates the use of RSASHA1 and | This document thus deprecates the use of RSASHA1 and | |||
| RSASHA1-NSEC3-SHA1 for DNS Security Algorithms. | RSASHA1-NSEC3-SHA1 for DNS Security Algorithms. | |||
| 1.1. Requirements notation | 1.1. Requirements Notation | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
| "OPTIONAL" in this document are to be interpreted as described in BCP | "OPTIONAL" in this document are to be interpreted as described in | |||
| 14 [RFC2119] [RFC8174] when, and only when, they appear in all | BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all | |||
| capitals, as shown here. | capitals, as shown here. | |||
| 2. Deprecating SHA-1 from DNSSEC Signatures and Delegation RRs | 2. Deprecating SHA-1 from DNSSEC Signatures and Delegation RRs | |||
| The RSASHA1 [RFC4034] and RSASHA1-NSEC3-SHA1 [RFC5155] algorithms | The RSASHA1 [RFC4034] and RSASHA1-NSEC3-SHA1 [RFC5155] algorithms | |||
| MUST NOT be used when creating DS records. Operators of validating | MUST NOT be used when creating DS records. Operators of validating | |||
| resolvers MUST treat RSASHA1 and RSASHA1-NSEC3-SHA1 DS records as | resolvers MUST treat RSASHA1 and RSASHA1-NSEC3-SHA1 DS records as | |||
| insecure. If no other DS records of accepted cryptographic | insecure. If no other DS records of accepted cryptographic | |||
| algorithms are available, the DNS records below the delegation point | algorithms are available, the DNS records below the delegation point | |||
| MUST be treated as insecure. | MUST be treated as insecure. | |||
| The RSASHA1 [RFC4034] and RSASHA1-NSEC3-SHA1 [RFC5155] algorithms | The RSASHA1 [RFC4034] and RSASHA1-NSEC3-SHA1 [RFC5155] algorithms | |||
| MUST NOT be used when creating DNSKEY and RRSIG records. Validating | MUST NOT be used when creating DNSKEY and RRSIG records. Validating | |||
| resolver implementations ([RFC9499] section 10) MUST continue to | resolver implementations ([RFC9499], Section 10) MUST continue to | |||
| support validation using these algorithms as they are diminishing in | support validation using these algorithms as they are diminishing in | |||
| use but still actively in use for some domains as of this | use but still actively in use for some domains as of this | |||
| publication. Operators of validating resolvers MUST treat DNSSEC | publication. Operators of validating resolvers MUST treat DNSSEC | |||
| signing algorithms RSASHA1 and RSASHA1-NSEC3-SHA1 as unsupported, | signing algorithms RSASHA1 and RSASHA1-NSEC3-SHA1 as unsupported, | |||
| rendering responses insecure if they cannot be validated by other | rendering responses insecure if they cannot be validated by other | |||
| supported signing algorithms. | supported signing algorithms. | |||
| 3. Security Considerations | 3. Security Considerations | |||
| This document deprecates the use of RSASHA1 and RSASHA1-NSEC3-SHA1 | This document deprecates the use of RSASHA1 and RSASHA1-NSEC3-SHA1 | |||
| for DNSSEC Delegation and DNSSEC signing since these algorithms are | for DNSSEC Delegation and DNSSEC signing since these algorithms are | |||
| no longer considered to be secure. | no longer considered to be secure. | |||
| 4. Operational Considerations | 4. Operational Considerations | |||
| Zone owners currently making use of SHA-1 based algorithms should | Zone owners currently making use of SHA-1-based algorithms should | |||
| immediately roll to algorithms with stronger cryptographic | immediately roll to algorithms with stronger cryptographic | |||
| algorithms, such as the recommended algorithms in the [DNSKEY-IANA] | algorithms, such as the recommended algorithms in the [DNSKEY-IANA] | |||
| and [DS-IANA] tables. | and [DS-IANA] tables. | |||
| Operators should take care when deploying software packages and | Operators should take care when deploying software packages and | |||
| operating systems that may have already removed support for the SHA-1 | operating systems that may have already removed support for the SHA-1 | |||
| algorithm. In these situations software may need to be manually | algorithm. In these situations, software may need to be manually | |||
| built and deployed by an operator to continue supporting the required | built and deployed by an operator to continue supporting the required | |||
| levels indicated by the "Use for DNSSEC Validation" and "Implement | levels indicated by the "Use for DNSSEC Validation" and "Implement | |||
| for DNSSEC Validation" columns, which this document is not changing. | for DNSSEC Validation" columns, which this document is not changing. | |||
| 5. IANA Considerations | 5. IANA Considerations | |||
| [Note to IANA, to be removed by the RFC Editor: the registry fields | IANA has set the "Use for DNSSEC Delegation" column of the "Digest | |||
| listed above will be created by draft-ietf-dnsop-rfc8624-bis.] | Algorithms" registry [DS-IANA] [RFC9904] to MUST NOT for SHA-1 (1) | |||
| and has added this document as a reference for the entry. | ||||
| IANA is requested to set the "Use for DNSSEC Delegation" field of the | ||||
| "Digest Algorithms" registry [DS-IANA] [I-D.ietf-dnsop-rfc8624-bis] | ||||
| for SHA-1 (1) to MUST NOT. | ||||
| IANA is requested to set the "Use for DNSSEC Signing" column of the | IANA has set the "Use for DNSSEC Signing" column of the "DNS Security | |||
| DNS Security Algorithm Numbers registry [DNSKEY-IANA] | Algorithm Numbers" registry [DNSKEY-IANA] [RFC9904] to MUST NOT for | |||
| [I-D.ietf-dnsop-rfc8624-bis] to MUST NOT for the RSASHA1 (5) and | the RSASHA1 (5) and RSASHA1-NSEC3-SHA1 (7) algorithms and has added | |||
| RSASHA1-NSEC3-SHA1 (7) algorithms. | this document as a reference for these entries. | |||
| All other columns should remain as currently specified. | All other columns should remain as currently specified. | |||
| 6. Normative References | 6. Normative References | |||
| [DNSKEY-IANA] | [DNSKEY-IANA] | |||
| IANA, "Domain Name System Security (DNSSEC) Algorithm | IANA, "Domain Name System Security (DNSSEC) Algorithm | |||
| Numbers", n.d., <https://www.iana.org/assignments/dns-sec- | Numbers", | |||
| alg-numbers/dns-sec-alg-numbers.xhtml>. | <https://www.iana.org/assignments/dns-sec-alg-numbers>. | |||
| [DS-IANA] IANA, "Delegation Signer (DS) Resource Record (RR) Type | [DS-IANA] IANA, "DNSSEC Delegation Signer (DS) Resource Record (RR) | |||
| Digest Algorithms", n.d., | Type Digest Algorithms", | |||
| <http://www.iana.org/assignments/ds-rr-types>. | <http://www.iana.org/assignments/ds-rr-types>. | |||
| [I-D.ietf-dnsop-rfc8624-bis] | ||||
| Hardaker, W. and W. Kumari, "DNSSEC Cryptographic | ||||
| Algorithm Recommendation Update Process", Work in | ||||
| Progress, Internet-Draft, draft-ietf-dnsop-rfc8624-bis-13, | ||||
| 4 June 2025, <https://datatracker.ietf.org/doc/html/draft- | ||||
| ietf-dnsop-rfc8624-bis-13>. | ||||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/rfc/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC3110] Eastlake 3rd, D., "RSA/SHA-1 SIGs and RSA KEYs in the | [RFC3110] Eastlake 3rd, D., "RSA/SHA-1 SIGs and RSA KEYs in the | |||
| Domain Name System (DNS)", RFC 3110, DOI 10.17487/RFC3110, | Domain Name System (DNS)", RFC 3110, DOI 10.17487/RFC3110, | |||
| May 2001, <https://www.rfc-editor.org/rfc/rfc3110>. | May 2001, <https://www.rfc-editor.org/info/rfc3110>. | |||
| [RFC3174] Eastlake 3rd, D. and P. Jones, "US Secure Hash Algorithm 1 | [RFC3174] Eastlake 3rd, D. and P. Jones, "US Secure Hash Algorithm 1 | |||
| (SHA1)", RFC 3174, DOI 10.17487/RFC3174, September 2001, | (SHA1)", RFC 3174, DOI 10.17487/RFC3174, September 2001, | |||
| <https://www.rfc-editor.org/rfc/rfc3174>. | <https://www.rfc-editor.org/info/rfc3174>. | |||
| [RFC4034] Arends, R., Austein, R., Larson, M., Massey, D., and S. | [RFC4034] Arends, R., Austein, R., Larson, M., Massey, D., and S. | |||
| Rose, "Resource Records for the DNS Security Extensions", | Rose, "Resource Records for the DNS Security Extensions", | |||
| RFC 4034, DOI 10.17487/RFC4034, March 2005, | RFC 4034, DOI 10.17487/RFC4034, March 2005, | |||
| <https://www.rfc-editor.org/rfc/rfc4034>. | <https://www.rfc-editor.org/info/rfc4034>. | |||
| [RFC5155] Laurie, B., Sisson, G., Arends, R., and D. Blacka, "DNS | [RFC5155] Laurie, B., Sisson, G., Arends, R., and D. Blacka, "DNS | |||
| Security (DNSSEC) Hashed Authenticated Denial of | Security (DNSSEC) Hashed Authenticated Denial of | |||
| Existence", RFC 5155, DOI 10.17487/RFC5155, March 2008, | Existence", RFC 5155, DOI 10.17487/RFC5155, March 2008, | |||
| <https://www.rfc-editor.org/rfc/rfc5155>. | <https://www.rfc-editor.org/info/rfc5155>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/rfc/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC9364] Hoffman, P., "DNS Security Extensions (DNSSEC)", BCP 237, | [RFC9364] Hoffman, P., "DNS Security Extensions (DNSSEC)", BCP 237, | |||
| RFC 9364, DOI 10.17487/RFC9364, February 2023, | RFC 9364, DOI 10.17487/RFC9364, February 2023, | |||
| <https://www.rfc-editor.org/rfc/rfc9364>. | <https://www.rfc-editor.org/info/rfc9364>. | |||
| [RFC9499] Hoffman, P. and K. Fujiwara, "DNS Terminology", BCP 219, | [RFC9499] Hoffman, P. and K. Fujiwara, "DNS Terminology", BCP 219, | |||
| RFC 9499, DOI 10.17487/RFC9499, March 2024, | RFC 9499, DOI 10.17487/RFC9499, March 2024, | |||
| <https://www.rfc-editor.org/rfc/rfc9499>. | <https://www.rfc-editor.org/info/rfc9499>. | |||
| Appendix A. Acknowledgments | [RFC9904] Hardaker, W. and W. Kumari, "DNSSEC Cryptographic | |||
| Algorithm Recommendation Update Process", RFC 9904, | ||||
| DOI 10.17487/RFC9904, October 2025, | ||||
| <https://www.rfc-editor.org/info/rfc9904>. | ||||
| Acknowledgments | ||||
| The authors appreciate the comments and suggestions from the | The authors appreciate the comments and suggestions from the | |||
| following IETF participants in helping produce this document: Mark | following IETF participants in helping produce this document: Mark | |||
| Andrews, Steve Crocker, Peter Dickson, Thomas Graf, Paul Hoffman, | Andrews, Steve Crocker, Peter Dickson, Thomas Graf, Paul Hoffman, | |||
| Russ Housley, Shumon Huque, Barry Leiba, S Moonesamy, Yoav Nir, | Russ Housley, Shumon Huque, Barry Leiba, S. Moonesamy, Yoav Nir, | |||
| Florian Obser, Peter Thomassen, Stefan Ubbink, Paul Wouters, Tim | Florian Obser, Peter Thomassen, Stefan Ubbink, Paul Wouters, Tim | |||
| Wicinski, and the many members of the DNSOP working group that | Wicinski, and the many members of the DNSOP Working Group that | |||
| discussed this draft. | discussed this specification. | |||
| Appendix B. Current algorithm usage levels | ||||
| 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. | ||||
| <RFC Editor: please delete this section upon publication> | ||||
| Appendix C. Github Version of this document | ||||
| While this document is under development, it can be viewed, tracked, | ||||
| fill here: | ||||
| https://github.com/hardaker/draft-hardaker-dnsop-must-not-sha1 | ||||
| <RFC Editor: please delete this section upon publication> | ||||
| Authors' Addresses | Authors' Addresses | |||
| Wes Hardaker | Wes Hardaker | |||
| USC/ISI | USC/ISI | |||
| Email: ietf@hardakers.net | Email: ietf@hardakers.net | |||
| Warren Kumari | Warren Kumari | |||
| Email: warren@kumari.net | Email: warren@kumari.net | |||
| End of changes. 32 change blocks. | ||||
| 104 lines changed or deleted | 76 lines changed or added | |||
This html diff was produced by rfcdiff 1.48.  | ||||