Trinary Version Signaling for softfork upgrades



Summary:

Softforks require miner enforcement to be compatible. Without it, softforks can cause splits due to bugs, coordination mistakes, or people wanting different rules. The largest investment in mining determines censorship resistance, but users ultimately decide what software to run. Splitting is not necessary for Bitcoin to continue as a decentralized currency, and coordinating a split requires a political process. Miner signaling is an appropriate second barrier to entry for upgrades, but measuring community consensus accurately can be difficult. A split is always possible, and misleading statements about inherent soft fork compatibility should be avoided. Soft forks are rule changes and therefore incompatible unless enforced by majority hash power.Recently, there has been controversy over upgrade mechanisms for the non-controversial taproot upgrade in the Bitcoin community. One proposal was BIP8 LOT=true which ensures miners cannot block an upgrade entirely, but it can still lead to undesirable forks causing chaos. To solve this problem, Billy Tetrud proposed a trinary version signaling system that allows for three signaling states: actively support the change, actively oppose the change, or not signaling (neither support nor oppose). With this additional information, non-contentious upgrades can be released quicker with a lower percentage of miner signaling support. For contentious upgrades, miners who oppose the change are incentivized to update their software to a version that can actively signal opposition to the change.This mechanism gives an incentive for "lazy" miners to upgrade if they actually oppose the change while allowing them to remain lazy without slowing down the soft fork activation much. However, Eric Voskuil points out that ultimately, the only answer to preventing a split is to get majority hash power support. Soft fork enforcement is the same act as any other censorship enforcement, and anyone can mine and vote by trading. Mining is trading capital now for more later, so if enough people want to enforce a soft fork, they can do so. Voskuil also explains that anyone can start a new coin, but it is dishonest to imply that one can do this and all others will surely follow. This cannot be known, and it’s merely a gamble. And it’s one that has been shown to not always pay off. Jorge Timón adds that if different users want different incompatible things enough on each side, there's no way to avoid a split, and we shouldn't try to avoid such a split. Users decide the rules, not miners nor developers. Luke Dashjr supports this view and explains that no additional bit is needed for softforks as they are coordinated between users, not miners, and the miner involvement is only out of necessity and potentially to accelerate activation by protecting upgrade-lagging users. In summary, there are different proposals for upgrade mechanisms in the Bitcoin community, but ultimately, preventing a split requires majority hash power support. The trinary version signaling system proposed by Tetrud gives an incentive for "lazy" miners to upgrade if they actually oppose the change while allowing them to remain lazy without slowing down the soft fork activation much. However, some argue that splits cannot be avoided if different users want incompatible things, and users decide the rules, not miners nor developers. Softforks are coordinated between users, not miners, and the miner involvement is only out of necessity and potentially to accelerate activation by protecting upgrade-lagging users.


Updated on: 2023-06-14T23:37:33.880429+00:00