1

I have a disagreement with a person: I believe that the primary and most important goal of including proof-of-work (and therefore the nonce) in a block is to make it hard for an attacker to change that block (and since we are talking about a chain the next ones) without committing enough resources to recalculate not only the current but also all the blocks after that. Without it the attacker could simply create forks of the blockchain without any problems (free).

He claims that it is a mechanism is there to solve the problem of determining representation in majority decision making. If the majority were based on one-IP-address-one-vote, it could be subverted by anyone able to allocate many IPs. Proof-of-work is essentially one-CPU-one-vote.

Who is more right?

  • 2
    They both seem right to me. If votes are expensive, it's hard for anyone to change the majority vote. – David Schwartz Apr 19 '17 at 20:26
1

Immutable transactions are a consequence of blockchain-based systems when the following are true:

  1. There is a cost (in currency and in acquiring materials) of producing a block consistent with the rules of the protocol, and this cost cannot be circumvented
  2. The cost is great enough where incurring this cost to increase the length of the blockchain is more profitable than incurring this cost to fork the blockchain
  3. As part of the rules of the protocol, past transactions cannot be altered by future additional data

Proof of work fits into this because it is provably costly. It requires energy, and it also requires development time and materials to create machines that use this energy efficiently. This cost prevents forks from being supported, as you have limited energy and you can only use that energy once.

This contrasts with Proof of Stake, or an IP based voting system because a lack of energy requirement means that there an incentive to support all forks. This is referred to as the Nothing-at-stake problem.

| improve this answer | |
0

Without it the attacker could simply create forks of the blockchain without any problems (free).

This is not correct. Anyone can create forks for free, as you can see from BTG, BCH etc.

PoW ensures that an attacker cannot change the previous spent coins and transactions without overwhelming the actual and previous computational power used to hash the blockchain until the moment (block) he decide to attack the chain on.

| improve this answer | |

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.