Skip to main content

Questions tagged [soft-fork]

Should be used for questions regarding softforks of the bitcoin blockchain

Filter by
Sorted by
Tagged with
23 votes
1 answer
2k views

How is SegWit a soft fork?

Reading this section of BIP144, I noticed the followng statement: Parsers supporting this BIP will be able to distinguish between the old serialization format (without the witness) and this one. ...
Simone Bronzini's user avatar
9 votes
1 answer
854 views

How do BIP8 and BIP9 differ, how are they alike?

With Taproot on everyone's lips, people have started discussing activation approaches. The debate currently seems to favor BIP8. Previous soft forks used BIP9. How are the two related and what are the ...
Murch's user avatar
  • 75.9k
8 votes
3 answers
2k views

Can old coins be banned by a soft fork?

Satoshi Nakamoto is supposed to own 1.000.000 bitcoins on a thousands of wallets, and most of them are untouched since early blocks. This stake can potentially flood the market, so miners could ...
Bagdan Imr's user avatar
8 votes
2 answers
1k views

What are the downsides to enabling potentially suboptimal or unused opcodes in a future soft fork?

It appears to me that there are various ways to build covenants and vaults with opcodes and sighash flags that are not yet enabled in Bitcoin (e.g. OP_CHECKTEMPLATEVERIFY, SIGHASH_ANYPREVOUT, OP_CAT). ...
Michael Folkson's user avatar
7 votes
2 answers
527 views

Why exactly would adding further divisibility to bitcoin require a hard fork?

There are quite a few threads already on this topic, but they all focus on the necessity or possibility for such a change. I understand that, even though it is difficult and would obviously require ...
sutterseba's user avatar
7 votes
1 answer
384 views

Did the P2SH BIP-0016 make some Bitcoin unspendable?

The P2SH feature currently in use was introduced to Bitcoin in 2012 with BIP-0016. It was successfully activated on 2012-04-01 with block 173805. The BIP turned a particular "hashlock" ...
bca-0353f40e's user avatar
  • 1,025
6 votes
1 answer
608 views

Why isn't the taproot deployment buried in Bitcoin Core?

Bitcoin Inquisition recently had a PR about soft fork activation and as part that PR, it buries taproot and references a closed PR to Bitcoin Core to bury taproot. Will the taproot deployment be ...
Schmidty's user avatar
  • 169
6 votes
1 answer
216 views

How do we know which soft-forks were implemented using User-Activated Soft Fork or Miner-Activated Soft Fork?

This seems to be the most common definition When a majority of miners upgrade to enforce new rules, it is called a miner-activated soft fork (MASF). When full nodes coordinate to enforce new rules, ...
Aman Saggu's user avatar
5 votes
1 answer
135 views

When was the first OP_RETURN output in a coinbase?

One way to deal with the BIP34 does not imply BIP30 issue, aka the Block 1,983,702 Problem, is a soft-fork that makes the SegWit commitment mandatory. [0] There are no OP_RETURN outputs in any of the ...
Sjors Provoost's user avatar
4 votes
3 answers
534 views

Would it be possible to create a soft-fork for reducing miner reward?

Context: There is a bet going on r/bitcoin about the possibility of doing a user activated soft fork for reducing current miner reward to 0.25 BTC. One of the users says the bet had two points: the ...
My Quid Pro Quo's user avatar
4 votes
1 answer
639 views

BIP34, BIP66 and BIP65 should have been enforced at unique block heights. Why do different sources claim different block heights for enforcement?

Inconsistent Consensus/Activation of BIPs BIP34 Activated Block Height 227,835 (BitMEX Reference) Activated Block Height 227,930 (Bitcoin Developer Reference) Activated Block Height 227,931 (...
Aman Saggu's user avatar
4 votes
1 answer
352 views

Activation of SegWit v1

The segregated witness soft fork of August 2017 included a versioning field which would allow for future incrementation. Anthony Towns has recently posted an early draft of the proposal for the SegWit ...
Max Hillebrand's user avatar
4 votes
3 answers
2k views

Where can I find a complete list of Bitcoin forks (soft, hard, intentional and unintentional)

I was looking to study the history of Bitcoin forks including the 2013 incident that may or may not have been a Hard fork depending on your definition.
Charlie's user avatar
  • 43
3 votes
3 answers
747 views

Why does everyone say that soft forks restrict the existing ruleset?

I understand that a key element of a soft fork is that legacy nodes will accept transactions from updated nodes. This is essentially the whole point of a soft fork as opposed to a hard fork. But ...
Marco's user avatar
  • 395
3 votes
2 answers
160 views

What Satoshi Nakomoto quotes are there in relation to forks and altcoins?

What Satoshi Nakomoto quotes are there in relation to: forks of Bitcoin? forks in general? altcoin/similar projects? Here I mean forks that form distinct new coins/ecosystems, not in relation to ...
Lee's user avatar
  • 853
3 votes
2 answers
335 views

Should block height or MTP or a mixture of both be used in a soft fork activation mechanism?

Should block height or MTP (median time past defined in BIP 113) or a mixture of both be used in an activation mechanism like BIP 8 or BIP 9 for defining the timings of the state transitions? What are ...
Michael Folkson's user avatar
3 votes
2 answers
354 views

Do non-Segwit nodes reject Segwit transactions with invalid signature?

As far as I can tell, non-Segwit nodes receive anyone-can-spend transactions, and thus come with no signature to validate. If a miner included a Segwit transaction to a block with invalid signature, ...
Angelo's user avatar
  • 423
3 votes
1 answer
696 views

How can I follow the progress of miner signaling for Taproot activation during the Speedy Trial deployment?

How can I follow the progress of miner signaling for Taproot activation during the Speedy Trial deployment? Can I use bitcoin-cli to track the signaling progress? This was asked by pox on Mastodon and ...
Michael Folkson's user avatar
3 votes
3 answers
204 views

Does version of Bitcoin Core determine my consensus?

As far as (voting) on the network? I run a full node, but do not mine. I hear people say we have a choice when changes are made. Is it the version of Core that determines that?
Edward Halverson's user avatar
3 votes
1 answer
693 views

What's the segwit transaction serialization "flag" field for?

According to bip 141, the segwit transaction serialization format (used to compute the wtxid) is: [nVersion][marker][flag][txins][txouts][witness][nLockTime] The bip mentions that the flag field ...
esneider's user avatar
  • 308
3 votes
1 answer
206 views

What are the risks of a lower-than-95% activation threshold for soft forks (particularly SegWit)?

95% seems exceptionally conservative, especially given the evidence of vetoing by a subset of Bitcoin miners. What risks does, say, 60% over a longer activation period hold vs 95% for SegWit?
murty's user avatar
  • 272
2 votes
3 answers
178 views

Why is a softfork unable to divide the network?

I was wondering why a soft fork cannot in principle divide the Bitcoin network as a hard fork can. I understand that a soft fork, by definition, involves only tightening the consensus rules, but the ...
user83582's user avatar
2 votes
1 answer
78 views

What would happen if we provide witness program different than 32 bytes for SegWit 1?

If the witness program (at the time of writing this question) is greater than 1, it is considered as anyone-can-spend output. Also, if the witness version is 1 and the witness program is 32 bytes, ...
LeaBit's user avatar
  • 950
2 votes
2 answers
116 views

How do nodes verify backwards incompatible blocks?

When you start the initial block download with the latest versions of Bitcoin Core, how does your node know that old blocks were valid according to different rules prior to soft forks?
Dirk's user avatar
  • 31
2 votes
1 answer
361 views

How do you make a coin resistant to soft forking?

Soft forks are probably worse than hard forks, since it is hard for a client to reject a soft fork (indeed, that is the point of soft forks). The only way to do so is either to gain 51% of the hash ...
Christopher King's user avatar
2 votes
1 answer
77 views

What is the history on how previous soft forks were tested prior to being considered for activation?

How were previous soft forks tested prior to being considered for activation? Were they added to the default testnet? Was a custom testnet setup with the soft fork functionality available on that ...
Michael Folkson's user avatar
2 votes
1 answer
156 views

Does a hard fork need to include a soft fork as well?

Using these definitions of soft fork and hard fork: soft fork – tightening of the consensus rules, new blocks remain valid for old nodes hard fork – loosening of the consensus rules, new blocks might ...
Vojtěch Strnad's user avatar
2 votes
1 answer
55 views

why bip 34 uses two step on MASF(Miner Activated Soft Fork)?

in bip 34, which change to bitcoin version 1 -> 2, uses two step for network's consensus. step 1. check if 750 of the last 1000 blocks are version 2 or greater. step 2. check if 950 of the last ...
sang oh's user avatar
  • 23
2 votes
1 answer
569 views

Which nVersion bit is the "hard fork bit?"

A 2015 draft BIP suggested using a "hard fork bit": The most significant bit in nVersion is defined as the hardfork bit. Currently, blocks with this header bit setting to 1 are invalid, since BIP34 ...
Rich Apodaca's user avatar
  • 2,421
2 votes
1 answer
185 views

How has the design of the opcode OP_CHECKTEMPLATEVERIFY evolved over its various renames?

OP_CHECKTEMPLATEVERIFY (BIP 119) has gone through various iterations. I don't particularly find the renames at all interesting (e.g. OP_CHECKOUTPUTSHASHVERIFY, OP_SECURETHEBAG) but I am interested in ...
Michael Folkson's user avatar
2 votes
1 answer
222 views

Can we experiment on Signet with multiple proposed soft forks whilst maintaining the ability of full nodes to validate the Signet chain?

One of the goals of Signet is to test proposed soft forks before they are activated on mainnet. Not only does this mean proposed soft forks such as Taproot that at the time of writing (August 2020) ...
Michael Folkson's user avatar
2 votes
2 answers
61 views

What if someone locks some bitcoin with a script which only requires a user to know a preimage, but it matches the p2sh template? [duplicate]

The basic script for a lightning network HTLC output has a conditional branch which requires a user to know a preimage of a hash. It also requires the user to give a valid signature, but it got me ...
yonson's user avatar
  • 43
2 votes
1 answer
55 views

Can you attack the network in a UASF-way?

Let's say that an attacker wants to deploy a softfork, that isn't desired by the majority of the Bitcoin users. Can he enforce that softfork in a UASF-way, essentially flooding the network with nodes ...
Angelo's user avatar
  • 423
2 votes
2 answers
67 views

Automatically reverting soft forks

Recently, Harding discussed on bitcoin-dev mailing list an idea for a transitory soft fork activation e.g. for CTV. The idea (if I understood correctly) was that the activation would come with inbuilt ...
Wapac's user avatar
  • 1,074
2 votes
1 answer
166 views

What is a softchain?

What is softchain and how is it different from drivechain? What are associated tradeoffs and feedback from community?
user avatar
2 votes
1 answer
95 views

What is the point of a soft fork when it's backwards compatible?

I understand a soft fork occurs when changes in the Bitcoin protocol are backwards compatible, but why is that a fork? Is there really a branch or is that just a formality? Or does this give me a ...
ddavi031's user avatar
  • 479
2 votes
2 answers
371 views

How do the nodes divide after a hard fork? Soft Fork?

After a hard fork, what happens to the full nodes? Say 11,000 BTC full nodes existed prior to the fork. Do all 11,000 end up supporting both BCH and BTC? Or does BCH start building it's own network of ...
user83463's user avatar
2 votes
1 answer
140 views

BIP9: What happens if I make a segwit transaction after lock in but before activation?

Will it be treated a anyone-can-spend or do the nodes enforce the new rules? Along the same lines, what exactly happens when we say a soft fork is activated? Are the enforced at the time SF becomes ...
sanket1729's user avatar
  • 1,402
2 votes
0 answers
49 views

Why hasn't Graftroot been part of the covenant soft fork discussion thus far? What are the downsides to this proposal?

I haven't heard much about Graftroot in the context of the covenant/vault discussion since around the time the Taproot soft fork was being finalized. The idea was initially posted on the bitcoin-dev ...
Michael Folkson's user avatar
2 votes
0 answers
114 views

Could the Lightning Network encounter any problems as a result of Taproot activating?

I was reading this excellent write up from Laolu Osuntokun on how the light client protocol Neutrino encountered a Taproot related issue on testnet. (Taproot is already active on testnet.) Could the ...
Michael Folkson's user avatar
2 votes
0 answers
34 views

Why is BIP133 listed as 'Draft' when it has been implemented for years?

BIP133 is listed as 'Draft' but it has been implemented since v.0.13.0 https://github.com/bitcoin/bips/blob/master/bip-0133.mediawiki Is there anything preventing it from being labelled as 'Final'?
Aman Saggu's user avatar
2 votes
0 answers
94 views

Is a replay-attack-proof soft fork possible?

Say there is a soft-fork. A is the chain that implements it, B is the chain that has a transaction that's valid pre-soft-fork, but invalid post-soft-fork, so it's following the old rules. We know that ...
Jimmy Song's user avatar
  • 7,759
1 vote
2 answers
77 views

How do we know whether a pull request will be a soft fork or a hard fork?

Aren't all pull requests either one or the other - a soft fork or a hard fork?
Eoin's user avatar
  • 349
1 vote
1 answer
360 views

How are OP_CSV and OP_CLTV backwards compatible

I am not able to see how older nodes prior to BIP 68, BIP112 and BIP 65 are able to prevent adding Transactions to their mempool when the newer rules are deliberately breached. I want to separate two ...
norisgOG's user avatar
1 vote
2 answers
308 views

Does a soft fork result in two different blockchain versions?

I've read the following: Both forks create a split, but a hard fork creates two blockchains and a soft fork is meant to result in one. Let's consider 2 situations: block size max limit is 1mb and ...
Nika Kurashvili's user avatar
1 vote
2 answers
239 views

What is the benefit of forced signaling in a soft fork activation mechanism?

What is the benefit of forced signaling in a soft fork activation mechanism? e.g. the MUST_SIGNAL phase in revised BIP 8. I understand the benefits of setting lockinontimeout (LOT) to true (some of ...
Michael Folkson's user avatar
1 vote
2 answers
199 views

BIP 144 transaction format and soft-forks and old nodes

I was trying to manually parse a raw Bitcoin transaction in order to better understand how it works. This is how it starts: "0200000000010141035625cd030eca667c95d1729a" I think I've parsed the Tx ...
My Quid Pro Quo's user avatar
1 vote
1 answer
77 views

What would happen if the non-upgraded node to BIP68 receives block with the transaction where one of its nSequence is different than 0xffffffff?

What would happen if the node not upgraded to BIP68 and relative lock time meaning of nSequence get a block with the transaction where one of its nSequence is not set to 0xffffffff, but to value which ...
LeaBit's user avatar
  • 950
1 vote
1 answer
256 views

What does it mean that BIP141 is "buried" in Bitcoin core?

I am reading the list of BIPs implemented in Bitcoin core (link) and it says that BIP141 is "buried since v0.19.0", what does that mean? Does this mean that what written in BIP141 is no ...
dassd's user avatar
  • 1,099
1 vote
2 answers
668 views

Were anyone-can-spend transactions valid before SegWit?

Non-segwit nodes (legacy nodes) see segwit transactions as anyone-can-spend (ACS) transactions. It is clear that such a nodes can (and do) validate blocks containing ACS transactions, because the ...
user922921's user avatar