Hi,

On 7/30/24 09:41, libor.peltan wrote:
1) I'd very much like to see more exact guidance of how the auth server / 
signer should prevent keytag collisions. For example, what our Knot DNS does 
is: (a) on a signle signer, when newly generated key causes collision, discard 
it and generate another; (b) in multi-signer (or offline-KSK) operation, 
fragment the keytag space between key generators (e.g. first signer discards 
any generated key with even keytags, the other one with odd ones). What I'm 
missing is a reasearch confirming (or rejecting) that this both is always 
possible -- i.e. that with existing (and future?) algorithms, it can't happen 
that the key tags would be always following a pattern (like being even all the 
time), putting the key generator in a hopeless loop.

I would say that general guidance / research is impossible, as the answer 
depends on the internal structure of the DNSKEY RDATA for algorithms that might 
be defined in the future, and that stuff is unknown.

It's seems conceivable that some future (or private/experimental) algorithm's 
DNSKEY RDATA might have correlated least significant bits in its odd octets 
(which would translate into a bias towards even/odd key tags).

Given that the key tag algorithm clearly is very biased and potentially 
exploits DNSKEY RDATA structure [1], it may be worth replacing it with another 
calculation rule (for new algorithms only).

Slides 20-22 of [1] mention CRC16 as one candidate; perhaps an even less biased 
hash function would be better. While collision probability would not be 
significantly reduced (due to the birthday paradox), it at least would allow 
strategies like Libor's partitioning the key tag space by operator.

Best,
Peter

[1]: Slides 10, 11 
https://ripe78.ripe.net/presentations/5-20190520-RIPE-78-DNS-wg-Keytags.pdf

--
https://desec.io/

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

Reply via email to