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
V3 Onion Services With Client Authorization #415
Conversation
When testing this, I think the following areas should be put under special consideration:
|
At this point the remaining work to be done with this is just the creation of V3 Onion Services from other apps. I'm currently forking NetCipher to add support for a new Intent that's able to talk to Orbot from |
This PR coincides with guardianproject/NetCipher#80 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall looks good, see comments for things that could be improved. I'm not familiar with the old Hidden Service code, so some of my comments might be due to my ignorance there.
orbotservice/src/main/java/org/torproject/android/service/OrbotService.java
Show resolved
Hide resolved
orbotservice/src/main/java/org/torproject/android/service/OrbotService.java
Show resolved
Hide resolved
This pull request has changed a lot and I had to take a step back from it for about 2 months. To summarize all of the changes this PR Includes:
|
Woohoo! |
This introduces V3 Onion Services to Orbot. Right now this does not support client authorization, just the creation of V3 Onion via the user interface or through an Intent call from another application.
Currently you can backup and restore V3 Onion Services to/from disk.
There are a lot of ways in which this implementation follows the code for traditional V2 services, but be that as it may I've decided to be very selective about code reuse from V2 since in the not too distant future those services will be dropped and we'll likely want to remove a lot of it from Orbot altogether. It also would be desirable to allow users to migrate an existing V2 service to V3 but at this time that remains unimplemented.
Making this PR a "draft" right now because there remains a few things to be polished...