0

So in bitcoin proof of work mechanism, whoever solves the math equation fastest gets to mine the block. If thats the case, this miner has a lot of say in terms of the direction of newly mined transactions. Like prioritizing certain user sent transactions. Additionally since this miner is the first to mine, can't he/she be a bad actor? How can other miners make sure they aren't bad actors? Are other miners also required to process the the block after the first miner finished?

In the following text from webite:

"If any member of the network attempts to broadcast false information, all nodes on the network will immediately recognize it as objectively invalid and ignore it. Because each node can verify all information on the Bitcoin network itself, there is no need to trust other members of the network, making Bitcoin a trustless system."

I'm just confused on how other miners are able to validate and confirm a bad actor who continuous solve the math equation first. And in the above statement, when it say all nodes can verify, what does that mean? How do you define valid verses invalid?

3 Answers 3

2
  1. There are certain rules that a block and the transactions included in it must comply with in order to be considered correct:
  • The task of finding a "happy" hash must be solved correctly
  • The block must refer to the correct parent block
  • Transactions included in the block must use the unspent outputs of previous transaction
  • and so on Any node can check all this on its own
  1. If a miner considers a new block to be incorrect, he simply offers his new block as a continuation from any other correct block.

  2. Of all the possible options for continuing the chain proposed by different miners, the one that is longer falls into the main one. Moreover, this decision may change as the length of competing chains changes.

3
  • thanks but its doesn't really answer my question i don't think. referencing the correct parent block is trivial to game, as long as the bad actor minter continuous get the happy hash the fastest, he can just keep on telling the world, his block is the right one. to your point on any node can check this, do nodes ever go back and check if something is valid? they would spent time checking and miss mining new blocks, no incentive right? to your second point, how does offering up his own block work? how would the entire system decide if 2 miners say their own block is correct? whose right? Jan 15 at 6:20
  • to your 3rd point, then if a miner continuous beats everyone to computing the hash the fastest, he will constantly be able to produce blocks faster. which goes back to my question-the miner whose is able to solve the block the fastest seems to get A LOT of say in terms of where the system goes, even gaming it and acting as bad actor right? this is an extreme case i understand but it theoretically feasible right? Jan 15 at 6:22
  • Added answers to your questions in a separate answer
    – Mad Jackal
    Jan 15 at 8:23
2

@user1234440 your questions step by step:

  1. referencing the correct parent block is trivial to game, as long as the bad actor minter continuous get the happy hash the fastest, he can just keep on telling the world, his block is the right one.

    Yes, this is called a "50% attack" and there are no means of countering it for PoW consensus, except for increasing the network hashrate.

  2. to your point on any node can check this, do nodes ever go back and check if something is valid?

    With PoW consensus, nodes necessarily check the new block, but the result of the check is not reported to anyone - each node decides for itself whether this block is correct or not. With a PoS consensus in the network, a mechanism can be implemented to punish the creator of an incorrect block by revoking his stake. Directly collecting answers about the correctness of the block for subsequent voting is used in BFT-consensuses, but they are not used in public networks.

  3. they would spent time checking and miss mining new blocks, no incentive right?

    Checking takes globally less time and resources than searching for a "happy" hash. But, if we consider not PoW, but, for example, PoS consensus, then, say, Polkadot has a special role "fisherman", which receives a reward for detecting incorrect blocks.

  4. to your second point, how does offering up his own block work?

    It's just that the miner offers its own block, having the block chosen by this miner as the parent. It is considered by the other nodes as an equivalent candidate for a new block among all other proposals.

  5. how would the entire system decide if 2 miners say their own block is correct?

    In networks using PoW, consensus is not decided by the "system" - each individual miner decides. He expresses his "voice" in the fact that he continues the chain (forms a candidate for a new block) from the block that he considers "the most correct".

  6. to your 3rd point, then if a miner continuous beats everyone to computing the hash the fastest, he will constantly be able to produce blocks faster

    Yes, see question 1.

  7. which goes back to my question-the miner whose is able to solve the block the fastest seems to get A LOT of say in terms of where the system goes, even gaming it and acting as bad actor right?

    Yes, if this is critical, then it is necessary to use consensus algorithms other than PoW (PoS, BFT) in the network.

  8. this is an extreme case i understand but it theoretically feasible right?

    It is quite realistic for "young" networks that have a low hashrate and is one of the security problems for them. For example, to a certain extent, the Polkadot project is dedicated to solving this problem.

1
+50

You are right in saying that if a bad actor continuously gets to mine a new block, they'll be able to sneak in fraudulent transactions. But to do so, they'll have to continuously keep mining new blocks on top of the fraudulent block. This is unlikely as to do so, they'll have to control a huge portion of the network's computing power.

Let's say A is a bad actor and proposes the block 55 which includes a fraudulent transaction. Now every other miner will be able to see that and will refuse to add it to their blockchain. Before a node accepts a new block, they verify if the block is valid. Verifying a block's validity and hash puzzle solutions isn't a resource-intensive task. They verify the validity because if they don't, at a later point some other valid branch might be created by someone and all the blocks mined in the previous blocks will be valid (wasted resources).

So for all the good actors, the blockchain is still 54 blocks long. Another good actor will propose a valid block 55 and if they get to mine it, the chain grows normally. But if the bad actor somehow manages to mine block 56 too, that will become the longest chain, but no one except them will consider it to be the longest valid blockchain. What the valid longest chain is, is what the majority of the miners accept it to be. A bad actor can try to propose alternate versions of the chain, but it won't be considered valid.

However, a bad actor who controls a major share of the networks computing power can censor the transactions of some particular addresses. Those will be technically valid blocks and will be accepted by other nodes. But if any other miner solves the hash puzzle, they might add it to the block they mine.

The situation where a bad actor who controls a major share of the networks computing power is called the 51% attack. You can read more about the scope of the 51% attack here. Hope this answers your question.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.