Skip to content

Commit f2d3c8b

Browse files
hardingbitschmidty
authored andcommitted
Newsletters: add 250 (2023-05-10)
1 parent d12eeaa commit f2d3c8b

3 files changed

Lines changed: 223 additions & 0 deletions

File tree

_includes/linkers/issues.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ requests, and other templated URLs.
3030
[eclair #{{_issue}}]: https://github.com/ACINQ/eclair/issues/{{_issue}}
3131
[bips #{{_issue}}]: https://github.com/bitcoin/bips/issues/{{_issue}}
3232
[bolts #{{_issue}}]: https://github.com/lightning/bolts/issues/{{_issue}}
33+
[blips #{{_issue}}]: https://github.com/lightning/blips/issues/{{_issue}}
3334
[rust bitcoin #{{_issue}}]: https://github.com/rust-bitcoin/rust-bitcoin/issues/{{_issue}}
3435
[review club #{{_issue}}]: https://bitcoincore.reviews/{{_issue}}
3536
[hwi #{{_issue}}]: https://github.com/bitcoin-core/HWI/issues/{{_issue}}

_includes/references.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
{% comment %}<!-- internal site links, alphabetical order -->{% endcomment %}
22
[bech32 series]: /en/bech32-sending-support/
33
[compatibility matrix]: /en/compatibility/
4+
[topics]: /en/topics/
5+
[podcast]: /en/podcast/
46
[op_cat]: /en/topics/op_checksigfromstack/#relationship-to-op_cat
57
[optech email]: mailto:info@bitcoinops.org
68
[rss feed]: /feed.xml
Lines changed: 220 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,220 @@
1+
---
2+
title: 'Bitcoin Optech Newsletter #250'
3+
permalink: /en/newsletters/2023/05/10/
4+
name: 2023-05-10-newsletter
5+
slug: 2023-05-10-newsletter
6+
type: newsletter
7+
layout: newsletter
8+
lang: en
9+
---
10+
This week's newsletter summarizes a paper about the PoWswap protocol and
11+
includes our regular sections with the summary of a Bitcoin
12+
Core PR Review Club meeting, announcements of new releases and
13+
release candidates, and descriptions of notable changes to popular
14+
Bitcoin infrastructure software. Also included is a short section
15+
celebrating five years of Bitcoin Optech and our 250th newsletter.
16+
17+
## News
18+
19+
- **Paper about PoWswap protocol:** Thomas Hartman [posted][hartman
20+
powswap] to the Bitcoin-Dev mailing list about a [paper][hnr powswap]
21+
he has written with Gleb Naumenko and Antoine Riard about the
22+
[PoWSwap][] protocol first proposed by Jeremy Rubin. Powswap allows
23+
the creation of onchain-enforceable contracts related to the change in
24+
hash rate. The basic idea takes advantage of the protocol-enforced
25+
relationship between time and block production plus the ability to
26+
express time locks in either time or blocks. For example, consider the
27+
following script:
28+
29+
```
30+
OP_IF
31+
<Alice's key> OP_CHECKSIGVERIFY <time> OP_CHECKLOCKTIMEVERIFY
32+
OP_ELSE
33+
<Bob's key> OP_CHECKSIGVERIFY <height> OP_CHECKLOCKTIMEVERIFY
34+
OP_ENDIF
35+
```
36+
37+
Let's imagine the current time is _t_ and the current block height is
38+
_x_. If blocks are produced an average of 10 minutes apart, then if
39+
we set `<time>` to _t + 1000 minutes_ and `<height>` to _x + 50_, we'd
40+
expect that Bob would be able to spend the output controlled by the
41+
above script on average 500 minutes before Alice can spend it.
42+
However, if the rate of block production were to suddenly more than
43+
double, Alice might be able to spend the output before Bob.
44+
45+
There are several envisioned applications of this type of contract:
46+
47+
- *Hashrate increase insurance:* miners must purchase their equipment
48+
before they know for certain how much income it will generate. For
49+
example, a miner who purchases enough equipment to receive 1% of the
50+
network's current total of rewards might be surprised to find that
51+
other miners also purchased enough equipment to double the total
52+
network hashrate, leaving the miner with 0.5% of the reward instead
53+
of 1%. With PoWSwap, the miner can make a trustless contract with
54+
someone who is willing to pay the miner if hashrate increases before
55+
a certain date, offsetting the miner's unexpectedly low income.
56+
In exchange, the miner pays that person an upfront premium or agrees
57+
to pay them a larger amount if the network-wide hashrate stays the same
58+
or decreases.
59+
60+
- *Hashrate decrease insurance:* a wide variety of problems with
61+
Bitcoin would result in a significant decrease in network-wide
62+
hashrate. Hashrate would decrease if miners were being shut down by
63+
powerful parties, or if a significant amount of [fee sniping][topic fee
64+
sniping] began to suddenly occur among established miners, or if the
65+
value of BTC to miners suddenly decreased. Holders of BTC who
66+
wanted to insure against such situations could enter trustless
67+
contracts with miners or third parties.
68+
69+
- *Exchange rate contracts:* in general, if the purchasing power of
70+
BTC increases, miners are willing to increase the amount of hashrate
71+
they provide (to increase the rewards they receive). If purchasing
72+
power decreases, hashrate decreases. Many people may be interested
73+
in trustless contracts related to the future purchasing power of
74+
Bitcoin.
75+
76+
Although the idea for PoWSwap has been circulated for several years,
77+
the paper provides more detail and analysis than we've previously
78+
seen.
79+
80+
## Releases and release candidates
81+
82+
*New releases and release candidates for popular Bitcoin infrastructure
83+
projects. Please consider upgrading to new releases or helping to test
84+
release candidates.*
85+
86+
- [Core Lightning 23.05rc2][] is a release candidate for the next
87+
version of this LN implementation.
88+
89+
- [Bitcoin Core 24.1rc2][] is a release candidate for a maintenance
90+
release of the current version of Bitcoin Core.
91+
92+
- [Bitcoin Core 25.0rc1][] is a release candidate for the next major
93+
version of Bitcoin Core.
94+
95+
## Bitcoin Core PR Review Club
96+
97+
*In this monthly section, we summarize a recent [Bitcoin Core PR Review Club][]
98+
meeting, highlighting some of the important questions and answers. Click on a
99+
question below to see a summary of the answer from the meeting.*
100+
101+
FIXME:LarryRuane
102+
103+
[Don't download witnesses for assumed-valid blocks when running in prune mode][review club 27050]
104+
is a PR by Niklas Gögge (dergoegge) that improves the performance of Initial Block Download
105+
(IBD) by not downloading witness data on nodes that are configured to both
106+
[prune block data][docs pruning] and use [assumevalid][docs assume valid]. This
107+
optimization was discussed in a recent [stack exchange question][se117057]. {% assign timestamp="43:42" %}
108+
109+
{% include functions/details-list.md
110+
q0=""
111+
a0=""
112+
a0link="https://bitcoincore.reviews/27050#FIXMEl-31"
113+
%}
114+
115+
## Notable code and documentation changes
116+
117+
*Notable changes this week in [Bitcoin Core][bitcoin core repo], [Core
118+
Lightning][core lightning repo], [Eclair][eclair repo], [LDK][ldk repo],
119+
[LND][lnd repo], [libsecp256k1][libsecp256k1 repo], [Hardware Wallet
120+
Interface (HWI)][hwi repo], [Rust Bitcoin][rust bitcoin repo], [BTCPay
121+
Server][btcpay server repo], [BDK][bdk repo], [Bitcoin Improvement
122+
Proposals (BIPs)][bips repo], [Lightning BOLTs][bolts repo], and
123+
[Bitcoin Inquisition][bitcoin inquisition repo].*
124+
125+
- [Bitcoin Core #26094][] rpc: Return block hash & height in getbalances, gettransaction and getwalletinfo FIXME:adamjonas
126+
127+
- [Bitcoin Core #27195][] makes it possible to remove all external receivers from
128+
a transaction that is being [replaced][topic rbf] using the `bumpfee`
129+
RPC from Bitcoin Core's internal wallet. The user does this by making
130+
the only output of the replacement transaction pay the user's own
131+
address. If the replacement transaction gets confirmed, this prevents
132+
any of the original receivers from being paid, which is sometimes
133+
described as "canceling" a Bitcoin payment.
134+
135+
- [Eclair #1783][] adds a `cpfpbumpfees` API for [CPFP][topic cpfp] fee
136+
bumping one or more transactions. The PR also updates the list of
137+
[recommended parameters][eclair bitcoin.conf] for running Bitcoin Core
138+
to ensure that creating a fee-bump transaction is a viable option.
139+
140+
- [LND #7568][] adds the ability to define additional LN feature bits
141+
when the node is started up. It also removes the ability to disable any
142+
hardcoded or defined feature bits during runtime (but additional bits
143+
may be still be added and later disabled). A related proposal update
144+
in [BLIPs #24][] notes that custom [BOLT11][] feature bits are limited
145+
to a maximum expressed value of 5114.
146+
147+
- [LDK #2044][] makes several changes to LDK's route hinting for
148+
[BOLT11][] invoices, the mechanism that a receiving LN node can use to
149+
suggest routes for a spending node to use. With this merge, only
150+
three channels are suggested, support for LDK's phantom nodes is
151+
improved (see [Newsletter #188][news188 phantom]), and the three
152+
channels chosen are selected for efficiency and privacy. The PR
153+
discussion includes [several][carman hints] insightful
154+
[comments][corallo hints] about the implications for privacy of
155+
providing route hints.
156+
157+
## Celebrating Optech Newsletter #250
158+
159+
Bitcoin Optech was founded, in part, to "help facilitate improved
160+
relations between businesses and the open source community." This
161+
weekly newsletter was started to give executives and developers inside
162+
Bitcoin-using businesses more insight into what the open source
163+
community was building. As such, we initially focused on documenting work that
164+
might affect businesses.
165+
166+
We quickly discovered that not just business readers were interested in
167+
this information. Many contributors to Bitcoin projects didn't have the
168+
time to read all the discussions on the protocol development mailing
169+
lists or to monitor other projects for major changes. They appreciated
170+
someone notifying them about developments that they might find
171+
interesting or which might affect their work.
172+
173+
For almost five years now, it's been our pleasure to provide that
174+
service. We've tried to expand on that simple mission by also providing
175+
a guide to [wallet technology compatibility][compatibility matrix], an index to
176+
over 100 [topics of interest][topics], and a weekly
177+
discussion [podcast][podcast] with guests that have included many of the
178+
contributors whose work we've been privileged to write about.
179+
180+
None of that would be possible without our many contributors, who in the
181+
past year have included:
182+
<!-- alphabetical -->
183+
Adam Jonas,
184+
Copinmalin,
185+
David A. Harding,
186+
Gloria Zhao,
187+
Jiri Jakes,
188+
Jon Atack,
189+
Larry Ruane,
190+
Mark "Murch" Erhardt,
191+
Mike Schmidt,
192+
nechteme,
193+
Patrick Schwegler,
194+
Shashwat Vangani,
195+
Shigeyuki Azuchi,
196+
Vojtěch Strnad,
197+
Zhiwei "Jeffrey" Hu,
198+
and several others who made special contributions to particular subjects.
199+
200+
We also remain eternally grateful to our [founding sponsors][] Wences
201+
Casares, John Pfeffer, and Alex Morcos, as well as our many [financial
202+
supporters][].
203+
204+
Thank you for reading. We hope that you'll continue to do so as we
205+
publish the next 250 newsletters.
206+
207+
{% include references.md %}
208+
{% include linkers/issues.md v=2 issues="26094,27195,1783,7568,24,2044" %}
209+
[Core Lightning 23.05rc2]: https://github.com/ElementsProject/lightning/releases/tag/v23.05rc2
210+
[bitcoin core 24.1rc2]: https://bitcoincore.org/bin/bitcoin-core-24.1/
211+
[bitcoin core 25.0rc1]: https://bitcoincore.org/bin/bitcoin-core-25.0/
212+
[eclair bitcoin.conf]: https://github.com/ACINQ/eclair/pull/1783/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
213+
[carman hints]: https://github.com/lightningdevkit/rust-lightning/pull/2044#issuecomment-1448840896
214+
[corallo hints]: https://github.com/lightningdevkit/rust-lightning/pull/2044#issuecomment-1461049958
215+
[hartman powswap]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-May/021605.html
216+
[hnr powswap]: https://raw.githubusercontent.com/blockrate-binaries/paper/master/blockrate-binaries-paper.pdf
217+
[powswap]: https://powswap.com/
218+
[news188 phantom]: /en/newsletters/2022/02/23/#ldk-1199
219+
[founding sponsors]: /about/#founding-sponsors
220+
[financial supporters]: /#members

0 commit comments

Comments
 (0)