Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New SQS rendezvous method for Snowflake #335

Open
mchlp opened this issue Feb 27, 2024 · 2 comments
Open

New SQS rendezvous method for Snowflake #335

mchlp opened this issue Feb 27, 2024 · 2 comments

Comments

@mchlp
Copy link

mchlp commented Feb 27, 2024

This post is about a new feature that will be released in Tor Browser Alpha 13.5a5 and was released in Stable 13.0.10.

Before Snowflake can establish a peer-to-peer WebRTC connection, it needs to do a step called rendezvous, where the client connects to the broker and indicates its need for a proxy connection. The rendezvous method is modular and any kind of blocking-resistant request–response protocol can work. The two existing methods Snowflake uses for rendezvous is a domain-fronted HTTPS request and an AMP cache rendezvous. We have just deployed another rendezvous method that utilizes the Amazon SQS service from Amazon Web Services. Now, if any of these three rendezvous methods are blocked, we can switch over to one of the other methods.

To use this new rendezvous method, you will have to add the following bridge line to your Tor Browser:

snowflake 192.0.2.3:80 2B280B23E1107BB62ABFC40DDCC8824814F80A72 fingerprint=2B280B23E1107BB62ABFC40DDCC8824814F80A72 ice=stun:stun.l.google.com:19302,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn sqsakid=AKIA5AIF4WJJXS7YHEG3 sqsqueue=https://sqs.us-east-1.amazonaws.com/893902434899/snowflake-broker sqsskey=7SDMsJA4s5F+Webu/zL8vk0QWWIlkW6cWNfUlCKQ

Background for Amazon SQS rendezvous:
Snowflake rendezvous using Amazon SQS (2019)
Rendezvous with Amazon SQS doc (2024)
Implementation (2024)

This feature was implemented by five Software Engineering students from the University of Waterloo: Andrew Wang, Anthony Chang, Kieran Quan, Michael Pu, Yi Wei Zhou with the help of Cecylia Bocovich from the Tor anti-censorship team.

@IrradiatedKiwi
Copy link

IrradiatedKiwi commented Mar 2, 2024

Thank you for your hard works.
I tried SQS and it works great. And This works better than the old front for me since I had connectivity issue with snowflake .

I believe it will help people who live in opressive regime to reach out the world.
I hope Amazon won't kill it.

Also if anyone have problem with snowflake font domain recently, please refer to

https://forum.torproject.org/t/fix-problems-with-snowflake-since-2024-03-01-broker-failure-unexpected-error-no-answer/11755

@cohosh
Copy link

cohosh commented Mar 20, 2024

A few SQS improvements implemented @mchlp were just merged and deployed in the recent Tor Browser 13.0.12 update. Use of SQS with this version requires a slightly different bridge line:

snowflake 192.0.2.4:80 8838024498816A039FCBBAB14E6F40A0843051FA fingerprint=8838024498816A039FCBBAB14E6F40A0843051FA ice=stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478 utls-imitate=hellorandomizedalpn sqsqueue=https://sqs.us-east-1.amazonaws.com/893902434899/snowflake-broker sqscreds=eyJhd3MtYWNjZXNzLWtleS1pZCI6IkFLSUE1QUlGNFdKSlhTN1lIRUczIiwiYXdzLXNlY3JldC1rZXkiOiI3U0RNc0pBNHM1RitXZWJ1L3pMOHZrMFFXV0lsa1c2Y1dOZlVsQ0tRIn0=

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants