pull down to refresh

Soft forks –especially the OP code soft forks debated here– all carry zero risk. This is because they are [1] opt-in, and [2] reversible. The whole point of a soft fork, is that old nodes do not have to upgrade – they are opt in.
The easiest way to see why a soft fork is reversible, is just to imagine that OP NOP 7 has been claimed (as “CTV” for example), via soft fork. Previously, nop7 always returned “true” – but now it will occasionally return “false” (if the CTV rules are broken). Let me be clear: to restore nop7 to its former state, is a HARD FORK. But, we can do something else: forbid any transaction from ever utilizing nop7 – this is a soft fork.
I believe the risk everyone is concerned about is that the upgraded nodes will split off the old chain if the majority of miners don't upgrade. It's a resolvable split, but anyone making economic decisions while the split is occurring is putting money at risk if both chains don't represent relevant spends the same way.
243 sats \ 2 replies \ @ek 13 Dec
I must admit that I’m still occasionally confused about MASF and why it’s important for enough miners to upgrade so here’s my understanding:
If a miner doesn’t upgrade, they might produce blocks containing transactions that are no longer accepted by miners and users who have upgraded. Old users would accept both new and old blocks.
So this becomes a problem if there are enough old miners generating old blocks that are invalid by the new consensus rules. This could potentially lead to a permanent chain split if these miners refuse to accept the financial loss if they would follow the new chain with the upgraded rules.
This also affects old users since they now have to pick a chain, too.
Is this wrong or is this really not a concern for @psztorc?
If this isn't a concern for him, I don't understand why he doesn't simply deploy BIP-300 (whatever that means for him), since, according to him, nobody needs to be convinced of anything to activate a soft fork since "they are opt in":
The whole point of a soft fork, is that old nodes do not have to upgrade – they are opt in.
reply
why can't he just deploy BIP-300 and have his drivechains since apparently nobody needs to be convinced of anything to activate a soft fork?
I think his point is that only miners need to run it. "Regular" nodes can go push daisies because they don't choose what goes into blocks, miners do. Note: I don't personally think regular nodes can "go push daisies," I am just trying to use colorful language to represent what I understand Paul's opinion to be.
Also, I think this "miners-only" point is related to the fact that when soft forks are up for activation, regular nodes aren't asked to do any signalling -- only miners are. So, from Paul's perspective (as I understand it), he only needs to convince miners to run his software, no one else. Unfortunately for him, it doesn't seem like miners want to run his software either.
I suspect miners like having the regular, constant stream of professional updates they get by running Bitcoin Core. If they instead ran Paul's Mainchain software (which is his fork of Bitcoin Core with bip300), they would have to rely on him and his small team to upstream the upgrades made by Core. And that sounds dangerous and unwise.
So they just stick with Core, and thus can't be bothered running his bip300 software. I believe Paul has stated that he has personally discussed bip300 with a bunch of miners, and almost all of the ones he has talked to about it are on board with the idea; except for the part about running something other than Bitcoin Core.
reply
That's my understanding as well, except ..
This also affects old users since they now have to pick a chain, too.
Old users will always follow the most difficult chaintip and don't need to choose afaict. They can spend their money according to old consensus rules and it's compatible with either chain ... and given enough time, it should be mined on both chains.
The old/upgraded miners are at risk of mining on the wrong tip though, and upgraded nodes that declare non-upgraded blocks as invalid are at risk of accepting spends that only appear in the upgraded blocks (which may be re-orged out).
It's worth getting up to speed on this stuff because it'll be the first forking season for most of us.
reply
I wonder if there's a way to prevent reduce the "gamble" taken without the heavy hand of UASF, like an upgraded wallet that takes this temporary split into consideration by providing multiple versions of a spend that's compatible with each chaintip so no matter which chain wins the economic outcome is as similar as possible.
Then again mining pools are so centralized, you'd just need to convince two or three of The Big 4 to support the fork. Are any of the pool operators other than Ocean even participating in fork discussions?
reply
189 sats \ 1 reply \ @ek 13 Dec
like an upgraded wallet that takes this temporary split into consideration by providing multiple versions of a spend that's compatible with each chaintip so no matter which chain wins the economic outcome is as similar as possible.
But that means the recipient also needs to accept coins on both chains, right? If that's not the case, I think there is some problem with following transactions and their respective recipients.
But I am not sure I'll understand what I was thinking when I initially replied before the edit timer runs out.
I wish I spent more time thinking before replying, lol
reply
Yep. You'd want this split consensus to be acceptable along the entire upstream spend path (ie you'd need this kind of weird meta-consensus along the spend path). It's a pretty silly idea.
The ideal afaict would be that soft forks don't even need a majority of miners. I'm just sharing dumb ideas about how that might be achieved. I'd be curious if anyone has done any research to that effect.
reply