lnd/brontide
Olaoluwa Osuntokun 4c737d3f02
brontide+peer: use internal sync/pool to reduce allocations
This ensures that under medium to high load, we eliminate all
allocations once we arrive a steady state, re working memory.
2025-09-24 11:52:01 -07:00
..
bench_test.go brontide: add benchark for WriteMessage 2025-09-24 11:51:59 -07:00
conn.go brontide+peer: use internal sync/pool to reduce allocations 2025-09-24 11:52:01 -07:00
fuzz_test.go brontide: derandomize fuzz tests 2023-05-23 08:32:13 -05:00
listener.go server.go+accessman.go: introduce caches for access permissions 2025-03-11 20:42:34 -04:00
noise.go brontide+peer: use internal sync/pool to reduce allocations 2025-09-24 11:52:01 -07:00
noise_test.go server.go+accessman.go: introduce caches for access permissions 2025-03-11 20:42:34 -04: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