SegWit
Segregated Witness, or SegWit, is the name used for an implemented soft fork change in the transaction format of Bitcoin.
The formal title "Segregated Witness (Consensus layer)" had Bitcoin Improvement Proposal number BIP141.[1] The declared purpose was to prevent nonintentional bitcoin transaction malleability, allow optional data transmission, and to bypass certain protocol restrictions (such as the block size limit) with a soft fork.[2]
It was also intended to mitigate a blockchain size limitation problem that reduces bitcoin transaction speed. It does this by splitting the transaction into two segments, removing the unlocking signature ("witness" data) from the original portion and appending it as a separate structure at the end.[3] The original section would continue to hold the sender and receiver data, and the new "witness" structure would contain scripts and signatures. The original data segment would be counted normally, but the "witness" segment would, in effect, be counted as a quarter of its real size.
History
Block size limit
Bitcoin is a cryptocurrency, a form of money using cryptography to keep transactions secure.
Each record of a unit of bitcoins is called a "block", and all blocks are tied together sequentially by using a cryptographic hash on the previous block and storing its output in the next. This forms a chain of blocks, or a blockchain.[4]
Each block contains information about who sends and receives a given unit of bitcoin (a transaction), as well as the signature that approves each transaction. Originally, there was no limit to the size of blocks. However, this allowed malicious actors to make up fake "block" data that was very long as a form of denial-of-service attack (DoS attack). These fake blocks would be detected, but doing so would take a very long time, slowing down the whole system.
Scalability and malleability
The current bitcoin blockchain design is regarded as having two shortcomings.
Scalability
A new block is added to the chain at random intervals averaging, by design, ten minutes (proof-of-work causes this delay). Together with the limit on block-size, this limits the number of transactions that can be processed in a given time. Some sites work around this problem using "off-chain payments" conducting transactions without writing them to the blockchain, which involves various trade offs regarding trust and transaction finality.
Others have proposed changes to bitcoin that would reform the blockchain format in a backward-incompatible way. For example, FlexTrans (Flexible Transactions) would make transactions smaller by changing how they are described to a "tag" system, allowing more transactions per block. This is not compatible with systems that do not upgrade.
Segregated Witnesses as a solution
The signature data called the witness would be separated from the Merkle tree record of who is sending or receiving the bitcoins. The witness data is moved to the end, and each byte of it would only count as one quarter of a "unit".
It also addresses signature malleability, by serializing signatures separately from the rest of the transaction data, so that the transaction ID is no longer malleable.[2]
Activation
On 21 July 2017, bitcoin miners locked-in a software upgrade referred to as Bitcoin Improvement Proposal (BIP) 91, meaning that the Segregated Witness upgrade activated at block 477,120.
SegWit alleviates the scaling problem in two ways:
- SegWit solves Transaction Malleability, thereby enabling the Lightning Network, an overlay network of micropayment channels, hypothetically resolving the scaling problem by enabling virtually unlimited numbers of instant, low-fee transactions to occur "off chain".[5]
By 8 August, another milestone was reached when 100% of the bitcoin mining pools signaled support for SegWit, although SegWit would not be fully activated until 21 August at the earliest, after which miners would begin rejecting blocks that do not support SegWit.
Initially, most bitcoin transactions have not been able to use the upgrade.
Segregated Witness was activated on 24 August 2017. The bitcoin price rose almost 50% in the week following SegWit's activation.[6] On 21 July 2017, bitcoin was trading at $2,748, up 52% from 14 July 2017's $1,835.[6]
In the first week of October, the proportion of network transactions using SegWit rose from 7% to 10%, indicating an increase in use rate.
A small group of mostly China-based bitcoin miners, that were unhappy with bitcoin's proposed SegWit improvement plans, pushed forward alternative plans for a split which created Bitcoin Cash.[7]
As of February 2018, SegWit transactions exceed 30%.[8]
SegWit2x
Segregated Witness (BIP141) should not be confused with SegWit2x (SegWit2Mb). In May 2017, Digital Currency Group (not to be confused with the Digital Currency Initiative of the MIT Media Lab) announced it had offered a proposal, referred to as SegWit2x ("the New York Agreement"), activating Segregated Witness at an 80% threshold of the total bitcoin hash rate, signaling at bit 4; and activating a 2 MB block size limit within six months with support in excess of 80% of the total bitcoin hash rate.[9]
As of mid-2017, although the SegWit2x proposal had support in excess of 90% of the hashrate, however, the SegWit2x proposal has been controversial in that work on the project is limited to an invitation only group of developers. In mid-July 2017, it became apparent that miners supported implementation of the Segwit part of the agreement before the 1 August 2017 UASF, thereby attempting to avoid the risk of a hard fork for the bitcoin network.[10]
On 8 November 2017, the developers of SegWit2x announced that the hard fork planned for around 16 November 2017 was canceled due to a lack of consensus.[11]
Related BIPs
- BIP141 Segregated Witness (Consensus layer) – activated on 24 August 2017
- BIP143 Transaction Signature Verification for Version 0 Witness Program – activated on 24 August 2017
- BIP144 Segregated Witness (Peer Services) – activated on 24 August 2017
- BIP148 Mandatory activation of segwit deployment – activated (mandated the activation of BIP141, 143, 144)
References
- All Bitcoin Improvement Proposals, including BIP141
- Segregated Witness proposal BIP 141
- Investopedia: SegWit (Segregated Witness)
- How the Bitcoin protocol actually works
- Graham, Luke (9 August 2017). "As bitcoin comes off its record high, the next step is to avoid a 'lightning fork'". CNBC. Archived from the original on 1 December 2017. Retrieved 23 November 2017.
- Vigna, Paul (21 July 2017). "Bitcoin Rallies Sharply After Vote Resolves Bitter Scaling Debate". WSJ. Retrieved 26 January 2020.
- Irrera, Anna; Chavez-Dreyfuss, Gertrude (2 August 2017). "Bitcoin 'clone' sees a slow start following split". Independent. Retrieved 22 June 2018.
- "SegWit and the bitcoin transaction fee conspiracy theory". FT Alphaville. FT. 2018-03-21.
- "Leading bitcoin ecosystem participants reach consensus on scaling issue". Econo Times. Econo Times. 25 May 2017. Retrieved 23 June 2017.
- CNBC (14 July 2017). "Dispute could mean financial panic in Bitcoin". Associated Press. Retrieved 19 July 2017.
- Vigna, Paul (8 November 2017). "Bitcoin Dodges Split That Threatened Its Surging Price". The Wall Street Journal. Retrieved 8 November 2017.