Skip to content

Commit 1abcbfe

Browse files
hardingjnewbery
authored andcommitted
Newsletters: add #9 (2018-08-21)
1 parent befa1d7 commit 1abcbfe

File tree

2 files changed

+172
-0
lines changed

2 files changed

+172
-0
lines changed

_includes/references.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,11 @@
1010
{% comment %}<!-- BIPs in order lowest to highest -->{% endcomment %}
1111
[BIP37]: https://github.com/bitcoin/bips/blob/master/bip-0037.mediawiki
1212
[BIP70]: https://github.com/bitcoin/bips/blob/master/bip-0070.mediawiki
13+
[BIP150]: https://github.com/bitcoin/bips/blob/master/bip-0150.mediawiki
14+
[BIP151]: https://github.com/bitcoin/bips/blob/master/bip-0151.mediawiki
1315
[BIP157]: https://github.com/bitcoin/bips/blob/master/bip-0157.mediawiki
1416
[BIP158]: https://github.com/bitcoin/bips/blob/master/bip-0158.mediawiki
17+
[BIP174]: https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki
1518

1619
{% comment %}<!-- old newsletters (variables & links) in date order earliest to latest -->{% endcomment %}
1720
{% assign news0 = "/en/newsletters/2018/06/08/" %}
@@ -30,6 +33,10 @@
3033
[newsletter #6]: {{news6}}
3134
{% assign news7 = "/en/newsletters/2018/08/07/" %}
3235
[newsletter #7]: {{news7}}
36+
{% assign news8 = "/en/newsletters/2018/08/14/" %}
37+
[newsletter #8]: {{news8}}
38+
{% assign news9 = "/en/newsletters/2018/08/21/" %}
39+
[newsletter #9]: {{news9}}
3340

3441
{% comment %}
3542
<!--REQUIRES PERIODIC UPDATE: update rpc_version below to latest
Lines changed: 165 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
---
2+
title: 'Bitcoin Optech Newsletter #9'
3+
permalink: /en/newsletters/2018/08/21/
4+
name: 2018-08-21-newsletter
5+
type: newsletter
6+
layout: newsletter
7+
lang: en
8+
---
9+
This week's newsletter includes a request to help test the next version of Bitcoin Core,
10+
short descriptions of projects Bitcoin Core contributors are working on,
11+
and a list of notable merges during the past week.
12+
13+
## Action items
14+
15+
- **Allocate time to test Bitcoin Core 0.17 release candidates:**
16+
in the coming days, Bitcoin Core will begin releasing Release
17+
Candidates (RCs) for version 0.17.0. Organizations and individual
18+
users planning to use 0.17 are encouraged to test the RCs to ensure
19+
that they contain all the features you need and don't have any bugs
20+
that would affect your operation. There are often multiple RCs for a
21+
major release such as this, but each RC can theoretically be the last
22+
RC, so we encourage you to test as early as possible.
23+
24+
## News
25+
26+
No significant news was posted to the bitcoin-dev or lightning-dev
27+
mailing list last week, so this week's news focuses on some projects
28+
discussed during the Bitcoin Core weekly meeting.
29+
30+
The Bitcoin Core project, like most free and open source software
31+
projects, is organized bottom-up with each contributor working on the
32+
things they think are important rather than top-down with project
33+
leaders directing the work, so occasionally---as happened last
34+
week---developers briefly summarize to each other what they're working
35+
on for the future. It's possible some of these initiatives may fail,
36+
but it's also possible that some will become future parts of Bitcoin
37+
Core. Here's a summary of the projects discussed:
38+
39+
- **P2P protocol encryption** being worked on by Jonas Schnelli with
40+
a short-term focus on unauthenticated encryption in the [BIP151][]
41+
style (but perhaps using a different mechanism than described in that
42+
BIP). Peer authentication (e.g. [BIP150][]) is probably further off
43+
as a criticism against it is that the simplest way of implementing it
44+
makes it easy to fingerprint particular peers and reduce privacy---so
45+
a more advanced mechanism is desired for the cases that need it.
46+
47+
- **Output script descriptors enhancements** being worked on by
48+
Pieter Wuille. The basic idea for this was described in
49+
[Newsletter #5][news5 news] but Wuille is investigating adding
50+
support for nested and threshold constructions, e.g.: "import `and(xpub/...,or(xpub/...,xpub/...))`
51+
into your wallet as watch-only chain for example and get
52+
[PSBT][BIP174] to sign for it." This would make adding hardware
53+
wallet support to Bitcoin Core easier. The support would also be
54+
compatible with timelocks and hashlocks for use with LN-compatible
55+
wallets (hardware or software).
56+
57+
- **RISC-V support** being worked on by Wladimir van der Laan. This
58+
is a CPU architecture rapidly increasing in popularity as a
59+
potential competitor with ARM-based chipsets, especially among
60+
hobbyists as the CPU design is open source. A project of
61+
several developers including Van der Laan's is ultimately
62+
providing deterministically-generated hashes of Bitcoin Core
63+
binaries produced using RISC-V cross-compiling to ensure known
64+
problems and backdoors in the prevalent x86_64 chipsets aren't
65+
being used to compromise Bitcoin Core binary builds. Van der Laan
66+
had several recent successes and started "probably the first
67+
RISC-V bitcoin node in the world" which has already synced part of
68+
the chain.
69+
70+
- **Bandwidth-efficient set reconciliation protocol for transactions**
71+
being worked on by Gregory Maxwell, Gleb Naumenko, and Pieter Wuille.
72+
This may allow a node that has new transactions in its mempool to tell
73+
a peer about those transactions by communicating an amount of data
74+
"equal to the expected size of the differences themselves". This is
75+
in comparison to the current protocol where nodes communicate the
76+
existence of a transaction by sending a 32 byte hash of it to their
77+
peers. Well-connected nodes can receive or send more than hundred of
78+
these notifications for each 224-byte median-sized transaction they
79+
process, resulting in significant amount of long-lived nodes'
80+
bandwidth being wasted (up to 90% [according][nmnkgl relay] to
81+
measurements by Naumenko, although recent improvements in Bitcoin Core
82+
may have reduced this figure). Maxwell is also working on making it
83+
possible for a newly-started (or long-disconnected) node to
84+
efficiently sync the high feerate part of its mempool from its peers using this same basic
85+
mechanism.
86+
87+
- **Dandelion protocol DoS-resistant stem routing** being worked on
88+
by Suhas Daftuar. The [Dandelion protocol][] is expected to make
89+
it extremely difficult for an adversary to determine the IP
90+
address of any program that creates a Bitcoin transaction (even if
91+
they don't use Tor), but the new method of handling unconfirmed
92+
transactions privately for a time during the "stem" phase has to
93+
be secured against attacks that could waste node bandwidth and
94+
memory.
95+
96+
For additional details, please see the [conversation log][2018-08-16
97+
meeting log].
98+
99+
## Notable commits
100+
101+
*Notable commits this week in [Bitcoin Core][core commits], [LND][lnd
102+
commits], and [C-lightning][cl commits].*
103+
104+
{% comment %}<!-- IMO, c-lightning only had 6 commits this week, mostly
105+
minor doc updates, so no news for them. I'm still leaving them
106+
mentioned above for easy copy/paste next week. -harding -->{% endcomment %}
107+
108+
{% include linkers/github-log.md
109+
refname="core commits"
110+
repo="bitcoin/bitcoin"
111+
start="1b04b55f2d22078ca79cd38fc1078e15fa9cbe94"
112+
end="df660aa7717a6f4784e90535a13a95d82244565a"
113+
%}
114+
{% include linkers/github-log.md
115+
refname="lnd commits"
116+
repo="lightningnetwork/lnd"
117+
start="6989316b11c51922b4c6ae3507ac06680ec530b9"
118+
end="3f5ec993300e38369110706ac83301b8875500d6"
119+
%}
120+
{% include linkers/github-log.md
121+
refname="cl commits"
122+
repo="ElementsProject/lightning"
123+
start="a97955845ff43d4780b33a7301695db33823c57c"
124+
end="80a875a9a54e26c2ea4c90aee8fe606ddcc27c55"
125+
%}
126+
127+
- Bitcoin Core 0.17 branched: this allows developers to focus on
128+
ensuring stability, translation completeness, and other release
129+
features on that branch while development of new features continues on
130+
the master branch. This Notable Commits section only focuses on the
131+
master development branch of each project, so commits mentioned from
132+
this point forward are much less likely to be included in the 0.17
133+
version of Bitcoin Core and should not be expected before the 0.18
134+
version.
135+
136+
- [Bitcoin Core #13917][] and [Bitcoin Core #13960][] improve the
137+
[BIP174][] Partially-Signed Bitcoin Transaction (PBST) handling in
138+
ambiguous situations.
139+
140+
- [Bitcoin Core #11526][] makes it much easier to build Bitcoin Core
141+
with Microsoft Visual Studio 2017, including being able to use the Visual
142+
Studio debugger.
143+
144+
- [Bitcoin Core #13918][] provides the 10th, 25th, 50th, 75th, and 90th
145+
percentile feerates for a historic block with the `getblockstats` RPC
146+
introduced to the master development branch a couple months ago.
147+
148+
- [LND #1693][] allows LND's autopilot funding mechanism to optionally
149+
use its own unconfirmed change outputs for funding transactions,
150+
allowing it to potentially open multiple channels in the next block.
151+
152+
Note: this was only the most notable of several minor (but useful)
153+
improvements to the autopilot feature merged this week.
154+
155+
- [LND #1460][] the payinvoice and sendpayment commands now require
156+
extra confirmation, although this can be bypassed with the `--force`
157+
or `-f` parameter.
158+
159+
{% include references.md %}
160+
{% include linkers/issues.md issues="13917,11526,13918,1693,1460,13960" %}
161+
162+
[news5 news]: {{news5}}#news
163+
[dandelion protocol]: https://arxiv.org/abs/1701.04439
164+
[2018-08-16 meeting log]: http://www.erisian.com.au/meetbot/bitcoin-core-dev/2018/bitcoin-core-dev.2018-08-16-19.03.log.html
165+
[nmnkgl relay]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-April/015863.html

0 commit comments

Comments
 (0)