{"id":4115,"date":"2014-05-19T18:53:00","date_gmt":"2014-05-19T10:53:00","guid":{"rendered":"https:\/\/www.icocean.com\/blog\/?p=4115"},"modified":"2014-05-19T18:53:00","modified_gmt":"2014-05-19T10:53:00","slug":"opendns-opinion-on-dnssec-and-dnscurve","status":"publish","type":"post","link":"https:\/\/www.icocean.com\/blog\/?p=4115","title":{"rendered":"OpenDNS opinion on DNSSec and DNSCurve"},"content":{"rendered":"<p style=\"color: #2c3034;\">Everyone in the DNS community agrees that DNS\u2019s security model is woefully outdated. Conceived at a time when there were fewer computers on the Internet than are housed by even today\u2019s smallest data centers, DNS unfortunately has no strong protection against malicious parties hoping to exploit web users. What little protection it does offer is mostly derived from novel uses of non-security features (e.g., UDP source port and transaction ID randomization).<\/p>\n<p style=\"color: #2c3034;\">For more than 15 years, the IETF has been working on DNSSEC, a set of extensions to apply\u00a0<a style=\"font-weight: inherit; font-style: inherit; color: #0071bc;\" href=\"http:\/\/en.wikipedia.org\/wiki\/Digital_signature\">digital signatures<\/a>\u00a0to DNS. Millions of dollars in government grants and several reboots from scratch later, DNSSEC is just starting to see real world testing. And that testing is minimal \u2014 only about 400 of the more than 85,000,000 .com domains support DNSSEC, fewer than 20% of US government agencies met their mandated December 31, 2009 deadline for DNSSEC deployment, and only two of the thirteen root zone name servers is testing with even dummy DNSSEC data.<\/p>\n<p style=\"color: #2c3034;\">Aside from its lack of adoption, DNSSEC isn\u2019t even a very satisfactory solution. It adds tremendous complexity to an already fragile protocol, significantly increases DNS traffic in size, encourages questionable security practices, and hamstrings many modern uses of DNS.<\/p>\n<h3 style=\"font-weight: inherit; color: #2c3034;\">Details<\/h3>\n<p><!--more--><\/p>\n<ul style=\"color: #2c3034;\">\n<li style=\"font-weight: inherit; font-style: inherit;\"><span style=\"font-weight: inherit; font-style: inherit;\">Complexity:<\/span>\u00a0DNSSEC has many options for enabling\/disabling DNSSEC validation, with conflicting interpretations of how to handle different bits; considering people still disagree about how to handle features of DNS that have been present since its inception, I foresee these won\u2019t be resolved anytime soon.<\/li>\n<li style=\"font-weight: inherit; font-style: inherit;\"><span style=\"font-weight: inherit; font-style: inherit;\">DNS traffic:<\/span>\u00a0Responses right now are usually limited to 512 bytes, sometimes a little more. DNSSEC enabled responses regularly exceed 1500 bytes, requiring IP fragmentation or fallback to TCP. IP fragmentation frequently fails with misconfigured firewalls and using TCP is much slower than the default UDP transport.<\/li>\n<li style=\"font-weight: inherit; font-style: inherit;\"><span style=\"font-weight: inherit; font-style: inherit;\">Questionable security practices:<\/span>\u00a0Most users are encouraged to use 512-bit or 1024-bit RSA keys. A\u00a0group of hobbyists\u00a0recently worked together to break all of the 512-bit keys used by Texas Instruments for signing their calculator firmware and they did so quickly and easily. The RSA company and NIST have been recommending users switch to 2048-bit keys since 2003 and 2007, respectively. Again, unfortunately, the DNSSEC standards developers are hesitant because bigger crypto is slower, and it will further push the traffic size issue.<\/li>\n<li style=\"font-weight: inherit; font-style: inherit;\"><span style=\"font-weight: inherit; font-style: inherit;\">Hamstrings modern uses:<\/span>\u00a0High traffic DNS servers can\u2019t handle signing every response packet, so they need to pre-compute signatures. This limits how companies like Akamai and Google or projects like the\u00a0<a style=\"font-weight: inherit; font-style: inherit; color: #0071bc;\" href=\"http:\/\/www.pool.ntp.org\/en\/\">NTP Pool<\/a>\u00a0can use DNS for global load balancing and routing users to their nearest servers. It also fundamentally hampers services like OpenDNS, which use DNS to provide content filtering and search services.<\/li>\n<li style=\"font-weight: inherit; font-style: inherit;\"><span style=\"font-weight: inherit; font-style: inherit;\">Efficiency:<\/span>\u00a0RSA is a very slow crypto standard; its only benefit is that everyone knows about it. DNSSEC can theoretically support other crypto standards, but the IETF has largely ignored efforts from interested parties to add support for faster and stronger algorithms.<\/li>\n<\/ul>\n<p style=\"color: #2c3034;\">So while debate about DNSSEC wears on, we\u2019re excited to announce that OpenDNS has fully adopted another proposed DNS security solution:\u00a0<span style=\"font-weight: inherit; font-style: inherit;\">DNSCurve<\/span>.<\/p>\n<p style=\"color: #2c3034;\"><a style=\"font-weight: inherit; font-style: inherit; color: #0071bc;\" href=\"http:\/\/dnscurve.org\/\">DNSCurve<\/a>\u00a0is a recent DNS extension proposal that is fully backwards compatible with the existing DNS protocol, uses\u00a0<a style=\"font-weight: inherit; font-style: inherit; color: #0071bc;\" href=\"http:\/\/dnscurve.org\/crypto.html\">much stronger cryptography<\/a>\u00a0than DNSSEC, and most importantly, is much simpler and much easier to implement and manage. The most significant technical distinction is that DNSSEC uses large and slow per-recordset signatures while DNSCurve uses small and fast per-packet encryption and authentication.<\/p>\n<p style=\"color: #2c3034;\">OpenDNS\u2019s DNS resolvers already fully support DNSCurve\u00a0<span style=\"font-weight: inherit; font-style: inherit;\">today<\/span>\u00a0and use it whenever possible. Of course, authoritative servers need to be upgraded to support DNSCurve as well, but it\u2019s our hope that this announcement will help to get the ball rolling on DNSCurve adoption. If you\u2019re an authoritative DNS provider and are interested in deploying DNSCurve, we\u2019re interested in hearing from you.<\/p>\n<p><span style=\"color: #2c3034;\">&#8211; See more at: http:\/\/blog.opendns.com\/2010\/02\/23\/opendns-dnscurve\/#sthash.6uJ6dhTz.dpuf<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Everyone in the DNS community agrees that DNS\u2019s securit <a href='https:\/\/www.icocean.com\/blog\/?p=4115' class='excerpt-more'>[&#8230;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3508],"tags":[3947,3059,3406],"class_list":["post-4115","post","type-post","status-publish","format-standard","hentry","category-dnssec-and-dns-","tag-dnscurve","tag-dnssec","tag-opendns","category-3508-id","post-seq-1","post-parity-odd","meta-position-corners","fix"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/4115","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4115"}],"version-history":[{"count":1,"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/4115\/revisions"}],"predecessor-version":[{"id":4116,"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/4115\/revisions\/4116"}],"wp:attachment":[{"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4115"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4115"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.icocean.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4115"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}