lnd/brontide
Conner Fromknecht 6bc32871fd
brontide/conn: expose WriteMessage and Flush on brontide.Conn
This commit exposes the WriteMessage and Flush interfaces of the
underlying brontide.Machine, such that callers can have greater
flexibility in when blocking network operations take place.
2019-04-22 16:04:53 -07:00
..
conn.go brontide/conn: expose WriteMessage and Flush on brontide.Conn 2019-04-22 16:04:53 -07:00
listener.go brontide/listener: handle SetReadDeadline errors 2019-02-15 18:14:02 -08:00
noise_test.go brontide/noise_test: defer wait group decrement 2019-04-22 16:04:37 -07:00
noise.go brontide/noise_test: add TestFlush 2019-04-22 16:04:24 -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