Re: [TLS] Should TLS 1.3 use an augmented PAKE by default?

Yoav Nir <ynir.ietf@gmail.com> Thu, 20 March 2014 08:52 UTC

Return-Path: <ynir.ietf@gmail.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0E7651A06E8 for <tls@ietfa.amsl.com>; Thu, 20 Mar 2014 01:52:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=ham
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 9pryi7LGiCaX for <tls@ietfa.amsl.com>; Thu, 20 Mar 2014 01:52:09 -0700 (PDT)
Received: from mail-ee0-x22f.google.com (mail-ee0-x22f.google.com [IPv6:2a00:1450:4013:c00::22f]) by ietfa.amsl.com (Postfix) with ESMTP id D6C301A068A for <tls@ietf.org>; Thu, 20 Mar 2014 01:52:08 -0700 (PDT)
Received: by mail-ee0-f47.google.com with SMTP id b15so372778eek.6 for <tls@ietf.org>; Thu, 20 Mar 2014 01:51:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=++xEkeq5f2SowuxVLFAOy9g6DTpsbg/wCSfrYMnreoY=; b=LrlAkix9Ilh8KkjsyOR2nLEPymorUqU6kuBbrtEYdJEmeu9QiOH07TXio1C1v5BqSV nkQm2a6dnsBICyUCHIiuymJu369Oihizs7BPs+dYFjxxfOOVPMLB48A19NR82irWvl8R e61Kn4Gveeh5IaykgYU04lAly27ypbVvjDyGQZpLSS7DpTb/vyFaFAM3IXBjqtBPq4k+ mjMkGQJQbtPqav2/Uh1sk6Nts2T9lKJtG4ISJrnEkhCN8I8CfIqE39frKBHJpxoDaP22 UJ5XxxLbGHumMtTWsxqSIY8raH0XM/xd91esDKPQQSI+Q6qKE7rO1kScr9HR6cDNwNLF VXSA==
X-Received: by 10.15.64.75 with SMTP id n51mr32272251eex.33.1395305519340; Thu, 20 Mar 2014 01:51:59 -0700 (PDT)
Received: from [172.24.251.171] (dyn32-131.checkpoint.com. [194.29.32.131]) by mx.google.com with ESMTPSA id 4sm2748317eeq.33.2014.03.20.01.51.57 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 20 Mar 2014 01:51:58 -0700 (PDT)
Content-Type: multipart/alternative; boundary="Apple-Mail=_3581B16D-DB2B-4899-9C85-485276905D2B"
Mime-Version: 1.0 (Mac OS X Mail 7.2 \(1874\))
From: Yoav Nir <ynir.ietf@gmail.com>
In-Reply-To: <CALCETrVgJxfdCxZqc9ttHHNKHm-hdtGbqzHvsQ-6yd5BK=9PDw@mail.gmail.com>
Date: Thu, 20 Mar 2014 10:51:55 +0200
Message-Id: <67BAC033-2E23-4F03-A4D9-47875350E6B5@gmail.com>
References: <53288C43.9010205@mit.edu> <5328B6DF.8070703@fifthhorseman.net> <5328C0C8.9060403@mit.edu> <6b79e0820d349720f12b14d4706a8a5d.squirrel@webmail.dreamhost.com> <CALCETrUz8zCBHiq42GTnkkSaBcpA5pjSvk6kwwPjzn+MtBKMgA@mail.gmail.com> <e38419e3ada3233dbb3f860048703347.squirrel@webmail.dreamhost.com> <CALCETrVgJxfdCxZqc9ttHHNKHm-hdtGbqzHvsQ-6yd5BK=9PDw@mail.gmail.com>
To: Andy Lutomirski <luto@amacapital.net>
X-Mailer: Apple Mail (2.1874)
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/yExjt9XfDtH9qMjsALX_JGahowU
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Should TLS 1.3 use an augmented PAKE by default?
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>, <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tls/>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 20 Mar 2014 08:52:12 -0000

Hi, Andy

On Mar 19, 2014, at 6:45 PM, Andy Lutomirski <luto@amacapital.net> wrote:

> 
>> 
>> My point is you can see on this list archives two common threads:
>> - A desire to reduce, as much as possible, the complexity of TLS
>> - Not a lot of fondness for another PAKE
>> 
> 
> The only reason I think my suggestion is reasonable is that I think
> that it could be very simple -- the main TLS key exchange be designed
> to have all of the necessary cryptographic properties to be an
> augmented PAKE.  People who don't want to use it can specify null
> passwords.

I’m sure you can add a PAKE to TLS, and it’s already been done. There’s SRP.  The fact that (as you said) it is hardly used suggests that there is not much demand for it.

I would argue that at least for the web (it may be different for IMAP) the TLS layer is a really bad place to do the password exchange. The application designers at https://www.example-bank.com, even assuming that they are OK with getting a browser UI for authentication, don’t want to get that on the landing page. That page should have grand marble structures and loan offers and most important, information that is available to non-customers. You only want to pop up the browser UI after the user clicks a “Log in to my account” button.  That is hard to do in the authentication is in the TLS handshake. See a discussion about client certificates on this and the http-bis list just a couple of weeks ago.

Of course, the assumption above is bogus, because as Ryan said, application designers don’t want to use the browser UI. There is some work being done to make authentication at the HTTP layer more appealing to them (see https://www.rcis.aist.go.jp/special/MutualAuth/  There’s even a modified Firefox and a test server ), but I don’t have high hopes for this succeeding. BTW: that work is done in conjunction with a PAKE proposal for HTTP, which is not what the designers want, but it a more appropriate layer than the transport layer. Over at http-auth we are working on standardizing that http-layer PAKE, but I don’t think it will get much use.


>> Note that the solution equally fails to meet your goals, because you will
>> always have browsers that don't support your solution - so sites wanting
>> to use it will still have to support 'naked' passwords. Equally, for
>> browsers, there will always be sites that continue to support the <input
>> type="password"> authentication (not the least because it's part of
>> HTML5), so they will always be phishable via downgrade attacks - not of
>> the TLS type, but of the UX type.
> 
> Right.  And the better websites (banks?) will offer both and users
> will learn that, when they're at home, they should only use the
> trusted password prompt.

Never say never, but so far getting users to avoid doing what they intended to do just because there is some weirdness has not been successful. When faced with a different UX, people will assume that the bank has made a UX revision rather than that they are being attacked. Most of the time, they would be right. If people walked away in the face of a severe UX change, Facebook would have died five times by now.

> Please read the other half of my original email and most of my
> replies.  I think that, even when using a second factor device (e.g.
> Fido, which you brought up), using an augmented PAKE style challenge
> for the device could improve security.  This has no UX issue at all --
> the whole technology is new, and the UI workflow suggested in the
> draft specs seems like it would work just fine with an improved
> challenge-response protocol.

The thing is, as long as the authentication happens in the application layer, none of the fancy crypto matters. If my bank implements a PAKE in the login screen using Javascript, a decent web designer can make a website that looks identical, only the passwords go in the clear to the phisher, and there is no fancy PAKE javascript. Good crypto in indistinguishable from bad crypto or no crypto at all.

Yoav