Explaining Lightning Network specification BOLT 12 and how it works with the Bitcoin Layer 2 protocol.
Sjors is back! In this episode of "The Van Wirdum Sjorsnado," hosts Aaron van Wirdum and Sjors Provoost discussed BOLT 12 (Basis of Lightning Technology 12), a newly-proposed Lightning Network specification for “offers,” a type of “meta invoice” designed by c-lightning developer Rusty Russell.
Where coins on Bitcoin’s base layer are sent to addresses, the Lightning Network uses invoices. Invoices communicate the requested amount, node destination and the hash of a secret which is used for payment routing. This works, but has a number of limitations,
Provoost explained the details, notably that the amount must be bitcoin-denominated (as opposed to fiat-denominated), and that the invoice can only be used once. BOLT 12, which has been implemented in c-lightning, is a way to essentially refer a payer to the node that is to be paid, in order to request a new invoice. While the BOLT 12 offer can be static and reusable — it always refers to the same node — the payee can generate new invoices on the fly when requested, allowing for much more flexibility, Provoost explained.
Finally, van Wirdum and Provoost discussed how the new BOLT 12 messages are communicated over the Lightning Network through an update to the BOLT 7 specification for message relay.