Re: [DNSOP] Definitions of basic DNSSEC terms

Edward Lewis <edward.lewis@icann.org> Mon, 15 August 2016 15:29 UTC

Return-Path: <edward.lewis@icann.org>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3D81812D681 for <dnsop@ietfa.amsl.com>; Mon, 15 Aug 2016 08:29:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.448
X-Spam-Level:
X-Spam-Status: No, score=-5.448 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.247, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
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 qgzD--p15bMC for <dnsop@ietfa.amsl.com>; Mon, 15 Aug 2016 08:29:03 -0700 (PDT)
Received: from out.west.pexch112.icann.org (pfe112-ca-1.pexch112.icann.org [64.78.40.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D7C1612D0E2 for <dnsop@ietf.org>; Mon, 15 Aug 2016 08:29:03 -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.1178.4; Mon, 15 Aug 2016 08:29:01 -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.1178.000; Mon, 15 Aug 2016 08:29:00 -0700
From: Edward Lewis <edward.lewis@icann.org>
To: dnsop WG <dnsop@ietf.org>
Thread-Topic: [DNSOP] Definitions of basic DNSSEC terms
Thread-Index: AQHR7nQTSka9wbmnDEqO6mdr6/kJ8aBAfA8AgAEuGYCAAcRagIAG+l4A
Date: Mon, 15 Aug 2016 15:29:00 +0000
Message-ID: <0262D479-5AF4-4B47-94A3-86DF31E32CBB@icann.org>
References: <29ED2792-2055-45DC-9715-1D576D96DC23@vpnc.org> <C85EB98D-91A1-4857-BAE2-F12905F64800@icann.org> <CACfw2hg_YFadaDh-HzzGgr49k-Qzj=+WPh2KW+HVdyh_uZ7vRA@mail.gmail.com> <B576B988-D384-4B4B-B415-10461E99D267@vpnc.org>
In-Reply-To: <B576B988-D384-4B4B-B415-10461E99D267@vpnc.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/f.18.0.160709
x-ms-exchange-messagesentrepresentingtype: 1
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_3554105340_2016131622"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/TlmZrk0PT_OYchYuaCDOJKPEuME>
Subject: Re: [DNSOP] Definitions of basic DNSSEC terms
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.17
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: Mon, 15 Aug 2016 15:29:05 -0000

On 8/10/16, 20:55, "Paul Hoffman" <paul.hoffman@vpnc.org> wrote:

>    That seems like a categorization, not a definition. Or are there 
>    definitions that involve "local policy" you or Ed can propose?

I've given this some thought and am a bit conflicted.

On the one hand, the intent of DNSSEC way-back-when was that the goal was protecting the receiver of the information and how the receiver choose to protect itself was strictly a matter of local policy.  Hence, there was no definition given to what validation or verification meant, not in any sense that was to be held as a standard.  Trying now to give these terms definitions under DNSSEC would be a significant change to the architecture.

Then again, in a world where operators rely on tools someone else writes, establishing an understanding of what a validated or verified answer "means" is desirable.  I still am not convinced that there is an impact on interoperability, meaning different caches can verify according to different local policy and the protocol could carry on.  For the sake of a DNSSEC "buyers guide" establishing some minimum guidelines would be beneficial.

I'd start with the "mechanical" algorithm for evaluating a signature, meaning, how to manipulate the DNSKEY, RRSIG and relevant data records.  I'd include evaluating the absolute times in the RRSIG, and what to do if the DNSSEC security algorithm is not locally available.

I'd include the implications of the chain of trust and trust anchors - how the set of trust anchors is managed.  ("Trust Anchor Hygiene" has been a working title for that.)

I'd include the various concerns, like replay attacks, ersatz revocation of signatures or a key's status.

The sticky issues are deciding what is apparently a permanent situation - meaning that an administrator would have to intervene to fix something - versus a temporary situation.  An example of a temporary situation is a network link or service failure preventing a trust chain element being retrieved.

All of this is written off the cuff.  It's been a long time since I rigorously looked at this.  My failing memory recalls there being many possible return codes from the validator I wrote in the 90's, suggesting that there are a lot of details in defining what is "verification and validation" in the sense of DNSSEC.

So in some sense, I don't think finer definitions are to be given.  If one really wants to codify finer detailed definitions, write it up as a draft and study it carefully.

Ed

PS - This comes from sage advice I was given about the Section "Algorithm" in "Domain Concepts and Facilities".  That section was not intended to be code, not intended to be pseudo-code, rather it guides what code is supposed to do.  This came from Rob Austein when I asked about difficulties in interpreting step 3's a, b, and c and the order in which they would be evaluated.

I.e., "back in the day" the documents were not trying to be specifications but descriptions of the protocol with the goal of leading to interoperable implementations.  The ramification is, if one wants more detail now, one might be challenging the basic assumptions of the protocol.  I am not saying that that would be a bad thing, just that it means a considerable amount of work.

Is a "Clarification on DNSSEC Verification and Validation" needed?  Or are we just trying to supply definitions to words?