https://github.com/syncsynchalt/illustrated-dtls
The Illustrated DTLS 1.3 Connection: Every byte explained
https://github.com/syncsynchalt/illustrated-dtls
Last synced: 5 months ago
JSON representation
The Illustrated DTLS 1.3 Connection: Every byte explained
- Host: GitHub
- URL: https://github.com/syncsynchalt/illustrated-dtls
- Owner: syncsynchalt
- License: mit
- Created: 2022-06-30T20:27:14.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-07-25T20:28:23.000Z (11 months ago)
- Last Synced: 2025-07-26T03:40:25.924Z (11 months ago)
- Language: HTML
- Size: 1.37 MB
- Stars: 19
- Watchers: 2
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# The Illustrated DTLS Connection
Published at https://dtls.xargs.org
- `site/`: page source for the finished product
- `server/server.c`: server code
- `client/client.c`: client code
- `wolfssl/`: patch and build of wolfSSL that removes any random aspects of the documented connection
- `captures/`: PCAP and keylog files
See also https://github.com/syncsynchalt/illustrated-tls13 for a TLS 1.3 version of this project.
### Build instructions
If you'd like a working example that reproduces the exact handshake documented on the site:
```
git clone https://github.com/syncsynchalt/illustrated-dtls.git
cd illustrated-dtls/
cd wolfssl/
make
cd ../server/
make
cd ../client/
make
```
Then open two terminals and run `./server` in the server/ subdir and `./client` in the client/ subdir.
This has been shown to work on MacOS 12 and various Linuxes and
only has a few easy-to-find dependencies: gcc or clang, make, patch,
etc.