Re: [rtcweb] SDP Security Descriptions (RFC 4568) and RTCWeb

Roman Shpount <roman@telurix.com> Fri, 26 April 2013 19:45 UTC

Return-Path: <roman@telurix.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7346C21F9742 for <rtcweb@ietfa.amsl.com>; Fri, 26 Apr 2013 12:45:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level:
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[AWL=0.075, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, NO_RELAYS=-0.001]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id iyfbFwyIjnpi for <rtcweb@ietfa.amsl.com>; Fri, 26 Apr 2013 12:45:33 -0700 (PDT)
Received: from mail-wg0-x22b.google.com (mail-wg0-x22b.google.com [IPv6:2a00:1450:400c:c00::22b]) by ietfa.amsl.com (Postfix) with ESMTP id F30D421F968B for <rtcweb@ietf.org>; Fri, 26 Apr 2013 12:45:32 -0700 (PDT)
Received: by mail-wg0-f43.google.com with SMTP id c11so2418505wgh.22 for <rtcweb@ietf.org>; Fri, 26 Apr 2013 12:45:08 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:x-received:in-reply-to:references:date :message-id:subject:from:to:cc:content-type:x-gm-message-state; bh=WZTG8CEDOA8QgvYt3+S73v5G+7HpPyEzriPJzSm4kBo=; b=ZvghDm8w2HsaVORPze4+O8pmXS/XdVg/O1OhF+rXGo6oWwioZMvqR/fW6cTjlFMx16 pyNdtZHvIpFBdjdOw265wQCDvoMvdCZFUBtwSVWh0uJ1U4bS0sYvoX4dsUnWTiDtt0r7 YZtIGty4JMkJQSQU6FtMjVv/HUAqH1aaVnOfy3b2MjY1qVujjiJSMVkVQ7GJwS7MJWUv yVLPmWT8ouC/NcHYLgqu58rtdWjmc393EATogWwq9t4vV1QDs+3/6SXoqOcu8VDjPtbn T437rwfG2+zddEX0w7igGzU48LAVZPv0Y7N8UKQa+8dpwuzolemngy0fn/KmnjYrCvPN Pr5g==
X-Received: by 10.194.173.167 with SMTP id bl7mr84772129wjc.50.1367005508335; Fri, 26 Apr 2013 12:45:08 -0700 (PDT)
Received: from mail-we0-x22b.google.com (mail-we0-x22b.google.com [2a00:1450:400c:c03::22b]) by mx.google.com with ESMTPSA id dj7sm5509386wib.6.2013.04.26.12.45.04 for <rtcweb@ietf.org> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 26 Apr 2013 12:45:06 -0700 (PDT)
Received: by mail-we0-f171.google.com with SMTP id t57so1892761wey.2 for <rtcweb@ietf.org>; Fri, 26 Apr 2013 12:45:04 -0700 (PDT)
MIME-Version: 1.0
X-Received: by 10.180.188.141 with SMTP id ga13mr6228798wic.9.1367005504376; Fri, 26 Apr 2013 12:45:04 -0700 (PDT)
Received: by 10.216.204.202 with HTTP; Fri, 26 Apr 2013 12:45:04 -0700 (PDT)
In-Reply-To: <829F9A35-5F23-4A0F-9831-80478F70965E@phonefromhere.com>
References: <3FA2E46D-C98E-4FC0-9F1D-AD595A861CE1@iii.ca> <20130425202238.74EF321F96A5@ietfa.amsl.com> <AE1A6B5FD507DC4FB3C5166F3A05A48416281FDB@tk5ex14mbxc272.redmond.corp.microsoft.com> <03FBA798AC24E3498B74F47FD082A92F3BB8FAF7@US70UWXCHMBA04.zam.alcatel-lucent.com> <9F33F40F6F2CD847824537F3C4E37DDF0E6C04AF@MCHP04MSX.global-ad.net> <CAErhfrx6xi7rNmc6CZc5iyKiYv+oZbi3sBa5QywB7dUKtms2Aw@mail.gmail.com> <C643F355C8D33C48B983F1C1EA702A450B49EA@ESESSMB301.ericsson.se> <4AA3A95D6033ED488F8AE4E45F47448742B13620@WABOTH9MSGUSR8B.ITServices.sbc.com> <CALiegfmpZZigigQtaadsXup6VfWgJAF8--TJpbUwSJMmar7fRA@mail.gmail.com> <CAD5OKxv2d2DemnjHQdB8XU8NKfK-Uu913DLPq9JUT4z9kvFfTQ@mail.gmail.com> <829F9A35-5F23-4A0F-9831-80478F70965E@phonefromhere.com>
Date: Fri, 26 Apr 2013 15:45:04 -0400
Message-ID: <CAD5OKxv8FXFVSwOFTX-Kax9WwsJ1PcKzLsca1NWMvzxE1cnyvw@mail.gmail.com>
From: Roman Shpount <roman@telurix.com>
To: Tim Panton <tim@phonefromhere.com>
Content-Type: multipart/alternative; boundary="001a11c37f5a7e9cdf04db48c57b"
X-Gm-Message-State: ALoCoQl0wOff/cEV/leTjpqYsSxccWUduyjLLtBSMdkZhayjAIf3BTy/vj5W12k3hZNRu+nsTG8H
Cc: rtcweb@ietf.org
Subject: Re: [rtcweb] SDP Security Descriptions (RFC 4568) and RTCWeb
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 26 Apr 2013 19:45:34 -0000

On Fri, Apr 26, 2013 at 2:42 PM, Tim Panton <tim@phonefromhere.com> wrote:

>
> On 26 Apr 2013, at 18:59, Roman Shpount wrote:
>
>
> The arguments why SDES is required in some cases instead of DTLS are:
>
> 1. Additional call setup delay caused by DTLS
>
>
> This is a serious problem - made worse by the O/A semantics - I think we
> will find that in real usage
> sites will pre-warm a DTLS connection so it is ready to go when the user
> clicks connect.
>
>
Pre-warming connection before user consent has some security implications
as well. I would much rather see a mechanism to do ICE setup and DTLS key
exchange at the same time. Should we look into extending ICE/STUN to carry
public/private key exchange?

>
> 2. High computational load on each call setup. This can be significant
> with high number of short calls being setup. This would be especially
> significant for any sort of server interfacing WebRTC or WebRTC to SIP
> gateway.
>
>
> I would dispute this - remember exactly the same users have almost
> certainly logged into an https:// portal - indeed only a small
> percentage of them will start a DTLS session for during any given web
> session. The web seems to still be working.
>

Do you dispute that DTLS key exchange represent additional CPU load? If you
dispute that this is additional load is significant, then we can look at
what percentage of the CPU load associated with the call it represents. For
short calls (10 sec or less) it is going to be a significant portion. This
is additional load on the component that is dealing with media, and the
fact that client have already done key exchange with the server is not
relevant.

3. High complexity -- you are doubling or tripling amount of code you need
> in your SRTP stack to support DTLS negotiations. Most of the code in
> readily available libraries is not needed and represents no functional
> value (certificate support, unneeded encryption methods, compression,
> streaming, etc), but will require a significant amount of support effort
> and can be a security risk (I am talking about something like OpenSSL or
> GnuTLS which ends up in the media processing stack).
>
>
> That's true to an extent, but it only applies to devices that don't
> already do TLS for something else.
> Webservers, web browsers, Sip/xmpp engines, anything offering an https
> management interface, will already have that code
> in use for other purposes. The DTLS specific code is quite small.
>

Once again you are talking about signaling/web interfaces that do
not necessarily run on the some network components, ie TLS can be handled
by web server and then signaling sent over some other protocol to the media
server which will need to support DTLS. Also, in case of web servers there
is a way to do the key exchange once per session and reuse TLS connection
and exchanged keys for multiple requests between the same client and
server. I am not sure there is a mechanism in place to do the same with
DTLS key exchanges in media connection.


> As it stands right now, I would prefer never to use DTLS-SRTP with any
> client to server communication applications, since it has no security value
> in such scenarios (server can access media anyway) and will cause
> significant usability, performance, and support issues.
>
>
> There I also disagree. The ability to offer a DTLS connection that
> presents a browser checkable x509 certificate for yourbank.com over the
> media path in a call to a bank's authorized call center agents might be a
> significant advantage.
>
>
Do web servers currently validate the remote certificate on DTLS
connections? I assume they do not, so there is no way to validate x509
certificate on the media connection. As far as I know we are not even
supposed to pass DNS names in SDP, so I am not sure what we will be
validating there in the first place.
_____________
Roman Shpount