Re: [DNSOP] Simplified Updates of DNS Security Trust Anchors, for rolling the root key

Edward Lewis <edward.lewis@icann.org> Tue, 30 June 2015 14:54 UTC

Return-Path: <edward.lewis@icann.org>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BF6CA1A911E for <dnsop@ietfa.amsl.com>; Tue, 30 Jun 2015 07:54:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.431
X-Spam-Level:
X-Spam-Status: No, score=-3.431 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_NEUTRAL=0.779, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nQrViLQJfW7B for <dnsop@ietfa.amsl.com>; Tue, 30 Jun 2015 07:54:09 -0700 (PDT)
Received: from out.west.pexch112.icann.org (pfe112-ca-1.pexch112.icann.org [64.78.40.7]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4D8C41AC3C1 for <dnsop@ietf.org>; Tue, 30 Jun 2015 07:53:38 -0700 (PDT)
Received: from PMBX112-W1-CA-1.pexch112.icann.org (64.78.40.21) by PMBX112-W1-CA-2.pexch112.icann.org (64.78.40.23) with Microsoft SMTP Server (TLS) id 15.0.1044.25; Tue, 30 Jun 2015 07:53:36 -0700
Received: from PMBX112-W1-CA-1.pexch112.icann.org ([64.78.40.21]) by PMBX112-W1-CA-1.PEXCH112.ICANN.ORG ([64.78.40.21]) with mapi id 15.00.1044.021; Tue, 30 Jun 2015 07:53:35 -0700
From: Edward Lewis <edward.lewis@icann.org>
To: Tony Finch <dot@dotat.at>, John Dickinson <jad@sinodun.com>
Thread-Topic: [DNSOP] Simplified Updates of DNS Security Trust Anchors, for rolling the root key
Thread-Index: AQHQsq0UduySzgpew0Kv1X/A8Rs/q53FgvUAgAAGf4D//8yKAA==
Date: Tue, 30 Jun 2015 14:53:35 +0000
Message-ID: <D1B81E17.C8DC%edward.lewis@icann.org>
References: <CAHw9_iKmhA+f8QyuLkWeXQDfwprydVaGkR+LVJACGtsTB0+Pfw@mail.gmail.com> <55929AE2.50105@sinodun.com> <alpine.LSU.2.00.1506301453160.32296@hermes-1.csi.cam.ac.uk>
In-Reply-To: <alpine.LSU.2.00.1506301453160.32296@hermes-1.csi.cam.ac.uk>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/14.5.2.150604
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [192.0.47.234]
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha1"; boundary="B_3518506410_18671643"
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/dnsop/-crErifAKsLVNWn4gk6e76QlwQ4>
Cc: "dnsop@ietf.org" <dnsop@ietf.org>
Subject: Re: [DNSOP] Simplified Updates of DNS Security Trust Anchors, for rolling the root key
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dnsop>, <mailto:dnsop-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop/>
List-Post: <mailto:dnsop@ietf.org>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dnsop>, <mailto:dnsop-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 30 Jun 2015 14:54:10 -0000

On 6/30/15, 9:57, "Tony Finch" wrote:

>John Dickinson <jad@sinodun.com> wrote:
>>
>> I have been planning to write a draft to address 1 by having validators
>>send
>> the DS of known TA's in an edns0 option code. This info, could then be
>>logged
>> by the authoritative nameservers.
>
>Good idea, though just the key tags should be enough. (I think key
>management software ensures that tags don't collide.) If you only include
>the EDNS option when querying for the DNSKEY RRset then that tells the
>server which zone to the trust anchor key tags belong to.

Is this the right path?  (I'm asking, not driving towards a solution.)

I've been one of the folks struggling with this for some time.

It's true that the key tag does not uniquely identify the key.
Operationally, most key management tools will discard potential conflicts
which is good but makes us forget the trivial point mentioned here.

There's a larger set of questions.

Should the source of a trust anchor have the right or ability to ask any
other (validating, recursive) name server whether it is holding the (any)
trust anchor?  Should the source of the trust anchor build a process
relying on the ability to know who has or does not have the trust anchor?

ICANN is looking at changing the trust anchor for the root zone.  It would
be good if, before removing/retiring/revoking the trust anchor in place,
it was known that everyone out there had the new trust anchor in place.
That would be perfect.

What's the cost?  First there is identifying all holders of the trust
anchor.  If it were a NAT-free, IPv4 world, then it would be doable with a
simple scan of all IP(v4) addresses.  But we have NAT, we have firewalls,
we have IPv6.  We have techniques folks do to either extend address
spaces, provide security, improve availability.

If we could manage to contact every DNSSEC validator out there, (so,
second question,) is it a good idea to let an outsider poke/snoop into
configuration data?  (At what point does this become Snowden-esque?)
Leaving that as an open question.

What's the alternative if it is deemed infeasible or impossible to
determine when "everyone" has the new trust anchor?  The alternative
perhaps is to make a best effort to estimate when as many as should know
do, to inform as many as one can (not having a definitive roster of the
appropriate audience), to prepare "what to do when something fails"
documentation, and then go ahead with the change.

Is it the responsibility of the source of the trust anchor to avoid all
risk?  Or is it the responsibility of the players on the Internet to
handle all risk?  In my mind, DNSSEC is about protecting the recipient,
not the publisher of data.  Does that sway where responsibility lies?

This is not a rationalization for irresponsible behavior by a trust anchor
manager - maintaining trust is larger than security, it includes
availability/usability/better than the alternatives.  This is a debate in
my mind about how to manage a change when it's nearly impossible to
measure and manage all the angles.

PS -  I would love *love* having the ability to detect and measure whether
running the RFC 5011 process had any impact at all or how much impact it
has.  Don't get me wrong, more data is helpful.  I'd live to have what I
can in terms of collectable data for this.

PPS - All this having been written, I like the idea of knowing who's
queried for what in terms of the trust anchors.  Perhaps I'd use the DS
hash as the owner name (details elided) to avoid the key tag not being
unique problem.  I wouldn't use TDS to learn keys but just to check on
whether the trust anchors are up to date - an NXDOMAIN indicating the
validator's administrator has some work to do.  (Treat this more a
checksum than error correcting code.)