~/talk

TLSv1.3 from scratch

Talkat linux.conf.au 2021 · 2021-01-23..01-25· [security]
name:Joel Sing
links:none on file
slides:none on file

LibreSSL implements TLS 1.3 by writing a new stack from scratch: roughly 7,000 lines of C produced by three people over several six‑week sprints, with the client implemented first. A DAG‑based handshake state machine prevents out‑of‑order attacks, the key schedule uses HKDF (a subtle misread required hashing a zero length input), and the record layer enforces one‑record per call with careful memory zeroing. Interop testing uses tlsfuzzer and oss‑fuzz, and workarounds handle odd peers like Fizz sending duplicate CCS and legacy libssl API behaviors such as auto_retry and partial writes.

AI-written summary · about

  1. 0:00Intro
  2. 6:15TLSv13 vs TLS12
  3. 9:53Can we have it yet
  4. 17:20TLS stack
  5. 18:44Handstake state machine
  6. 20:02Handshakesvg
  7. 22:31Key derivation
  8. 24:44Record layer
  9. 26:31Security
  10. 27:13Handshaking
  11. 27:34Legacy Stack
  12. 28:33SSL
  13. 32:29Interoperability
  14. 37:56Summary
  15. 39:32Questions
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.