Re: [tcpm] Roman Danyliw's Discuss on draft-ietf-tcpm-yang-tcp-07: (with DISCUSS and COMMENT)

"Scharf, Michael" <Michael.Scharf@hs-esslingen.de> Mon, 05 September 2022 09:10 UTC

Return-Path: <Michael.Scharf@hs-esslingen.de>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 65B74C15257E; Mon, 5 Sep 2022 02:10:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.104
X-Spam-Level:
X-Spam-Status: No, score=-7.104 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, 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 (1024-bit key) header.d=hs-esslingen.de
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mQPyzDo4fFJw; Mon, 5 Sep 2022 02:10:20 -0700 (PDT)
Received: from mail.hs-esslingen.de (mail.hs-esslingen.de [134.108.32.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 635A5C152586; Mon, 5 Sep 2022 02:09:33 -0700 (PDT)
Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.hs-esslingen.de (Postfix) with ESMTP id 81D6F25A4B; Mon, 5 Sep 2022 10:53:29 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=hs-esslingen.de; s=mail; t=1662368009; bh=Bu+UVwDr8V3/D7FLuUw2K/ofCi8jk88rfuarMay214k=; h=From:To:CC:Subject:Date:References:In-Reply-To:From; b=k1gXsUT7IluKcEYK4FPZYj2PwqXp3p7xNWzR0gZPaK3zk6n3lNlPTvnNr6D5nZ5pI pKEk0k+QJdlvlxMh9e5nSSirldUL0vJ4OjaI1ZyY3uYyLSg5hB6XbeKBe7nHWIeNwY F4wo8/J2Geh/d3aDgPUb0RdDFUiuq9WdTVnJZjac=
X-Virus-Scanned: by amavisd-new-2.7.1 (20120429) (Debian) at hs-esslingen.de
Received: from mail.hs-esslingen.de ([127.0.0.1]) by localhost (hs-esslingen.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RGZMr77aT0vI; Mon, 5 Sep 2022 10:53:28 +0200 (CEST)
Received: from rznt8201.rznt.rzdir.fht-esslingen.de (rznt8201.hs-esslingen.de [134.108.48.164]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.hs-esslingen.de (Postfix) with ESMTPS; Mon, 5 Sep 2022 10:53:28 +0200 (CEST)
Received: from rznt8202.rznt.rzdir.fht-esslingen.de (134.108.48.165) by rznt8201.rznt.rzdir.fht-esslingen.de (134.108.48.164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 5 Sep 2022 10:53:27 +0200
Received: from rznt8202.rznt.rzdir.fht-esslingen.de ([fe80::aca4:171a:3ee1:57e0]) by rznt8202.rznt.rzdir.fht-esslingen.de ([fe80::aca4:171a:3ee1:57e0%3]) with mapi id 15.01.2375.031; Mon, 5 Sep 2022 10:53:27 +0200
From: "Scharf, Michael" <Michael.Scharf@hs-esslingen.de>
To: Roman Danyliw <rdd@cert.org>, The IESG <iesg@ietf.org>
CC: "draft-ietf-tcpm-yang-tcp@ietf.org" <draft-ietf-tcpm-yang-tcp@ietf.org>, "tcpm-chairs@ietf.org" <tcpm-chairs@ietf.org>, "tcpm@ietf.org" <tcpm@ietf.org>, "nsd.ietf@gmail.com" <nsd.ietf@gmail.com>
Thread-Topic: Roman Danyliw's Discuss on draft-ietf-tcpm-yang-tcp-07: (with DISCUSS and COMMENT)
Thread-Index: AQHYi8yWqpYxf/XurU6JgauzF7fgY63Ky2Cg
Date: Mon, 05 Sep 2022 08:53:27 +0000
Message-ID: <810dbd31883342ffbc514a825bb40969@hs-esslingen.de>
References: <165651637903.27765.15214938683310593938@ietfa.amsl.com>
In-Reply-To: <165651637903.27765.15214938683310593938@ietfa.amsl.com>
Accept-Language: de-DE, en-US
Content-Language: de-DE
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [134.108.140.249]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/Hr6iRIkNrfnLHWQ1r2dcJs_Jjlo>
Subject: Re: [tcpm] Roman Danyliw's Discuss on draft-ietf-tcpm-yang-tcp-07: (with DISCUSS and COMMENT)
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 05 Sep 2022 09:10:24 -0000

Hi Roman,

Thank you for this feedback and sorry for staying silent during the holiday season.

The authors have prepared a new version -08. Please refer to https://www.ietf.org/rfcdiff?url2=draft-ietf-tcpm-yang-tcp-08 to see the changes.

Unfortunately, when preparing -08, one of the patches got lost, and therefore one change regarding one of your concerns is still missing in -08. Sorry! This was not intended, and this bug will be fixed in the next version -09. The suggested change for -09 is explained below.

> -----Original Message-----
> From: Roman Danyliw via Datatracker <noreply@ietf.org>
> Sent: Wednesday, June 29, 2022 5:26 PM
> To: The IESG <iesg@ietf.org>
> Cc: draft-ietf-tcpm-yang-tcp@ietf.org; tcpm-chairs@ietf.org; tcpm@ietf.org;
> nsd.ietf@gmail.com; nsd.ietf@gmail.com
> Subject: Roman Danyliw's Discuss on draft-ietf-tcpm-yang-tcp-07: (with
> DISCUSS and COMMENT)
> 
> Roman Danyliw has entered the following ballot position for
> draft-ietf-tcpm-yang-tcp-07: Discuss
> 
> When responding, please keep the subject line intact and reply to all
> email addresses included in the To and CC lines. (Feel free to cut this
> introductory paragraph, however.)
> 
> 
> Please refer to
> https://www.ietf.org/about/groups/iesg/statements/handling-ballot-
> positions/
> for more information about how to handle DISCUSS and COMMENT
> positions.
> 
> 
> The document, along with other ballot positions, can be found here:
> https://datatracker.ietf.org/doc/draft-ietf-tcpm-yang-tcp/
> 
> 
> 
> ----------------------------------------------------------------------
> DISCUSS:
> ----------------------------------------------------------------------
> 
> ** B.2.  Thanks for providing an example of a TCP-AO configuration.
> Unfortunately, this isn't a valid example example and it seems to be making
> citations that don't match.  Specifically:
> 
> -- "<crypto-algorithm>hmac-sha-256</crypto-algorithm>"
> 
> The algorithms usable by TCP-AO come from
> https://www.iana.org/assignments/tcp-parameters/tcp-
> parameters.xhtml#tcp-parameters-3.
>  Only SHA1 and AES128 are registered.  As far as I tell, the only work to add
> SHA256 is in an unadopted and expired draft
> (https://datatracker.ietf.org/doc/draft-nayak-tcp-sha2/).
> 
> As aside, I think the algorithm name would have been SHA-256 or SHA256 (no
> HMAC).

Good catch. The examples now use AES-128 (BTW, an identifier for AES-128 is not defined in the YANG model in RFC 8177, but it is needed.)

There has been not much energy in TCPM to finalize draft-nayak-tcp-sha2 some years ago. Indeed, we should not use this algorithm in this document. In the meantime, further TCP-AO implementations have emerged. This may open an opportunity to standardize further TCP-AO algorithms. Yet, this discussion seems orthogonal to this YANG model.

> --    Per the link to RFC9235:
> 
>     The following example demonstrates how to model a TCP-AO [RFC5925]
>    configuration for the example in TCP-AO Test Vectors [RFC9235].  The
>    IP addresses and other parameters are taken from the test vectors.
> 
> RFC9235 doesn't use SHA256; and uses KeyID 61 and 84.  Different KeyIDs are
> used in this example.  Which parameters are being used from the test-
> vector?

Good catch. This mismatch was not intended, and we agree that this should be fixed. Yet, unfortunately, when preparing version -08, the authors messed up the corresponding patch, and version -08 still shows the old variant. The current proposal for the example in the next version -09 is:

<!--
This example sets TCP-AO configuration parameters similar to
the examples in RFC 9235.
-->

<key-chains
    xmlns="urn:ietf:params:xml:ns:yang:ietf-key-chain">
  <key-chain>
    <name>ao-config</name>
    <description>"An example for TCP-AO configuration."</description>
    <key>
      <key-id>55</key-id>
      <lifetime>
        <send-lifetime>
          <start-date-time>2017-01-01T00:00:00Z</start-date-time>
          <end-date-time>2017-02-01T00:00:00Z</end-date-time>
        </send-lifetime>
        <accept-lifetime>
          <start-date-time>2016-12-31T23:59:55Z</start-date-time>
          <end-date-time>2017-02-01T00:00:05Z</end-date-time>
        </accept-lifetime>
      </lifetime>
      <crypto-algorithm
	  xmlns:tcp=
	  "urn:ietf:params:xml:ns:yang:ietf-tcp">tcp:aes-128</crypto-algorithm>
      <key-string>
	<keystring>testvector</keystring>
      </key-string>
      <authentication
	  xmlns="urn:ietf:params:xml:ns:yang:ietf-tcp">
	<keychain>ao-config</keychain>
	<ao>
	  <send-id>61</send-id>
	  <recv-id>84</recv-id>
	</ao>
      </authentication>
    </key>
  </key-chain>
</key-chains>

As shown in the example, the suggestion is to use the key ideas from RFC 9235. I'd also simplify the example by using only one entry in the key-chain.

Unless somebody agrees, this example will be used in the next version -09, which will be published soon.

> ----------------------------------------------------------------------
> COMMENT:
> ----------------------------------------------------------------------
> 
> Thank you to Hilarie Orman for the SECDIR review.
> 
> I concur with the SECDIR observation that "there are no statistics kept for
> authentication failures.  If a shared key falls out of synch, the statistics
> might help detect that."  I appreciate the response
> (https://mailarchive.ietf.org/arch/msg/secdir/BnjVJ7_IgN7mSNaGi3H2ujVYv
> n0/)
> which recommends that this should be generically modeled.  I disagree that
> this
> should be deferred. There is a very specific TCP-level primitive being
> described here and it makes sense to me to provide a corresponding logging
> primitive.

Personally, I don't agree to that observation. For what it is worth, I have replied to this comment already with follow-up questions, as documented in https://mailarchive.ietf.org/arch/msg/tcpm/H0UNpd1Fh-uI6rblHh1895-7iT4/. Unfortunately, I am not aware of any reply.

Yet, that is my personal view only. Adding some counter to make everybody happy may not be a big deal. Therefore, the model now includes in -08 an additional counter:

         leaf auth-failures {	
 	           if-feature authentication;	
 	           type yang:counter64;	
 	           description	
 	             "The number of times that authentication has failed either	
 	              with TCP-AO or MD5.";	
         }

This hopefully sorts out this issue.

Thanks

Michael