Segwit

SegWit (short for Segregated Witness) is a retrocompatible upgrade to the Bitcoin protocol (specifically a soft fork) that fundamentally changes the structure of transactions by moving signature data (the witness) into a separate database (segregated). Its main purpose is to fix transaction malleability, but it also enables an increase in Bitcoin's transaction capacity, enhances signature verification, and facilitates future protocol changes. In simple terms, transaction malleability refers to the ability to slightly modify the signature of a transaction without changing its validity. This has implications for how transactions are tracked and confirmed on the blockchain. SegWit solves this problem by separating the signature from the transaction data, preventing unauthorized modifications and enhancing transaction security. In addition to addressing the transaction malleability issue, SegWit has also allowed for an increase in transaction processing capacity on the Bitcoin network. Prior to SegWit, the maximum block size in the blockchain was limited to around 1 megabyte. This meant that the network could handle a limited number of transactions per second. With SegWit, some of the transaction information is moved outside of the block, increasing processing capacity and potentially reducing transaction fees during periods of network congestion.

The update was first proposed during the year 2015, before being formalized in December 2015 by Pieter Wuille and other Bitcoin Core developers. However, it was only implemented much later due to its controversial nature and miner rejection. It wasn't until 2017, as part of the SegWit2X compromise, that the proposal allowing SegWit (BIP-91) was locked in. The activation of SegWit on the Bitcoin network finally occurred on August 24, 2017, at block 481,824. In summary, SegWit is an update to the Bitcoin protocol aimed at solving transaction malleability issues, improving security, introducing more efficient addresses, and increasing transaction processing capacity. This update was deployed in 2017 after years of discussion and development within the Bitcoin community.

Last updated