On Mon, Dec 23, 2024 at 11:21 PM Shumon Huque <shu...@gmail.com> wrote:

>
> In light of this, I am contemplating revising the text in the draft about
> "no
> benefit" and adding a small section describing what needs to be done to
> implement this protocol with NSEC3. The changes are very simple. The
> owner name of the NSEC3 record is the NSEC3 hash of the owner name,
> and the next hashed owner field of the RDATA is the hash of the owner
> name plus one.
>

[dropping last-c...@ietf.org for now]

Update ...

I've proposed the following new section of  text to cover how this
protocol can accommodate NSEC3. Please review.

Since there are now already implementations in the field, I think
it's important that the draft include this description of the
small set of changes needed for NSEC3 to properly reflect deployment
realities. Numerous inquiries have been posed in the past about the
possibility of NSEC3 support, so rather than debating the merits or
demerits, I am in favor of just documenting the tradeoffs and details
of how to implement it.

------------------ Excerpt: ---------------------------------------

4.  NSEC3 Support Requirements

   The NSEC3 protocol uses hashed names to provide zone enumeration
   defense.  This protection is already better provided by minimally
   covering NSEC records.  NSEC3's Opt-Out feature also provides no
   specific benefit for online signing implementations.  Hence, there
   does not appear to be a strong advantage to implementing Compact
   Denial of Existence with NSEC3.  An existing implementation of
   traditional online signing with NSEC3 migrating to Compact Denial of
   Existence may find it simpler to do so than implementing NSEC from
   scratch.

   The functional details of the protocol remain as described in
   Section 3, with the following changes:

   NSEC3 records and their signatures are dynamically generated instead
   of NSEC.

   The Owner Name of the NSEC3 resource record is the NSEC3 hash of the
   relevant domain name, and the next hashed owner name is the hash of
   the owner name plus one.  In responses for non-existent names, the
   Type Bit Maps field will contain only the NXNAME meta-type.  In
   responses to Empty Non-Terminal names, the Type Bit Maps field will
   be empty.

   As with other NSEC3 online signing implementations, there is no
   advantage to setting an NSEC3 salt or iterative hashing count.  Thus,
   the recommended NSEC3 parameter configuration is a flags field of 0,
   an additional hash iteration count of 0, and an empty salt.  In DNS
   presentation format syntax, the Resource Record data is thus "1 0 0
   -".

------------------ End Excert. ------------------------------------

The full commit in the github repo is here, which includes some
additional small tweaks to the draft to generalize the protocol
description, and to address some of the comments from Patrick
Mevzek's dnsdir review.

https://github.com/shuque/id-dnssec-compact-lies/commit/d822db90d3de123cafdf5095f53fcf5ec3e94e3f

Additionally, I've done a quick implementation of Compact DoE + NSEC3
in a test authoritative server, just to confirm my intuition that it is
as straightforward as I expected (and deployed a test zone and verified
it with a set of dnssec validator tools).

Shumon.
_______________________________________________
DNSOP mailing list -- dnsop@ietf.org
To unsubscribe send an email to dnsop-le...@ietf.org

Reply via email to