/ home / newsletters /
Bitcoin Optech Newsletter #125
This week’s newsletter links to a website that tracks miner support for taproot activation, announces a new organization funding Bitcoin research and development, and includes our regular sections with popular questions and answers from the Bitcoin Stack Exchange, announcements of releases and release candidates, and notable changes to popular Bitcoin infrastructure software.
Action items
None this week.
News
-
● Website listing miner support for taproot activation: Bitcoin mining pool Poolin has created a website to help track miner support for activating taproot (including schnorr signatures and tapscript). As of this writing, all pools listed on the site—who represent more than half of the current network hash rate—have indicated that they will support activation. If this is reflective of the opinions of the remaining pools, then it should be easy to accomplish the activation of taproot after its implementation has been released and adopted by a moderate number of users. For additional information about the creation of the website, see Bitcoin Magazine’s article.
-
● New research and development organization announced: Brink, a new organization for “funding, education, and mentoring” of Bitcoin contributors was announced on Twitter this week. The organization is seeking applicants for both its fellowship program for helping newer contributors break into full-time Bitcoin development and its grant program for funding established contributors. (Note: Brink was founded by Optech contributors and received initial funding from John Pfeffer and Wences Casares, who also provided initial funding for Optech.)
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.
-
● What is fuzz testing? Michael Folkson summarizes fuzz testing, a technique of feeding a program like Bitcoin Core varying malformed inputs for purposes of finding bugs.
-
● Adding instead of concatenating hashes in Merkle trees Pieter Wuille breaks down a variety of issues to consider regarding the idea of combining hashes in a merkle tree using an operation such as addition instead of the concatenation that Bitcoin currently uses.
-
● How will the migration tool from a Bitcoin Core legacy wallet to a descriptor wallet work? Michael Folkson outlines how a tool that migrates existing legacy wallets to descriptor wallets might work.
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.
- ● C-Lightning 0.9.2 is the release for the next maintenance version of C-Lightning. It contains “new CLI-level notifications, better channel state reporting, and stable plugin-hook call ordering” in addition to other new features and bug fixes. The release notes do warn that PSBTs generated by this version of C-Lightning will be rejected by some older versions of Bitcoin Core (versions 0.20.0 and earlier); this is a consequence of a change made to the PSBT specification and Bitcoin Core to defend against a possible fee overpayment attack.
Notable code and documentation changes
Notable changes this week in Bitcoin Core, C-Lightning, Eclair, LND, Rust-Lightning, libsecp256k1, Hardware Wallet Interface (HWI), Bitcoin Improvement Proposals (BIPs), and Lightning BOLTs.
Note: some commits to Bitcoin Core mentioned below apply to its development branch and so those changes will likely not be released until version 0.22, about six months after the release of the upcoming version 0.21.
-
● Bitcoin Core #20305 starts shifting RPC feerate units to satoshis per vbyte (sat/vB) rather than BTC per 1,000 vbytes (BTC/kvB) by introducing a
fee_rate
parameter/option denominated in sat/vB to thesendtoaddress
,sendmany
,fundrawtransaction
, andwalletcreatefundedpsbt
RPCs as well as to the experimental newsend
RPC. In addition, thebumpfee
RPCfee_rate
option is changed from BTC/kB to sat/vB. Users are warned that the latter is a breaking API change, but it should be relatively benign. The legacyfeeRate
option in RPCsfundrawtransaction
andwalletcreatefundedpsbt
still exists for setting a feerate in BTC/kvB; it is expected to be deprecated soon to avoid confusion.The PR also removes the unreleased ability to pass an explicit feerate by overloading the
conf_target
andestimate_mode
parameters (see Newsletter #104), updates the feerate error message units for these RPCs from BTC/kB to sat/vB (and from BTC/kB to BTC/kvB elsewhere), and updates thesend
andsendtoaddress
RPC examples to aid users in creating transactions with explicit feerates. -
● Bitcoin Core #20145 adds a
getcoins.py
script that can be used to request testing coins from a faucet for signet. -
● Bitcoin Core #20223 removes the leading
0
from Bitcoin Core’s version number for major releases after 0.21.0. This means Bitcoin Core’s next release will be 0.21.0; incremental releases during the subsequent months (perhaps including a taproot release) will be 0.21.1 to 0.21.x; and the following major release will be 22.0 (expected mid-2021).