Re: [auth48] *[AD] Re: AUTH48: RFC-to-be 9429 <draft-uberti-rtcweb-rfc8829bis-05> for your review

Eric Rescorla <ekr@rtfm.com> Mon, 15 January 2024 19:36 UTC

Return-Path: <ekr@rtfm.com>
X-Original-To: auth48archive@ietfa.amsl.com
Delivered-To: auth48archive@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F3FADC15109D for <auth48archive@ietfa.amsl.com>; Mon, 15 Jan 2024 11:36:47 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.903
X-Spam-Level:
X-Spam-Status: No, score=-1.903 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, 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=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=rtfm-com.20230601.gappssmtp.com
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 jtlpszJsiW57 for <auth48archive@ietfa.amsl.com>; Mon, 15 Jan 2024 11:36:44 -0800 (PST)
Received: from mail-yb1-xb2e.google.com (mail-yb1-xb2e.google.com [IPv6:2607:f8b0:4864:20::b2e]) (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 499C4C15109E for <auth48archive@rfc-editor.org>; Mon, 15 Jan 2024 11:36:44 -0800 (PST)
Received: by mail-yb1-xb2e.google.com with SMTP id 3f1490d57ef6-dbdbfaab70eso7600790276.3 for <auth48archive@rfc-editor.org>; Mon, 15 Jan 2024 11:36:44 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rtfm-com.20230601.gappssmtp.com; s=20230601; t=1705347403; x=1705952203; darn=rfc-editor.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=Lyrgn9M1coiwJe7OupMDey2W+mKXTGVqzT1oiElWz1Q=; b=pqOxgPHPXgmCwP4Fc4nN8feACjCd2UUrkck7A2a1pQm84bRTOelCVn2gu4Xh+rZrdl ZL6xW2g08qn/PCBmD+6u+ErygdRoid9UK457ZvT1XSreBS7IaqVDPkF2aIpSarFb8m5O LPEuNHj934rtCNq4RUamnuSxVZP9GF1KrD4/S8fJXiJ2W7XFF4/KV3K9iXFZSjWTwv5K 7AFgPDnlH9E3i+r8h/KkebQ47GrsYT3Vw7twRLWApzA+b03yoZz2R0Wo3mNi46SMa9aW KYfwjZBP0JcOcnntnmK7vWD6eM0Z9fYhaxCmBnA627+8eru7kZESAiuiNu8ohhW0B3Vb RcJg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705347403; x=1705952203; 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=Lyrgn9M1coiwJe7OupMDey2W+mKXTGVqzT1oiElWz1Q=; b=ODJ18/pEfgb23KKMudh6aoBoyiFk3UNPi4IbOfUGA2wsrGu23UJLIl7fPuVp10J1Ij qmBd+noJ5ZTi2JsKXF2b0JnyfRVppOQfohyHDENcrqTnzeVO0xPtVF5uAy8a5O60JdDv j6dvEK1P2ya8Yvt5lRnj+VhKdhMGRPimzf3VkaznT0xV6Ghx65+xN609BwaGaEVWFuML lKdyCxYyP6jKFE37pVdsk+gFC2RI1OuJLBiwes3ndtaRWXWHOu2Rfr67wd+fmZqcLPpN x1MH/KUqBUGoxYtsp2pajYM9A4JcI/DtCHPep3uQtGbrAjulXyPZIYyjXx3M3w2chpzA B8Gw==
X-Gm-Message-State: AOJu0YyyakDFyATj+vKzCnO27nBo0XTq/iOXbuAp3yF7pgreQxEpRHz3 GhqLvHVOtVrGqAV2DYiDVi/2rV6bUjhEPq4ekbDH0n/LORVtZQ==
X-Google-Smtp-Source: AGHT+IF0YX2bl/rBOo7Vhy9fsq0yEWkiRFyZx7l7SpWWWb+FDGS+QwbvtP/DZaY4WuHY4jkK6lun/GuZXPOpPaW4y7U=
X-Received: by 2002:a25:ba44:0:b0:dc1:f71f:a1f3 with SMTP id z4-20020a25ba44000000b00dc1f71fa1f3mr1106935ybj.125.1705347403138; Mon, 15 Jan 2024 11:36:43 -0800 (PST)
MIME-Version: 1.0
References: <20231010213257.4587F18E4B44@rfcpa.amsl.com> <CALe60zDWOpAgXM=T+q=jG7GumtWGzASe=i=x5qBSG+bew5046g@mail.gmail.com> <57DC6A9D-181D-4A92-9B78-1A9E4F97252C@amsl.com> <6530F168-75F1-4CA6-9E7D-2D402D6BEC41@iii.ca> <9F18480D-4F13-4C85-B224-66BA4EF2F4EC@amsl.com> <CABcZeBPjdcsea_X0YMrcwbgQmV_uiDdV+3=Aet7VPMaJG1=9GA@mail.gmail.com> <A60976A1-3B52-42A9-9A5B-13618AE62855@amsl.com> <CAL0qLwZYokpy-UHFf24NyEBufFG4rtJQ6MS8bEUrugaJNmdusw@mail.gmail.com> <882B1E35-51DE-4AE2-85A7-6027CF9A3679@amsl.com> <137CB627-2A2A-46E5-86CA-24FF50C97BBC@sn3rd.com> <1EC63115-8045-4442-B1F9-1621DF507D98@amsl.com> <5B33BBAB-FA41-441B-97AF-6518CA98726E@iii.ca> <CABcZeBOZGsHZR7WarEdF+UyHmOJjbCDA_KCiEUpGT6JE75CGtA@mail.gmail.com> <D610B593-CABA-4B44-ABCB-C712F6F112BC@iii.ca>
In-Reply-To: <D610B593-CABA-4B44-ABCB-C712F6F112BC@iii.ca>
From: Eric Rescorla <ekr@rtfm.com>
Date: Mon, 15 Jan 2024 11:36:06 -0800
Message-ID: <CABcZeBOiZrOLmTLHpu_b831TCzm_OpciV1c8JxN4fV57+kOw0w@mail.gmail.com>
To: Cullen Jennings <fluffy@iii.ca>
Cc: Justin Uberti <justin@uberti.name>, Lynne Bartholomew <lbartholomew@amsl.com>, Sean Turner <sean@sn3rd.com>, "Murray S. Kucherawy" <superuser@gmail.com>, RFC Editor <rfc-editor@rfc-editor.org>, rtcweb-ads@ietf.org, rtcweb-chairs@ietf.org, auth48archive <auth48archive@rfc-editor.org>
Content-Type: multipart/alternative; boundary="0000000000002edaf9060f012290"
Archived-At: <https://mailarchive.ietf.org/arch/msg/auth48archive/dCv6nihtUaO48qkJ568cB9Ae2xA>
Subject: Re: [auth48] *[AD] Re: AUTH48: RFC-to-be 9429 <draft-uberti-rtcweb-rfc8829bis-05> for your review
X-BeenThere: auth48archive@rfc-editor.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Archiving AUTH48 exchanges between the RFC Production Center, the authors, and other related parties" <auth48archive.rfc-editor.org>
List-Unsubscribe: <https://mailman.rfc-editor.org/mailman/options/auth48archive>, <mailto:auth48archive-request@rfc-editor.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/auth48archive/>
List-Post: <mailto:auth48archive@rfc-editor.org>
List-Help: <mailto:auth48archive-request@rfc-editor.org?subject=help>
List-Subscribe: <https://mailman.rfc-editor.org/mailman/listinfo/auth48archive>, <mailto:auth48archive-request@rfc-editor.org?subject=subscribe>
X-List-Received-Date: Mon, 15 Jan 2024 19:36:48 -0000

On Mon, Jan 15, 2024 at 11:15 AM Cullen Jennings <fluffy@iii.ca> wrote:

>
> Sorry for the very long delay on this. It’s been an a sort of shitty month
> for me.
>

Hi Cullen,

I think we should disentangle two issues.

1. What we substantively say about what version of DTLS people ought to use.
2. What we use as a citation where the bare term "DTLS" without a version
number is used.

As you may recall, JSEP doesn't specify DTLS versions and leaves that to S
6.5 or RFC 8827, which has this somewhat labored text encouraging but not
requiring you to use DTLS 1.2.

All implementations MUST support DTLS 1.2 with the
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 cipher suite and the P-256 curve
<https://doi.org/10.6028/NIST.FIPS.186-4> [FIPS186
<https://doi.org/10.6028/NIST.FIPS.186-4>]. Earlier drafts of this
specification required DTLS 1.0 with the cipher suite
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, and at the time of this writing some
implementations do not support DTLS 1.2; endpoints which support only DTLS
1.2 might encounter interoperability issues. The DTLS-SRTP protection
profile SRTP_AES128_CM_HMAC_SHA1_80 MUST be supported for SRTP.
Implementations MUST favor cipher suites which support Forward Secrecy (FS)
over non-FS cipher suites and SHOULD favor Authenticated Encryption with
Associated Data (AEAD) over non-AEAD cipher suites. Note: the IETF is in
the process of standardizing DTLS 1.3 [TLS-DTLS13
<https://tools.ietf.org/html/draft-ietf-tls-dtls13-39>].

If we wanted to say anything normative about DTLS, we would properly do so
in an 8827 bis, but we haven't done so, and I don't recall there being much
WG discussion on DTLS versions since DTLS 1.3 was published. So my
suggestion would be to try to just address point (2) here, which is to say
to provide reasonable references while not creating new normative facts on
the ground. I think the text above permits the use of DTLS 1.3,  so the
current status is your (A), and while I would argue for A'[MUST DTLS 1.2,
SHOULD DTLS 1.3] I don't think that's for this document.

This leaves us with the question of what references to provide. What I
suggest here is that we cite both RFC 6347 and 9147 wherever we just say
"DTLS", except for S 5.1.1, which actually requires the use of DTLS, and
there add a note something like:

"Note: RFC 8827 requires implementations to support DTLS 1.2 [RFC 6347] and
permits the use of DTLS 1.3 [RFC 9147]".

How does this sound?


Below I do address your substantive points which might go into a discussion
of an 8827-bis, but if you agree with me here, we don't need to reach those
here.


>
> > On Dec 11, 2023, at 7:13 AM, Eric Rescorla <ekr@rtfm.com> wrote:
> >
> > Let's make sure that we agree on the substantive situation first.
> >
> > * DTLS 1.3 deprecates DTLS 1.2, so a compliant implementation should be
> able to use either.
>
> I suspect we disagree on what deprecate means but probably not relevant to
> sort this out.


I should have been clear: RFC 9147 obsoletes RFC 6347. As people probably
know, I'm not a fan of any of these tags, so I'm open to arguments that
this was wrong, but that's what it says.



> I want to be careful on use or implement. For sure, I think it is great
> for an implementation to support both and negotiate the latest thing it
> can.
>

>
> > * DTLS 1.3 is not yet widely deployed, so a compliant implementation
> should implement 1.2 and 1.3, at least for now.
>
> Well, I think I am arguing they need to 1.2 to be a webrtc complaint
> implantation and it would be very nice if they also do 1.3
>

> Even worse that adoption, DTLS 1.3 is blocked by a significant fraction of
> enterprise firewalls. I would like to keep webertc working in those
> situations for now. I agree there is a point in time where we decide that
> things that only do 1.2 just get left behind but I don’t think that anyone
> is arguing we do that in Auth 48 of this doc.
>

Absolutely not.



> What I don’t want to be in situation of saying you must use 1.3 to be
> webrtc compliant because I think that will cause a lot of breakage.
>

100% agreed. I also think it is reasonable to argue that we shouldn't have
MUST implement 1.3 (see below).


>
> >
> > Neither of these "shoulds" is intended in the 2119 sense, just in terms
> of what we expect.
> >
> > Do you disagree with either of these statements?
>
> So just trying to reason my way through this. Look at it from point of
> view of what we are asking implements to implement if they are compliant
> with this RFC to be. Some various things we could be asking for are:
>
> A. Must implement 1.2 and may implement 1.3
>
> B. Must implement both 1.2 and 1.3
>
> C. Must implement 1.3 and Must NOT use 1.2
>

> D. I guess a 4th option is could have a MUST implement 1.3 and but is
> optional to implement 1.2 or not but that seems pretty much the same as C
> from an interoperability point of view.
>
>
> I was working on the assumption that we were doing A for this draft
> because that is the situation for 8829 and we were not changing the TLS
> version part of things in this draft.
>
> I feel very strongly it is too early to do C and it would be bad for
> WebRTC to do C at this point of time. And this was caused me to think the
> refs were not right in the draft.
>
> On B - I’m just not sure. Part of me feels like mandating this is sort of
> like mandating webrtc must do both v4 and v6. I have no objections to a
> very convincing argument either way. I do feel a bit like, is this the
> right draft for this change.
>
> That make sense as way of clarifying a path forward ? I agree with you
> that as long as we are clear what we are trying to get done, we can figure
> out how to tweak the reference spices to get that taste.
>

On the substantive matter, I totally agree that C and D are nonstarters. I
think it's between A (or maybe A' [MUST TLS 1.2 and SHOULD TLS 1.3]) and B.

-Ekr