Bitcoin just received its latest upgrade.
Bitcoin Core 0.20.0 was released today, the 28th such upgrade for Bitcoin’s first and still most popular implementation. The release was the culmination of six months’ work from 119 developers (102 more than the previous 0.19.1 release).
Bitcoin Core 0.20 is now available!
117 people contributed to this release.https://t.co/q2aX6QhlTl
— Jameson Lopp (@lopp) June 3, 2020
A Bitcoin Core blog post mentions that the release, which includes a long list of specific upgrades, “includes new features, various bug fixes and performance improvements, as well as updated translations.” Of particular note, this release also introduces a new IP mapping configuration (Autonomous System Numbers) to make node-to-node connectivity on the Bitcoin network more stable and efficient.
One of the highlighted changes includes removing an old Bitcoin improvement proposal (BIP). BIP 61, deployed in release 0.19.0, which allowed node operators to broadcast so-called “reject messages” to their peers in the event that a transaction or block is rejected by their node.
This feedback mechanism was supposed to give node operators the ability to diagnose throughput issues for transactions and block broadcasting. But as Bitcoin Core contributor Marco Falke pointed out in the Bitcoin dev mailing list, “[n]odes on the network can not generally be trusted to send valid (“reject”) messages, so this should only ever be used when connected to a trusted node.”
So Bitcoin Core developers decided to “phase out” the feature by “disabling it in 0.19.0 and removing it entirely from 0.20.0,” Michael Folkson of London Bitcoin Devs, who contributed “a little work” to the release, told Decrypt.
But the most noteworthy change, Folkson said, comes from the removal of OpenSSL, the software library that Bitcoin’s pseudonymous creator Satoshi Nakamoto implemented from the get-go to make sure all information that is shunted through the Bitcoin network stays in the network.
OpenSSL though, “has long been a source of bugs, emergency releases and performance issues,” BitMEX research explained in a post earlier this year. Since version 0.12.0, developers have slowly phased out OpenSSL in favor of secp256k, a software library built and fine-tuned for Bitcoin.
With version 0.20.0, Folkson said OpenSSL has been “removed entirely,” and that such a change will offer “more security” and “reduce attack surfaces.”
For all other changes, Folkson said that there are “features or settings which users will see but aren’t a huge deal for the project,” along with “more significant things happening below the surface that users won’t see.”