The primary goal of this project is to create a new implementation of the Secure Scuttlebutt Secret Handshake in golang over websocket transport.
This project has some other goals:
- favors readability/understandability over cleverness
- favors usability/stability over speed
- work over websockets
- easily change the network key
You can run the demo like so:
$ cd examples/demo
$ ./server.sh &
[1] 24494
Running server...
$ ./client.sh
Running client...
2020/01/21 00:56:29 Handshake Success: server
2020/01/21 00:56:29 Handshake Success: client
$ fg
./server.sh
$ ^C
This project was started in an effort to learn golang. The code in this project is heavily influenced by the secret handshake ssb protocol guide. I also thought it would be nice to somehow "plug-in" the secret handshake into current or future websocket-based projects. And here it is... I wrote it in such a way to help myself learn some golang, and help myself learn about ssb. Being more of a research project, i would expect bugs and awful code everywhere. Please submit a pull request or an issue if you find anything.