A Java/Android library for embedding and managing the Tor Onion Proxy to host hidden services and route traffic through Tor.
Tor Onion Proxy Library is a Java and Android library that embeds the Tor Onion Proxy into applications, enabling them to host Tor hidden services and route traffic through the Tor network. It packages Tor binaries and provides a Java wrapper to simplify deployment, management, and integration, solving the pain of manually setting up and maintaining Tor instances.
Android and Java developers building privacy-focused applications that require Tor networking, such as secure messaging apps, anonymous browsing tools, or peer-to-peer systems needing hidden services.
Developers choose this library because it drastically reduces the complexity of integrating Tor into Java/Android apps, offering a ready-to-use, cross-platform solution with a clean API for managing Tor lifecycle and hidden services, backed by Microsoft Open Technologies.
Provides a JAR and an AAR for embedding the Tor Onion Proxy into a Java or Android Program
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Packages core Tor binaries for Android, Windows, Linux, and macOS directly in JAR/AAR files, eliminating the need for separate Tor installation and deployment.
Includes native binaries for multiple platforms, enabling seamless Tor integration across different operating systems without platform-specific code changes.
Provides a high-level Java API via OnionProxyManager to handle Tor startup, configuration, and hidden service hosting, abstracting complex Tor setup.
Uses dynamic ports for control and SOCKS channels, allowing multiple library instances to run concurrently without interference, as noted in the FAQ.
At version 0.0.3 with only one test, the library is not production-ready and may have bugs or incomplete features, as admitted in the README's FAQ.
Requires building from source with gradle and installing to local maven, as it's not published to public repositories, making initial integration cumbersome and time-consuming.
The README directs users to read test files for guidance and states using the library is 'kind of a pain,' lacking comprehensive tutorials or examples.