[tor-dev] Design for an exit relay scanner: feedback appreciated
r.a at posteo.net
Thu Oct 10 11:39:19 UTC 2013
On Wednesday 09 October 2013 23:44:18 Philipp Winter wrote:
> I am working on a Python-based exit relay scanner which should detect
> malicious and misbehaving exits. The design should have a reasonable
> balance between being fast/parallel and stressing the network as little as
> I came up with the following three steps:
> 1. Spawn a "parent" Tor process to get an up-to-date consensus.
> 2.1 For every selected exit relay, spawn a lightweight Tor process.
> 2.2 The consensus is copied from the "parent" process to the lightweight
> process' data directory. That way, the consensus has to be downloaded
> only once.
> 2.3 Every lightweight Tor process has the following configuration:
> SOCKSPort auto
> ControlPort 0
> __DisablePredictedCircuits 1
> UseEntryGuards 0
> FetchServerDescriptors 0
> DataDirectory <data_directory>
> ExitNodes <exit_relay>
> Entry guards are not used to distribute the load. Predicted circuits
> are disabled to prevent expensive creation of circuits which would not be
> used anyway. In addition, I am considering adding "EntryNodes" or
> "Bridge" to concentrate the first hop's load on machines under my control.
> 3. torsocks is then used to establish decoy connections over the
> respective exit relay. After that, the process is terminated.
> Any thoughts on how to further improve the design or ideas for a better
There is no need to spawn multiple Tor processes if you do circuit building
and stream handling on your own.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 198 bytes
Desc: This is a digitally signed message part.
More information about the tor-dev