[tor-dev] A Child's Garden of Pluggable Transports

David Fifield david at bamsoftware.com
Tue May 20 19:01:39 UTC 2014

Have you ever wondered what makes the Tor protocol fingerprintable, and
makes pluggable transports necessary? Have you wondered how obfs3
obscures byte patterns in Tor? What a flash proxy WebSocket connection
actually looks like, and why it defeats IP blocking but not DPI?

Then I have the wiki page for you:


It's a visualization of different pluggable transports, meant to be an
aid to understanding. At the top is an ordinary Tor handshake, with some
fingerprintable data fields highlighted. The following sections, one for
each transport, show how those fields are hidden--or not. I tried to
demonstrate aspects of different transports that I think are hard to
intuit, such as what flash proxy rendezvous looks like, and how
transports look under the encrypted layer that is visible to a censor.

There are sections for obfs3, ScrambleSuit, FTE, flash proxy, meek, and
Bananaphone. The page is missing a few more from
https://www.torproject.org/docs/pluggable-transports. If you know how to
run any of those transports, and you know an effective way to visualize
it, please add it to the page.

David Fifield

More information about the tor-dev mailing list