summaryrefslogtreecommitdiff
path: root/bip-0149.mediawiki
blob: 4d8fe8295a4ad2e9eebca96eab326edb2b2f3cd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<pre>
  BIP: 149
  Layer: Consensus (soft fork)
  Title: Segregated Witness (second deployment)
  Author: Shaolin Fry <shaolinfry@protonmail.ch>
  Comments-Summary: No comments yet.
  Comments-URI: https://github.com/bitcoin/bips/wiki/Comments:BIP-0149
  Status: Draft
  Type: Standards Track
  Created: 2017-04-14
  License: BSD-3-Clause
           CC0-1.0
</pre>

==Abstract==

This document specifies a user activated soft fork for [[bip-0141.mediawiki|BIP141]], [[bip-0143.mediawiki|BIP143]] and [[bip-0147.mediawiki|BIP147]] using versionbits with guaranteed lock-in.

==Motivation==

Miners have been reluctant to signal the BIP9 segwit deployment despite a large portion of the Bitcoin ecosystem who want the soft fork activated. This BIP specifies a user activated soft fork (UASF) that deploys segwit again using versionbits with guaranteed lock-in on timeout if the BIP is not already locked-in or activated by the timeout. This ensures users have sufficient time to prepare and no longer require a miner supermajority, while still allowing for an earlier miner activated soft fork (MASF).

==Reference implementation==

https://github.com/bitcoin/bitcoin/compare/master...shaolinfry:uasegwit-flagday

==Specification==

This deployment will set service bit (1<<5) as NODE_UAWITNESS.

==Deployment==

This BIP will be deployed by BIP8 with the name "segwit" and using bit TBD.

For Bitcoin mainnet, the BIP8 starttime will be midnight 16 November 2017 UTC (Epoch timestamp 1510790400) and BIP8 timeout will be 4 July 2018 UTC (Epoch timestamp 1530662400).

For Bitcoin testnet, segwit is already activated so no deployment is specified.

==Backwards Compatibility==

This deployment reuses the GBT deployment name "segwit" to maintain compatibility with existing mining software.

==Rationale==

This BIP can be deployed well in advance of the BIP8 '''starttime''' so that the '''timeout''' will be sufficiently far in the future to allow Bitcoin users to upgrade in preparation.

The '''starttime''' of this BIP is after the BIP9 "segwit" timeout to remove compatibility issues with old nodes.

==References==

[https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-April/014234.html Mailing list discussion]

[[bip-0008.mediawiki|BIP8]]

[[bip-0009.mediawiki|BIP9]]

[[bip-0141.mediawiki|BIP141]]

[[bip-0143.mediawiki|BIP143]]

[[bip-0147.mediawiki|BIP147]]

==Copyright==

This document is dual licensed as BSD 3-clause, and Creative Commons CC0 1.0 Universal.