NetCipher: Secured Networking

Better TLS and Tor App Integration

NetCipher is a library for Android that provides multiple means to improve
network security in mobile applications. It provides best practices TLS
settings using the standard Android HTTP methods, HttpURLConnection and
Apache HTTP Client, provides simple Tor integration, makes it easy to
configure proxies for HTTP connections and `WebView` instances.

More specifically this library provides:

  • Hardening of TLS protocol support and cipher suites, especially on older
    versions of Android (e.g. 4.4 and older)
  • Proxied Connection Support: HTTP and SOCKS proxy connection support for HTTP
    and HTTPS traffic through specific configuration
  • OrbotHelper: a utility class to support application integration with Orbot
    (Tor for Android). Check if its installed, automatically start it, etc.
  • Optional, custom certificate store based on the open Debian root CA trust
    store, which is built with Mozilla’s CA collection.

IT MUST BE NOTED, that you can use this library without using Orbot/Tor, but obviously we think using strong TLS/SSL connections over Tor is just about the best thing in the world.

This library was formerly named OnionKit

Getting Started

For examples and more info on using NetCipher, see the README and included sample project.

You can see examples of NetCipher in action here:

* F-Droid


The binary jar, source jar, and javadoc jar are all available on jcenter. To include them using gradle, add this line to your build.gradle:

    compile 'info.guardianproject.netcipher:netcipher:1.2'

Otherwise, the files can also be downloaded directly from jcenter.