The first couple drafts took forever to figure out, and I got a bunch of stuff wrong. This guide would've saved a ton of time back then.
Every Byte of a TLS Connection Explained and Reproduced
11–20 of 104 posts
Re: Every Byte of a TLS Connection Explained and Reproduced
#12I recently had to implement two way auth over 1.2 and this would have saved much hair pulling. (and who does TWO way auth over an MPLS connection. Turns out, us).
Re: Every Byte of a TLS Connection Explained and Reproduced
#13Re: Every Byte of a TLS Connection Explained and Reproduced
#14Earlier quoted context omitted.
Per session.
Unrelated but: based on your understanding of establishing a TLS session with a server, and then traffic through that connection, do you think the new Gmail user interface for the web (desktop) is sufficiently speedy? The reason I ask in this thread is that this thread treats some of the low-level minimum traffic necessary between clients and servers.
It's not clear what you're asking. Gmail obviously runs over TLS. It also seem pretty nippy to me, but TLS only has a minor impact on the speed.
Re: Every Byte of a TLS Connection Explained and Reproduced
#15Re: Every Byte of a TLS Connection Explained and Reproduced
#16Re: Every Byte of a TLS Connection Explained and Reproduced
#17Kind of ironic that their website is using an invalid security certificate?
Re: Every Byte of a TLS Connection Explained and Reproduced
#18Now do a version with DTLS (one more message type, couple more fields on existing types, and logic concerning retries). Also, now do a TLS 1.3 one.
Re: Every Byte of a TLS Connection Explained and Reproduced
#19EDIT: I'm putting a CDN in place.
Re: Every Byte of a TLS Connection Explained and Reproduced
#20There's a lot of practicality I learned from reading the Go source and implementing my own (e.g. always an array of a single value of 0 for compression method). Now do a version with DTLS (one more message type, couple more fields on existing types, and logic concerning retries). Also, now do a TLS 1.3 one.
I originally used an AEAD cipher but found it was impossible to demonstrate on the command line (openssl enc refuses to do AEAD because it can't confirm the authentication in a streaming context).
A friend asked me to demonstrate ALPN in this but as I looked into it I found it was distracting, as there's already so much going on and any new feature required digression. Maybe next time!
As for 1.3 my next project was going to be implementing it rather than documenting it. Just a throwaway implementation, nothing you'd want to use.