The Client used to anonymize data (e. g. from a user's application) via a cascade of mixes. "Client" is the name of this package's main class as well. It follows the "everything is a stream" concept. See architectureInterfaces.ClientInterface. From a user perspective, the Client behaves quite equal to a socket (java.net.Socket ) and therefore abstracts from the underlying technique.