Re: [DNSOP] [Ext] DNSSEC Strict Mode

Samuel Weiler <weiler@watson.org> Thu, 25 February 2021 18:22 UTC

Return-Path: <weiler@watson.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 004DA3A1E43 for <dnsop@ietfa.amsl.com>; Thu, 25 Feb 2021 10:22:34 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=unavailable 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 1d8lCkbaz0Vu for <dnsop@ietfa.amsl.com>; Thu, 25 Feb 2021 10:22:32 -0800 (PST)
Received: from cyrus.watson.org (cyrus.watson.org [204.107.128.30]) by ietfa.amsl.com (Postfix) with ESMTP id C831A3A1E42 for <dnsop@ietf.org>; Thu, 25 Feb 2021 10:22:31 -0800 (PST)
Received: from [172.20.1.184] (50-203-47-218-static.hfc.comcastbusiness.net [50.203.47.218]) by cyrus.watson.org (Postfix) with ESMTPSA id EC22319A16; Thu, 25 Feb 2021 18:22:30 +0000 (UTC)
Date: Thu, 25 Feb 2021 13:22:30 -0500
From: Samuel Weiler <weiler@watson.org>
To: Ben Schwartz <bemasc=40google.com@dmarc.ietf.org>
cc: Paul Hoffman <paul.hoffman@icann.org>, dnsop <dnsop@ietf.org>
In-Reply-To: <CAHbrMsAdbn85AUCY9Yr6XXU-6Ti4dKwR1=zncGj4z-SjznAF3w@mail.gmail.com>
Message-ID: <378b650-f262-a69a-2687-3454cad808b@watson.org>
References: <CAHbrMsBeCiZ-31hjKvet2UPDPFhdVYpgqR6Kw-WWz1ERgeSFoQ@mail.gmail.com> <B2CF080D-7513-4414-9316-9999AF441F43@icann.org> <CAHbrMsAdbn85AUCY9Yr6XXU-6Ti4dKwR1=zncGj4z-SjznAF3w@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; BOUNDARY="0-590887881-1614276366=:14774"
Content-ID: <90ae1b19-b253-a4b8-a396-1a493140d165@watson.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/IBuaqwtcqvX16MwDZFnKOwUVWR4>
Subject: Re: [DNSOP] [Ext] DNSSEC Strict Mode
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.29
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: Thu, 25 Feb 2021 18:22:35 -0000

On Thu, 25 Feb 2021, Ben Schwartz wrote:

> On Thu, Feb 25, 2021 at 10:26 AM Paul Hoffman <paul.hoffman@icann.org> wrote:
>       In reading draft-schwartz-dnsop-dnssec-strict-mode, I still don't understand why it is even useful. If I am
>       signing one of my zones with two algorithms, I must intend to do so. What is the value of me saying that only one
>       of the signing algorithms is the strong one?
> 
> 
> That's not especially the intent.  Currently, if you sign with two algorithms, and either of those algorithms becomes
> insecure*, your zone becomes susceptible to forgery.  If you mark both algorithms as Strict, then your zone remains secure
> (for validators who implement both algorithms and this draft).
> 
> Marking only one algorithm as Strict is necessary during certain transitions but is not otherwise very useful.
> 
> *possibly unbeknownst to the public

While I remain unconvinced...

This piece of the use case - though not the "my algorithm isn't 
supported everywhere" case - seems like it could also be solved by 
defining a new signature algorithm type, e.g. 
RSASHA512+ECDSAP384SHA384 [*], where a single (very long) DNSKEY 
record has keying material for multiple underlying crypto suites and a 
single (likely also long) RRSIG of this type has signatures for 
multiple suites.  Specify the "algorithm" as only validating when all 
of the pieces separately are valid - essentially, define an algorithm 
that is at least as strong as the strongest, not the weakest, one of 
the set.

Someone will aruge that this needlessly burns a codepoint from an 
8-bit field, potentially even burning them as pairwise combinations of 
underlying algorithms.  But it is a different way of doing the 
signaling, and the resolver logic feels, intuitively, a little 
simpler.

-- Sam


[*] is that an algorithm identifier or a crypto key in its own right?