Bitcoin and Scalability
While the Bitcoin network has been operating without any notable incidents for more than 10 years now, there were multiple occasions where transaction costs reached high amounts that were no longer feasible. Consequently, Bitcoin developers were debating how best to scale the network to handle growing transaction volumes in the future.
In 2017, this debate came to a head with a split in the Bitcoin development community between implementing a feature called SegWit with a soft fork.
What is SegWit?
The main purpose of SegWit is to improve transaction throughput on a blockchain network. It is worth noting that the first cryptocurrency to implement the SegWit layer was not Bitcoin, but Litecoin.
In essence, SegWit reduces the weight of transactions in a block on the blockchain by segregating a transaction into two sections; effectively increasing the amount of transactions one can include in a block of the same size.
The first part of a transaction contains the wallet addresses of the sender and receiver and the second part contains the “witness data” containing transaction signatures. SegWit removes the “witness data” from the main block, therefore notably reducing transaction size. The transactions consequently require less space, enabling more transactions per block and greatly increasing the capacity of the Bitcoin network.
The first part of a transaction contains the wallet addresses of the sender and receiver and the second part contains the “witness data” containing transaction signatures.
Further, SegWit provided the fix to a flaw in the Bitcoin protocol which let users change transaction hashes of transactions. The change of just one character in a digital signature results in an entirely different transaction hash. As the signature is moved out of the transaction data into the segregated witness data, it is no longer possible to change the transaction ID. Consequently, SegWit is a solution to transaction malleability.