Return-Path: <rlb@ipv.sx>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id E4D7612E874
 for <tls@ietfa.amsl.com>; Mon, 16 Apr 2018 11:43:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level: 
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, T_DKIMWL_WL_MED=-0.01]
 autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key)
 header.d=ipv-sx.20150623.gappssmtp.com
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 fPLZ9Y158dLf for <tls@ietfa.amsl.com>;
 Mon, 16 Apr 2018 11:43:28 -0700 (PDT)
Received: from mail-ot0-x234.google.com (mail-ot0-x234.google.com
 [IPv6:2607:f8b0:4003:c0f::234])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id 68A4412E05D
 for <tls@ietf.org>; Mon, 16 Apr 2018 11:43:28 -0700 (PDT)
Received: by mail-ot0-x234.google.com with SMTP id w2-v6so7595023otj.12
 for <tls@ietf.org>; Mon, 16 Apr 2018 11:43:28 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=ipv-sx.20150623.gappssmtp.com; s=20150623;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=5JGM+yrVizEWhvPOiYk9BranYHfj7xycm9Zab5CtH5A=;
 b=s27oWKnGDKqTaAzlaLQD4SMj6rXNhZ8K1jgvTNLqkDZdJATOiE/Bufpp89IdzftmkM
 4bIOT5D4aEU5RWe6Nmqqvd2qBVe0iIlttbuKODdZeWG4LkQnMrtMBh693hflkUmQRP0F
 hXyf5Lk3iHBWUw8fJWqXYabSArF4AuG/CjdF1iXl3/7qYC181gN1lO5c+C981gkrGoj1
 TWMkiZQ5fTpi1d0CqJgyO/lQhRyYAZgwURYSdvqXKMyuw1oIlpk0ctMkq4IPRiKO77WS
 O5SULcXdKwktgT1pnX63qCO/P36xv82nRAVP61nTNagsTk8DhZ4Y9+0LZviJEPHHfDnD
 tg1A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=5JGM+yrVizEWhvPOiYk9BranYHfj7xycm9Zab5CtH5A=;
 b=ZG2jr4DK8H9a9IS9yPvm3j8dLItcicSpid00JP0evQNfAUsAf8QL0yMy+aSqxKp2nr
 ZiJvYgIhYhtRwtOunJANuuUySTQtPA0XL+pji0kbYV8TFwBEpXtLcfZv/tNgVlWaZpYr
 KIQa/+5eglVOcgPAlcYPG6YvFsM2PnU4hxDuLTncep2htl7VI2kdh1C0MjxGAWfCAQyh
 ra2lAyPFGvLSqEzyDJpG9dAD0jFR4lyWu6a6b8R6aPIt0D/M9P93C9BekKpVJsWIVFeB
 Bt6kHQKB9t3IbA8qdGbVuX3u1KVyKwrYQMn5u/MEELIq0LGK5eey1bkD2f/0VLa0Ps4a
 Myzw==
X-Gm-Message-State: ALQs6tD890U+Z61kRz39EXcUwKOrDYyK8B2g4srcqf2sd/CCPzFZLwJy
 v7+VDr8G2UWeNfGzdz/ixKCsT6m3tp+peYP6nb9nkg==
X-Google-Smtp-Source: AIpwx48UV44xc13wmBRjMw0AOKDqWocJWBWaG2kyZ7LGiA6JWRj0EO1+T395fLcWSjvfy0h8dam+7RebNGESQQZGx24=
X-Received: by 2002:a9d:738e:: with SMTP id
 j14-v6mr11502747otk.248.1523904207530; 
 Mon, 16 Apr 2018 11:43:27 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.201.90.67 with HTTP; Mon, 16 Apr 2018 11:43:26 -0700 (PDT)
In-Reply-To: <CACykbs355twK=y8t6zmUgvSqAVndYb_+fG2DOOyYPTz+-+vwOw@mail.gmail.com>
References: <152345795593.1972.17855870949078823595.idtracker@ietfa.amsl.com>
 <CAL02cgSOA-asdvyFNLLpcN59qeVjwQU9F2f=mgM9Y_B0Xv4rmg@mail.gmail.com>
 <140080C241BAA1419B58F093108F9EDC1DBF718C@UK-MAL-MBOX-01.dyson.global.corp>
 <CAL02cgS7dJVrMwiE9UrJKmaxW1v876et0Qg_S8MKf5FbSZjekg@mail.gmail.com>
 <140080C241BAA1419B58F093108F9EDC1DBFD7C7@UK-MAL-MBOX-02.dyson.global.corp>
 <CACykbs355twK=y8t6zmUgvSqAVndYb_+fG2DOOyYPTz+-+vwOw@mail.gmail.com>
From: Richard Barnes <rlb@ipv.sx>
Date: Mon, 16 Apr 2018 14:43:26 -0400
Message-ID: <CAL02cgSdeR4JJH-ROheS60z0hiGkoZVgk6Um=K3ohd5oh9261w@mail.gmail.com>
To: Jonathan Hoyland <jonathan.hoyland@gmail.com>
Cc: Tony Putman <Tony.Putman@dyson.com>, "<tls@ietf.org>" <tls@ietf.org>,
 Benjamin Kaduk <kaduk@mit.edu>
Content-Type: multipart/alternative; boundary="000000000000f640630569fb9841"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/PNy_9_rtyCOW0i8fDhhoW-bk4OQ>
Subject: Re: [TLS] Fwd: New Version Notification for
 draft-barnes-tls-pake-00.txt
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.22
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: Mon, 16 Apr 2018 18:43:31 -0000

--000000000000f640630569fb9841
Content-Type: text/plain; charset="UTF-8"

Hey Jonathan,

Thanks for the comments.  I've implemented them in my working copy of the
draft, and in my implementation in mint.  I have also changed it over to
use SPAKE2+; I agree with Tony that this is necessary to guard against
server compromise.

https://github.com/bifurcation/tls-pake/commit/a9f097c3bfe43cf50001e1a340c7e2e693850d4b
https://github.com/bifurcation/mint/pull/193

With regard to security properties: I don't think it's correct that an
active attacker can do online password guessing.  Everything that is
revealed on the wire is blinded with fresh, per-connection entropy, and
thus doesn't reveal anything about the password.

--Richard


On Mon, Apr 16, 2018 at 7:52 AM, Jonathan Hoyland <
jonathan.hoyland@gmail.com> wrote:

> Hi Richard,
>
> A few nits.
>
> * In the introduction you have the sentence
> > DISCLAIMER: This is a work-in-progress draft of MLS and has not yet
>
>    seen significant security analysis.
>
> Iiuc this draft has no connection to MLS, and this is a typo.
>
>  * In the setup you define
>
> > o  A DH group "G" of order "p*h", with "p" a large prime
>
> and
>
> > o  A password "p"
>
>
> The variable "p" has two different meanings, which is a bit confusing,
> especially later on.
>
>  * The document doesn't explicitly state that X and Y need to be non-zero.
>
> The requirement is in "I-D.irtf-cfrg-spake2", but it would be nice if the
> warning was carried through.
>
> * In terms of security properties, iiuc an active adversary can do online
> password guessing attacks, but a passive adversary cannot derive the
> password from observing the messages. If that is the case perhaps a warning
> about rate-limiting connection attempts is appropriate.
>
> Regards,
>
> Jonathan
>
> On Mon, 16 Apr 2018 at 10:50 Tony Putman <Tony.Putman@dyson.com> wrote:
>
>> Hi Richard,
>>
>> I don't think that you can protect against server compromise with SPAKE2.
>> The server can store w*N as you suggest, but it also has to store w*M
>> because it must calculate y*(T-w*M). An attacker that learns w*M and w*N
>> from a compromised server can then impersonate a client.
>>
>> The rest of your comments I agree with (though they are not all addressed
>> in the updated draft).
>>
>> Tony
>>
>> > From: Richard Barnes [mailto:rlb@ipv.sx]
>> > Sent: 13 April 2018 19:50
>> >
>> > Hey Tony,
>> >
>> > Thanks for the comments.  Hopefully we can adapt this document to tick
>> more boxes for you :)
>> > Since I had noticed some other errors in the document (e.g., figures
>> not rendering properly),
>> > I went ahead and submitted a new version that takes these comments into
>> account.
>> >
>> > https://tools.ietf.org/html/draft-barnes-tls-pake-01
>> >
>> > Some responses inline below.
>>
>> Dyson Technology Limited, company number 01959090, Tetbury Hill,
>> Malmesbury, SN16 0RP, UK.
>> This message is intended solely for the addressee and may contain
>> confidential information. If you have received this message in error,
>> please immediately and permanently delete it, and do not use, copy or
>> disclose the information contained in this message or in any attachment.
>> Dyson may monitor email traffic data and content for security & training.
>> _______________________________________________
>> TLS mailing list
>> TLS@ietf.org
>> https://www.ietf.org/mailman/listinfo/tls
>>
>

--000000000000f640630569fb9841
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hey Jonathan,</div><div><br></div><div>Thanks for the=
 comments.=C2=A0 I&#39;ve implemented them in my working copy of the draft,=
 and in my implementation in mint.=C2=A0 I have also changed it over to use=
 SPAKE2+; I agree with Tony that this is necessary to guard against server =
compromise.</div><div><br></div><div><a href=3D"https://github.com/bifurcat=
ion/tls-pake/commit/a9f097c3bfe43cf50001e1a340c7e2e693850d4b">https://githu=
b.com/bifurcation/tls-pake/commit/a9f097c3bfe43cf50001e1a340c7e2e693850d4b<=
/a><br></div><div><a href=3D"https://github.com/bifurcation/mint/pull/193">=
https://github.com/bifurcation/mint/pull/193</a><br></div><div><br></div><d=
iv>With regard to security properties: I don&#39;t think it&#39;s correct t=
hat an active attacker can do online password guessing.=C2=A0 Everything th=
at is revealed on the wire is blinded with fresh, per-connection entropy, a=
nd thus doesn&#39;t reveal anything about the password.=C2=A0 <br></div><di=
v><br></div><div>--Richard<br></div><div><br></div></div><div class=3D"gmai=
l_extra"><br><div class=3D"gmail_quote">On Mon, Apr 16, 2018 at 7:52 AM, Jo=
nathan Hoyland <span dir=3D"ltr">&lt;<a href=3D"mailto:jonathan.hoyland@gma=
il.com" target=3D"_blank">jonathan.hoyland@gmail.com</a>&gt;</span> wrote:<=
br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left=
:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><span style=3D"font-size=
:small">Hi Richard,</span><div style=3D"font-size:small"><br></div><div sty=
le=3D"font-size:small">A few nits.</div><div style=3D"font-size:small"><br>=
</div><div style=3D"font-size:small">* In the introduction you have the sen=
tence</div><div style=3D"font-size:small">&gt;=C2=A0<span style=3D"font-siz=
e:13.3333px;line-height:1.5">DISCLAIMER: This is a work-in-progress draft o=
f MLS and has not yet</span></div><pre class=3D"m_1226304040203458024inbox-=
inbox-inbox-inbox-newpage" style=3D"font-size:13.3333px;margin-top:0px;marg=
in-bottom:0px;break-before:page">   seen significant security analysis.</pr=
e><span style=3D"font-size:small">Iiuc this draft has no connection to MLS,=
 and this is a typo.</span><pre class=3D"m_1226304040203458024inbox-inbox-i=
nbox-inbox-newpage" style=3D"font-size:13.3333px;margin-top:0px;margin-bott=
om:0px;break-before:page"> </pre><div style=3D"font-size:small">* In the se=
tup you define=C2=A0</div><div style=3D"font-size:small"><pre class=3D"m_12=
26304040203458024inbox-inbox-inbox-inbox-newpage" style=3D"font-size:13.333=
3px;margin-top:0px;margin-bottom:0px;break-before:page">&gt; o  A DH group =
&quot;G&quot; of order &quot;p*h&quot;, with &quot;p&quot; a large prime</p=
re><pre class=3D"m_1226304040203458024inbox-inbox-inbox-inbox-newpage" styl=
e=3D"font-size:13.3333px;margin-top:0px;margin-bottom:0px;break-before:page=
">and </pre><pre class=3D"m_1226304040203458024inbox-inbox-inbox-inbox-newp=
age" style=3D"font-size:13.3333px;margin-top:0px;margin-bottom:0px;break-be=
fore:page">&gt; o  A password &quot;p&quot;</pre><pre class=3D"m_1226304040=
203458024inbox-inbox-inbox-inbox-newpage" style=3D"font-size:13.3333px;marg=
in-top:0px;margin-bottom:0px;break-before:page"><br></pre>The variable &quo=
t;p&quot; has two different meanings, which is a bit confusing, especially =
later on.<br><pre class=3D"m_1226304040203458024inbox-inbox-inbox-inbox-new=
page" style=3D"font-size:13.3333px;margin-top:0px;margin-bottom:0px;break-b=
efore:page"> </pre>* The document doesn&#39;t explicitly state that X and Y=
 need to be non-zero.<span class=3D"m_1226304040203458024inbox-inbox-Apple-=
converted-space">=C2=A0</span><br>The requirement is in &quot;I-D.irtf-cfrg=
-spake2&quot;, but it would be nice if the warning was carried through.<br>=
<br></div><div style=3D"font-size:small">* In terms of security properties,=
 iiuc an active adversary can do online password guessing attacks, but a pa=
ssive adversary cannot derive the password from observing the messages. If =
that is the case perhaps a warning about rate-limiting connection attempts =
is appropriate.=C2=A0</div><div style=3D"font-size:small"><br></div><div st=
yle=3D"font-size:small">Regards,</div><div style=3D"font-size:small"><br></=
div><div style=3D"font-size:small">Jonathan</div></div><br><div class=3D"gm=
ail_quote"><div><div class=3D"h5"><div dir=3D"ltr">On Mon, 16 Apr 2018 at 1=
0:50 Tony Putman &lt;<a href=3D"mailto:Tony.Putman@dyson.com" target=3D"_bl=
ank">Tony.Putman@dyson.com</a>&gt; wrote:<br></div></div></div><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex"><div><div class=3D"h5">Hi Richard,<br>
<br>
I don&#39;t think that you can protect against server compromise with SPAKE=
2. The server can store w*N as you suggest, but it also has to store w*M be=
cause it must calculate y*(T-w*M). An attacker that learns w*M and w*N from=
 a compromised server can then impersonate a client. <br>
<br>
The rest of your comments I agree with (though they are not all addressed i=
n the updated draft). <br>
<br>
Tony<br>
<br>
&gt; From: Richard Barnes [mailto:<a href=3D"mailto:rlb@ipv.sx" target=3D"_=
blank">rlb@ipv.sx</a>] <br>
&gt; Sent: 13 April 2018 19:50<br>
&gt;<br>
&gt; Hey Tony,<br>
&gt;<br>
&gt; Thanks for the comments.=C2=A0 Hopefully we can adapt this document to=
 tick more boxes for you :)=C2=A0 <br>
&gt; Since I had noticed some other errors in the document (e.g., figures n=
ot rendering properly), <br>
&gt; I went ahead and submitted a new version that takes these comments int=
o account.<br>
&gt;<br>
&gt; <a href=3D"https://tools.ietf.org/html/draft-barnes-tls-pake-01" rel=
=3D"noreferrer" target=3D"_blank">https://tools.ietf.org/html/<wbr>draft-ba=
rnes-tls-pake-01</a><br>
&gt;<br>
&gt; Some responses inline below.<br>
<br>
Dyson Technology Limited, company number 01959090, Tetbury Hill, Malmesbury=
, SN16 0RP, UK.<br>
This message is intended solely for the addressee and may contain confident=
ial information. If you have received this message in error, please immedia=
tely and permanently delete it, and do not use, copy or disclose the inform=
ation contained in this message or in any attachment.<br>
Dyson may monitor email traffic data and content for security &amp; trainin=
g.<br></div></div>
______________________________<wbr>_________________<br>
TLS mailing list<br>
<a href=3D"mailto:TLS@ietf.org" target=3D"_blank">TLS@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/tls" rel=3D"noreferrer" ta=
rget=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/tls</a><br>
</blockquote></div>
</blockquote></div><br></div>

--000000000000f640630569fb9841--

