The blockchain was intended to maintain immutability ONLY within itself and not from outside intervention.
Outside intervention is left open so that the protocol can be upgraded by "consensus" when the time is appropriate.
I suppose that by "inside" you mean "code", the technical part, not the sociological part.
Well, it is obvious that that cannot work. There is absolutely no "code/technical" way to establish consensus if there is no sociological/game theoretical part to the system.
You cannot just have code, without any game-theoretical assumptions, and suppose that any form of immutability will come out of that by itself. It is sufficient that people change the software, and the block chain can be totally altered, or its interpretation can be totally altered. If the software checking for the validity of PoW is altered, no amount of PoW will keep what so ever immutable.
Immutability comes from game-theoretical (and hence also sociological) assumptions, not from code. If people start propagating altered versions of the block chain, different software checking validity and so on, no piece of code can ever stop that and "provide immutability". The whole immutability comes from the fact that people will be put in such a situation where it is very unfavourable for them, or essentially impossible to organize for them to do anything else but to STICK to the immutable consensus.
Not only do I mean code part, but I also mean mechanically and functionally.
The game theoretically mechanisms of the blockchain, only apply and function within the blockchain.
I do not believe that game theory applies to consensus.
Game theory can not prevent malicious consensus, only a assumed play fair consensus.
Immutability can never be guaranteed within any human devised system.
The only aspect of game theory that would apply to immutability is that the gatekeepers
would keep the old immutable chain alive, since their is no action the gatekeepers can take to
prevent a malicious consensus hardfork.
Game theory does not prevent a violation, it only uses human assumptions to control the humans.
If I could bribe everyone with more value, they may destroy their own chain willing.
That is not a failure of the chain or the game theory aspect, but of their community and its own ignorance
of what their own job is. Users and other members of the community are not passive in this type of system.
Game theory in itself is a failed theory, since it assumes humans would not risk value over destruction.
Without this intervention by the devs, the code could never be "upgraded, fixed, or etc.", so version 0.1 would be the only one.
The consensus mechanism exists outside of the blockchain code and there is no sociological code within the blockchain.
The sociology aspect that you are relying upon, is actually based upon a community/miner/node gatekeeper premise.
But it is essential. If the devs could intervene at their will to change those things that are supposed to be immutable, your block chains would not keep any little bit of immutability, and be totally mutable and random. The whole point is that even the devs cannot do this.
However, they CAN change the code, as long as this code remains COMPATIBLE with those aspects that are deemed needed to keep immutability, and that itself is the whole game-theoretic premise on which the whole of immutable block chains is based.
That is:
- the devs (or just anybody) can bring out another node software that is perfectly compatible with the former v0.1, but, say, with a fancier GUI, or with faster algorithms, *perfectly* respecting the protocol on the technical side. You could have myriads of different but compatible node software.
- the devs (but not just anybody) can bring out node software that is technically not totally compatible with the former v0.1 and hence is technically a soft or hard fork, but which RESPECTS IN ALL ASPECTS the INTEND of the former protocol, and just improves a technicality. The reason why people will upgrade is that the intend of immutability (all the economic implications) is perfectly respected, so there is no reason NOT to upgrade (like accepting a security update to your computer system), and not upgrading can put you with an incompatible node. In other words, game-theoretically, there's no good reason not to upgrade if people agree that the technicality is improved now.
- and that's it. The devs, or any other "leadership" shouldn't be able to modify whatever to the intend of the immutability. If they can, then there is no immutability at all.
I don't understand.
You are basically arguing that if a blockchain that is immutable now, is made mutable by a violating change later,
then the blockchain was never immutable to begin with? If yes, then you are arguing semantically and I would agree
semantically. I would then go on to advise you that there is no blockchain that is immutable and there will never be,
by your semantical reasoning. In fact, I would also advise that humans will never be able to create any perfect
immutable system, since all matter (in this universe) is mutable.
Semantical reasoning and argument is not beneficial toward true understanding of this system.
If the gatekeepers (majority of consensus) wants to destroy the blockchain, it will happen, since Satoshi intended it to.
Well, I consider that as a failure of the block chain purpose. If that happens, the block chain didn't do what it was made for, namely keeping immutability of intend. Once you can do that, anything goes.
Satoshi did not create or intend perfect immutability and I'm not aware of where he made claims of such.
If Satoshi intended it to, and in fact designed it as so, then the failure rests upon the gatekeepers and not the blockchain tech.
The community failed to maintain their social contract and their "ideals".
Call it as you like: the system failed. The "code" didn't fail, but the block chain system failed, because the game-theoretical assumptions turned out not to hold.
The game theoretical assumption(s) do not apply to consensus.
They only apply within the blockchain's functional dynamics.
Consensus exists outside that function, so game theory does not exist with consensus.
The consensus mechanism does not exists within the blockchain and each altcoin's community can set out and
agree to their own consensus mechanism. The consensus mechanism was NEVER intended to prevent changes
to the original rules.
That is a strange statement. I will tell you why:
The consensus mechanism is ACTUALLY intended to allow for a way to make changes, if
deemed appropriate by the majority of the community. If the community wants to destroy their original social
contract, and they have majority, they will destroy it. Consensus allows possibility for change, not prevent it.
I would rather think that this was a shortcoming of the technology, rather than a feature. That is, one couldn't think of a mechanism where one could even block a colluding majority from imposing its will (in fact there is one: hard forking).
Humans can not create perfect systems, so, humans will never create perfect immutability.
Hardforking is not a mechanism to prevent the colluding majority, it is the result of their collusion.
When a hardfork occurs, it is because the majority has agreed (in theory) to that new version.
Maintaining the old chain is the only way to prevent a full "imposing of the collusion".
Because when you think about it, if a colluding majority is the "normal way to alter block chains", then there is nothing wrong with a "51% attack". It wouldn't be an attack at all. It would just be the normal majority wanting to alter history, if you keep your viewpoint.
No, a 51% majority of the hash power is not the same as a majority of node consensus signaling, for a protocol change.
A 51% attack is a malicious action by a miner, who has attained 51% share of the hash, and now is
attempting to revert/edit/undo past work ON THE CHAIN that will benefit themselves (and destroying the Bitcoin system outright).
A 51% attack is not power to change the protocol and its intended function, but only power to reverse work on the chain.
The reason why miners do not reverse work is because game theory says it will cause loss in value of the chain and then token.
But a malicious government miner attacker doesn't value that, so they could perform this type of attack and
the game theory will not apply to them, since their intention is only the destruction of Bitcoin.
The idea of a block chain was not to have a "majority vote over what was the distant past", although that is what comes technically out of it. The fact itself that you call a "community where a majority decides to DESTROY their block chain" indicates that you yourself consider that even if a majority decides something, that this is NOT what consensus is about.
Imagine that a majority of bitcoin miners decides that only they will now hold bitcoins, and that all former transactions that assign coins to addresses of which they do not have the keys, are invalid ; for that they have to write a lot of "exception rules' in the code accepting modified old blocks. Hell, in your viewpoint, such a total alteration of the past would be "consensus" because decided by the voting majority of miners ? Of course not, this is total breaking up of immutability and - as you actually call it - the destruction of the block chain system. Nevertheless, the CODE is running correctly, has been altered with majority consensus and "everything works by consensus as wanted by Satoshi" ?
I don't understand.
Miners can not do what you are describing. Your example will be rejected by the rest of the network.
There are thousands of nodes and other operator systems that form the full consensus mechanism.
You can get all the miners on board, but that does not guarantee full consensus if the users and economies do not agree.
For Bitcoin consensus, you need around 95% of the whole community, is my understating.
Now if the whole community did allow the miners to do what was in your example, than yes,
the community failed itself by coming to consensus to allow a social contract violating action into the system.
A block chain system is not supposed to be a majority vote system over just anything. The only thing the majority is supposed to vote over, is the respect of immutability. If anything else happens, the system fails. So the game-theoretical part is an essential part of the block chain system, because without it, there's no such thing as immutability, and hence no purpose for a block chain (the code/technical part).
Yes, Bitcoin is not entirely just a majority vote = change. But the community can vote on anything, technically.
But the fact that a vote is done and agreed upon does not mean that the result is a correct action.
Sometimes humans vote for their own destruction (ex: Ethereum hardfork that violates social contract).
Bitcoin's Immutability aspect is not governed nor maintained by game theory in any way.
In fact, I think there is no possible mechanism that can be created to stop humans from being human.
Immutability is only protected by gatekeepers who are informed and stay vigil.