Why not DANE in browsers
imperialviolet.org
imperialviolet.org
Attackers control connectivity. Connectivity is expensive. Connectivity is also unreliable: captive portals, proxies, and firewalls break it. These factors make OCSP certificate revocation unworkable. For similar reasons, they make DANE's ostensible safeguard against malicious CAs unworkable. In practice, DANE would probably only be usable as an additional CA; it would not be able to effectively overrule any of the 1482 existing CAs.
Delaying proper network security because it won't currently work for a few percent of people seems like a recipe for never getting there.
I don't have much sympathy for network admins who block TXT records because it doesn't currently seem to break anything. TXT records are part of the spec, and if some of them have configured something to block them, that's not a good reason for everyone to not have secure systems.
Somehow I doubt it, but if by chance there is only one true problem being addressed and that problem is simply how do we authenticate another computer as being who we believe her to be, then my second question is: what is wrong with SSH authentication?
I once explained PKI to someone in their 70's who grew up without the personal computer and at one point they stopped me and asked "Why don't they just publish their public key in the newspaper or some directory like a telephone book?"
Later, as an experiment I printed a public key and then used OCR to reproduce it electronically.
Of course a key intended for www usage can also be retrieved over SSH, after the sending computer is authenticated (via SSH authentication). I have also done this, again as an experiment.
I guess it is technically possible to verify every TLS certificate out-of-band. But would you really be willing to do that for every TLS-enabled web site you connect to? And even if you were willing to do that, the average user would never do it.
You need some secure, out-of-band, communication means to transfer the key fingerprint to be able to verify it. The whole aim of the CA structure is so I don't need to somehow find a secure means to contact Amazon to verify their key fingerprint prior to first connecting to their website.
What if I would prefer to look up or obtain the key via some other means (that I deem more trustworthy that the internet)?
However, it is important to note that DNSSEC and DANE are two different things. Much of the recent discussion here has lumped them together.
DANE as an application of DNSSEC is interesting (and based on the recent string of editorials, contentious as well). Using DANE to constrain CAs could add an additional layer of protection against a rogue CA. Using it as an additional CA could help facilitate moving towards "HTTPS-everywhere".
The takeaway of course in implementing it in any manner is that it is just another layer, not a panacea.
Outside of DANE, there are other applications such as IPSECKEY and SSHFP that have utility.
If a client is pre-seeded with trusted root keys, DNSSEC protected payload can be validated to the apex.
Which, given how DNSCurve was designed, is a non sequitur :)
But often the provider resolving the query is itself untrustworthy. Most providers these days (including OpenDNS) redirect invalid queries to their own landing pages (which poisons caches and has other bad effects). Providers may "censor" certain domains. Or be subverted by state-level actors (see: Belgacom). In DNSSEC, the root of trust is the administrator of the DNS root zone (e.g., Verisign, whom you're probably already trusting anyway).
[1] But encryption is not a panacea. As soon as you visit the address(es) returned, someone will get a pretty good idea what you looked up.
OpenDNS stopped doing this on June 6 2014: