AllanWang / Frost-for-Facebook

An extensive and functional third party app for Facebook
https://allanwang.github.io/Frost-for-Facebook/
GNU General Public License v3.0
1.09k stars 85 forks source link

Option to access Facebook over Tor hidden service #1640

Open nickcalyx opened 4 years ago

nickcalyx commented 4 years ago

I'd love to see Frost have the ability to access Facebook over Tor using its "hidden service" address, facebookcorewwwi.onion ... similar to how F-Droid itself has the option of using Tor for its network access

It would do a lot to increase privacy, and for censorship circumvention - as it would prevent Facebook from getting the user's IP address, and would prevent the user's ISP ( or their government ) from knowing they are going on Facebook. It might even help users in countries where Facebook gets blocked to access the site during censor blackouts ( please see : https://en.wikipedia.org/wiki/Censorship_of_Facebook )

It would probably require that the user has Orbot installed

Would be happy to discuss further

AllanWang commented 4 years ago

I'm not sure if that address will redirect to the mobile version, but if it doesn't, it won't be feasible. I also don't use Tor currently so it's an overhead I'm unlikely to support any time soon. If it's just a matter of changing the url, feel free to change it and test building it. If it works, I'll see if I can add options for it.

nickcalyx commented 4 years ago

When I go to facebookcorewwwi.onion in Tor browser for Android it does redirect to m.facebookcorewwwi.onion

nikonakoneko commented 4 years ago

I'm also interested in this feature, or at least to have the possibility to set a proxy to use tor

MuntashirAkon commented 4 years ago

It should not be that difficult to replace facebook.com with facebookcorewwwi.onion: You just need to add an option to enable it in the settings. However, you'll need to either implement proxy settings (to use tor proxy, or proxy in general) or use Orbot API which might be difficult for you.

AllanWang commented 4 years ago

I'm sure it is doable, but I don't think I'd have the resources to maintain it down the road, especially as I won't be using it. If it is as simple as we say, then someone can feel free to change the url constant and test it. Frost already has scripts with Travis CI, so you won't even need to build it yourself if you wish. I'm not familiar with any further setup, so someone else may want to look into that.

In the event I do add support directly in Frost, the integration may not be as trivial as we think. As the url is currently a constant throughout the code

MuntashirAkon commented 4 years ago

As the url is currently a constant throughout the code.

Are these constants only defined at

https://github.com/AllanWang/Frost-for-Facebook/blob/6f4f98ae11fc17c29f896ce5f38e28251fff570d/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbConst.kt#L23-L32

or some place else as well? If that's the case, a simple refactoring might work.

Also:

MuntashirAkon commented 4 years ago

Also, there's should be an option for proxy. This could also help them where Facebook is actively monitored or, worse, blocked.

murkom commented 3 years ago

Tor support would be great. Been using faceslim, because it is the only one that supports it. But no development there for a long time.

ongymens commented 2 years ago

Thank you for the initiative, @nickcalyx ! I would very much appreciate this feature as well and so would many others, I assume! Has anyone tried the "refactoring" that @MuntashirAkon suggested? And have you thought about supporting the required proxy option, @AllanWang ?

travisfw commented 1 year ago

supporting the required proxy option?

Just mentioning #1905 too, for not-tor-specific proxying.