Version Tomorrow is the first day of the rest of your life
lecture: Introducing Talla: An Erlang implementation of Tor
A technical walk-through of a highly concurrent third-party implementation of Tor in the Erlang programming language.
In this lecture we will be walking over the architecture and implementation choices behind Talla -- a highly concurrent third party, implementation of a Tor relay daemon in the functional programming language Erlang. Having multiple implementations of a critical component like Tor is important to avoid mono-cultures within a software ecosystem. A critical bug in the currently available C Tor implementation would allow an attacker to take down the entire network.
We will be starting out with a short introduction to the ecosystem around Tor, a bit of history of why we ended up starting the Talla project, how far we are from being able to allow ordinary users to try it out on the Tor production network and why you should avoid it for now.
With the help of tools designed for the official C implementation of Tor, we have been using Talla together with ordinary Tor relay nodes in a simulated test network, that everyone is able to run easily on their own computers.
The goal of the lecture is to give the audience a better understanding of the design, architecture and testing of a highly concurrent, fault tolerant and complex application in Erlang.
No prior knowledge of the Erlang programming language is necessary, but basic familiarity with the Tor network will be assumed.