Segregated Witness: Difference between revisions

From Bitcoin Wiki
Jump to navigation Jump to search
Taras (talk | contribs)
No edit summary
Taras (talk | contribs)
No edit summary
Line 1: Line 1:
'''Segregated Witness''' (abbreviated as '''SegWit''') is an implemented protocol upgrade intended to provide protection from [[transaction malleability]] and [[Block size limit controversy|increase block capacity]]. SegWit defines a new structure called a ''witness'' that is committed to blocks separately from the transaction merkle tree. This structure contains data required to check transaction validity but is not required to determine transaction effects. In particular, signatures and redeem scripts are moved into this new structure, which does not count towards the traditional [[Block size limit controversy|1 MB block size limit]].
{{infobox miner activated fork|title=SegWit|image=[[File:Segwit.png|256px]]
|fulltitle=Segregated Witness (Consensus layer)
|bipnumber=[[BIP_0141|BIP 141]]
|purpose=Prevent unintended [[transaction malleability]]
|bit=Bit 1 "segwit"
|starttime=2016-11-15 00:00:00
|timeout=2017-11-15 00:00:00
|supermajority=95% of last 2016 block period
|lockin=Block #479708<br/>2017-08-08 19:05:58
|activated=Block #481824<br/>2017-08-24 01:57:37
}}'''Segregated Witness''' (abbreviated as '''SegWit''') is an implemented protocol upgrade intended to provide protection from [[transaction malleability]] and [[Block size limit controversy|increase block capacity]]. SegWit defines a new structure called a ''witness'' that is committed to blocks separately from the transaction merkle tree. This structure contains data required to check transaction validity but is not required to determine transaction effects. In particular, signatures and redeem scripts are moved into this new structure, which does not count towards the traditional [[Block size limit controversy|1 MB block size limit]]. Instead, a new ''weight'' parameter is defined, and blocks are allowed to have at most 4 million weight units (WU). A byte in the original 1 MB zone of the block weighs 4 WU, but a byte in a witness structure only weighs 1 WU, allowing blocks that are technically larger than 1 MB without a hardforking change.
 
After the successful activations of [[pay to script hash|P2SH]], OP_CLTV, and OP_CSV, SegWit was the last protocol change needed to make the [[Lightning Network]] safe to deploy on the Bitcoin network.


==See Also==
==See Also==

Revision as of 22:40, 29 November 2017

SegWit
Full titleSegregated Witness (Consensus layer)
BIP numberBIP 141
TypeMiner-activated softfork
PurposePrevent unintended transaction malleability

Deployment

Signalling bitBit 1 "segwit"
Starttime2016-11-15 00:00:00
Timeout2017-11-15 00:00:00
Supermajority95% of last 2016 block period
Lock-inBlock #479708
2017-08-08 19:05:58
ActivatedBlock #481824
2017-08-24 01:57:37

Segregated Witness (abbreviated as SegWit) is an implemented protocol upgrade intended to provide protection from transaction malleability and increase block capacity. SegWit defines a new structure called a witness that is committed to blocks separately from the transaction merkle tree. This structure contains data required to check transaction validity but is not required to determine transaction effects. In particular, signatures and redeem scripts are moved into this new structure, which does not count towards the traditional 1 MB block size limit. Instead, a new weight parameter is defined, and blocks are allowed to have at most 4 million weight units (WU). A byte in the original 1 MB zone of the block weighs 4 WU, but a byte in a witness structure only weighs 1 WU, allowing blocks that are technically larger than 1 MB without a hardforking change.

After the successful activations of P2SH, OP_CLTV, and OP_CSV, SegWit was the last protocol change needed to make the Lightning Network safe to deploy on the Bitcoin network.

See Also

This page is a stub. Help by expanding it.