[tor-bugs] #29206 [Circumvention/Snowflake]: New design for client -- server protocol for Snowflake
Tor Bug Tracker & Wiki
blackhole at torproject.org
Thu Oct 24 14:34:10 UTC 2019
#29206: New design for client -- server protocol for Snowflake
-----------------------------------------------+---------------------------
Reporter: cohosh | Owner: cohosh
Type: task | Status:
| needs_review
Priority: Medium | Milestone:
Component: Circumvention/Snowflake | Version:
Severity: Normal | Resolution:
Keywords: anti-censorship-roadmap-september | Actual Points:
Parent ID: | Points: 6
Reviewer: dcf | Sponsor:
| Sponsor28-must
-----------------------------------------------+---------------------------
Comment (by cohosh):
Alright, I had a chance to take a look at the obfs4 integration with Turbo
Tunnel: https://github.com/net4people/bbs/issues/14#issuecomment-544747519
Another option is to just scrap the work done here so far and work turbo
tunnel into snowflake.
One of the main differences between Snowflake and obfs4 in how it relates
to the work on Turbo Tunnel so far is the difference in how Dial would be
called. There is no `Dial` in snowflake, but rather a simultaneous routine
that collects snowflakes in the background until we are ready to use them.
A call to a call to [https://gitweb.torproject.org/pluggable-
transports/snowflake.git/tree/client/lib/snowflake.go#n20
snowflakes.Pop()] retrieves it for use by the `Handler` function.
I'm curious about whether Turbo Tunnel is going to be implemented as a
separate library.
Snowflake could accommodate this with a dial function similar to the one
provided by the obfs4 ClientFactory:
https://dip.torproject.org/dcf/obfs4/blob/reconnecting-
quic/transports/base/base.go#L56
Here `Dial` would likely be provided by `SnowflakeCollector` and just wrap
the call the `snowflakes.Pop`. Then `dialAndExchange` could take a
`Dialer` interface as the first argument.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/29206#comment:33>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list