
Segregated Witness, or SegWit, is the name used for an implemented
soft fork change in the transaction format of
bitcoin
Bitcoin (abbreviation: BTC; Currency symbol, sign: ₿) is the first Decentralized application, decentralized cryptocurrency. Based on a free-market ideology, bitcoin was invented in 2008 when an unknown entity published a white paper under ...
.
The formal title "Segregated Witness (Consensus layer)" had Bitcoin Improvement Proposal number BIP141. 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.
[Segregated Witness proposal BIP 141](_blank)
/ref> Segregated Witness was activated on 24 August 2017.
It was also intended to mitigate a blockchain
The blockchain is a distributed ledger with growing lists of Record (computer science), records (''blocks'') that are securely linked together via Cryptographic hash function, cryptographic hashes. Each block contains a cryptographic hash of th ...
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. 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 cryptocurrency (colloquially crypto) is a digital currency designed to work through a computer network that is not reliant on any central authority, such as a government or bank, to uphold or maintain it.
Individual coin ownership record ...
, a form of currency using cryptography to keep transactions secure. A collection of bitcoin transactions prefaced by a block header, protected by proof of work, and recorded on a network of computers is called a "block". All blocks are tied together sequentially by using a cryptographic hash
A cryptographic hash function (CHF) is a hash algorithm (a map of an arbitrary binary string to a binary string with a fixed size of n bits) that has special properties desirable for a cryptographic application:
* the probability of a particu ...
on the previous block and storing its output in the next. This forms a blockchain
The blockchain is a distributed ledger with growing lists of Record (computer science), records (''blocks'') that are securely linked together via Cryptographic hash function, cryptographic hashes. Each block contains a cryptographic hash of th ...
.[Block Chain](_blank)
/ref>
Each block contains information about who sends and receives a given unit of bitcoin (a transaction), as well as the signature(s) 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
In computing, a denial-of-service attack (DoS attack) is a cyberattack in which the perpetrator seeks to make a machine or network resource unavailable to its intended users by temporarily or indefinitely disrupting services of a host co ...
(DoS attack). These fake blocks would be detected, but doing so would take a very long time, slowing down the whole system. Therefore, a block size limit of 1 MB was introduced.
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
Proof of work (also written as proof-of-work, an abbreviated PoW) is a form of cryptographic proof in which one party (the ''prover'') proves to others (the ''verifiers'') that a certain amount of a specific computational effort has been expended ...
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 block 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.
Malleability
A transaction uses unused outputs from a previous transaction(s) known as unspent transaction outputs (UTXO). This results in a chain of related transactions linked by their transaction identifier. However, it is possible for someone to change (mutate) unconfirmed bitcoin transactions without making them invalid, which changes the transaction's identifier, making child transactions invalid (i.e., link between transactions are broken).
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.
Activation
The activation window for the SegWit upgrade started at Midnight 15 November 2016 UTC, and would run until Midnight 15 November 2017 UTC.
SegWit would only be activated once at least 95% of miners signaled readiness for the upgrade across a target adjustment period of 2016 blocks.
On 9 August 2017 a milestone was reached when 100% of miners between blocks 477,792 to 479,807 signaled support for SegWit, which meant the SegWit upgrade was "locked in" and would be fully activated roughly two weeks later at the start of the following target adjustment period.
Segregated Witness was then activated on 24 August 2017 at block height 481,824. The bitcoin price rose almost 50% in the week following SegWit's activation. On 21 July 2017, bitcoin was trading at $2,748, up 52% from 14 July 2017's $1,835.
SegWit alleviates the scaling problem in two ways:
* SegWit solves transaction malleability, thereby enabling the Lightning Network
The Lightning Network (LN) is a payment protocol built on the bitcoin blockchain. It is intended to enable fast transactions among participating nodes (independently run members of the network) and has been proposed as a solution to the bitcoin sca ...
, 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".
Initially, most bitcoin transactions have not been able to use the upgrade.
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.
As of February 2018, SegWit transactions exceed 30%.
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
The MIT Media Lab is a research laboratory at the Massachusetts Institute of Technology, growing out of MIT's Architecture Machine Group in the MIT School of Architecture and Planning, School of Architecture. Its research does not restrict to fi ...
) 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.
As of mid-2017, the SegWit2x proposal had support from over 90% of the hash rate. However, the proposal has been controversial due to the limitation of project work to an invitation-only group of developers. In mid-July 2017, it became evident that miners favored implementing the Segwit part of the agreement before the 1st of August 2017 UASF, aiming to mitigate the risk of a hard fork in the bitcoin network.
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.
References
{{Bitcoin, state=expanded
Bitcoin