Re: draft-ietf-bfd-optimizing-authentication-13 nits

Jeffrey Haas <jhaas@pfrc.org> Fri, 26 January 2024 01:37 UTC

Return-Path: <jhaas@pfrc.org>
X-Original-To: rtg-bfd@ietfa.amsl.com
Delivered-To: rtg-bfd@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 276E0C14F6F6; Thu, 25 Jan 2024 17:37:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=ham autolearn_force=no
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 TXa4FkrDoejy; Thu, 25 Jan 2024 17:37:54 -0800 (PST)
Received: from slice.pfrc.org (slice.pfrc.org [67.207.130.108]) by ietfa.amsl.com (Postfix) with ESMTP id B149EC14F6F4; Thu, 25 Jan 2024 17:37:53 -0800 (PST)
Received: from smtpclient.apple (172-125-100-52.lightspeed.livnmi.sbcglobal.net [172.125.100.52]) by slice.pfrc.org (Postfix) with ESMTPSA id C35E61E039; Thu, 25 Jan 2024 20:37:52 -0500 (EST)
Content-Type: multipart/alternative; boundary="Apple-Mail=_8CF172F6-2008-4B61-A95E-70203980E8DC"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.4\))
Subject: Re: draft-ietf-bfd-optimizing-authentication-13 nits
From: Jeffrey Haas <jhaas@pfrc.org>
In-Reply-To: <F1A9C610-C1C6-48D7-B88B-A245D8E6F58C@gmail.com>
Date: Thu, 25 Jan 2024 20:37:52 -0500
Cc: draft-ietf-bfd-optimizing-authentication@ietf.org, "rtg-bfd@ietf. org" <rtg-bfd@ietf.org>, Manav Bhatia <manavbhatia@gmail.com>, Ashesh Mishra <mishra.ashesh@gmail.com>
Message-Id: <CEDF9FA8-5B0D-46A0-88A6-84B8537D909F@pfrc.org>
References: <4F3695C8-3736-4E55-B5BB-84671FDC367E@pfrc.org> <A8D0BCD4-15FA-4061-A7F0-6D888158F5A3@gmail.com> <D3DB82BE-730A-4D7C-88B8-3B309C5AC3B9@pfrc.org> <9CDB2C7B-BAB6-476C-9F12-BFA7EAD6DD60@gmail.com> <478E63ED-1784-4522-96A8-6813A2028F40@gmail.com> <3B169E77-D0E6-4282-9F74-5ED9E0CB45CF@pfrc.org> <27C39AF2-D01F-48C5-A564-B600D1439CAC@gmail.com> <923B21A6-0263-4C10-B5AB-AE470F4B5014@pfrc.org> <D68A88A8-815F-4BC3-90B7-51D96F2A8ECF@gmail.com> <3511ED37-3827-45DC-B819-814C3D18C7DD@pfrc.org> <F1A9C610-C1C6-48D7-B88B-A245D8E6F58C@gmail.com>
To: Mahesh Jethanandani <mjethanandani@gmail.com>
X-Mailer: Apple Mail (2.3696.120.41.1.4)
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtg-bfd/RB82zo41ebwHvBFUfkYcUvNr_n0>
X-BeenThere: rtg-bfd@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "RTG Area: Bidirectional Forwarding Detection DT" <rtg-bfd.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtg-bfd>, <mailto:rtg-bfd-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtg-bfd/>
List-Post: <mailto:rtg-bfd@ietf.org>
List-Help: <mailto:rtg-bfd-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtg-bfd>, <mailto:rtg-bfd-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 26 Jan 2024 01:37:55 -0000


> On Jan 25, 2024, at 6:39 PM, Mahesh Jethanandani <mjethanandani@gmail.com> wrote:
> 
>> On Jan 24, 2024, at 12:19 PM, Jeffrey Haas <jhaas@pfrc.org <mailto:jhaas@pfrc.org>> wrote:
> Ok. I have added a couple of leafs. One is called ‘up-auth-type’ which is of type iana-bfd-types:auth-type that can be used to indicate what auth-type should be used once the session reaches UP state. It should be one of NULL Auth type or Meticulous ISAAC. The second is a strong-auth leaf which is also of type iana-bfd-types:auth-type which specifies one of the strong authentication mechanisms (not including simple password).

I've started annotating the repository with comments to help converge there.

The thing I think is missing in the most recent round is that the up-auth flavor of things is really a keychain entry of its own, or something similar.  As per the Meticulous Keyed ISAAC proposal, there may be distinct authentication parameters, like a secret, vs. the one used for strong.

> 
>> 
>> If you use NULL auth for the optimization procedures, you require no additional authentication parameters.  
> 
> Not quite. We still have the 'strong-auth-interval’ that specifies how often we need to perform a strong authentication when NULL Auth is used, something we discussed below.

Agreed. I had meant the secret.

>> If you use Meticulous Keyed ISAAC, you require a key-id and a shared secret, same as you do for SHA-1, MD5, etc.
> 
> True, but in the base BFD YANG model we point to the key-chain for it, which is what ISAAC will have to use.

See above; the secret may be different.

As I flagged in the review, I'll check the keychain semantics in more detail tomorrow.


> 
>> 
>> Thus what is needed for the optimization case is "do optimization, here's my second mechanism and its configuration".
> 
> Ok. The tree diagram currently looks like this:
> 
>     augment /rt:routing/rt:control-plane-protocols
>             /rt:control-plane-protocol/bfd:bfd/bfd-ip-sh:ip-sh
>             /bfd-ip-sh:sessions/bfd-ip-sh:session
>             /bfd-ip-sh:authentication:
>     +--rw optimized-auth?         boolean {optimized-auth}?
>     +--rw up-auth-type?           iana-bfd-types:auth-type
>     +--rw strong-auth?            iana-bfd-types:auth-type
>     +--rw strong-auth-interval?   uint32
> 

I'll also note that the existing YANG module includes a leaf for meticulous mode which can help with the bfd-stability work.

> 
> But stability can be detected even when A bit is not set. Do we need to configure NULL auth to detect loss of packets?

It cannot be detected without the a-bit.  As I noted in the review, "NULL" auth is not "a-bit zero", it's a specific authentication type that includes the sequence number.

Raw RFC 5880 BFD without authentication DOES NOT contain any sequence numbers.  That's why we need the NULL auth.

I'm starting to wonder if we need a rename of "NULL" to something else because as someone clued on BFD you're wanting it to mean "no authenticaton". You wouldn't be the only one.

> 
> If Meticulous Keyed ISAAC is used as the second bit of authentication when optimization is configured, then we do not need the ’secure-sequence-number’ flag. 

Exactly.  And, as Alan keeps helping to point out, we really don't have a "secure sequence number" feature any more.  It evolved into a full authentication type.

-- Jeff