disco
disco copied to clipboard
a protocol to encrypt communications and a cryptographic library based on Disco
you can use disco via: - [x] plug-and-play Dial/Listen+Accept for TCP - [ ] same thing for UDP - [x] framing messages yourself (you need to call WriteMessage and ReadMessage...
While I might not want to document them all, especially as some are insecure, it would be nice for protocol builders to support all the handshake patterns. I could also...
There are several APIs that need to be documented: * isRemoteAuthenticated() * remotePublicKey() * ListenDisco() & AcceptDisco() [more info](https://github.com/mimoo/NoiseGo/pull/4#issuecomment-427863839) The documentation also needs to update the APIs of GenerateKeyPair and...
one additional argument for disco is that static keys that are sent not encrypted in Noise, are sent obfuscated in Disco. This is good against passive observing of middle boxes...
[this page](https://keccak.team/keccak_strengths.html) is cool, we should link to it.
right now the library is just a plug-n-play library. It'd be better if it could also be used as a pure disco library.
I'm not sure we need to send a tag after sending a static key, this is because the whole message pattern is authenticated at the end by the payload (empty...
libdisco still doesn't have releases or a version. How to do that with [SemVer](https://semver.org/) and [github](https://gist.github.com/stuartsaunders/448036/5ae4e961f02e441e98528927d071f51bf082662f) and [Go](https://blog.golang.org/versioning-proposal)? (also [this](https://golang.org/doc/devel/release.html#policy))
I just added benchmarks in https://github.com/mimoo/disco/commit/8b2bf93ad5e3d7b53931b27c28ec92b7d7d2d960 It's not pretty compared to crypto/tls the main reason I believe is that I am not using [the block hack that they use](https://github.com/golang/go/blob/master/src/crypto/tls/conn.go#L450). It...