bLIPs: A proposal for community-driven app layer and protocol extension standardization



Summary:

The recent discussion around zero-confirmation channels on the Lightning Network provides an opportunity to discuss how the BOLT process handles features and best practices that arise in the wild as opposed to originating within the process itself. The idea of adding a BIP-style process (bLIPs? SPARKs?) on top of the BOLTs has been discussed over the last couple of months, and it has received positive feedback from both app-layer and protocol developers. This would not affect the existing BOLT process but simply adds a place for app-layer best practices to be succinctly described and organized, especially those that require coordination.Some potential bLIP ideas include each lnurl variant, on-the-fly channel opens, AMP, dynamic commitments, podcast payment metadata, P2P messaging formats, new pathfinding heuristics, remote node connection standards, etc. In this regard, fiatjaf suggests having separate standards is good because we can keep the core specification mandatory and other things optional. Since the core spec defined by the BOLTs is mandatory, it's better if it's as small as possible, basically barely enough to allow peers to talk to each other and open a channel, then define what an HTLC is and the basic payment flow. All the rest is optional.Still, some things like splicing and dual-funded channels could be created as blips and moved to the BOLTs after everybody had implemented them. Other things like the podcast tipping protocol cannot. It is better to have a spec for the podcast tipping protocol than not have or to have it hidden somewhere. Fiatjaf suggests that ultimately dual-funded channels, trampoline routing, and other lower-level things should still be kept out of the BOLTs as long as they are optional. While things like splicing and blinded paths seem to be more like things that should be enforced. Finally, a list of other things that deserve a spec so they are made standard and interoperable across wallets and services includes keysend, AMP, hosted channels, trampoline routing v1, trampoline routing v2, turbo channels, podcast tipping protocol, dual-funding, on-demand channels, sphinx chat messaging thing, private routing as done by immortan, alternative graph for unannounced channels as done by immortan, lnurl-withdraw, lnurl-pay, lnurl-channel, bitcoin-liquid lightning bridge.


Updated on: 2023-06-03T04:54:13.580314+00:00