Subject: Proof of nonexistence for NSEC3

From: Ben Laurie <[email-masked]>
Date: Thu, 03 Mar 2005 15:18:00 +0000

Following a revelation about NSEC3 nonexistence proofs, I have proposed 
language to add to the I-D. Comments, please...

"If a wildcard ownername appears in a zone, the wildcard label ("*")
is treated as a literal symbol and is treated in the same way as any
other ownername for purposes of generating NSEC3 RRs.  RFC 2535 
describes the impact of wildcards on authenticated denial of existence.

In order to prove there are no wildcards for a domain, as well as no
RRs that match directly, an RR must be shown for the closest encloser,
and non-existence must be shown for all enclosers that could be
closer.

If we are attempting to prove the non-existence of some domain,
then in general the domain is of the form P.x.C where C is the closest
encloser in the zone (there is always one, if nothing else, the apex
of th4e zone), x is the label immediately preceding the closest
encloser (again, there must always be one, since if there weren't then
the domain would be C, which exists), and P is the (possibly empty)
remainder of the domain. To prove the nonexistence of P.x.C, we must
show that C exists, x.C does not exist and *.C does not exist. Because
x.C does not exist, all possible closer enclosers and wildcards also
cannot exist (if they did, there would at least be an empty
non-terminal at x.C), so these three facts are always sufficient to
prove the nonexistence of P.x.C.

In practice, then, we must show an NSEC3 record that encloses the
hash of x.C, one that encloses the hash of *.C, and any RR owned by C
(which could be an NSEC3, in which case it would be owned by the hash
of C). A resolver verifying this proof would have to try longer and
longer closest enclosers to determine which was being demonstrated as
C, if an NSEC3 is presented. If any other RR was used, then C would be
the owner. Once C has been determined, the resolver can easily check
x.C and *.C against the proof."

Cheers,

Ben.

-- 
http://www.apache-ssl.org/ben.html       http://www.thebunker.net/

"There is no limit to what a man can do or how far he can go if he
doesn't mind who gets the credit." - Robert Woodruff

--
to unsubscribe send a message to [email-masked] with
the word 'unsubscribe' in a single line as the message text body.
archive: <http://ops.ietf.org/lists/namedroppers/>