22. Gulaschprogrammiernacht

Self-Authenticating TLS Certificates for Tor Onion Services
30.05, 17:45–18:05 (Europe/Berlin), ZKM Kubus
Sprache: English

TLS (the security layer behind HTTPS) and Tor onion services (anonymously hosted TCP services) are both excellent protocols. Wouldn't it be nice if we could use them together? In this talk, I'll cover a working implementation of combining TLS with onion services, without compromising on the security properties that each provides.


Topics to be covered include:

  • Why would you want to combine TLS with onion services? Why isn't onion service encryption good enough?
  • Why isn't unauthenticated TLS (e.g. self-signed certificates) good enough for onion services?
  • How can we authenticate a TLS certificate for a .onion domain without relying on public CA's like Let's Encrypt or any other trusted third parties? (No we're not using a blockchain.)
  • How can we teach standard (unmodified) web browsers like Firefox to apply different certificate validation logic for .onion certificates?
  • How can we teach standard (unmodified) web browsers like Firefox to validate certificates using typically-unsupported elliptic curves like Ed25519 (which Tor uses)?

Content Notes

Brief mention of geopolitical Internet censorship pertaining to the war in Ukraine.

I'm the Lead Application Engineer at The Namecoin Project; I work on codebases relating to TLS and Tor. I'm also a volunteer with the Tor Browser Team (though I am not representing Tor Project at GPN). In my spare time, I enjoy porting software to run on POWER9.