Version 7 (modified by dcf, 3 years ago) (diff)

Link Yawning's evaluation.



Snowflake is a pluggable transport that proxies traffic through temporary proxies using WebRTC, a peer-to-peer protocol with built-in NAT punching. It aims to work kind of like flash proxy, but without flash proxy's problems with NAT.

Work in progress.

[tor-dev] Introducing Snowflake (webrtc pt)

Evaluation at PluggableTransports/SnowFlakeEvaluation.

Source code

The following should result in a 100% bootstrap over WebRTC:

git clone
cd snowflake/client
go get
go build
tor -f torrc

WebRTC fingerprintability

Notes at Snowflake/Fingerprinting.


See also:

Ticket Summary Status Owner Keywords Priority
#19001 Tor Browser with Snowflake new network-team-roadmap-2019-Q1Q2 Very High
#19026 Remove local LAN address ICE candidates new Medium
#19315 Include libwebrtc license files in bundle new starter Medium
#19409 Make a deb of snowflake and get into Debian new High
#19569 DataChannel-only libwebrtc new arlolra Medium
#20813 Start producing snowflakes new snowflake tor-pt High
#21304 Sanitize snowflake.log needs_review cohosh starter Medium
#21305 Client gets into an unrecoverable connect / close loop new Medium
#21314 snowflake-client needs to stop using my network when I'm not giving it requests new tor-pt snowflake Medium
#21315 publish some realtime stats from the broker? new Medium
#22945 End-to-end confidentiality for Snowflake client registrations new Medium
#23257 Snowflake doesn't connect on the CalVisitor network new Medium
#23888 Creating a Snowflake WebExtension addon new ux-team tor-pt Medium
#25429 Need something better than client's `checkForStaleness` new Medium
#25483 Windows reproducible build of snowflake assigned sukhbir TorBrowserTeam201805 High
#25591 Pass ICE server information from Broker to WebRTC Client new Medium
#25593 Broker needs better resilience against DoS new Medium
#25594 Broker: investigate non-domain-fronting secure client / proxy registrations new Medium
#25595 Test suite for Snowflake on various NAT topologies new Medium
#25596 Configure TURN servers for the proxy and/or client new Medium
#25598 Let the broker inform proxies how often to poll new starter Medium
#25599 SOCKS4 failure message new Medium
#25601 Multiplex - one snowflake proxy should be able to support multiple clients new snowflake tor-pt Medium
#25681 Defend against flooding of the broker by low bandwidth snowflakes new Medium
#25688 proxy-go is still deadlocking occasionally assigned cohosh network-team-roadmap-2019-Q1Q2 Low
#25723 Multiplex - one client splits traffic across multiple proxies assigned dcf Low
#25874 DNS-based rendezvous for Snowflake new Medium
#25985 Snowflake rendezvous using AMP cache needs_revision Medium
#26092 Split broker into components assigned dcf Low
#26151 Snowflake rendezvous using Amazon SQS new Medium
#26348 Guard against large reads new easy Medium
#27385 is confusing new snowflake, ux-team High
#27850 Provide stand-alone snowflake proxy for 32-bit assigned dcf Medium
#28651 Prepare all pieces of the snowflake pipeline for a second snowflake bridge new Medium
#28672 Android reproducible build of Snowflake new android Medium
#28726 Loosen restrictions on message sizes in WebSocket server new Medium
#28917 Delete the proxy opt-in cookie, don't set it to 0 new Medium
#28942 Evaluate pion WebRTC new Medium
#29125 Make websocket server tolerant of HTTP/2 new Medium
#29205 Look into using Firefox for the WebRTC implementation new Medium
#29206 New design for client -- proxy protocol for Snowflake assigned cohosh network-team-roadmap-2019-Q1Q2 Medium
#29207 New design for broker -- proxy protocol for snowflakes new snowflake, design, network-team-roadmap-2019-Q1Q2 Very High
#29208 Better timeout and retry for Snowflake new High
#29258 What is the IPv6 story with Snowflake new Medium
#29259 Ensure high test coverage for Snowflake new Medium
#29260 Should Snowflake proxies have a way to identify themselves to the broker new network-team-roadmap-2019-Q1Q2 Medium
#29262 Look into the network layer of WebRTC new Medium
#29293 New Design for client -- broker protocol for Snowflake new snowflake, bridges, broker High
#29565 Fix broker robots.txt to disallow crawling new easy Medium
#29734 Broker should receive country stats information from Proxy and Client merge_ready cohosh snowflake, geoip, stats Medium
#29736 Use WebSocket protocol to communicate between snowflake proxies and broker assigned ahf snowflake, websocket Medium

Attachments (4)

Download all attachments as: .zip