Lightning Implementations
Lightning implementations are the independent software programs that run the Lightning Network protocol. The most widely used are LND from Lightning Labs, Core Lightning from Blockstream, Eclair from ACINQ, and the Lightning Development Kit supported by Spiral. All of them follow a shared set of specifications called the BOLTs, short for Basis of Lightning Technology, first drafted in 2016.
Why it matters
Multiple interoperable implementations mean the network has no single point of software failure. A serious bug in one codebase does not take down nodes running the others, and no single company controls how the protocol evolves. The implementations are also written in different languages, Go, C, Scala, and Rust respectively, which broadens the pool of developers who can audit and contribute to them.
Diversity has costs too. Features ship at different speeds, and subtle differences between implementations occasionally cause interoperability bugs that specification work has to iron out.
How it works
The BOLT documents define everything two Lightning nodes need to agree on: the peer wire protocol, channel establishment and closing, the onion routing scheme for payments, and the invoice format. Any program that implements the BOLTs correctly can open channels and route payments with any other, which is why a node running LND can pay a node running Eclair without either side noticing a difference.
Related Terms
Ready to convert your gold to Bitcoin?
Get Your Free Kit →