[GH-ISSUE #2639] Confusion of algorithm numbers between DAU, DHU, and N3U #1032

Closed
opened 2026-03-16 01:20:06 +03:00 by kerem · 6 comments
Owner

Originally created by @divergentdave on GitHub (Dec 5, 2024).
Original GitHub issue: https://github.com/hickory-dns/hickory-dns/issues/2639

Currently, the DAU, DHU, and N3U EDNS options are all internally represented with the SupportedAlgorithms struct, which is a customized bitfield for DNSSEC signing algorithms. Relatedly, Edns::set_default_algorithms() inserts the DAU and DHU options with the same set of algorithms in each. However, algorithm codes have different semantics between the three options, as they are drawn from different IANA registries.

The internal representations of DHU and N3U options should be changed to distinct bitfield types, or lists of DigestType and Nsec3HashAlgorithm. Edns::set_default_algorithms() should report 1, 2, and 4 in the DHU option, for SHA-1, SHA-256, and SHA-384. We could also add the N3U option, with just 1 for SHA-1.

Originally created by @divergentdave on GitHub (Dec 5, 2024). Original GitHub issue: https://github.com/hickory-dns/hickory-dns/issues/2639 Currently, the DAU, DHU, and N3U EDNS options are all internally represented with the `SupportedAlgorithms` struct, which is a customized bitfield for DNSSEC signing algorithms. Relatedly, `Edns::set_default_algorithms()` inserts the DAU and DHU options with the same set of algorithms in each. However, algorithm codes have different semantics between the three options, as they are drawn from different IANA registries. The internal representations of DHU and N3U options should be changed to distinct bitfield types, or lists of `DigestType` and `Nsec3HashAlgorithm`. `Edns::set_default_algorithms()` should report 1, 2, and 4 in the DHU option, for SHA-1, SHA-256, and SHA-384. We could also add the N3U option, with just 1 for SHA-1.
kerem closed this issue 2026-03-16 01:20:11 +03:00
Author
Owner

@bluejekyll commented on GitHub (Mar 2, 2025):

I think you cleaned this up recently, right?

<!-- gh-comment-id:2692904890 --> @bluejekyll commented on GitHub (Mar 2, 2025): I think you cleaned this up recently, right?
Author
Owner

@bluejekyll commented on GitHub (Mar 2, 2025):

I think you cleaned this up recently, right?

<!-- gh-comment-id:2692904890 --> @bluejekyll commented on GitHub (Mar 2, 2025): I think you cleaned this up recently, right?
Author
Owner

@djc commented on GitHub (Mar 2, 2025):

I guess you're referring to #2753?

<!-- gh-comment-id:2692906835 --> @djc commented on GitHub (Mar 2, 2025): I guess you're referring to #2753?
Author
Owner

@divergentdave commented on GitHub (Mar 2, 2025):

Yes, #2753 removed the DHU and N3U options.

<!-- gh-comment-id:2692906885 --> @divergentdave commented on GitHub (Mar 2, 2025): Yes, #2753 removed the DHU and N3U options.
Author
Owner

@djc commented on GitHub (Mar 2, 2025):

@divergentdave so can this be closed?

<!-- gh-comment-id:2692907361 --> @djc commented on GitHub (Mar 2, 2025): @divergentdave so can this be closed?
Author
Owner

@divergentdave commented on GitHub (Mar 2, 2025):

Yes, we can add these options back later if there's interest, and track that in a separate issue.

<!-- gh-comment-id:2692908954 --> @divergentdave commented on GitHub (Mar 2, 2025): Yes, we can add these options back later if there's interest, and track that in a separate issue.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/hickory-dns#1032
No description provided.