Katzenpost Documentation
For users
Client applications, packages, and a public mixnet.
| Title | Description | |
|---|---|---|
| π | Namenlos public mixnet (coming soon) | A public Katzenpost mix network that anyone may use, without the burden of operating their own. |
| π¦ | kpclientd packages and binaries (coming soon) |
Pre-built distribution packages and binaries for the client daemon, so users will not need to build from source. |
| π¬ | katzenqt group chat | A decentralised group chat application running over the Katzenpost mix network and the Pigeonhole storage services. Pre-built packages forthcoming. Build and run from source in the meantime. |
For operators
You wish to run your own Katzenpost mix network with friends and collaborators.
| Title | Description | |
|---|---|---|
| π | Admin Guide | Deploying and operating Katzenpost servers: installation, configuration, the Docker test mixnet, NAT considerations, and a full configuration appendix. |
| π³ | Run a Mix Server in Docker | A focused recipe for running a single Katzenpost mix server inside a Docker container, intended for operators who wish to participate in an existing mix network. |
| π§ | Build from source | Pinned versions of the Katzenpost stack and brief instructions for building each component (kpclientd, thin clients, katzenqt, server-side) from source. |
For application developers
You wish to build software that integrates with Katzenpost.
| Title | Description | |
|---|---|---|
| π | Thin Client API Reference | Complete API reference for the Go, Rust, and Python thin client libraries. |
| π | Thin Client How-to Guide | Task-oriented guides for accomplishing common operations with the thin client API. |
| ποΈ | Understanding Pigeonhole | A high-level introduction to the Pigeonhole anonymous storage protocol for application developers. |
| π§ | Build from source | Pinned versions of the Katzenpost stack and brief instructions for building each component from source. |
For core developers
You wish to contribute code to Katzenpost itself.
| Title | Description | |
|---|---|---|
| π οΈ | Design Specifications | The protocol specifications that the implementation must honour: Sphinx, KEMSphinx, the wire protocol, the directory authority, replay detection, and more. |
| Source Repository | The Katzenpost monorepo on GitHub: server, dirauth, client, courier, replica, and core. Issues, pull requests, and discussions live here. |
For academics
You are a mathematician, computer scientist, security researcher, or hacker investigating the design.
Read in the order below. Seasoned mixnet researchers may skip ahead to the Echomix paper.
| Title | Description | |
|---|---|---|
| π | 1. Literature Review (last updated April 2024) | Start here if you are new to mixnet research. Field context, attack taxonomy, and the conceptual positions the Echomix paper builds on. |
| 2. Echomix paper | Echomix: a Strong Anonymity System with Messaging. Katzenpost’s design, presented as research (arXiv). | |
| π | 3. Threat Model (PDF) | Detailed security assumptions and mitigations specific to the deployed system. |
Supplementary reading:
| Title | Description | |
|---|---|---|
| π§ | Audio Engineering Considerations (PDF) | A technical report on the challenges of carrying voice traffic through a modern mix network, with attention to usability and scalability. |