# Notes on DNSSEC Transparency This file contains notes about the implementation of a CT-like log for a DNSSEC Transparency experiment, called 'dotlfish'. ## Status, implementation TBD ## Protocol DNSSEC Transparency is implemented as described in draft-zhang-trans-ct-dnssec-03 with the following changes. - Submissions MUST include RRSIG RR's for all DS and DNSKEY RR's - Log implementation is made easier since the log doesn't have to make DNS queries. - The system as a whole is made more predictable by including data from the DNS from a single vantage point. - Base URL has changed From https:///ct/v1/ to https:///dt/v1/ - No risk for conflict with CT's namespace. - The type of service is obvious from looking at the URL. - Submission format is changed from an array of base64-encoded RR's to a single string with base64-encoded RR's. Note that the order of the first two records is important -- the first RR MUST be the DS record under submission, the next record MUST be the RRSIG covering the DS record. - The length of an RR is encoded in the data so RR's don't need the framing provided by a JSON array. ## Notes ### What is a duplicate? The draft is not precise on the question of what comprises an entry with regards to duplicates. Here's what dotlfish does. - Two submissons, A and B, are considered equal iff all of the following is true - the canonicalised DS RR in A and B are bitwise equal - the number of DNSKEY RR's in A and B are equal - all DNSKEY RR's in A and B are bitwise equal - Accept up to 12 duplicates per day. ### Logging NSEC3 TBD ## Open issues - TLS vectors, should we really use them?