16:00:17 <onyinyang> #startmeeting tor anti-censorship meeting 16:00:17 <MeetBot> Meeting started Thu Apr 2 16:00:17 2026 UTC. The chair is onyinyang. Information about MeetBot at https://wiki.debian.org/MeetBot. 16:00:17 <MeetBot> Useful Commands: #action #agreed #help #info #idea #link #topic. 16:00:17 <onyinyang> hello everyone! 16:00:17 <onyinyang> here is our meeting pad: [https://pad.riseup.net/p/r.9574e996bb9c0266213d38b91b56c469](https://pad.riseup.net/p/r.9574e996bb9c0266213d38b91b56c469) 16:00:42 <onyinyang> I'll give everyone a few minutes to fill out the pad 16:01:04 <onyinyang> Also please send me a message if you need editing rights :) 16:01:26 <Shelikhoo[mds]> hi~hi~ 16:01:30 <cohosh> hi 16:02:23 <SergioSantos> Hello 16:02:35 <cohosh> nice to see you here SergioSantos! 16:02:51 <SergioSantos> thank you, happy to be here 16:04:14 <onyinyang> ok we have one discussion point for today: Discuss snowflake proxy mobile application 16:04:47 <cohosh> yeah! SergioSantos would you like to introduce the project you've been working on? 16:05:18 <SergioSantos> Of course 16:05:42 <SergioSantos> Hello everyone. I had found out about Snowflake a while ago, not sure from where. And I started using the firefox extension for a while. 16:06:23 <SergioSantos> Then I looked if there was something for Android. I'm an Android developer, that's why. 16:06:49 <SergioSantos> I saw that there was the Kindness project inside Orbot, but I wondered if a standalone app would be something interesting to exist. 16:07:31 <SergioSantos> I reached out to a friend, to see if he could introduce me to someone working on Snowflake, so they could give feedback, if such app was in need. And meskio and cohosh said it was. 16:08:24 <SergioSantos> Thanks to the work on iptproxy, I could quickly build a proof-of-concept and confirm it was a quite simple app to build. So here it is: github.com/blocoio/snowflake 16:09:16 <SergioSantos> So I asked a bunch of questions to cohosh regarding what would be the best way to get more testers, how to name the app, where to publish it. And that's why I'm here :) 16:09:47 <cohosh> thanks for sharing this with us! 16:09:53 <dcf1> thanks SergioSantos 16:09:57 <SergioSantos> Cláudia, my studio partner, did the design. 16:10:01 <onyinyang> nice work SergioSantos! 16:10:11 <Shelikhoo[mds]> thanks Sérgio Santos ! 16:10:40 <SergioSantos> We're not planning to release it named "Snowflake Volunteers" on Google Play and F-Droid. But I'm curious to hear your thoughts on that. 16:10:41 <SergioSantos> s/not/now/ 16:10:44 <SergioSantos> *now 16:10:49 <cohosh> i tried it out in android studio, it works very nicely 16:10:49 <dcf1> the app uses IPtProxy, same as Orbot? 16:11:20 <SergioSantos> Yup, it does. I even had to do some feature requests to IPtProxy so I could get some features in. 16:11:49 <Shelikhoo[mds]> from my point of view, my wish list is more or less like... update the proxy code and app to catch up with protocol updates when possible 16:11:54 <cohosh> you also found a bug with our events implementation, which i'm grateful for :) 16:12:15 <Shelikhoo[mds]> nice! thanks!!! 16:12:30 <cohosh> iirc one of the other features was allowing users of the iptproxy library to name their own proxy type 16:13:06 <SergioSantos> As long as those updates end-up in IPtProxy, it's quite easy for me to keep it up-to-date. If I need to write some golang, then it will take quite some time :) 16:13:10 <cohosh> this was a topic for discussion i wanted to bring up because have an allowlist of proxy type names for stats purposes: https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/blob/6b100d6a0c3dd399ba29153f8aed09f5c4bb3fef/common/messages/proxy.go#L20 16:13:35 <cohosh> we can add whatever identifier you're using to this list, in the meantime it will show up as "unknown" 16:14:06 <cohosh> actually not so much an allowlist as a filter for stats presentation purposes 16:14:16 <cohosh> the proxies are still allowed to poll 16:14:20 <SergioSantos> I'm using "bloco" currently, our studio name. 16:14:51 <Shelikhoo[mds]> I think we should allow implementations to postfix their implementation 16:15:03 <Shelikhoo[mds]> like webext-fork2 16:15:31 <Shelikhoo[mds]> so it will show up as initially webext 16:15:56 <cohosh> Shelikhoo[mds]: well, i don't want to allow arbitrary strings to be allowed or we'll end up with similar problems as tor relay names 16:16:12 <Shelikhoo[mds]> and as it gain more usage, we can separate webext-fork2 from webext to make it a standalone item 16:16:42 <cohosh> i see, you're recommending a naming convention but it would still be a manual process to allow new strings? 16:16:51 <Shelikhoo[mds]> yes 16:17:09 <cohosh> in this case i'm happy to add bloco as it is now, but we can recommend that in the future 16:17:31 <Shelikhoo[mds]> before we manually allow a new string, it will be classified as its parent group 16:17:48 <Shelikhoo[mds]> yes, I think adding bloco now is fine as well 16:18:03 <Shelikhoo[mds]> I was just trying to suggest a general purpose solution 16:18:05 <SergioSantos> If you prefer, we can go with "iptproxy-bloco" already 16:18:33 <cohosh> Shelikhoo[mds]: ah i see, we process unknown strings to see if it matches a prefix of a known group? 16:19:25 <Shelikhoo[mds]> I am happy with either names, and since we are already adding a new allowed name, just "bloco" would work fine in this case. 16:19:30 <Shelikhoo[mds]> cohosh: yes... 16:20:02 <cohosh> SergioSantos: yeah let's just add bloco for now 16:20:22 <cohosh> i'll make an issue for it 16:21:08 <cohosh> for the app name, i don't see an issue with including snowflake in the name, does anyone else forsee a problem with that? 16:21:34 <cohosh> naming things can be difficult, heh, it's something i struggle with 16:21:35 <SergioSantos> Those statistics should show up in https://metrics.torproject.org/collector/recent/snowflakes/ right? I was curious where I could track it. 16:22:06 <cohosh> SergioSantos: yes that's right. they will also be in our prometheus metrics which are publicly exported here: https://snowflake-broker.torproject.net/prometheus 16:22:23 <cohosh> we don't have a public prometheus server to scrape these, but anyone could run one 16:22:23 <dcf1> I'm looking at https://github.com/blocoio/snowflake/blob/1.0/app/src/main/AndroidManifest.xml and I don't see anything weird, but I'll just state for the record that there's an expectation with this type of proxy app not to do any internal telemetry, no logging of IP addresses 16:23:02 <dcf1> You can see in the golang proxy source code, we are careful to proactively remove potential IP addresses from logs by default 16:23:16 <Shelikhoo[mds]> and bad name some time have unintended consequence.... 16:24:14 <SergioSantos> dcf1: Of course, the only thing we're storing is statistics: connections + data received + data sent. 16:24:34 <SergioSantos> * Of course, the only thing we're storing is statistics: connection counts + data received + data sent. 16:26:01 <Shelikhoo[mds]> I think google does collect some info about app installation and usage 16:26:22 <Shelikhoo[mds]> on device with Google Service Framework installde 16:26:33 <Shelikhoo[mds]> but this is not usually given to developers directly 16:26:54 <SergioSantos> Yes, unfortunately that's the usual side effect for those who install from Google Play, or in a phone with Google Services. 16:27:03 <Shelikhoo[mds]> since user can always avoid this anyway, this isn't an issue from my point of view 16:27:28 <SergioSantos> We even declare it on our privacy policy: https://bloco-privacy-policy.web.app/snowflake.html 16:27:39 <Shelikhoo[mds]> oh nice! 16:28:15 <SergioSantos> The snowflake proxy part was copied from your browser extension privacy policy. 16:28:41 <cohosh> nice 16:29:09 <SergioSantos> I also copied some text from the Snowflake website to the app About screen. To compensate, I finished the pt-BR translation of the Snowflake website, to get it published too. 16:29:54 <cohosh> that is great, thank you for contributing to translations :D 16:30:50 <cohosh> SergioSantos: as far as getting beta testers, i'm thinking the forum and anti-censorship-team mailing list are good places to make an announcement 16:31:27 <cohosh> i'd recommend including detailed instructions for how to install and run it, as well as what kind of feedback you're looking for 16:32:24 <SergioSantos> Got it. Hopefully the F-Droid application goes through, and we can use it as a starting point. 16:32:48 <cohosh> here's an example call for testers: https://forum.torproject.org/t/call-for-testers-webtunnel-a-new-way-to-bypass-censorship-with-tor-browser/9855 16:33:59 <onyinyang> amazing work :) I'm looking forward to trying it out 16:34:03 <onyinyang> anything more on this topic? 16:34:14 <Shelikhoo[mds]> EOF from me 16:35:03 <cohosh> SergioSantos: any other questions you have from us? 16:35:09 <cohosh> *for us 16:35:20 <SergioSantos> Don't think so. Thank you for the feedback and informations. 16:36:32 <cohosh> thanks for working on this! 16:37:02 <onyinyang> ok, we have an interesting link: https://www.techpolicy.press/what-digital-isolation-and-censorship-evasion-look-like-in-wartime-iran/ 16:38:21 <Shelikhoo[mds]> thanks for sharing! EOF 16:39:13 <onyinyang> and that's it for today 16:39:25 <onyinyang> thanks everyone :) 16:39:26 <onyinyang> #endmeeting