Contribute to Katzenpost


Contribution Guidelines

  1. Get familiar with the various repositories on our Github.

  2. Developers should look at the Developer Guide and the Setup Guide to build and run a local Katzenpost mixnet.

  3. Open a pull request on Github. We will help with occurring problems and merge your changes back into the main project.

Where to Start

We have a lot of repositories! The top-level packages that you’ll probably want to look at first are:

  • Catchat a QT cross-platform metadata minimizing messenger application utilizing catshadow.

  • Catshadow is a mix network messaging system. This repository contains a client library which can be used with a Katzenpost mix network. It not only uses strong modern end to end encryption (Noise + Double Ratchet), but it is also designed to reduce the amount of metadata leaked onto the network.

  • Client is a mixnet client library you can use to write applications that interact with mixnet services.

  • Server is the mix and provider daemons that route messages and run services.

  • Authority are the PKI daemons that provide key and service information to the network.

  • Mailproxy is a POP3/SMTP proxy to use email clients with katzenpost

  • Server_Plugins are examples of a mixnet service plugins written in golang and rust.

Project Ideas