Latest Bitcoin Core Release 0.18.0 Pushes Miners to Support SegWit

One feature in the latest Bitcoin Core upgrade will push miners to upgrade to support SegWit transactions. However, there are conflicting incentives for miners when it comes to the decision to upgrade or not.

Key takeaways:

  • The latest Bitcoin Core software will include an error which will specify to miners how to update to support SegWit
  • Future Bitcoin Core software releases will eventually default to native SegWit addresses as early as upgrade 0.19.0 which is estimated to take place in November 2019.
  • The incentives for miners to upgrade to support SegWit are complicated with reasons for and against upgrading

The most popular software client in the crypto world, Bitcoin Core, has released its latest upgrade last week. The upgrade 0.18.0 was announced.

Latest Upgrade Pushes Miners to Upgrade to Support SegWit 

This latest upgrade pushes miners to adopt SegWit. SegWit (short for Segregated Witness) is a protocol upgrade, activated August 2017, that makes data storage on bitcoin more efficient. Calls to Getblocktemplate, a function by miners to receive templates from supported pools, will fail unless SegWit is implemented and the miner will receive an error message specifying how to upgrade.

Miners running Bitcoin Core 0.17.0 and prior who call Getblocktemplate without segwit enabled will be getting an error regardless. However, this update will specify to miners how to enable SegWit.

“Calls to `getblocktemplate` will fail if the segwit rule is not specified. Calling`getblocktemplate` without segwit specified is almost certainly a misconfiguration since doing so results in lower rewards for the miner.  Failed calls will produce an error message describing how to enable the segwit rule. ”

This upgrade has been noted by a number of sources to improve miner efficiency as they will now be more easily able to enable SegWit and include SegWit transactions in blocks produced. It has also been noted that developers are scheduling to default to SegWit addresses for upgrade 0.20.0.

“Starting with Bitcoin Core 0.20 (expected about a year after 0.18), Bitcoin Core will default to native segwit addresses (bech32) that provide additional fee savings and other benefits.”

It is further noted that if SegWit addresses see enough adoption, Bitcoin Core will begin to default these addresses in upgrade 0.19.0 which is expected in November 2019.

Conflicting Miner Incentives When it Comes to SegWit

Source: charts.woobull.com

SegWit is widely considered the most controversial soft fork to be implemented into the bitcoin protocol. Current estimates are that 36% of nodes use SegWit addresses with approximately 138,000 SegWit transactions taking place each day.  

Miners who have not upgraded to support SegWit transactions and mine blocks that exclude such transactions leave free block space and reduce the total amount of fees earned. With an increasing amount of transactions coming from clients that support SegWit, miners are being increasingly incentivised to start processing SegWit transactions.

The majority of SegWit transactions that are now processed are wrapped in a pay to script hash (P2SH) wrapper which is compatible with miners that have not upgraded to support SegWit. However, this latest feature included in Bitcoin Core 0.18.0 may turn out to be the tipping point to get clients to upgrade to support SegWit.

One reason that has been speculated for miners not running SegWit is due to a technology called “covert ASICboost” which requires software clients to be incompatible with SegWit. The ASICboost technology has been reported to enable miners to create new blocks and verify transactions up to 20% faster.

As it stands, the miner incentives at play are complicated. On the one hand, miners may be forgoing transaction fees by not being compatible with SegWit transactions.

However, miners may also be giving up the ASICboost technology if they do upgrade. It is also noted on the Bitcoin wiki that native SegWit addresses known as Bech32 addresses are “not recommended for use until more software supports the format”.

However, one thing is clear. Bitcoin Core developers are pushing for more miners to update their clients to support SegWit.