Mathematics and development of fast TLS handshakes
summary
Tempesta TLS is a Linux-kernel TLS handshake implementation that focuses on accelerating asymmetric cryptography—especially elliptic-curve math—by heavily modifying mbed TLS and incorporating parts of WolfSSL, and by adopting newer cryptographic algorithms from recent research. The talk presents concrete performance results (40–80% more handshakes/sec vs OpenSSL/Nginx, up to 4x lower latency), explains ECC computational hotspots, side-channel mitigations, effects of recent CPU vulnerabilities on handshakes, and compares design trade-offs across OpenSSL, WolfSSL, mbed TLS and Tempesta TLS, including low-level assembly optimisations.
AI-written summary · about
chapters (23)
- 0:00Start
- 0:04Web content delivery & protection
- 2:07Linux kernel TLS handshaks
- 4:33TLS libraries performance issues
- 5:03The source code
- 5:28ECDSA & ECDHE mathematics: Tempesta TLS, OpenSSL, WolfSSL
- 6:23Demo!
- 9:36Data for proprietary vendors
- 10:58Elliptic curve cryptography
- 12:04Point multiplication
- 13:29Point representation and coordinate systems
- 14:11Point addition
- 15:25Modular arithmetics
- 16:40Montgomery multiplication in P256
- 17:54The math layers
- 18:48Example of math layers balancing
- 20:43Side channel attacks (SCA) resistance
- 23:47Memory usage & SCA
- 24:41Big Integers (aka MPIs)
- 25:57Easy assembly
- 27:09Open questions and further research
- 27:47Going to the Linux kernel upstream
- 29:47Netdev papers about Tempesta TLS
related talks
43mMathematics and development of fast TLS handshakes
42mThe Linux network stack extension for DDoS mitigation and web security
46mLinux kernel TLS and HTTPS
53mHansel and Gretel do TLS
19mWhat's happening in TLS (transport layer security)?
20mmmTLS: Scaling the Performance of Encrypted Network Traffic Inspection
01h 26mTLS Cryptography for Programmers
15mImplementing Hybrid TLS with ML-KEM-768 for Post-Quantum Security in Mobile IIoT Deployments
