UASF – User Activated Soft Fork & Bitcoin Improvement Protocol 148?
UASF is a bitcoin fork that’s currently being proposed as a way to reduce the SegWit activation requirements in bitcoin. Find out how UASF works today.
What is UASF?
UASF stands for “User Activated Soft Fork”. It’s being proposed as a method to reduce the SegWit activation requirements, thus making bitcoin more efficient.
There’s some controversy over UASF: it doesn’t have full support from the community. Without majority hashrate support, UASF could create a serious chain split. With majority hashrate support, it will force SegWit activation.
UASF tries to force the activation of SegWit. At the time of writing, SegWit is unable to reach the required activation threshold of 95%. Between August 1 and November 15, 2017, UASF nodes will consider all blocks invalid if they don’t explicitly signal support for SegWit, which will create a fork. Within that fork, SegWit will have 100% support, which will trigger the activation threshold of SegWit (which, again, is 95%).
The activation of SegWit depends only on the date – not on a minimum number of nodes or majority hashrate.
If a chain split occurs, it will be bad for bitcoin. It will lead to decreased hashrates, increased block times, a higher number of hash rate attacks, increased orphan rates, a PoW change, and a price crash.
There are two ways to see UASF. Some see it as a way to undermine the bitcoin ecosystem. Others see it as a way for 80 to 90% of bitcoin users and nodes to fight back against the Bitmain mining cartel for blocking protocol upgrades over the last year.
UASF is built on a protocol called BIP 148.
What is BIP-148?
UASF is built on the BIP-148 protocol. When someone is talking about BIP-148, they’re talking about UASF.
This protocol is often compared to BIP-16 (P2SH), which was also activated using a flag day (i.e. it was user-activated). BIP 16, however, had a minimum hashrate requirement of around 55%, much lower than the 95% required for BIP-148.
The 55% requirement acted as a protection against chain splitting. The 95% requirement virtually guarantees a chain split.
BIP-148 is a UASF that is designed to cause the existing SegWit MASF (Miner Activated Soft Fork) deployment to cause activation in all existing SegWit capable node software (which represents 80% of network nodes).
How Does BIP-148 Work?
After August 1, miners are required to signal readiness for SegWit by creating blocks with the version bit 1. This will cause all SegWit-ready nodes (which make up 80% of the network) to activate and begin enforcement.
If you’re a miner, then you’ll need to check blocks prior to your own and make sure those blocks also signal for SegWit. Only build on those blocks.
To be clear, BIP-148 is not preparing for a direct flag day. It’s a soft fork.
What Do Miners Need to Do to Enforce BIP-148?
To prepare for the implementation of UASF, miners need to take the following action before August 1:
Update their node software to a BIP-148-enforcing version or
Run a BIP-148 border node to filter out invalid blocks, and update their existing mining software to produce blocks with version 1 bit enabled, to vote for SegWit activation
How Can Users Prepare for BIP-148?
Users should not take any action until an economic majority commits to updating.
Users can update before the majority, but they need to be aware of the risks. Users can choose to use clients that enforce BIP-148. Or, users that run full nodes themselves could upgrade to one that enforces BIP-148.
Ultimately, UASF and BIP-148 could be one of the biggest events in the history of bitcoin. Or it could be a total non-event, if the majority switches over. Stay tuned to see if we’ll get a bitcoin hard fork – and the consequences that come with it – in the near future.