|
| 1 | +--- |
| 2 | +title: 'Bitcoin Optech Newsletter #309' |
| 3 | +permalink: /en/newsletters/2024/06/28/ |
| 4 | +name: 2024-06-28-newsletter |
| 5 | +slug: 2024-06-28-newsletter |
| 6 | +type: newsletter |
| 7 | +layout: newsletter |
| 8 | +lang: en |
| 9 | +--- |
| 10 | +This week's newsletter summarizes research into estimating the |
| 11 | +likelihood that an LN payment is feasible. Also included are our regular |
| 12 | +sections with descriptions of popular questions and answers from the |
| 13 | +Bitcoin Stack Exchange, announcements of new releases and release |
| 14 | +candidates, and summaries of notable changes to popular Bitcoin |
| 15 | +infrastructure projects. |
| 16 | + |
| 17 | +## News |
| 18 | + |
| 19 | +- **Estimating the likelihood that an LN payment is feasible:** René |
| 20 | + Pickhardt [posted][pickhardt feasible1] to Delving Bitcoin about |
| 21 | + estimating the likelihood that an LN payment is feasible given the |
| 22 | + public knowledge of a channel's maximum capacity but no knowledge |
| 23 | + about its current balance distribution. For example, Alice has a |
| 24 | + channel with Bob and Bob has a channel with Carol. Alice knows the |
| 25 | + capacity of the Bob-Carol channel but not how much of |
| 26 | + that balance is controlled by Bob and how much is controlled by Carol. |
| 27 | + |
| 28 | + Pickhardt notes that some wealth distributions are impossible in a |
| 29 | + payment network. For example, Carol can't receive more money in her |
| 30 | + channel with Bob than the capacity of that channel. When all the |
| 31 | + impossible distributions are excluded, it can be useful to consider |
| 32 | + all the remaining wealth distributions as equally likely to occur. |
| 33 | + That can be used to produce a metric for the likelihood that a payment |
| 34 | + is feasible. |
| 35 | + |
| 36 | + For example, if Alice wants to send a 1 BTC payment to Carol, and the |
| 37 | + only channels it can pass through are Alice-Bob and Bob-Carol, then |
| 38 | + we can look at what percentages of wealth distributions in the |
| 39 | + Alice-Bob channel and the Bob-Carol channel would allow that payment |
| 40 | + to succeed. If the Alice-Bob channel has a capacity of several BTC, |
| 41 | + most possible wealth distributions would allow the payment to succeed. |
| 42 | + If the Bob-Carol channel has a capacity of just barely over 1 BTC, then |
| 43 | + most possible wealth distributions would prevent the payment from |
| 44 | + succeeding. This can be used to calculate the overall likelihood |
| 45 | + of the feasibility of a payment of 1 BTC from Alice to Carol. |
| 46 | + |
| 47 | + The likelihood of feasibility makes it clear that many LN payments |
| 48 | + that naively seem possible will not succeed in practice. It also |
| 49 | + provides a useful basis for making comparisons. |
| 50 | + In a [reply][pickhardt feasible2], Pickhardt describes how the |
| 51 | + likelihood metric could be used by wallets and business software to |
| 52 | + automatically make some intelligent decisions on behalf of its users. |
| 53 | + |
| 54 | +## Selected Q&A from Bitcoin Stack Exchange |
| 55 | + |
| 56 | +*[Bitcoin Stack Exchange][bitcoin.se] is one of the first places Optech |
| 57 | +contributors look for answers to their questions---or when we have a |
| 58 | +few spare moments to help curious or confused users. In |
| 59 | +this monthly feature, we highlight some of the top-voted questions and |
| 60 | +answers posted since our last update.* |
| 61 | + |
| 62 | +{% comment %}<!-- https://bitcoin.stackexchange.com/search?tab=votes&q=created%3a1m..%20is%3aa |
| 63 | +nswer -->{% endcomment %} |
| 64 | +{% assign bse = "https://bitcoin.stackexchange.com/a/" %} |
| 65 | + |
| 66 | +FIXME:bitschmidty |
| 67 | + |
| 68 | +## Releases and release candidates |
| 69 | + |
| 70 | +*New releases and release candidates for popular Bitcoin infrastructure |
| 71 | +projects. Please consider upgrading to new releases or helping to test |
| 72 | +release candidates.* |
| 73 | + |
| 74 | +- [LND v0.18.1-beta][] is a minor release with a fix for "an [issue][lnd |
| 75 | + #8862] that arises when handling an error after attempting to |
| 76 | + broadcast transactions if a btcd backend with an older version |
| 77 | + (pre-v0.24.2) is used." |
| 78 | + |
| 79 | +- [Bitcoin Core 26.2rc1][] is a release candidate for a maintenance |
| 80 | + version of Bitcoin Core's older release series. |
| 81 | + |
| 82 | +## Notable code and documentation changes |
| 83 | + |
| 84 | +_Notable recent changes in [Bitcoin Core][bitcoin core repo], [Core |
| 85 | +Lightning][core lightning repo], [Eclair][eclair repo], [LDK][ldk repo], |
| 86 | +[LND][lnd repo], [libsecp256k1][libsecp256k1 repo], [Hardware Wallet |
| 87 | +Interface (HWI)][hwi repo], [Rust Bitcoin][rust bitcoin repo], [BTCPay |
| 88 | +Server][btcpay server repo], [BDK][bdk repo], [Bitcoin Improvement |
| 89 | +Proposals (BIPs)][bips repo], [Lightning BOLTs][bolts repo], |
| 90 | +[Lightning BLIPs][blips repo], [Bitcoin Inquisition][bitcoin inquisition |
| 91 | +repo], and [BINANAs][binana repo]._ |
| 92 | + |
| 93 | +- [Bitcoin Core #29575][] net_processing: make any misbehavior trigger immediate discouragement |
| 94 | + |
| 95 | +- [Bitcoin Core #28984][] Cluster size 2 package rbf |
| 96 | + |
| 97 | +- [Core Lightning #7388][] no longer allow creation of old |
| 98 | + (experimental-only!) non-zero-fee anchor channels. [...] We still |
| 99 | + support existing ones, though we were the only implementation which |
| 100 | + ever did, and only in experimental mode, so we should be able to |
| 101 | + upgrade them and avoid a forced close, with a bit of engineering... |
| 102 | + |
| 103 | + Harding notes: there's a lot of updates in this PR. I think we've |
| 104 | + discussed most of them in the past, so a quick mention for them is |
| 105 | + fine but what I think is really worth announcing in this item are the |
| 106 | + changes in commit |
| 107 | + https://github.com/ElementsProject/lightning/pull/7388/commits/27a846a133832b6629231440b72f085c096e28d5 |
| 108 | + |
| 109 | +- [LND #8734][] routing: cancelable payment loop |
| 110 | + |
| 111 | +- [LDK #3127][] Implement non-strict forwarding |
| 112 | + |
| 113 | +- [Rust Bitcoin #2794][] |
| 114 | + |
| 115 | +- [BDK #1395][] Remove `rand` dependency from `bdk` |
| 116 | + |
| 117 | +- [BIPs #1620][] and [#1622][bips #1622] BIP-352: handle invalid privkey / pubkey sums for sending / scanning, add changelog / BIP-352: generate `input_hash` after summing up keys (simplification) |
| 118 | + |
| 119 | +- [BOLTs #869][] BOLT 2: quiescence protocol (feature 34/35) option_quiesce |
| 120 | + |
| 121 | +{% assign four_days_after_posting = page.date | date: "%s" | plus: 345600 | date: "%Y-%m-%d 14:30" %} |
| 122 | +{% include snippets/recap-ad.md when=four_days_after_posting %} |
| 123 | +{% include references.md %} |
| 124 | +{% include linkers/issues.md v=2 issues="29575,28984,7388,8734,3127,2794,1395,1620,1622,869,8862" %} |
| 125 | +[bitcoin core 26.2rc1]: https://bitcoincore.org/bin/bitcoin-core-26.2/ |
| 126 | +[pickhardt feasible1]: https://delvingbitcoin.org/t/estimating-likelihood-for-lightning-payments-to-be-in-feasible/973 |
| 127 | +[pickhardt feasible2]: https://delvingbitcoin.org/t/estimating-likelihood-for-lightning-payments-to-be-in-feasible/973/4 |
| 128 | +[lnd v0.18.1-beta]: https://github.com/lightningnetwork/lnd/releases/tag/v0.18.1-beta |
0 commit comments