reunion

module
v0.0.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 8, 2021 License: AGPL-3.0

README

=======
Reunion
=======

.. image:: https://godoc.org/github.com/katzenpost/reunion?status.svg
  :target: https://godoc.org/github.com/katzenpost/reunion

.. image:: https://api.codacy.com/project/badge/Grade/fa6651c5ed42478ca07c330faf5001c6
  :target: https://www.codacy.com/gh/katzenpost/reunion?utm_source=github.com&utm_medium=referral&utm_content=katzenpost/reunion&utm_campaign=Badge_Grade


Reunion is a cryptographic protocol allowing an asynchronous
passphrase authenticated exchange facilitated by the Reunion
server acting as a broadcast channel and ciphertext intermediary.
Compared to PANDA it's much better because it leaks less
metadata and resists precomputational attacks by the server.


Status
------

This cryptographic library is in working order.
However the Server doesn't have enough tests yet.

There are two servers written so far:

1. HTTP Reunion server
2. Katzenpost mix server plugin


Katzenpost mix server plugin
----------------------------

To configure your katzenpost provider, add the following lines to your
configuration file in the [Provider] section, with the appropriate paths.

::

  [[Provider.CBORPluginKaetzchen]]
    Capability = "reunion"
    Endpoint = "+reunion"
    Command = "/path/to/reunion_katzenpost_server"
    MaxConcurrency = 1
    [Provider.CBORPluginKaetzchen.Config]
      log_level = "NOTICE"
      log = "/path/to/reunion.log"
      s = "/path/to/reunion.storage"


Cryptographic Primitives
------------------------

* AEZ: git.schwanenlied.me/yawning/aez.git
* chacha20+poly1305 aead: https://git.schwanenlied.me/yawning/chacha20poly1305
* argon2id: https://godoc.org/golang.org/x/crypto/argon2
* hkdf: https://godoc.org/golang.org/x/crypto/hkdf
* curve25519: https://github.com/katzenpost/core/blob/master/crypto/ecdh/ecdh.go
* elligator: https://github.com/katzenpost/core/blob/master/crypto/extra25519/extra25519.go


disclaimer
==========

Thus far there are not been very much code review and no formal security audit of this code.

DO NOT DEPEND ON IT FOR STRONG SECURITY OR ANONYMITY.


license
=======

AGPL: see LICENSE file for details.

Directories

Path Synopsis
Package client provides the Reunion protocol client.
Package client provides the Reunion protocol client.
Package commands provides commands used by the client and server.
Package commands provides commands used by the client and server.
Package crypto provides core cryptographic functionality for the Reunion protocol.
Package crypto provides core cryptographic functionality for the Reunion protocol.
Package epochtime provides the Reunion protocol epoch timer.
Package epochtime provides the Reunion protocol epoch timer.
katzenpost
Package katzenpost provides the Reunion protocol Katzenpost epoch timer.
Package katzenpost provides the Reunion protocol Katzenpost epoch timer.
Package server provides the Reunion protocol server.
Package server provides the Reunion protocol server.
servers
transports
http
Package http provides the client transport for Reunion DB queries over http.
Package http provides the client transport for Reunion DB queries over http.
katzenpost
Package katzenpost provides the client ACN transport for Reunion DB queries on a katzenpost decryption mix network.
Package katzenpost provides the client ACN transport for Reunion DB queries on a katzenpost decryption mix network.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL