> In the next post I'll talk about some of those ...[snip]... I'll also talk about why I dislike SRP so much.

I'm going to guess this is going to be:

* Rocky development process (~6 versions, removing attack vectors with each release). This however isn't exclusive to SRP: EKE flavours have also suffered from problems[0]

* Outdated constructs (e.g. the RFC for TLS-SRP still recommends using salted SHA1 for password hashing, so realistically still relies upon strong database security. Fortunately, this is under client control regardless of what the document actually says)

* Lack of a formal security proof (although it's generalised and dealt with in quite a few papers alongside other protocols).

* Perhaps the lack of an EC formation, although I believe you can build one with a few modifications. (Yongge Wang drafted one in 2001[5] that looks to me, as an amateur, to be sound. The critical modification is no more crazy than the freaky ECDSA construct we rely upon today, afaict, simply because more elegant Schnorr constructs were covered by patents)

I'm not sure why Matt considers the protocol to be complex[1] or crazy[2]. It seems to be a pretty straightforward DH protocol, with a couple of interesting parameters: a commitment by each party to the password verifier, each closing off a different attack (one where a client could otherwise auth knowing just the verifier but not the password, and the other to prevent an impersonating server from gleaning enough to do an offline dictionary attack) There are a lot of subtleties in all off the PAKEy protocols I've read about, not just SRP, one good example can be had here[3], which talks about the intricacies of picking commitment constructs.

Atm I agree with Bram Cohens sentiment on this one[4]. If not SRP, then something. I'm looking forward to Matts thoughts in the follow-up. Perhaps he has a more modern starting point in mind[6]

I'd like to see the prevalence of full-on PGP-esque signing and HSMs in every device, but we can't continue to do nothing with passwords. The two uses of password authentication that everyday people rely on the most: password authentication on the web, and WPA2-PSK, are both terrible compared to the PAKEs we already have. Worse, the lack of better things is spawning absolute garbage like third-party login.

I like SRP. While I'm not as familiar with more current IETF RFCs, like Dragonfly[7] and Pwd[8], I believe from cursory looks that they fail to fall in to the "augmented" PAKE category, which means if a server is compromised the infiltrator can use the knowledge they've gained from the database immediately, and without any further work.

[0] http://www.jablon.org/jab97.pdf

[1] https://twitter.com/matthew_d_green/status/28874317682562252...

[2] https://twitter.com/matthew_d_green/status/28874165135724544...

[3] http://coitweb.uncc.edu/~yonwang/papers/TCSsrp5.pdf

[4] https://twitter.com/bramcohen/status/330423520062476288

[5] http://grouper.ieee.org/groups/1363/passwdPK/submissions/p13...

[6] https://twitter.com/matthew_d_green/status/34483169358632140...

[7] https://datatracker.ietf.org/doc/draft-irtf-cfrg-dragonfly/?...

[8] https://tools.ietf.org/html/draft-harkins-tls-pwd-03