mimoo / disco

a protocol to encrypt communications and a cryptographic library based on Disco

Home Page:https://www.discocrypto.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

More implementations

mimoo opened this issue · comments

To become useful, Disco needs to be widely supported. This means a libdisco needs to exist in:

For now, no interop tests have been done. If people are interested we could have a date setup to plan for that.

There's also Xisco which doesn't use Strobe but Xoodyak

Furthermore, it needs to be integrated in load balancers and proxies:

  • HAProxy
  • Apache
  • Nginx

How to implement Disco?

  1. Implement or find an implementation of Strobe. (The reference code is in C and python.)
  2. Read the "How to Read This Document and Implement Disco" section of the Disco spec. What it tells you is to implement Noise but to ignore its SymmetricState and CipherState sections. (You can also ignore any symmetric crypto.)
  3. Once you have that, implement the SymmetricState according to the Disco spec
  4. Tada!

I've just started working on python version.

... better late than never :)

Actually noting (except a couple of symmetric methods) but there will be more in the nearest future.

yeah! That's awesome :) I'll take a look at it when I get some time.

Looks like there is a swift version

there's Xisco which doesn't use Strobe but xoodyak! https://github.com/nixberg/Xisco

And a rust implementation: https://github.com/rust-p2p/disco