A Java library and an application to create staganography proxy connections over the Internet.
Simply download client and/or server .jar files from the releases page and run them with java 8 or later. Use -h or --help keys for more info.
At a client machine you should use steganography ProxyClient.jar as a proxy server. It incapsulates your data into the steganographic channel and sends it to server with an active proxy server.
ProxyServer.jar should be running at the external server and connected to the Real Proxy server, like Squid. It receives incapsulated data, decodes and retranslates in to the Real Proxy, so data could reach it's real destination.
StegoProxy is a combination of ProxyServer and ProxyClient modules.
ProxyClient is a client side of StegoProxy. You can interract with it like with any other proxies. It sends any incoming data throught the steganography chanel to ProxyServer.
StegoServer is a server side of StegoProxy. It automaticaly interracts with incoming steganography data and resends it to the Real Proxy (like Squid).
The scheme looks like this:
Browser (or any other app) <-regular network-> ProxyClient [<-steganographic channel->] ProxyServer <-regular network-> Real Proxy
You can use your own steganography algorithms and container types.
All you need is to implement Steganography and ContainerFactory interfaces.