On Mar 5, 2017 6:48 PM, "Eric Voskuil" <
eric@voskuil.org> wrote:
Independent of one's opinion on the merits of one fork or another, the state of centralization in Bitcoin is an area of great concern. If "we" can sit down with 75% of the economy and/or 90% of the hash power (which of course has been done) and negotiate a change to any rule, Bitcoin is a purely political money.
If "we" can do this, so can "they".
e
There is no doubt that politics play a big role in all of this. Also no doubt that broader decentralization would be superior. But miner activated soft forks and user activated soft forks do not need discussions with centralized parties to move forward. It is merely two different methods for pushing a soft fork through the network.
The key is that it's a soft fork. Old nodes continue to work as always, whether the soft fork deploys or not.
User activated soft forks, or perhaps more accurately called 'economically forced soft forks' are a tool to use if the miners are in clear opposition to the broader economy. They only work if the broader economy actually fully supports the soft fork, which is much more difficult to measure than miner support. And miners with deeper pockets may be able to resist for some time, effectively performing a rewardless 51% attack and maintaining a split network for some time. The miners would lose lots of money, but old nodes would feel all the burn of a hard fork, followed by a sudden deep reorg when the network finally 'heals'.
I guess in some sense you'd be playing chicken with the miners. If the split is not instantly successful there would be a lot of damage to old nodes, even if the majority of new nodes had upgraded. (but there would also be a lot of damage to the miners).
This is not relevant to a UASF. The existing nodes on the network have a single formal definition for longest chain. If the UASF is successful, the old nodes will follow the new soft fork and there will be only one chain. Spirit of Bitcoin or not, the UASF is successful and there is no coin split or network fork.