Re: [rtcweb] Retransmit: Summary of Alternatives for media keying

Randell Jesup <randell1@jesup.org> Thu, 28 July 2011 21:56 UTC

Return-Path: <randell1@jesup.org>
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 C468211E807E for <rtcweb@ietfa.amsl.com>; Thu, 28 Jul 2011 14:56:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.549
X-Spam-Level:
X-Spam-Status: No, score=-2.549 tagged_above=-999 required=5 tests=[AWL=0.050, BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1XC769hWaKuL for <rtcweb@ietfa.amsl.com>; Thu, 28 Jul 2011 14:56:09 -0700 (PDT)
Received: from arthur.webserversystems.com (arthur.webserversystems.com [174.132.191.98]) by ietfa.amsl.com (Postfix) with ESMTP id D846721F8658 for <rtcweb@ietf.org>; Thu, 28 Jul 2011 14:56:09 -0700 (PDT)
Received: from pool-98-111-140-38.phlapa.fios.verizon.net ([98.111.140.38] helo=[192.168.1.12]) by arthur.webserversystems.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from <randell1@jesup.org>) id 1QmYYr-0006Mr-E2 for rtcweb@ietf.org; Thu, 28 Jul 2011 16:56:09 -0500
Message-ID: <4E31DAAB.5030606@jesup.org>
Date: Thu, 28 Jul 2011 17:54:51 -0400
From: Randell Jesup <randell1@jesup.org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.18) Gecko/20110616 Thunderbird/3.1.11
MIME-Version: 1.0
To: rtcweb@ietf.org
References: <12BF9E55-662F-4762-9E47-2BBD3FA5FD93@acmepacket.com> <A444A0F8084434499206E78C106220CA08F1D75CF0@MCHP058A.global-ad.net> <2E6CBDE0-DA10-4792-8059-A01F554DB370@skype.net> <E1963869-9E21-4F1F-AB4A-E5D070CCA581@acmepacket.com> <55C78CA7-292C-4E0E-901B-83B7614C2F32@skype.net>
In-Reply-To: <55C78CA7-292C-4E0E-901B-83B7614C2F32@skype.net>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - arthur.webserversystems.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - jesup.org
X-Source:
X-Source-Args:
X-Source-Dir:
Subject: Re: [rtcweb] Retransmit: Summary of Alternatives for media keying
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: Thu, 28 Jul 2011 21:56:10 -0000

On 7/28/2011 1:18 PM, Matthew Kaufman wrote:
>   we can't display "this connection is secured everywhere" to the user... but look, HTTPS is the same. When I see a lock icon on my screen and click to see that yes, I'm really talking to who it says in the address bar, I still can't tell if they're terminating my HTTPS session in a front-end box and then using HTTP beyond it, or if the HTTPS really goes all the way to the server.
>> But the browser ties the identity of the name I typed in the address bar to the cert, so that if I typed "https://mybank.com", I know it's secure to mybank.com.  Of course it could be cleartext after whomever has a cert for mybank.com, and may even end up triggering protocols that exit mybank.com and go to evil.com, but I implicitly trust mybank.com to be careful with bank info.
> Ok, so you trust your "banking service".

And more to the point, you trust the chain of certificates incorporated 
into the browser to verify it's actually the entity that owns mybank.com 
(and EV certs come into play here too).  Overall, that's a "good" chain 
of trust, though no such chain is perfect.

>> That's not the same for DTLS-SRTP; until and unless the human being verifies the keys/SAS with the far end, nothing is known.
> If you trust your "calling service" (and are connected to it with HTTPS) then you can use that trusted service to exchange the fingerprints and verify the keys of the far end to prevent MITM.

Right, this is trusting that not only they are who they say they are, 
but also trusting that they haven't been compromised.   And one may not 
have the same level of trust in that that you have (have to have) in 
your bank.

> (You can also add a browser extension that uses a service that you trust but that isn't your calling service, and when you're calling other people with the same extension you can check the fingerprints in an automated way using that.)

Definitely possible, and adds another largely-independent layer of trust.

> If you *don't* trust your "calling service", then that's just like not trusting your banking service when you type in passwords.

I may trust my calling service to connect me (to someone), but I may not 
trust them to not MITM me themselves (read CALEA or other national 
security services), and I may not trust them not to be compromised, 
since they have a far smaller monetary stake in avoiding it compared to 
a bank.

Another idea related to identity: as mentioned, the cert trust chain in 
a browser verifies that you're talking to mybank.com or myprovider.com.  
This can be leveraged to provide authentication by cert that you're 
talking to someone who's part of mybank.com, even if you went through 
myprovider.com to get there and myprovider.com might be compromised.  It 
doesn't directly help verify you're talking to Joe Your Neighbor, but 
other services can help with that (as mentioned - extensions, etc).

Effectively, for a fairly large subset of the net, we have a deployed 
PKI of a form.  It's not perfect (DNSSEC anyone; recent todo with bogus 
certs because a CA snafu) but for most uses that it covers it's pretty 
good.  Getting it to cover identifying the destination as a dependent of 
the primary cert may be an issue for many companies, however.

In any case, there may be a way to leverage this existing trust chain, 
both to authenticate who's calling you and who you're calling, for a 
subset of possible destinations.

-- 
Randell Jesup
randell-ietf@jesup.org