Re: [TLS] New cipher suites for SRP

"Attila Molnar" <attilamolnar@hush.com> Sun, 28 June 2015 21:24 UTC

Return-Path: <attilamolnar@hush.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 ED1151A8A41 for <tls@ietfa.amsl.com>; Sun, 28 Jun 2015 14:24:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.099
X-Spam-Level:
X-Spam-Status: No, score=0.099 tagged_above=-999 required=5 tests=[BAYES_50=0.8, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-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 3KWoXWEiE0uy for <tls@ietfa.amsl.com>; Sun, 28 Jun 2015 14:24:05 -0700 (PDT)
Received: from smtp10.hushmail.com (smtp10.hushmail.com [65.39.178.143]) (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 6B95C1A8A6A for <tls@ietf.org>; Sun, 28 Jun 2015 14:24:05 -0700 (PDT)
Received: from smtp10.hushmail.com (localhost [127.0.0.1]) by smtp10.hushmail.com (Postfix) with SMTP id DA74FC0549 for <tls@ietf.org>; Sun, 28 Jun 2015 21:24:04 +0000 (UTC)
Received: from smtp.hushmail.com (w2.hushmail.com [65.39.178.46]) by smtp10.hushmail.com (Postfix) with ESMTP; Sun, 28 Jun 2015 21:24:04 +0000 (UTC)
Received: by smtp.hushmail.com (Postfix, from userid 99) id 76501E04BE; Sun, 28 Jun 2015 21:24:04 +0000 (UTC)
MIME-Version: 1.0
Date: Sun, 28 Jun 2015 23:24:04 +0200
To: "Geoffrey Keating" <geoffk@geoffk.org>, "Dave Garrett" <davemgarrett@gmail.com>, tls@ietf.org
From: "Attila Molnar" <attilamolnar@hush.com>
In-Reply-To: <m2d20hbz0z.fsf@localhost.localdomain>
References: <20150626234801.ED7DDE04DA@smtp.hushmail.com> <201506262101.57121.davemgarrett@gmail.com> <m2d20hbz0z.fsf@localhost.localdomain>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="UTF-8"
Message-Id: <20150628212404.76501E04BE@smtp.hushmail.com>
Archived-At: <http://mailarchive.ietf.org/arch/msg/tls/20zopSmD-9LL7PfPl-NS7lI_p8Y>
Subject: Re: [TLS] New cipher suites for SRP
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: <https://mailarchive.ietf.org/arch/browse/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: Sun, 28 Jun 2015 21:24:07 -0000

On 2015. 06. 27. at 5:39 AM, "Geoffrey Keating" <geoffk@geoffk.org>; wrote:
>
>Dave Garrett <davemgarrett@gmail.com>; writes:
>
>> On Friday, June 26, 2015 07:48:01 pm Attila Molnar wrote:
>> > Currently SRP cannot be used with newer crypto primitives such 
>as ciphers in
>> > AEAD mode or SHA-2 due to the lack of cipher suites enabling 
>these.
>> > There's only 3DES and AES-CBC with SHA-1.
>> > 
>> > Would there be support for expanding the SRP cipher suites?
>> 
>> I don't think it's a good idea to add new SRP cipher suites.
>> 
>> Instead, I think redefining SRP as an extension to PSK would 
>make more sense. Use (EC)DHE_PSK cipher suites with an updated SRP 
>extension to get similar capabilities. This would make updating 
>SRP to use newer crypto much easier, as modern PSK cipher suites 
>are easier to get standardized. The current SRP spec actually 
>already appears to rely on PSK identity alert codes.

Interesting solution, but doesn't this create corner cases e.g. when both SRP
and PSK are supported?
They are probably solvable one way or the other, though.

However if TLS 1.3 will allow pairing key exchanges with ciphers etc. on the
fly all work on this becomes wasted time.

>The problem with that is that there are surely many use cases where
>you're willing to do SRP, or if no SRP you can do a regular ECDHE 
>and
>prompt for the username/password, but PSK is too insecure.
>
>I've been thinking an improved SRP would be useful.  It should:
>
>- Specify Modern cipher and hash algorithms as mentioned above
>
>- Replace the existing SHA1+seed with a password whitening function
>  like PBKDF2, so that in the event of a compromised server 
>cracking
>  the password is harder, and also making online password guessing
>  attacks (sending lots of username+password pairs to the server) 
>more
>  expensive*
>
>- Deprecate the 1024-bit and the 1536-bit group, and the previous 
>SRP
>  ciphersuites; and say that these should only be chosen if the 
>server
>  has a legacy verifier for a particular username which requires
>  them.
>
>*: You can even keep two verifiers for each account: a 'fast' one
> where PBKDF2 should execute in a fraction of a second, and a 
>'slow'
> one where PBKDF2 might take 15-30 seconds, and pick between them
> based on recent account history, IP address reputation, or 
>whatever.
> It costs the server no more to use the 'slow' path but anyone
> guessing passwords will find it much less effective.

Some thoughts that apply to both suggestions:

- Specification-wise they are both significantly more complex than adding new
cipher suites.

- Same for implementations. Adding cipher suites is very simple if the crypto
primitives are already there, and is more likely to happen compared to adding
new logic.

As a result of these two, it will take a considerably longer time for applications
to be able to make use of the result of either of the mentioned ideas (if an
enhanced SRP ever gets implemented).

Because of its abandonment, as of now TLS-SRP cannot be recommended to be used
in place of ad hoc, less secure application protocols.
The reason I suggested adding new cipher suites is that it seems to be a good
tradeoff: it's a drop-in remedy for a major problem with SRP.

I understand that it is me who wants to see it updated so it is also me who
has to do the lion's share of the work.
I thought that expanding the cipher suite arsenal is a good enough treatment
for the short term for SRP, but if the WG thinks otherwise and rather wants a
bigger overhaul I'm willing to work on that too to improve the unfortunate
situation of SRP in TLS.
However, I'd like to see a consensus on a TODO first.

What do you think about this? Are the original authors of TLS-SRP still
interested in it?

Please discuss.


Regards, Attila