lnd/brontide
Olaoluwa Osuntokun 1899847823
brontide: make establishTestConnection full async
In this commit we modify the establishTestConnection() function that
each of the brontide unit tests utilize. Before this commit, we would
fully block on the Accept method of the listener. Since then it has
been observed, that at times if Accept blocks indefinitely, then the
entire test will fail after 10 minutes. To allow the test to return
early with a pertinent error, we’ll now make the entire test async, so
we can immediately return with an error if detected.
2017-11-01 13:28:29 -07:00
..
conn.go brontide: set read deadlines on socket during initial handshake 2017-10-04 14:58:20 -07:00
listener.go brontide: set read deadlines on socket during initial handshake 2017-10-04 14:58:20 -07:00
noise_test.go brontide: make establishTestConnection full async 2017-11-01 13:28:29 -07:00
noise.go brontide: add EphemeralGenerator as a functional arg to NewBrontideMachine 2017-08-01 17:16:36 -07:00
README.md multi: fix formatting issues in packge README's 2017-03-27 16:25:25 -07:00

brontide

Build Status MIT licensed GoDoc

The brontide package implements a secure crypto messaging protocol based off of the Noise Protocol Framework. The package exposes the raw state machine that handles the handshake and subsequent message encryption/decryption scheme. Additionally, the package exposes a net.Conn and a net.Listener interface implementation which allows the encrypted transport to be seamlessly integrated into a codebase.

The secure messaging scheme implemented within this package is described in detail in BOLT #8 of the Lightning Network specifications.

This package has intentionally been designed so it can be used as a standalone package for any projects needing secure encrypted+authenticated communications between network enabled programs.

Installation and Updating

$ go get -u github.com/lightningnetwork/lnd/brontide