lnd.xprv/brontide
nsa 8c482f2be7 multi: Added a NetInterface to clean up config.go
This commit adds a new interface named NetInterface and two
implementations of it: RegularNet & TorProxyNet. These two structs
are used in config.go in an attempt to clean up the code and
abstract away the dialer and DNS functions.
2018-02-05 17:37:46 -08:00
..
conn.go multi: Added a NetInterface to clean up config.go 2018-02-05 17:37:46 -08:00
listener.go multi: Added Tor support 2018-02-05 17:37:46 -08:00
noise_test.go Add tests for key rotation from BOLT8 test vectors 2018-01-28 06:38:21 +01:00
noise.go Fix trivial comment errors in noise.go 2018-01-11 16:49:38 +02: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