e375a308b9
This commit modifies the NewBrontideMachine constructor to allow a caller to specify exactly _how_ new ephemeral private keys for the crypto handshake are generated. This allows callers a bit more flexibility when using brontide, and also allow test cases to insert specific public keys for use within the hand shake. |
||
---|---|---|
.. | ||
conn.go | ||
listener.go | ||
noise_test.go | ||
noise.go | ||
README.md |
brontide
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