I want to know Couldnt a chain be hardcoded in the bitcoin rules itself? Only so and so chain can be used. During the early days of bitcoin, I know a small group of enthusiasts were miners. And they helped the blockchain takes its initial steps. Assuming that to be the case for a new blockchain, with trusted people in the beginning and with the additional component of hardcoded singular blockchain. What problems might this face?
-
Hi Tejush Singh, I see a few possible interpretations of your question. Are you asking 1) whether we can know in advance what the block hashes of future blocks will be? 2) whether we can come up with rules that prevent multiple blocks at the same height to be found? 3) what issues a permissioned blockchain with a pre-defined set of authors would have? Could you perhaps clarify your question?– Murch ♦Dec 30, 2022 at 16:43
-
1Basically what if only one chain is ever allowed to exist, is that possible?– Guinea guineaDec 31, 2022 at 9:05
3 Answers
It is not possible to prevent the existence of two chaintips at the same time while maintaining the current characteristics of Bitcoin's network.
Blocks are found through a random process. Since information is not directly disseminated to all other participants, but propagated through a gossip network, it takes a few seconds for the announcement of a new block to reach all other network participants. Occasionally, two miners will each find a new block at the same height at almost exactly the same time such that neither has heard about the other's block yet. If the network rules prevented more than one chain from existing, each side would be right to say that their chaintip came first and must be the correct one—the network would permanently split.
In business, this problem is often resolved by a centralized coordinator or quorum of decision makers. Bitcoin is a scale-free network in which each node has the same power level as any other. Introducing a central coordinator or privileged block authors would drastically change the security model, introducing central points of failure and undermine censorship resistance. This approach is prevalent in permissioned blockchains developed for various business use cases (and also for one of Bitcoin's test beds, the Signet).
-
Thanks. This gets to the heart of the question. I will look further into permissioned blockchains to get a good grasp of the concept. Jan 1 at 7:29
What if there are competing chains that are valid according to the same rules? It could be as simple as 2 versions of next block: one has 1000 TXes, other has removed 1 and has 999 TXes, which one is "real"? Which one should the network extend?
Longest chain rule settles that, resolving which chain is real among competing chain tips that follow the same rules: the one with more chainwork is "real", while the other gets "reorged".
-
Basically what if only one chain is ever allowed to exist, is that possible? Dec 31, 2022 at 9:05
-
That's what "reorgs" do, they eliminate other candidate chains that are built according to same rules. If rules are different then that results in multiple cryptocurrencies and nobody can prevent someone from running a network of other chain's nodes. Your node only specifies what you yourself will accept, it has no power over others. But then again, you can just ignore other chain's nodes, since they have no power over you. Dec 31, 2022 at 10:46
Couldnt a chain be hardcoded in the bitcoin rules itself? Only so and so chain can be used
A chain is "hardcoded" into the bitcoin rules. The rules specify the chain with most "work". That's the only chain that can be used. Your "so and so chain" is the "longest chain" - in the bitcoin context meaning "chain with most work".
You are making an unusual use of the term hardcoded. Normally it brings to mind fixed data in the source code, but of course the blockchain is ever growing data and so can't be hardcoded as a fixed constant in the source code. I interpret your meaning as saying the choice of chain is unambiguously determined by the fixed rules built into every single copy of every Bitcoin wallet software.
with trusted people in the beginning
The primary goal of Bitcoin's creator was to create a system of cash where two people could transact without any need for a trusted third party. Bitcoin allows you to make a payment to a second person without any need to ever trust anyone else.
What problems might this face?
The problem with trust is betrayal. usually springing from lack of deep knowledge, understanding and rigorous monitoring of those trusted. Consider the fate of those who trusted Sam Bankman-Fried and had money in FTX, or those who trusted the owners of MtGox, Quadriga-Cx and many others.