[Paper Review] Evaluating Snowflake as an Indistinguishable Censorship Circumvention Tool
This paper evaluates Snowflake, a pluggable transport that uses WebRTC to bypass internet censorship, and finds it is highly identifiable among other WebRTC services through unique handshake characteristics. Despite its design for indistinguishability, Snowflake is detected with 99.8% accuracy using features like extended message sequences and specific DTLS extensions, prompting recommendations to harden its protocol against traffic analysis.
Tor is the most well-known tool for circumventing censorship. Unfortunately, Tor traffic has been shown to be detectable using deep-packet inspection. WebRTC is a popular web frame-work that enables browser-to-browser connections. Snowflake is a novel pluggable transport that leverages WebRTC to connect Tor clients to the Tor network. In theory, Snowflake was created to be indistinguishable from other WebRTC services. In this paper, we evaluate the indistinguishability of Snowflake. We collect over 6,500 DTLS handshakes from Snowflake, Facebook Messenger, Google Hangouts, and Discord WebRTC connections and show that Snowflake is identifiable among these applications with 100% accuracy. We show that several features, including the extensions offered and the number of packets in the handshake, distinguish Snowflake among these services. Finally, we suggest recommendations for improving identification resistance in Snowflake. We have made the dataset publicly available.
Motivation & Objective
- To assess whether Snowflake, a WebRTC-based censorship circumvention tool, remains indistinguishable from legitimate WebRTC applications.
- To identify specific handshake features that enable censors to detect Snowflake traffic among other WebRTC services.
- To evaluate the effectiveness of existing pluggable transports in resisting deep packet inspection and traffic fingerprinting.
- To provide actionable recommendations for improving Snowflake’s resistance to identification by censors.
Proposed method
- Collected over 6,500 isolated DTLS handshakes from Snowflake, Facebook Messenger, Google Hangouts, and Discord across Firefox and Chrome.
- Extracted 61 features from DTLS handshakes, including message sequence, extension types, lengths, and cipher suite details.
- Applied one-hot encoding to convert categorical features into binary inputs for machine learning.
- Trained a random forest classifier using 5-fold cross-validation to evaluate detection accuracy and feature importance.
- Analyzed feature importances to identify unique identifiers in Snowflake handshakes, such as message sequence and extension offerings.
- Evaluated the impact of specific protocol-level changes on detection resistance through comparative analysis.
Experimental results
Research questions
- RQ1Can Snowflake be distinguished from other WebRTC-based services based on its DTLS handshake characteristics?
- RQ2Which specific handshake features enable high-accuracy identification of Snowflake traffic?
- RQ3To what extent does Snowflake’s current implementation leak identifying metadata in its DTLS handshake?
- RQ4How effective are proposed protocol modifications in improving Snowflake’s indistinguishability?
Key findings
- Snowflake handshakes require an average of 13.42 packets, significantly more than Facebook (4.4), Google Hangouts (4.5), and Discord (5.6), due to frequent retransmissions.
- A random forest classifier achieved 99.8% accuracy and perfect micro-weighted F1 score in distinguishing Snowflake from other services.
- The feature 'Server Message Sequence: 1' was present in 100% of Snowflake handshakes but absent in all others, indicating a unique protocol behavior.
- The 'renegotiation_info' and 'supported_groups' extensions were offered in 100% of Snowflake handshakes but were absent in Facebook and Google Hangouts, making them strong identifiers.
- The presence of optional Client Hello and Hello Verify Request packets in Snowflake’s handshake is a distinguishing factor not used by other services.
- The study concludes that Snowflake’s current implementation is not indistinguishable and recommends protocol-level changes to improve anonymity.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.