Skip to content

Latest commit

 

History

History
51 lines (31 loc) · 3.42 KB

basics-of-lightning-technology-bolt.md

File metadata and controls

51 lines (31 loc) · 3.42 KB
latest-revision original-author created status title contributors type description discussions-to category
2019-01-27T00:00:00.000Z
Ryan Shea (ryan-shea)
2019-01-01T00:00:00.000Z
Accepted
Basis of Lightning Technology (BOLT)
Ryan Shea (ryan-shea); Gareth James (gjradar)
article
GitHub URL
lightning-basics

Basis of Lightning Technology (BOLT)

Overview

The Basis of Lightning Technology is a standardized technical specification for the implementation of the Lightning Network. The standards define how various implementations can interoperate to interact with and create the same network. The specifications are currently a work-in-progress, and are continually being iterated upon as projects like lnd and c-lightning are built in parallel.

Details

The Basis of Lightning Technology (BOLT) documents describe a layer-2 protocol for off-chain bitcoin transfer by mutual cooperation, relying on on-chain transactions for enforcement if necessary.

Channels

See BOLT #2: Channel Establishment for more on channel establishment and BOLT #3: Funding Transaction Output for the format of the bitcoin transaction that creates the channel. See BOLT #5: Recommendations for On-chain Transaction Handling for the requirements when participants disagree or fail, and the cross-signed bitcoin transaction must be spent.

Conditional Payments

See BOLT #2: Adding an HTLC for the commands a participant uses to add a conditional payment, and BOLT #3: Commitment Transaction for the complete format of the bitcoin transaction.

Forwarding

See BOLT #2: Forwarding HTLCs for details on forwarding payments, BOLT #4: Packet Structure for how payment instructions are transported.

Network Topology

See BOLT #7: P2P Node and Channel Discovery for details on the communication protocol, and BOLT #10: DNS Bootstrap and Assisted Node Location for initial network bootstrap.

Payment Invoicing

See BOLT #11: Invoice Protocol for Lightning Payments for the protocol describing the destination and purpose of a payment such that the payer can later prove successful payment.

Resources

https://github.com/lightningnetwork/lightning-rfc

References

[1] https://github.com/lightningnetwork/lightning-rfc/blob/master/00-introduction.md