lnd/brontide
Matt Morehouse bad4a66279
brontide: derandomize fuzz tests
It is best to have deterministic fuzz targets, so that if a failure
occurs, it can be easily reproduced.

This commit swaps the cryptographically secure RNG for a deterministic
one seeded from fuzzer input.
2023-05-23 08:32:13 -05:00
..
bench_test.go brontide: replace defer cleanup with t.Cleanup 2022-10-13 17:01:35 +08:00
conn.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
fuzz_test.go brontide: derandomize fuzz tests 2023-05-23 08:32:13 -05:00
listener.go brontide: fix typo 2020-12-04 23:07:53 +08:00
noise_test.go brontide: replace defer cleanup with t.Cleanup 2022-10-13 17:01:35 +08:00
noise.go multi: fix make fmt 2022-08-23 22:10:24 +08:00
README.md scripted-diff: replace ⛰ emoji with $ [skip ci] 2022-10-28 12:06:49 -04: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