8 ms·
"... because DNS, invented in 1983 before the public consumption of the Internet, does not perform any authentication." Authentication of what? An end point?
by gwu78 11y ago
"... because DNS, invented in 1983 before the public consumption of the Internet, does not perform any authentication."
Authentication of what?
An end point? No.
A domainname? OK, I'll play along.
And why would "authentication" of a dommainname be necessary?
Maybe because the end user is communicating with a shared DNS cache operated by a third party instead of using their own?
But I do not use shared DNS caches. I use my own cache.
Moreover I use CurveDNS which provides encryption of DNS packets in transit and is at least as good at "authenticating" the proper authoritative server for each domainname as DNSSEC.
How would DNSSEC serve me?
DNSSEC could be a way for certain groups to maintain control over the use of DNS. Similar to the way SSL CA system has been used to control the use of encryption. Both the use of domainnames and SSL certificates are each commercial in nature (pay to play). They do not have to be, but schemes like CA system and DNSSEC allow for this to occur via centralisation of authority.
- talideon 11y agoAuthentication of whether the records have been tampered with or not. That includes the very authoritative nameserver you fetched them from in the first place, which might have been compromised. This is why DNSSEC allows zones to be signed offline by the zone's owner rather than trusting the nameserver. Even if you run your own DNS cache, some bad actor between you and zone owner (including the aforementioned authoritative DNS server) can still potentially provide you with bad data. DNSCurve gives you _encrypted traffic_, but DNSSEC gives you _accurate results_. They solve two different problems.
- gwu78 11y ago"They solve two different problems." Well-known fact. And truthfully the most sensible approach would be to use both. Yet I never see anyone doing that. Given the choice between the two problems, I know which one I consider more serious. The results might be "accurate" when stored on the nameserver but if they get tampered with in transit went sent over the wire then they are not "accurate" when they are received. In that case DNSSEC does not give me accurate results. Moreover I am not keen on the widepread sniffing of DNS traffic. Name lookups and other DNS requests and responses are just as important as HTTP traffic. Why encrypt one and not the other? Finally, I could be wrong but I think getting redirected to a bogus nameserver run by a "bad actor" seems (easier for the bad actor and) more likely than accessing the correct nameserver without the knowledge it has secretly been compromised.
- netheril96 11y agoMost of the time the domain name will be sent in the clear anyway. For example, when you connect to a plain HTTP site, the domain name will probably be included in the "Host" field. When connecting to a HTTPS site, it will probably be included in the Server Name Indication extension field during TLS handshake. Of course there are many times the domain name will remain hidden, if the DNS record is encrypted, but that is not a fraction of total use cases, and I doubt there will be great force pushing for DNS encryption.
- gwu78 11y agoI try to avoid SNI and thankfully find a very small percentage of SSL-enabled sites using it, overall. I sniff my own SSL traffic and can see all the domain names for which SNI is being used. Are you saying SSL leaks the domainname in every request? What is the justifcation for SNI? Does it have to do with conserving IP address space? Not sure I understand your comment about HTTP Host: field and plain text HTTP traffic. My question was that if HTTP traffic is encrypted (e.g., via SSL) then why not encrypt DNS, too?
- talideon 11y agoSNI is useful because it's less of a headache than setting up multiple network interfaces. Conserving IP address space is simply something really nice you get for free.
- talideon 11y ago> The results might be "accurate" when stored on the nameserver but if they get tampered with in transit went sent over the wire then they are not "accurate" when they are received. In that case DNSSEC does not give me accurate results. Here's where you're wrong. A zone isn't just signed in isolation. If it was, then DNSSEC would indeed be completely useless. Rather, there's a chain of trust from the root nameservers up to the nameservers for the domain in question, and in each case you can request a DS (delegation signer) record to show that a zone served by a subordinate nameserver hasn't been tampered with. Now, this has its own issues if you're not a fan of the hierarchical nature of DNS, but it guarantees that even though the data is sent in the clear, some bad actor can't modify it in transit without breaking everything. DNSCurve is a nice bonus, but the guarantee that the records being served cannot have been tampered with given by DNSSEC is much more fundamentally important.
- Dylan16807 11y agoThe CA system is in a bad place, and adding more centralization would actually help. If there are entities that can arbitrarily tell me if a .com certificate is valid, I want there to be as few as possible.
- talideon 11y agoFunnily enough, DNSSEC would help with that, if DANE was more widely supported.