Bitcoin Optech Newsletter #176

This week’s newsletter links to a discussion about how to allow LN users to choose between higher fees and higher payment reliability. Also included are our regular sections with popular questions and answers from the Bitcoin Stack Exchange, announcements of new releases and release candidates, and summaries of notable changes to popular Bitcoin infrastructure software.

News

  • LN reliability versus fee parameterization: Joost Jager started a thread on the Lightning-Dev mailing list about how to best allow users to choose between paying more fees for faster payments or waiting longer to save money. One of the challenges discussed in the thread is how to relate user preferences that exist on a single continuum to the discrete and multi-factor routes being returned by a pathfinding algorithm.

Selected Q&A from Bitcoin Stack Exchange

Bitcoin Stack Exchange is one of the first places Optech contributors look for answers to their questions—or when we have a few spare moments to help curious or confused users. In this monthly feature, we highlight some of the top-voted questions and answers posted since our last update.

  • How could a 2 byte witness program make sense? Discussing BIP141’s requirement that a witness program be 2-40 bytes, Kalle Rosenbaum brainstorms examples of potential use cases for a 2 byte witness program size.

  • What is the xpriv/xpub type for P2TR? Andrew Chow notes that as more diverse and complicated scripts become more widely used and for separation of concern reasons, there is no taproot equivalent for xpub/ypub/zpub. He recommends to “use xpriv/xpub along with some extra information indicating that the script to create is Taproot, (e.g. with a tr() descriptor)”.

Releases and release candidates

New releases and release candidates for popular Bitcoin infrastructure projects. Please consider upgrading to new releases or helping to test release candidates.

Notable code and documentation changes

Notable changes this week in Bitcoin Core, C-Lightning, Eclair, LND, Rust-Lightning, libsecp256k1, Hardware Wallet Interface (HWI), Rust Bitcoin, BTCPay Server, BDK, Bitcoin Improvement Proposals (BIPs), and Lightning BOLTs.

  • C-Lightning #4890 allows the user to configure a backup sqlite database file for the wallet. During operation, all data is replicated between the main sqlite file and the backup file. Extensive documentation on the new feature is also included.

  • Rust-Lightning #1173 adds a new accept_inbound_channels configuration that can be used to prevent the node from accepting new incoming channels. It defaults to true.

  • Rust-Lightning #1166 improves the default route scoring logic by penalizing channels where the payment HTLC amount would constitute more than 1/8th of the channel’s capacity. The penalty increases linearly as the payment amount reaches the channel capacity.