I gave this document an initial read. At a high level this seems like
a good start if the TLS WG is going to pursue PAKE bindings to TLS
1.3. With that said, given the longish history of PAKEs in TLS,
I'd like to be sure that we have critical mass for implementation,
so if we get to the point of an adoption call, I'd encourage
the chairs to be really sure there is enough interest in deployment
to justify this work.


A few detailed comments below...


It would be good to understand the deployment model here a little
better. S 4.2 prohibits the use of PAKEs with either PSKs or
Certificates, which I believe means that the only form of server
authentication is the PAKE. It seems like this is OK in some
circumstances, but it seems like if:

1. The client uses the same password on example.com and attacker.com
and
2. The attacker ever learns the password

Then the attacker can impersonate example.com to the user.

I would make two points here:

1. If you use a non-augmented PAKE, then things are very bad, but this
   draft doesn't seem to require an augmented PAKE.
1. Even with an augmented PAKE, you're still relying fairly heavily on
   the security of the PBKDF. If the user uses a common password, then
   the attacker can still brute force it.

I understand that this may not seem like that serious an attack
because if the attacker knows the password they can impersonate the
client to the server, but the other direction is also an issue because
it allows the attacker to lie to the client or to induce the client to
send them secrets (please reenter your SSN...). Assuming I'm not
wrong, then I think at minimum we need some kind of warning about this
case, and probably to to discourage it in contexts like the Web where
there is some other notion of identity. In particular, I think it
would be bad to have the following:

- Alice connects to example.com over HTTPS authenticated with a
  certificate and registers a password.
- Alice reconnects to example.com over HTTPS and uses a PAKE
  and this is treated as same origin with https://example.com

Note that this wouldn't necessarily be the case if you allowed the
combination of certificate-based auth and the PAKE, though that might
be problematic for other reasons.


Per S 4.2, if you use the PAKE then you don't do ECDHE at all
(i.e., you don't send key_share). This seems like it means
that you can't get any resistance to quantum computers unless
you have a PQ PAKE (which AFAIK SPAKE2+ is not). It seems like
if you also did the standard TLS 1.3 key establishment, then you
could use a PQ or PQ-hybrid algorithm and get protection against
harvest-now-decrypt-later attacks, though of course not against
impersonation if the attacker has a CRQC.

On a related topic, I note that the OPAQUE binding in
draft-sullivan-tls-opaque makes use of the TLS 1.3 key shares,
so I'm curious how you would do an OPAQUE binding here.

-Ekr
_______________________________________________
TLS mailing list -- tls@ietf.org
To unsubscribe send an email to tls-le...@ietf.org

Reply via email to