Skip to content

Commit f0a6d10

Browse files
committed
News180: add ToC and Conclusion
1 parent 960ff4d commit f0a6d10

File tree

1 file changed

+87
-17
lines changed

1 file changed

+87
-17
lines changed

_posts/en/newsletters/2021-12-22-newsletter.md

+87-17
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,44 @@ summary], [2019][2019 summary], and [2020][2020 summary].
1919

2020
* January
2121
* [Signet in Bitcoin Core](#signet)
22-
* FIXME:fill out table of contents
22+
* [Bech32m addresses](#bech32m)
23+
* [Onion messages and offers protocol](#offers)
24+
* February
25+
* [Faster signature creation and verification](#safegcd)
26+
* [Channel jamming attacks](#jamming)
27+
* March
28+
* [Quantum computing risks](#quantum)
29+
* April
30+
* [LN atomic multipath payments](#amp)
31+
* May
32+
* [BIP125 opt-in replace-by-fee discrepancy](#bip125)
33+
* [Dual funded channels](#dual-funding)
34+
* June
35+
* [Candidate set based block construction](#csb)
36+
* [Default transaction replacement by fee](#default-rbf)
37+
* [Mempool package acceptance and package relay](#mpa)
38+
* [LN fast forwards for speed and offline receiving](#ff)
39+
* July
40+
* [LN liquidity advertisements](#liq-ads)
41+
* [Output script descriptors](#descriptors)
42+
* [Zero-conf channel opens](#zeroconfchan)
43+
* [SIGHASH_ANYPREVOUT](#anyprevout)
44+
* August
45+
* [Fidelity bonds](#fibonds)
46+
* [LN pathfinding](#pathfinding)
47+
* September
48+
* [OP_TAPLEAF_UPDATE_VERIFY](#tluv)
49+
* October
50+
* [Transaction heritage identifiers](#txhids)
51+
* [PTLCs and LN fast forwards](#ptlcsx)
52+
* November
53+
* [LN developer summit](#lnsummit)
54+
* December
55+
* [Advanced fee bumping](#bumping)
56+
* Featured summaries
57+
* [Taproot](#taproot)
58+
* [Major releases of popular infrastructure projects](#releases)
59+
* [Bitcoin Optech](#optech)
2360

2461
## January
2562

@@ -38,13 +75,15 @@ real money is at stake. Also [discussed][signet reorgs] this year was
3875
adding deliberate block chain reorganizations to Bitcoin Core's default signet network to help
3976
developers test their software against that class of problems.
4077

78+
{:#bech32m}
4179
A draft BIP for [bech32m][topic bech32] was also [announced][bech32 bip]
4280
in January. Bech32m addresses are a slight modification of bech32
4381
addresses that make them safe for use with [taproot][topic taproot] and
4482
future protocol extensions. Later in the year, a [Bitcoin Wiki
4583
page][bech32m page] was updated to track adoption of bech32m addresses
4684
by wallets and services.
4785

86+
{:#offers}
4887
Another [first release][cl 0.9.3] of a new protocol was [onion
4988
messages][topic onion messages] and the [offers protocol][topic offers].
5089
Onion messages allow an LN node to send a message to another node in a
@@ -56,10 +95,9 @@ continue as draft specifications for the remainder of the year, but they
5695
would receive additional development, including a proposal to use them
5796
to [reduce the impact of stuck payments][offers stuck].
5897

59-
<!-- TODO:EXTRA: /en/newsletters/2021/01/06/#trampoline-routing -->
60-
6198
## February
6299

100+
{:#safegcd}
63101
Contributors to Bitcoin [advanced][safegcd blog] the state of research
64102
into an improved signature creation and verification algorithm, and then
65103
used their research to produce a variation with additional improvements.
@@ -72,6 +110,7 @@ sound and safe to use. The change also provides a significant boost to
72110
the speed of securely creating signatures on low-powered hardware
73111
signing devices.
74112

113+
{:#jamming}
75114
[Channel jamming attacks][topic channel jamming attacks], a known
76115
problem for LN since 2015, received continued discussion throughout the
77116
year, with a [variety][jam1] of [possible][jam2] solutions
@@ -81,10 +120,9 @@ and the problem remained unmitigated by year's end.
81120
{:.center}
82121
![Illustration of jamming attacks](/img/posts/2020-12-ln-jamming-attacks.png)
83122

84-
<!-- TODO:EXTRA /en/newsletters/2021/02/17/#anti-exfiltration -->
85-
86123
## March
87124

125+
{:#quantum}
88126
Significant [discussion][quant] in March was devoted to analyzing the
89127
risk of quantum computer attacks on Bitcoin, particularly for the case
90128
where taproot activated and became widely used. One of Bitcoin's
@@ -157,8 +195,6 @@ addresses.
157195
[compromise][bcc#21377] that allowed a Bitcoin Core [version][bcctap]
158196
to be released with an activation mechanism and parameters.
159197

160-
<!-- TODO:EXTRA: BIPs drama? -->
161-
162198
- **May<!--taproot-->** was when miners were [able][signal
163199
able] to [begin][signal began] signalling their readiness to enforce taproot and a website for
164200
tracking signaling progress became [popular][taproot.watch].
@@ -224,6 +260,7 @@ making use of its many features.
224260

225261
## April
226262

263+
{:#amp}
227264
LND added [support][lnd#5709] in April for making Atomic Multipath
228265
Payments ([AMP][topic amp]), also called original AMPs due to being described earlier
229266
than the [Simplified Multipath Payments][topic multipath payments]
@@ -237,13 +274,15 @@ consideration the one significant downside of AMPs.
237274

238275
## May
239276

277+
{:#bip125}
240278
A discrepancy between the specification of [BIP125][] transaction
241279
[replacement][topic rbf] and the implementation in Bitcoin Core was
242280
[disclosed][bip125 discrep] in May. This didn't put any bitcoins at
243281
risk, as far as we know, but it did spawn several discussions about the
244282
risks to users of contract protocols (such as LN) from unexpected transaction relay
245283
behavior.
246284

285+
{:#dual-funding}
247286
Also in May, the C-Lightning project [merged][cl#4489] a plugin for
248287
managing [dual-funded channels][topic dual funding]---channels where
249288
both parties can provide some amount of the initial funding. In
@@ -322,13 +361,15 @@ use of LN is receiving payments instead of sending them.
322361

323362
## June
324363

364+
{:#csb}
325365
A new [analysis][csb] discussed in June described an alternative way for
326366
miners to select which transactions they want to include in the blocks
327367
they create. The new method is predicted to slightly increase miner
328368
revenue in the short term. In the long-term, if the technique is
329369
adopted by miners, wallets aware of it will be able to collaborate when [CPFP fee bumping][topic cpfp]
330370
transactions, increasing the effectiveness of that technique.
331371

372+
{:#default-rbf}
332373
Another attempt to make fee bumping more effective was a [proposal][rbf
333374
default] to allow any unconfirmed transaction to be [replaced by
334375
fee][topic rbf] (RBF) in Bitcoin Core---not just those that opt-in to
@@ -343,6 +384,7 @@ does need to use BIP68 to blend in with more common transactions.
343384
Neither proposal seemed to make much progress despite few significant
344385
objections.
345386

387+
{:#mpa}
346388
June also saw the merge of the [first PR][bcc#20833] in a
347389
series implemeting [mempool package acceptance][mpa ml]
348390
in Bitcoin Core, the first step towards package relay. [Package
@@ -360,6 +402,7 @@ makes [CPFP fee bumping][topic cpfp] unreliable for contract protocols
360402
using presigned transactions, such as LN. Package relay hopes to solve
361403
this key safety issue.
362404

405+
{:#ff}
363406
An idea originally proposed in 2019 for LN saw renewed life in June. The
364407
original [fast forwards][ff orig] idea described how an LN wallet could receive
365408
or relay a payment with fewer network round-trips, reducing network
@@ -370,6 +413,7 @@ easier to keep that signing key secured.
370413

371414
## July
372415

416+
{:#liq-ads}
373417
After years of discussion and development, the first implementation of a
374418
decentralized liquidity advertisements system was [merged][cl#4639] into
375419
an LN implementation. The still-draft [liquidity ads][bolts #878]
@@ -386,8 +430,7 @@ the agreed upon lease period has concluded. That means refusing to
386430
route payments would provide no advantages but would deny the
387431
advertising node the opportunity to earn routing fees.
388432

389-
<!-- TODO:EXTRA:table comparing liquidity ads and Pool -->
390-
433+
{:#descriptors}
391434
Three years after [first being proposed][descriptor gist] for Bitcoin
392435
Core, [draft BIPs][descriptor bips1] were [created][descriptor bips2] for
393436
[output script descriptors][topic descriptors]. Descriptors are strings
@@ -401,6 +444,7 @@ the wallet to determine which keys it controls in a multisig script. By
401444
the end of the year, Bitcoin Core had made descriptor-based wallets its
402445
[default][descriptor default] for newly-created wallets.
403446

447+
{:#zeroconfchan}
404448
A common way of opening LN channels that had never before been
405449
part of the LN protocol began to be [specified][0conf channels] in July. Zero-conf
406450
channel opens, also called *turbo channels*, are new single-funded
@@ -420,6 +464,7 @@ who offer this service.
420464
{:.center}
421465
![Zero-conf channel illustration](/img/posts/2021-07-zeroconf-channels.png)
422466

467+
{:#anyprevout}
423468
Two related proposals for new signature hash (sighash) types were
424469
[combined][sighash combo] into [BIP118][]. `SIGHASH_NOINPUT`, proposed
425470
in 2017 and partly based on previous proposals going back a decade, was
@@ -431,15 +476,9 @@ storage requirements and complexity. For multiparty protocols, the
431476
benefits may be even more significant by eliminating the number of
432477
different states that need to be generated in the first place.
433478

434-
<!--
435-
TODO:EXTRA LN migration to real databases:
436-
/en/newsletters/2021/07/14/#lnd-5447
437-
/en/newsletters/2021/07/21/#eclair-1871
438-
/en/newsletters/2021/10/06/#lnd-5366
439-
-->
440-
441479
## August
442480

481+
{:#fibonds}
443482
Fidelity bonds is an idea [described][wiki contract] at least as early as
444483
2010 for locking up bitcoins for a period of time in order to create a
445484
cost for misbehavior in third-party systems. Because the bitcoins can't be used again until
@@ -450,6 +489,7 @@ the first large scale and decentralized use of fidelity bonds. Within
450489
days of release, over 50 BTC had been timelocked (worth over $2 million
451490
USD at the time).
452491

492+
{:#pathfinding}
453493
A new variation of pathfinding for LN was [discussed][0base] in August.
454494
Proponents of the technique thought that it would be most effective if
455495
routing nodes only charged a percentage of the amount routed without
@@ -473,6 +513,7 @@ _includes/specials/taproot/en/* -->
473513

474514
## September
475515

516+
{:#tluv}
476517
One feature Bitcoin developers have long discussed is the ability to
477518
send bitcoins to a script which could limit which other scripts could
478519
later receive those bitcoins, a mechanism called [covenants][topic
@@ -492,6 +533,7 @@ ownership of a UTXO.
492533

493534
## October
494535

536+
{:#txhids}
495537
In October, Bitcoin developers discussed a new way for a transaction to
496538
[identify][heritage identifiers] which set of bitcoins it wanted to
497539
spend. Currently, bitcoins are identified by their location in the
@@ -504,6 +546,7 @@ advantages for designs such as [eltoo][topic eltoo], [channel
504546
factories][topic channel factories], and [watchtowers][topic
505547
watchtowers], all of which benefit contract protocols such as LN.
506548

549+
{:#ptlcsx}
507550
Also in October, a combination of existing ideas for improving LN were
508551
bundled into a [single proposal][ptlcs extreme] that would bring some of
509552
the same benefits of eltoo but without requiring the
@@ -519,6 +562,7 @@ needed to be used by online computers.
519562

520563
## November
521564

565+
{:#lnsummit}
522566
LN developers held the first general LN summit [since 2018][2018 ln
523567
summit] and [discussed][2021 ln summit] topics including using
524568
[taproot][topic taproot] in LN, including [PTLCs][topic ptlc],
@@ -532,6 +576,7 @@ payments].
532576

533577
## December
534578

579+
{:#bumping}
535580
For single-sig onchain transactions, fee bumping a transaction's feerate
536581
to encourage miners to confirm it sooner is a relatively straightforward
537582
operation. But for contract protocols such as LN and [vaults][topic
@@ -545,7 +590,31 @@ important long-term problem.
545590

546591
## Conclusion
547592

548-
FIXME:write conclusion
593+
We tried something new in this year's summary---describing two dozen
594+
noteworthy developments in 2021 without mentioning even a single
595+
contributor's name. We're indebted to all of those contributors and
596+
very much want to see them credited for their incredible work, but we
597+
also want to recognize all of the contributors who we wouldn't normally
598+
mention.
599+
600+
They're the people spending hours on coding reviews, or who are writing
601+
tests for established behavior to ensure it doesn't unexpectedly change,
602+
or who put effort into debugging mysterious issues to fix problems
603+
before money is put at risk, or who are working on a hundred other tasks
604+
that would only make the news if they weren't being done.
605+
606+
This final newsletter of 2021 is dedicated to them. We don't have an
607+
easy way to make a list of the names of these underacknowledged
608+
contributors. Instead we've omitted all names from this newsletter to
609+
make the point that developing Bitcoin is a team effort where some of
610+
the most important work is being done by people whose names have never
611+
appeared in any issue of this newsletter.
612+
613+
We thank them and all contributors to Bitcoin in 2021. We can't wait to
614+
see what exciting new developments they will deliver in 2022.
615+
616+
*The Optech newsletter will return to its regular Wednesday publication
617+
schedule on January 5th.*
549618

550619
<!-- FIXME add topic links, there's gonna be a lot!!! -->
551620
{% include references.md %}
@@ -667,3 +736,4 @@ FIXME:write conclusion
667736
[dec cs]: /en/newsletters/2021/12/15/#changes-to-services-and-client-software
668737
[mpa ml]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-September/019464.html
669738
[ff orig]: https://lists.linuxfoundation.org/pipermail/lightning-dev/2019-April/001986.html
739+
[2020 conclusion]: /en/newsletters/2020/12/23/#conclusion

0 commit comments

Comments
 (0)