Attack of the Week: TLS Triple Handshakes (3Shake)
blog.cryptographyengineering.com
blog.cryptographyengineering.com
This comment in particular is my best effort at explaining the class of cryptographic attacks (identity misbinding, or "unknown key share") that 3Shake belongs to:
https://news.ycombinator.com/item?id=7335101
I was lucky enough to have Trevor Perrin try to explain UKS flaws to me at a BaySec meeting a few months back. The moral of Perrin's story was, "key exchange protocols are extremely difficult, moreso than most cryptographers appreciate". Worth considering before the default response to TLS flaws ("let's just scrap it and design a new one").
I still think TLS is a much better plan than inventing ones own encrypted transport. As things like UKS show: these things are hard to get right.
For what it's worth: reading the whole backlog of the IETF TLS WG mailing list probably did more to move my opinion closer to yours than anything else.
Also, accelerate the sunset of older specs so that deployed code will have to stay more current to even function, rather than interop'ing with old code that will never be patched.
If not, then this suggests a lack of clear guiding principles of what is in-scope and what is not &| insufficient questioning of adding new features.
In other news, I ported LibreSSL to OSX today[0].
I like what Google is doing; they control the Internet's most important server properties and one of the most important clients, and are taking full advantage of that to testbed TLS refinements and then bring them to the IETF as working code.
There's political ammo now to make necessary changes in how things are done to make sure OpenSSL, TLS WG doesn't continue with business-as-usual.
Edit: I've said it before, I greatly appreciate the crypto knowledge you share on HN. When crypto related submissions come up, I often click comments before reading the articles just to see your take on it. I did it just this afternoon with https://news.ycombinator.com/item?id=7642434 and was disappointed to see you had not weighed in yet.
(sidenote: I'm very happy about all the attention SSL related stuff is getting. Just like Snowden said, encryption is our best defense against whoever and all the SSL stuff is the most commonly used encryption out there. Don't know what to do about dis-honest CAs though...).
EDIT: tptacek is probably right that this is drama and my sidenote should probably be the main comment
[deleted] is tptacek's comment I'm referring to, but it's quoted in the thread.
https://news.ycombinator.com/item?id=6420306 was a previous episode of the same debate.
tl;dr The issue was whether or not Dual EC was an NSA backdoor, and then whether or not there were any implementations. There was a time when tptacek denied both of these, saying it was too dumb to be a backdoor, and later conceding but saying it wasn't used in any software.
Interestingly, before the NSA paying RSA scandal came out, my post in the second linked thread says:
> Edit: Actually, I take that back. I have no problem believing that RSA Security are perfectly sane. Would we be completely shocked if the reason they chose a questionable default was due to coercion from the spooks? Only NSA has the keys, so it's a pretty safe backdoor.
Only 215 days ago, that sounded like tinfoil hat tier speculation.
Edit: linked upthread in my other comment.
While I guess that must be true, the OP was clever enough not to say that someone actually needed them.
And really, all we can say for sure is true is that someone wanted them. Whether they had to demand them or not depends on if there was any resistance to the feature from the standards body. Having seen some standards processes at play, it's sometimes more like "Hey, I think this is probably a good idea," "Okay, sounds good." Of course, some of those would escalate to "demands" if resistance was put up, and lack of energy for that fight is why sometimes resistance isn't.
However, I feel like the last couple years has seen such a raft of vulnerabilities that it may lead to an actually qualitative change in how people approach these things, and in the future security standards-making is going to be a lot more conservative about adding features. One can hope.
Doesn't change the main point that security is hard, and that surely the next gen of TLS, if it happens, will wind up with some vulnerabilities too.
Similarly: renegotiation, an armpit feature of TLS, has a sensible use case: a server doesn't necessarily know whether a TLS client certificate is required until it can see the HTTP URL requested. But that doesn't happen until after the handshake completes. I'm not sure renegotiation is the best solution to that problem (as opposed to an HTTP 4xx status code response), but it's not as if the feature was crazy.
It sounds silly, but even a good logo makes a big difference.
Error performing TLS handshake: An unexpected TLS handshake packet was received.
Does HN do anything "nonstandard" with their https configuration?