[DNSOP]Re: Our reading of consensus on draft-hardaker-dnsop-rfc8624-bis, and the "must-not-algorithm" docs.

Steve Crocker <steve@shinkuro.com> Sun, 19 May 2024 17:11 UTC

Return-Path: <steve@shinkuro.com>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (localhost []) by ietfa.amsl.com (Postfix) with ESMTP id E94ACC14F69B for <dnsop@ietfa.amsl.com>; Sun, 19 May 2024 10:11:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.893
X-Spam-Status: No, score=-1.893 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=shinkuro-com.20230601.gappssmtp.com
Received: from mail.ietf.org ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id cOlG_WJ1hCXm for <dnsop@ietfa.amsl.com>; Sun, 19 May 2024 10:11:41 -0700 (PDT)
Received: from mail-oi1-x22b.google.com (mail-oi1-x22b.google.com [IPv6:2607:f8b0:4864:20::22b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EC3E4C14F5E4 for <dnsop@ietf.org>; Sun, 19 May 2024 10:11:40 -0700 (PDT)
Received: by mail-oi1-x22b.google.com with SMTP id 5614622812f47-3c9c36db8eeso1000473b6e.0 for <dnsop@ietf.org>; Sun, 19 May 2024 10:11:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=shinkuro-com.20230601.gappssmtp.com; s=20230601; t=1716138699; x=1716743499; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=pZP01LDVk8mJvzjKF36twnvckhq/kLQZAb/5kUb1Ecc=; b=uitgMcoERreigM+LrDNbWSC5izmk54rO2V325GXGywbhyWNFYZAg7HJa6cpujNvQ5c 5ObqXhtnZzJHL4xaz1TZVctdSzVvQXOGsqazqoiE9tEpoUsfvj8CevD/ai1yqnz2eYaI qI+xlolfAYF2ktfJvu3hxanfEsNA2cwWeGZ2WzdcTXGy3UBqo73OmHf1N7SCs7UaIaoM uHvZW9ewjxZcfLlsrbLkkuiqiIZ3ySiIsT5h9BQdbpuRfmVkCn6lXZ8pgIUGEVexAU0g jUQoZm9yVclQbUya2BuW3GYvwM4ti1uY7b/tx2QU1HxBtcfIyxfumNn3v+lgB92c3Sju wTIA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716138699; x=1716743499; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=pZP01LDVk8mJvzjKF36twnvckhq/kLQZAb/5kUb1Ecc=; b=Vsidf9coUe/xdrxUqApVu7uMb+5PvexgmW4UWo96AKMgmsArTZteDw7x8cL23/ouqi Z3dcAj+tscg0BwOGDDCBYVVZF8ABilPzmsKM6ZMET4uBJZ+lWHYpvvntBu4+i06vT0Ev 51BMQ0MIHXqn78ONSjE/urFLmDjRYdq7aVXtcMddwBaKtEFcycP60yAdpXL9O8btq0Fb wtJSnlxB31pSuDD8lEBXGtzHX+Qc4JJl1DkPeDTqJsAgaZgXmJRFN+13/wNuPXio15Xa 7ydPddSy/vLnCM7nk8hpyqocbo+joyFv0QmVF98bRWpbvSX7sDqn7yINhOb7/kuaLvUL SZsA==
X-Gm-Message-State: AOJu0YxoGfwXpdakJ5t1hc2T0sErpIb1tq/fvR369pQ0oT9dA9TRzgk/ DOB7LY29aX6l8ShC35LcIkoylL/kRpTZB+os+AUksEdxmmRvl32fWGlfLD17W1/Fj/EDdgllq+d t6jBJ/GijAWuqtj06wZRAI0c8gYlyTn52Hh1nlQ==
X-Google-Smtp-Source: AGHT+IG/5Thv1R0kIyJvs3ctIVQlCPkTQHTnD8KsaMbmabcUGIAh103hUUXj5QZpuWeIJ/JDsPX/VUNLfkAhzyk7du4=
X-Received: by 2002:a05:6808:178b:b0:3c9:963b:7f7f with SMTP id 5614622812f47-3c99706a5c7mr37415553b6e.28.1716138699460; Sun, 19 May 2024 10:11:39 -0700 (PDT)
MIME-Version: 1.0
References: <CAHw9_iKavFk6QBU=rYXU5R7EigJZHNqyYengUpPF3KiCiCUEJQ@mail.gmail.com>
In-Reply-To: <CAHw9_iKavFk6QBU=rYXU5R7EigJZHNqyYengUpPF3KiCiCUEJQ@mail.gmail.com>
From: Steve Crocker <steve@shinkuro.com>
Date: Sun, 19 May 2024 13:11:28 -0400
Message-ID: <CABf5zvJLb9vA3fo8JT6jTHROzMda7vqdUcQh7cDzhDSEepQFzA@mail.gmail.com>
To: Warren Kumari <warren@kumari.net>, Wes Hardaker <hardaker@isi.edu>
Content-Type: multipart/alternative; boundary="000000000000912d280618d1ad2a"
X-MailFrom: steve@shinkuro.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-dnsop.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: dnsop <dnsop@ietf.org>, Steve Crocker <steve@shinkuro.com>
X-Mailman-Version: 3.3.9rc4
Precedence: list
Subject: [DNSOP]Re: Our reading of consensus on draft-hardaker-dnsop-rfc8624-bis, and the "must-not-algorithm" docs.
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/Kbp713ommSrsJYP4sdty_BGQ3wc>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Owner: <mailto:dnsop-owner@ietf.org>
List-Post: <mailto:dnsop@ietf.org>
List-Subscribe: <mailto:dnsop-join@ietf.org>
List-Unsubscribe: <mailto:dnsop-leave@ietf.org>

Warren, Wes, et al,

TL;DR: Yes and No.

Yes: Thanks for the initiative to move this into an IANA Registry.  This is
the right idea, and what I've been advocating for the past many months.

No: I don't think the scheme is quite right.

In my view, an algorithm moves through seven phases during its lifecycle.

1. Experimental – defined and included in the IANA registry
2. Adopted – begin inclusion in validation suite
3. Available – ok to use for signing
4. Mainstream – recommended for signing
5. Phaseout  – transition to newer signing algorithm
6. Deprecated  – signing should have stopped
7. Obsolete  – ok to remove from validation suite

Each transition from one phase to another should be controlled by an expert
group that advises IANA.  (In some cases, an algorithm might be
deprecated before reaching the "Mainstream" stage.)

When I try to reconcile the above with 8624 bis-03, there are some rough
edges.  The table below represents my view of the preferred words to use in
Table 2 in 8624 bis-03

Phase    Signing           Validation        Algorithms
  1      Must Not          May
  2      Must Not          Must
  3      May               Must              (8) RSASHA256, (13)
  4      Recommended       Must              (15) ED25519
  5      Not Recommended   Must              (5) RSASHA1, (7)
  6      Must Not          Must              (12) ECC-GOST
  7      Must Not          Must Not          (1) RSAMD5, (3) DSA, (6)

I'm not sure where to place algorithms (14) ECDSAP384SHA384 and (16) ED448.
They're marked as MAY/RECOMMENDED in 8624 bis-03, and I assume they're in
the early part of their life cycles, so I'm inclined to put them in phase
3, but I don't see how to distinguish their status from (8) RSASHA256, (13)
ECDSAP256SHA256.  Or perhaps these are in phase 5, which leads to the
question of how to distinguish them from the ones listed in phase 5.

Implementers and purveyors of crypto suites should treat May, Recommended
and Not Recommended as equivalent to Must.  The distinctions among these
terms are intended for usage of these algorithms, not the implementation of
the crypto suite.

Comment: In the recent Red Hat snafu, I heard a comment that it was not
possible to disable use of an algorithm for signing without also disabling
the algorithm for validation.  Hence, when Red Hat wanted to shut off use
of an algorithm for signing, it removed it from the crypto suite and thus
disabled validation.  While it's understable that a straightforward
implementation of a crypto suite might provide the same path to an
algorithm irrespective of whether it will be used for signing or
validation, it is possible provide distinct paths for these two uses and
thereby permit validation but not signing during phases 2 and 6 at the
beginning and end of the algorithm's life cycle.



On Tue, May 14, 2024 at 4:58 PM Warren Kumari <warren@kumari.net> wrote:

> <no-hats>
> Hello everybody,
> Firstly thank you for all of the discussion on these documents - we really
> appreciate the review and feedback.
> We’ve read all of the discussion(s) and will be updating the documents to
> address your comments, based on our understanding of the group’s consensus
> so far. While reviewing the discussion, we came to the realization that
> there are two potential paths forward for draft-hardaker-dnsop-rfc8624-bis,
> and we would like your opinion on which choice everyone feels is best.
> As evidenced by the discussions, implementations can’t realistically
> remove the Foo algorithm if many of their customers are still using it. So:
> Option 1: Pivot this document from providing implementers with guidance
> (“Implementers MUST NOT use Foo for signing”) to providing guidance to
> operators instead (“Operators MUST NOT use Foo for signing”).
> Or
> Option 2: Focus on removing algorithm usage first, by informing operators
> to stop using an algorithm to be deprecated, and then, later, specify that
> implementers may/should/must stop supporting the algorithm.
> We think Option 2 makes much more sense, as this provides both
> “operational guidance” and “implementation guidance.”  With such, we can
> leave implementations interoperable while slowly decreasing algorithm
> deployment until it is safe to actually remove implementation support once
> perceived usage has decreased. If we were to provide guidance to either
> implementers or operators -- but not both --  then we leave one side
> questioning their purpose in life.
> This means that we should actually have a column per type (i.e “Operators”
> and “Implementers”) crossed with a column per DNSSEC usage type (“Signing”
> and “Validation”), such that for the “Domain Name System Security (DNSSEC)
> Algorithm Numbers” table we would be adding FOUR columns:
>    -
>    “Use for DNSSEC Signing”
>    -
>    “Use for DNSSEC Validation”
>    -
>    “Implement for DNSSEC Signing”
>    -
>    “Implement for DNSSEC Validation”
> And four for “DNSSEC Delegation Signer (DS) Resource Record (RR) Type
> Digest Algorithms”:
>    -
>    “Use for DNSSEC Delegation”
>    -
>    “Use for DNSSEC Validation”
>    -
>    “Implement for DNSSEC Delegation”
>    -
>    “Implement for DNSSEC Validation”
> With these in place, drafts like the draft-hardaker-dnsop-must-not-sha1can
> be written with each recommendation to be  discussed individually.
> Note that we have not updated the text in the repository yet as this would
> be a fairly major overhaul, and we wanted to get the working group’s
> opinions on the subject first.
> Wes and Warren
> P.S: When reading the thread, we suddenly realized that the
> “draft-hardaker-dnsop-must-not-gost” document needed even more
> clarification that it is only talking about the “old” GOST (RFC5933), and
> not the “new” GOST (RFC 9558).
> The “old” GOST RFC was made historic (see “Change the status of GOST
> Signature Algorithms in DNSSEC in the IETF stream to Historic” -
> *https://datatracker.ietf.org/doc/status-change-gost-dnssec-to-historic/*
> <https://datatracker.ietf.org/doc/status-change-gost-dnssec-to-historic/>
> ). Old GOST was “deprecated by the Orders of the Federal Agency for
> Technical Regulation and Metrology of Russia (Rosstandart) in August 2012,
> and superseded by GOST 34.10-2012 and GOST 34.11-2012 respectively from January
> 1, 2013), which provides a good justification. This means that we can
> remove the “The security of the ECC-GOST algorithm [RFC5933] has been
> slowly diminishing over time as various forms of attacks have weakened its
> cryptographic underpinning.”  hand-wavy justification.
> </no-hats>
> _______________________________________________
> DNSOP mailing list -- dnsop@ietf.org
> To unsubscribe send an email to dnsop-leave@ietf.org

Sent by a Verified
[image: Sent by a Verified sender]