The final days of February saw the release of Bitcoin Core 0.16.0: the latest iteration of the Bitcoin software client originally developed by Satoshi Nakamoto. Unperturbed by routine FUD and day to day price-action, the Bitcoin Core developers have been hard at work for the last few months, developing and meticulously testing a number of optimisations and new features for the open-source Bitcoin client.[1]
As most regular Bitcoin users will be aware Segregated Witness (Segwit) was a significant protocol change that first was activated on the network last year in 2017. The change facilitates a new means of handling transactions which consequently requires less data to be committed to the blockchain, as well as introducing the concept of block weight and the related capacity increase. Segwit-P2SH addresses have been available since Bitcoin Core version 0.15.0, but until now these were only accessible using the “addwitnessaddress” RPC command, with no easy to use GUI implementation.[2]
The latest version of the wallet software utilises segwit-P2SH addresses as default, with native segwit bech-32 or legacy addresses available as alternative options using a checkbox in the wallet interface. This should provide a further boost to adoption of the protocol change at a time when leading exchanges are passing fee reductions as a result of segwit integration on to their users. Bech-32 is the new native segwit address format, beginning with bc1, as referenced in BIP 173 by Pieter Wuille and Gregory Maxwell. Unlike the base58 address format which Bitcoin has used for most of the last nine years, bech-32 addresses don’t rely on mixed-case characters, which should make it more practical for users to read and write Bitcoin addresses correctly. The new address format also allows for more efficient utilisation of QR codes, and facilitates improved error detection which could be a helpful safeguard for many Bitcoin users.[3][4]
Address Example:
bc1quq9mac28s6xaf3mkc8nqw6vk9unwxvfkfnd3mk
In another change, Replace by fee (RBF) transactions are now submitted in Bitcoin Core as default. The final months of 2017 saw a spike in transaction throughput, causing a significant rise in fees which lead many users to utilise RBF as an easy way to ensure an unconfirmed transaction can have the fee boosted if it is not included in a block within a satisfactory timeframe. As it is now set as default, core wallet users will have to specify if they wish a transaction to be marked as final.
With almost 100 direct contributors named in the credits for this latest release and a seemingly endless list of individual changes, Bitcoin Core continues to be an incredible example of a thriving open-source software development project. The latest release is a particularly impressive milestone as the culmination of the incredible work on segregated witness since the protocol change was first introduced as a fix for transaction malleability with BIP141 back in 2015.[5]