disco icon indicating copy to clipboard operation
disco copied to clipboard

More implementations

Open mimoo opened this issue 7 years ago • 6 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

mimoo avatar Jul 18 '18 12:07 mimoo

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!

mimoo avatar Sep 05 '18 01:09 mimoo

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.

Fasjeit avatar Nov 05 '18 11:11 Fasjeit

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

mimoo avatar Nov 05 '18 23:11 mimoo

Looks like there is a swift version

mimoo avatar Mar 05 '19 03:03 mimoo

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

mimoo avatar Jul 05 '19 21:07 mimoo

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

mimoo avatar Oct 14 '19 22:10 mimoo