Re: [Detnet] I-D Action: draft-ietf-detnet-security-14.txt

Ethan Grossman <ethan@ieee.org> Thu, 11 February 2021 23:42 UTC

Return-Path: <ethan@ieee.org>
X-Original-To: detnet@ietfa.amsl.com
Delivered-To: detnet@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C44623A0E47 for <detnet@ietfa.amsl.com>; Thu, 11 Feb 2021 15:42:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.349
X-Spam-Level:
X-Spam-Status: No, score=-2.349 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.25, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ieee.org
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 yarRtOhqaYVQ for <detnet@ietfa.amsl.com>; Thu, 11 Feb 2021 15:42:05 -0800 (PST)
Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com [IPv6:2607:f8b0:4864:20::630]) (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 50BBE3A0E43 for <detnet@ietf.org>; Thu, 11 Feb 2021 15:42:05 -0800 (PST)
Received: by mail-pl1-x630.google.com with SMTP id a24so2265700plm.11 for <detnet@ietf.org>; Thu, 11 Feb 2021 15:42:05 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee.org; s=google; h=reply-to:from:to:cc:references:in-reply-to:subject:date :organization:message-id:mime-version:content-transfer-encoding :thread-index:content-language; bh=X6cljHXCSU8PejEPFtSl8kpCS1uXGWWTB2BSOtJrO2s=; b=DOPkFV7+aEbrZAyDLpqPLLuF/brGaRPuVJPLwqLHxCShAGpJ5STZUaydRzBGGucsP9 p2+ztxiKTow248b7VhdmjcaV1pgAPTCooYiGoJ2FNKPXNdEUdlAAmNbC9r5dItM8BLq5 PjznGiOVdA4SytlCvJbM8l2WNw6GfK5v+Oggg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:reply-to:from:to:cc:references:in-reply-to :subject:date:organization:message-id:mime-version :content-transfer-encoding:thread-index:content-language; bh=X6cljHXCSU8PejEPFtSl8kpCS1uXGWWTB2BSOtJrO2s=; b=XDftJ1XZ/rmhCr8Ve1tXNGizyizJdX6WiGwZAM1NQUv63MDqmADIAO4k+MJClzx9k+ 4I7z9xUiiTLcMIBTDd415dRZU0/IiUkJTxS/MQ/rs3L6nRll+s1uuWeMApQgV8ntbNLi FQv3/5r54XdNHE+kY5rv1MoWau8W19rI+HLzaRO/YSoSvuWNqcgRq8sO5xjmNE4Hb5D1 ZXgWhdgroY5QgvqtaGCLiokcI+RsiyVZUVBc96g39PwLg7EaZNiHAOelyxsl+6+mP0Wn GBQEZGX8M8DPTjKjpdr2dIhjRBhQ3CloxCmQK3jcJkJMFboJVfDj2PJjz7w7W0pNPxNh epQw==
X-Gm-Message-State: AOAM530yu0wmt9ZeVeCs/oWVlm8+IesySEwEY+EYvmZWJ38OXnPYKiPU +B72N89jpHvyV1StaQn728FyPw==
X-Google-Smtp-Source: ABdhPJwVMLk/OykmXy3cHa6THukPxv26we+8XsJ0XPyP5wCwv71pFKx1r0JXC655opVWUmGZTYUwPg==
X-Received: by 2002:a17:902:f683:b029:de:18c7:41fa with SMTP id l3-20020a170902f683b02900de18c741famr442458plg.57.1613086924594; Thu, 11 Feb 2021 15:42:04 -0800 (PST)
Received: from DESKTOPC435DDQ (99-46-181-151.lightspeed.sntcca.sbcglobal.net. [99.46.181.151]) by smtp.gmail.com with ESMTPSA id r20sm6952911pgb.3.2021.02.11.15.42.03 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 11 Feb 2021 15:42:03 -0800 (PST)
Reply-To: ethan@ieee.org
From: Ethan Grossman <ethan@ieee.org>
To: 'Benjamin Kaduk' <kaduk@mit.edu>
Cc: 'Yaron Sheffer' <yaronf.ietf@gmail.com>, detnet@ietf.org, detnet-chairs@ietf.org, db3546@att.com, 'Magnus Westerlund' <magnus.westerlund@ericsson.com>, 'Murray Kucherawy' <superuser@gmail.com>, 'Roman Danyliw' <rdd@cert.org>, 'Robert Wilton' <rwilton@cisco.com>, 'Barry Leiba' <barryleiba@computer.org>, "'Eric Vyncke (evyncke)'" <evyncke@cisco.com>
References: <161222304516.19756.17029275227155031152@ietfa.amsl.com> <01a501d6f8f5$a8ff54f0$fafdfed0$@ieee.org> <B9C7692F-705C-46F1-BA80-DA9B56F72024@gmail.com> <005001d6fa61$32e46950$98ad3bf0$@ieee.org> <20210211041311.GU21@kduck.mit.edu> <003301d700c6$d51385b0$7f3a9110$@ieee.org> <20210211232913.GJ21@kduck.mit.edu>
In-Reply-To: <20210211232913.GJ21@kduck.mit.edu>
Date: Thu, 11 Feb 2021 15:42:02 -0800
Organization: Coast Computer Design
Message-ID: <003d01d700cf$7ffee340$7ffca9c0$@ieee.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQH7lW+9udqIHZ7uHiplFLLVTTTeTQKzVS7jAmraV9gCED0uTQGB6GPxAYc1vaMCTQIlLammTnIg
Content-Language: en-us
Archived-At: <https://mailarchive.ietf.org/arch/msg/detnet/-Hu5_dIvGwcLN2A3_VgWqgrN6LY>
Subject: Re: [Detnet] I-D Action: draft-ietf-detnet-security-14.txt
X-BeenThere: detnet@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Discussions on Deterministic Networking BoF and Proposed WG <detnet.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/detnet>, <mailto:detnet-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/detnet/>
List-Post: <mailto:detnet@ietf.org>
List-Help: <mailto:detnet-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/detnet>, <mailto:detnet-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Feb 2021 23:42:08 -0000

Thanks Ben, I did find RFC 4432, but all I can see that it says around this
is "This may be a transient key generated solely for
   this SSH connection, or it may be re-used for several connections." It
doesn't say anything about being "safest to generate a key each time" so I
figured that wasn't the right reference. Anyway I don't mean to be pedantic
about this, I'm just trying to make the most out of the material that you've
given me. If it isn't worth pursuing, I'm OK with leaving the text as it is
below, if you and Yaron are OK with that. 
Thanks again for your help...
Ethan.

-----Original Message-----
From: Benjamin Kaduk <kaduk@mit.edu> 
Sent: Thursday, February 11, 2021 3:29 PM
To: Ethan Grossman <ethan@ieee.org>
Cc: 'Yaron Sheffer' <yaronf.ietf@gmail.com>; detnet@ietf.org;
detnet-chairs@ietf.org; db3546@att.com; 'Magnus Westerlund'
<magnus.westerlund@ericsson.com>; 'Murray Kucherawy' <superuser@gmail.com>;
'Roman Danyliw' <rdd@cert.org>; 'Robert Wilton' <rwilton@cisco.com>; 'Barry
Leiba' <barryleiba@computer.org>; 'Eric Vyncke (evyncke)'
<evyncke@cisco.com>
Subject: Re: [Detnet] I-D Action: draft-ietf-detnet-security-14.txt

Hi Ethan,

On Thu, Feb 11, 2021 at 02:39:59PM -0800, Ethan Grossman wrote:
> Hi Ben and Yaron,
> Thanks for this info. Does my proposed text below correctly incorporate
your points? 
> 
> Regarding Ben's statement "SSH provides an "rsa2048-sha256" key exchange
method wherein the server sends an RSA public key and the client encrypts
some material to that key.  The guidance in that document is a little vague,
saying that it's safest to generate a new key each time, but allowing for
some unspecified level of reuse."  I can't seem to find the RFC for that
reference - I got as close as
https://tools.ietf.org/id/draft-ietf-curdle-ssh-kex-sha2-09.html
(section 3.29) but no closer. If you could point me in the right direction I
could update my text. 

Sorry!  The spec for rsa2048-sha256 is RFC 4432.


> Thanks,
> Ethan.
> 
> OLD: 
> If crypto keys are to be regenerated over the duration of the flow
>    then the time required to accomplish this must be accounted for in
>    the latency calculations.  Unfortunately, key generation is a
>    cryptographic operation that is frequently not possible to implement
>    in constant time, most notably (though not exclusively) for RSA key
>    pairs.
> 
> NEW: 
> When protocols such as IPsec/IKEv2 and MACsec are used, keys are 
> typically only generated when a flow is instantiated, so the time

I think I may have written sloppily to give you this impression, but it's
not the case (at least for IPsec/IKEv2) -- IKEv2 will periodically re-key a
connection after some amount of traffic.  It's just that IKEv2 only has
Diffie-Hellman or similar types of key exchange, so unpredictable RSA key
generation times are not a factor for IKEv2 re-key.

> required for key generation does not impact the latency of packets 
> within a flow. However, depending on the use case, it may be desirable 
> to regenerate fresh (ephemeral) RSA keys during the flow, for example 
> based on a time period or amount of data sent. For example, for SSH, 
> [ref to
> https://tools.ietf.org/html/rfc4253#section-9 ]) recommends that "keys 
> be changed after each gigabyte of transmitted data or after each hour 
> of connection time, whichever  comes sooner". That same reference 
> describes the SSH process for key re-exchange, which is essentially 
> the same mechanism as for initial key exchange.

It also seems like this paragraph is starting to get pretty long and it's
not clear that it's adding enough value to justify that length.
IIUC the key point is just that rekeying during a connection is a normal and
recommended operation, with the need to account for the delay introduced by
key generation being pushed off to the following paragraph.
Generating RSA keys is only noteworthy for its non-constant-time-ness, which
is not actually mentioned here, so mentioning RSA keygen seems to be not
doing much for us.

> If the keys are to be regenerated over the duration of a flow then the 
> time required to accomplish this must be accounted for in the latency 
> calculations for that flow.  Fortunately, modern ECDH (Elliptical 
> Curve
> Diffie-Hellman) operations (such as x25519, e.g. see [ref to 
> https://tools.ietf.org/html/rfc7748] ) can be performed in constant time.

(Maybe say explicitly that since it's constant time that it can be reliably
corrected for?)

> END

I think my proposal would be to stick closer to the original, with something
like:

In the general case cryptographic hygeine requires the generation of new
keys during the lifetime of an encrypted flow [ref ssh], and key generation
(or key exchange) takes additional time that must be accounted for in the
latency calculations for that flow.  For modern ECDH key-exchange operations
(such as x25519 [ref]), the operation can be performed in (predictable)
constant time, though this is not universally true (such as for legacy RSA
key exchange [ref 4432]).

-Ben

> -----Original Message-----
> From: Benjamin Kaduk <kaduk@mit.edu>
> Sent: Wednesday, February 10, 2021 8:13 PM
> To: Ethan Grossman <ethan@ieee.org>
> Cc: 'Yaron Sheffer' <yaronf.ietf@gmail.com>; detnet@ietf.org; 
> detnet-chairs@ietf.org; db3546@att.com; 'Magnus Westerlund' 
> <magnus.westerlund@ericsson.com>; 'Murray Kucherawy' 
> <superuser@gmail.com>; 'Roman Danyliw' <rdd@cert.org>; 'Robert Wilton' 
> <rwilton@cisco.com>; 'Barry Leiba' <barryleiba@computer.org>; 'Eric 
> Vyncke (evyncke)' <evyncke@cisco.com>
> Subject: Re: [Detnet] I-D Action: draft-ietf-detnet-security-14.txt
> 
> Interestingly enough, I can, but only as a result of doing AD review of a
different document yesterday!
> 
> The point is a good one to raise, as it is definitely unusual to be doing
ephemeral RSA key generation for key update on a live connection.
> 
> That said, I believe that SSH provides an "rsa2048-sha256" key exchange
method wherein the server sends an RSA public key and the client encrypts
some material to that key.  The guidance in that document is a little vague,
saying that it's safest to generate a new key each time, but allowing for
some unspecified level of reuse.  Per
https://tools.ietf.org/html/rfc4253#section-9, key update of a live
connection basically just uses the same mechanisms as initial key exchange,
which thus might include generating a fresh ephemeral RSA key.
> 
> (I don't believe that IPsec/IKEv2 has ever supported such a mechanism, 
> and I'm not very familiar with the details of what MACsec does, but I 
> don't expect it to have anything like this either.)
> 
> My understanding matches Yaron's that one of the myriad benefits of 
> (e.g.)
> x25519 ECDH key exchange is that it's super-easy to implement in constant
time.
> 
> -Ben
> 
> On Wed, Feb 03, 2021 at 11:17:21AM -0800, Ethan Grossman wrote:
> > Thanks Yaron, glad to hear it. Regarding the RSA key pair question,
perhaps Benjamin Kaduk could provide us some thoughts on this, since he did
have comments around that section? Benjamin? 
> > Ethan.
> > 
> > -----Original Message-----
> > From: Yaron Sheffer <yaronf.ietf@gmail.com>
> > Sent: Wednesday, February 3, 2021 10:58 AM
> > To: ethan@ieee.org; detnet@ietf.org; detnet-chairs@ietf.org; 
> > db3546@att.com
> > Cc: 'Magnus Westerlund' <magnus.westerlund@ericsson.com>; 'Murray 
> > Kucherawy' <superuser@gmail.com>; 'Roman Danyliw' <rdd@cert.org>; 
> > 'Benjamin Kaduk' <kaduk@mit.edu>; 'Robert Wilton' 
> > <rwilton@cisco.com>; 'Barry Leiba' <barryleiba@computer.org>; 'Eric
Vyncke (evyncke)'
> > <evyncke@cisco.com>
> > Subject: Re: [Detnet] I-D Action: draft-ietf-detnet-security-14.txt
> > 
> > Thank you, this is a lot better!
> > 
> > A quick comment: in Sec. 7.5.1 you mention RSA key pairs. I'm not
familiar with cases where RSA key pairs are generated on the fly as part of
a key exchange protocol. And AFAIK (someone might want to correct me here)
the more common, more modern ECDH operations can be performed in constant
time.
> > 
> > Thanks,
> > 	Yaron
> > 
> > On 2/2/21, 01:55, "Ethan Grossman" <ethan@ieee.org> wrote:
> > 
> >     Hi All,
> >     We have submitted draft 14 of the DetNet Security Considerations
draft,
> >     which includes resolutions for all remaining AD review comments (as
noted in
> >     my previous emails with the per-reviewer dispositions). 
> >     Specifically, this version addresses comments from Yaron Sheffer,
Magnus
> >     Westerlund, Murray Kucherawy, Eric Vyncke, Roman Danyliw, Benjamin
Kaduk,
> >     Robert Wilton, and Barry Leiba.
> > 
> >     Thank you all for your reviews, and I hope we have addressed each of
your
> >     comments to your satisfaction - if you have any further comments,
> >     suggestions or corrections please don't hesitate to let us know. 
> > 
> >     Sincerely,
> >     Ethan (as Editor, DetNet Security Considerations draft)
> > 
> >     -----Original Message-----
> >     From: detnet <detnet-bounces@ietf.org> On Behalf Of
internet-drafts@ietf.org
> >     Sent: Monday, February 1, 2021 3:44 PM
> >     To: i-d-announce@ietf.org
> >     Cc: detnet@ietf.org
> >     Subject: [Detnet] I-D Action: draft-ietf-detnet-security-14.txt
> > 
> > 
> >     A New Internet-Draft is available from the on-line Internet-Drafts
> >     directories.
> >     This draft is a work item of the Deterministic Networking WG of the
IETF.
> > 
> >             Title           : Deterministic Networking (DetNet) Security
> >     Considerations
> >             Authors         : Ethan Grossman
> >                               Tal Mizrahi
> >                               Andrew  J. Hacker
> >     	Filename        : draft-ietf-detnet-security-14.txt
> >     	Pages           : 59
> >     	Date            : 2021-02-01
> > 
> >     Abstract:
> >        A DetNet (deterministic network) provides specific performance
> >        guarantees to its data flows, such as extremely low data loss
rates
> >        and bounded latency (including bounded latency variation, i.e.
> >        "jitter").  As a result, securing a DetNet requires that in
addition
> >        to the best practice security measures taken for any
mission-critical
> >        network, additional security measures may be needed to secure the
> >        intended operation of these novel service properties.
> > 
> >        This document addresses DetNet-specific security considerations
from
> >        the perspectives of both the DetNet system-level designer and
> >        component designer.  System considerations include a taxonomy of
> >        relevant threats and attacks, and associations of threats versus
use
> >        cases and service properties.  Component-level considerations
include
> >        ingress filtering and packet arrival time violation detection.
> > 
> >        This document also addresses security considerations specific to
the
> >        IP and MPLS data plane technologies, thereby complementing the
> >        Security Considerations sections of those documents.
> > 
> > 
> >     The IETF datatracker status page for this draft is:
> >     https://datatracker.ietf.org/doc/draft-ietf-detnet-security/
> > 
> >     There are also htmlized versions available at:
> >     https://tools.ietf.org/html/draft-ietf-detnet-security-14
> >     
> > https://datatracker.ietf.org/doc/html/draft-ietf-detnet-security-14
> > 
> >     A diff from the previous version is available at:
> >     https://www.ietf.org/rfcdiff?url2=draft-ietf-detnet-security-14
> > 
> > 
> >     Please note that it may take a couple of minutes from the time of
submission
> >     until the htmlized version and diff are available at tools.ietf.org.
> > 
> >     Internet-Drafts are also available by anonymous FTP at:
> >     ftp://ftp.ietf.org/internet-drafts/
> > 
> > 
> >     _______________________________________________
> >     detnet mailing list
> >     detnet@ietf.org
> >     https://www.ietf.org/mailman/listinfo/detnet
> > 
>  
>