Re: [Perc] Drop support for E2E RTP header extensions

Cullen Jennings <fluffy@iii.ca> Sat, 13 May 2017 15:07 UTC

Return-Path: <fluffy@iii.ca>
X-Original-To: perc@ietfa.amsl.com
Delivered-To: perc@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0549B1294BC for <perc@ietfa.amsl.com>; Sat, 13 May 2017 08:07:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.921
X-Spam-Level:
X-Spam-Status: No, score=-1.921 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
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 YJTaRdhuT8OK for <perc@ietfa.amsl.com>; Sat, 13 May 2017 08:07:32 -0700 (PDT)
Received: from smtp93.ord1c.emailsrvr.com (smtp93.ord1c.emailsrvr.com [108.166.43.93]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7F689129C3B for <perc@ietf.org>; Sat, 13 May 2017 08:04:47 -0700 (PDT)
Received: from smtp28.relay.ord1c.emailsrvr.com (localhost [127.0.0.1]) by smtp28.relay.ord1c.emailsrvr.com (SMTP Server) with ESMTP id BA70C4015A; Sat, 13 May 2017 11:04:44 -0400 (EDT)
X-Auth-ID: fluffy@iii.ca
Received: by smtp28.relay.ord1c.emailsrvr.com (Authenticated sender: fluffy-AT-iii.ca) with ESMTPSA id 1D2A6400FE; Sat, 13 May 2017 11:04:44 -0400 (EDT)
X-Sender-Id: fluffy@iii.ca
Received: from [10.1.3.67] (S01065475d0f7dcd1.cg.shawcable.net [70.75.17.123]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:587 (trex/5.7.12); Sat, 13 May 2017 11:04:44 -0400
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 10.2 \(3259\))
From: Cullen Jennings <fluffy@iii.ca>
In-Reply-To: <d79853a2-7fa4-2898-03ae-fa283990476f@gmail.com>
Date: Sat, 13 May 2017 09:04:42 -0600
Cc: Nils Ohlmeier <nohlmeier@mozilla.com>, Richard Barnes <rlb@ipv.sx>, Jonathan Lennox <jonathan@vidyo.com>, "perc@ietf.org" <perc@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <F0599569-892D-411C-847F-A21203B27C16@iii.ca>
References: <49c7de34-8bc6-bb7d-4524-0af26089eecb@gmail.com> <1CF6F66C-939F-484D-8C53-46ACB8CA69BE@vidyo.com> <27ca2993-5c66-8388-7187-b47ed8ae1340@gmail.com> <CAL02cgRDaz7BT+GzxWJ0cM7rebhd2cu2WbPy+Mwjkk0wJK=6mw@mail.gmail.com> <aef9a32f-f761-c9e8-de99-57c4acfd5088@gmail.com> <8FD07F5D-CD52-445B-AF75-BA1696F3A151@mozilla.com> <aff1a9bf-7dcb-71e6-3d01-afe5cac87ca5@gmail.com> <E234DDC1-9AB5-4C64-91C0-A8FCB58DA351@iii.ca> <8ddbf495-ac23-8529-aa0b-a233a0b336c0@gmail.com> <74BE8407-9AC0-45D3-9476-5C109A7B7A3C@iii.ca> <d79853a2-7fa4-2898-03ae-fa283990476f@gmail.com>
To: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>
X-Mailer: Apple Mail (2.3259)
Archived-At: <https://mailarchive.ietf.org/arch/msg/perc/c-7CYk7ATLCFbCvjO6dvcObO4G8>
Subject: Re: [Perc] Drop support for E2E RTP header extensions
X-BeenThere: perc@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Privacy Enhanced RTP Conferencing <perc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/perc>, <mailto:perc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/perc/>
List-Post: <mailto:perc@ietf.org>
List-Help: <mailto:perc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/perc>, <mailto:perc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 13 May 2017 15:07:34 -0000

So if the MD requires the extension to be modifiable and the client does not want that, you are right, it is not going to work. I few this as a feature not a bug. I think that when the extensions is defined for use in the PERC framework, we need to decide which category it is in. The basic premise of the PERC is we do not fully trust the MD so letting the MD decide what it can parts of the RTP it is allowed to modify has some problems. That said, I agree it is possible that in the future there might be an extension where we do need the MD to be able to control which way it is handled and in that case, that extension could define SDP to negotiate that. 

The WG discussed the requirements around this along and you see the consensus of the  01.11.2016 meeting at https://www.ietf.org/proceedings/interim-2016-perc-01/minutes/minutes-interim-2016-perc-1

Some things that were marked as needing E2E integrity are the video orientation (CVO) and the synchronization metadata. I don't see anything that would cause us to change the desire to have E2E integrity for theses. 





> On May 12, 2017, at 2:18 AM, Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com> wrote:
> 
> On 12/05/2017 2:05, Cullen Jennings wrote:
>> 
>> OK, I think I see what is causing the confusion...
>> 
>> For a given header extension like say "urn:3gpp:video-orientation:6" you are thinking that there needs to be a way for the conference system to tell the endpoint if that given header is E2E encrypted or only HBH. That is not how PERC is working, PERC has the specification on header extensions when used in a PERC context tell the thing sending the RTP what it needs to do or leaving it as an implementation choice. The endpoint or browser is compiling that decisions in to the code. 
>> 
> And that will cause problems. If the MD requires an extension to be HBH in order to be properly and the endpoint send it E2E, or some E2E and others HBH. If we decide to support E2E header extensions we have to provide a mechanism on the SDP to negotiate them. We just can leave it as an implementation choice.
> 
>> Of course the SDP can be used to decide if "urn:3gpp:video-orientation:6" is in use or not but not how it is encrypted. 
>> 
> (more on this below)
> 
>>> [...] One thing is integrity and another is E2E. Could you name some of those use cases?
>> 
>> Uh, not getting what you mean by E2E here ? An example of something that in some case might want end to end integrity is urn:3gpp:roi-sent
>> 
> 
> I mean E2E encrypted. Currently E2E extensions are not encrypted, just integrity protected. The MD will still be able to read their contents, but not modify it. AFAIK, if we want to encrypt them we would also need to support RFC 6904 when applying the inner crypto. 

yes, agree, and the framework drafts says 

   If there is a need to encrypt one or more RTP header extensions end-
   to-end, an encryption key is derived from the end-to-end SRTP master
   key to encrypt header extensions as per [RFC6904].


> 
> Best regards
> Sergio
>