The chart below shows two sharp increases in the amount of SegWit transactions and the last one has been registered this May.
Part of the reason behind this steep spike on the chart is probably that the wallet and cold storage provider Xapo has implemented the technology.
Segwit is also driven by the pressure on exchanges to lower the fees, which has pushed them to adopt SegWit and implement “batching” (inserting multiple outputs into one transaction).
This drastically decreases transaction cost and size.
— Alistair Milne (@alistairmilne) May 25, 2018
What is SegWit
SegWit, according to Coindesk, is a soft-fork upgrade that changes the way data is stored in the blocks.
Many praised it as an on-chain solution to Bitcoin’s scaling. The maximum block size of BTC (1 MB) limited its transactions per second to about 7.
This greatly limits the potential growth of Bitcoin and impedes it from becoming a viable retail payment system.
SegWit is actually a BugFix
While the upgrade allows for a larger number of transactions in the Bitcoin blocks, SegWit originally intended to fix a bug in the Bitcoin code called the malleability of transactions.
This error allowed anyone to change the transaction ID (and subsequent hash). It wasn’t a really important problem since it still didn’t let you edit the transaction contents.
So, while it is not a critical problem, it made the development of more second-layer protocols harder.
SegWit removed transaction malleability. This problem has been solved by removing signature information (also called “Witness”) and storing it outside the block.
This allows to change signatures and scripts without changing the transaction ID.
A side effect — which is actually much more important — is that without the signature information the transactions weigh much less. This means that more can fit into one block and Bitcoin can process a larger throughput without increasing block size.
SegWit has introduced a new concept called “block weight”, which is a block-size mashup with and without signature data, and is capped at 4 MB, while the block size limit for basic transactions remains at 1 MB. This means that implementing SegWit is compatible with the previous protocol, and only needs a soft fork.
Another major step made possible by SegWit is to support the development of second-layer protocols, such as the lightning network. By solving the malleability, all functions based on unconfirmed transactions have become less risky and easier to perform. The Lightning Network will further increase Bitcoin’s transaction capacity by removing frequent, small transactions from the chain and only engaging with the Bitcoin blockchain when users are ready.
A part of the community is not as happy with SegWit as most are. Opposing to SegWit was one of the factors behind the development of Bitcoin Cash. BCH is a Bitcoin fork which chose to implement a larger block size limit rather than implementing SegWit.
One of the most vocal critics of SegWit is Bitmain. According to some, the reason why Bitmain is against this upgrade is that asicboost is not compatible with SegWit.