Homework on Mining and Proof of Work - Questions

Homework on Mining and Proof of Work - Questions

  1. Why is it important to make sure that miners spend money (on electricity) while mining?

Because it motivates them to make money and the only way to make money it to play by rules.

  1. Why would it be very difficult for someone to go back change a previously added block?

Because it will collapse the network through changing the hashes of the every block that subsequenting the changed block. To be able to overwrite the network someone will need to have 51% hashrate to change and catch up the original network, in the end overtake it and create longer chain to convience the network about the truth of the change. It would cost a lot of money so probably it would be more porfitable for that person to become miner in the original network and earn money by consensus.

  1. How does the network regulate mining difficulty?

By adjusting the mining target, the more miners are in the network, the lower this number is, the more difficult it is to guess the nonce.

1- to make sure that the miner will follow the network rules and don’t break them
2- because changing a previous block will break the connection to all next blocks which will be required to remind
3- by setting the target high/low

  1. That ensure the miners have a vested interest to recoup their losses by by mining for the incentives (Block rewards & Transaction fees)
  2. Any small change will result in rehashing the block that contains the previous link+nonce+transactions followed by solving the puzzle to reconnect the link between the blocks, the probability and the amount of processing power needed to catch-up to the continued mining by the network is practically impossible.
  3. By reducing the nonce number to reduce the probability to quess the nonce number needed to solve the puzzle to establish the link between the blocks.

Appreciated your hard work sharing with the community. May I know which software do you use to do your homework? Love it!

  1. This way they are incentivised to be honest. In order to get their blockrewards they have to play according the rules.
  2. If you change something in a previous block all the links for the blocks that come after it are broken and this mean that they all need to be mined again.
  3. The hash of the nonce and the transaction-list and the link to the previous block has to be lower than the target set.The lower the target is the more difficult it is to find a good hash.The target is adjusted to the need of the network

1 To be hard, not viable to mine a new blockchain
2 Because he should also changes all the next blocks
3 By changing the target range where to find the nonce

  1. It is important to make sure that miners spend money (on electricity) while mining because paying up front for electricity and hardware means you are incentivized to play by the rules to make money by gaining a block reward and transaction fees.

  2. It be very difficult for someone to go back change a previously added block because that would change the hashes of all of the blocks after it, making them invalid. In order to change a transaction, you’d need to have over half of the network’s hash rate and mine in secret to keep the difficulty low just so you can catch up and take over the longest chain.

  3. The network regulates mining difficulty to keep the block interval at ten minutes by lowering the mining target (making it harder to find possible solutions) when there is increased competition and hash rate between miners, and by raising the mining target (making it easier to find possible solutions because there are simply more available solutions to the puzzle) when there is decreased competition and hash rate between miners.

  1. Promotes incentive
  2. Proof of work.
  3. The difficulty adjust every 2016 blocks. If block are mined quicker than 10 minutes, difficulty increases. if the blocks are mined slower difficulty decreases.
  1. To incentivize them to be honest and play by the rules. Otherwise they lose too much money on electricity costs.

  2. When a piece of data is changed in a particular block the link is broken to the next block. Then this will break the link in the next block and continues to the most recent block in the chain. It would take thousands of years to mine each of these links to re-establish this full chain. In the meantime, other miners are continuing to expand their blocks. This is important because the system favors miners who have longer blocks or greater POWs.

  3. The difficulty level of a particular hash rises with the number of miners trying to win that hash. The difficulty level is altered by using targets. A lower target means greater difficulty. The winning miner needs to find a hash number below this target. It’s a matter of guessing continuously the nonce number until a number is produced below this targer.

1 because it proof of work.
2 To expensive to do it
3 every it regulates it self by adjusting conformation time by 10 minutes.

  1. Spending money on electricity incentivises miners to not try to change previous blocks and to play by the rules so as to recoup their costs via block rewards and transaction fees.

  2. Changing a previously added block will change the hash for all subsequent blocks meaning that they would need to re-mine those blocks as well as catch up to the new blocks that had been added while they were doing so.

  3. Difficulty increases when there is more hash power being used to mine. The increase in difficulty is achieved by reducing the target Nonce that the miners must guess below in order to create a new block.

  1. because attempting to either rewrite the blockchain or take control of 51% of the network must be so expensive that it’s more convenient to be part of the network and gain mining profits than it would be to rewrite the blockchain or take control of the network to rewrite it
  2. because they’d have to recalculate the hash of that block and after that the hash of the successive block, and all the others following, all while the network miners are creating new blocks and finding new hashes
  3. the difficulty adjusts based on hashing power. the higher the hashing power, the higher the difficulty becomes, which is increased by lowering the nonce and the acceptable guessed hashes
  1. It is important that miners spend money while mining so that they are incentivized by the coin reward to continue building the bitcoin blockchain.

  2. Because it would change all of the blocks after it, and every block after the changed block would need to be changed as well, making the amount of effort not worth the reward.

  3. The network regulates mining difficulty according to the amount of people mining.

  1. They earn money by solving cryptographic puzzle and for transaction fees.
  2. If you change it and it is not true, than it will get rejected by the network, because every time you going to get different hash output, which will not match with rest of the network.
  3. So if there is a lot of miners in the network the targets will be set lower, lower targets means higher difficulty.

Why is it important to make sure that miners spend money (on electricity) while mining?
Because electricity costs money, and thereby creates an incentive for the miner to not waste money trying to cheat the system.
Why would it be very difficult for someone to go back change a previously added block?
Because then all subsequent blocks would have to have their cryptographic puzzles solved again based on the hash of the changed block, which would take a long time and be very expensive. In practice, it could not keep up with the longer chain and would thus be discarded as invalid by the bitcoin protocol.
How does the network regulate mining difficulty?
Difficulty is dynamic based on the block solution time; target is 10 minutes per block.

1-Why is it important to make sure that miners spend money (on electricity) while mining?

Because they are respecting the rules of the network, in addition to giving security and complying with the consensus protocol.

2-Why would it be very difficult for someone to change a previously added block again?

Because when making the minimum change in the block this changes the hash and therefore would need to mine it again to add it to the chain.

3-How does the network regulate the mining difficulty?

With the amount of computers that are mining at the same time, the higher the hashrate, the greater the difficulty.

  1. To incentivize them to not cheat the system, because if they try to attack the chain it can cost them a lot of electricity/money
  2. Because the blocks are linked and hashed together, a change in given block would force the attacked to re-mine all the following blocks in the chain, which can be almost impossible
  3. By adjusting the mining target for the nonce. The more hashing power there is the lower the target becomes which makes finding the nonce harder

1 - Why is it important to make sure that miners spend money (on electricity) while mining?
Since they are already spending a lot of money on electricity, they are incentivized to get the block rewards and tx fees, reversing the spent into profit. Keep the miners mining keeps the network safe and without a central entity.

2 - Why would it be very difficult for someone to go back change a previously added block?
If you change a previous block, the following blocks will be changed, since their hash depends on the previous hash, creating new cryptographic puzzles to solve for every link between blocks. This would take several years to solve since the hash rate is very high and other miners would keep mining new blocks, making it very difficult to keep up with them.

3 - How does the network regulate mining difficulty?
In order to mine, the miners have to hash a nonce, the previous hash and the txs. The result must be lower than a target. The more people that are trying to mine, the lower the target, which makes it very difficult to guess the nonce to obtain an even lower hash.

1 Like
  1. So that they make losses by spending electricity and are incentivized to recupe these losses by playing by the rules and earn tx fees and block rewards.
  2. Because he would have to remine that block and every folowing blok which would take immense time. Meanwhile the others miners will have created a longer chain making the ‘changed’ shorter chain invalid.
  3. When there are more miners (more hashing power) the network lowers the difficulty target. In case of less miners the network increases the difficulty target.
  1. In order to generate an income, a miner has to be the fastest to solve the cryptographic puzzle for a certain number of blocks. The high electricity cost of mining means that, in order to make a profit, more blocks have to be mined than if costs were lower. This creates an incentive to mine by the “rules” and not act dishonestly, because the proof-of-work algorithm has been designed in such a way that you are likely to mine more blocks (and therefore receive greater rewards) if you do so fairly, according to the “rules”. In fact, miners are likely to make a loss if they break the “rules”, and this is a powerful disincentive to do so.

  2. Because the confirmed hash value of each block is based on data which also includes the hash value of the previous block, by changing data stored in a previously added block you would not only invalidate that block, but also all subsequent blocks in your version of the blockchain. Therefore, your version would now be shorter than the one held by all of the other nodes. In order to have your changed block accepted by the network you would have to re-mine, not only all the blocks which your change originally invalidated, but also all of the additional blocks mined by the rest of the network while you were busy re-mining the original ones; not to mention the fact that even re-mining one block would take an unfeasible amount of time anyway, due to only your node doing the re-mining instead of the whole network! So in reality, it would only be possible, if you managed to acquire control of at least 51% of the network’s total computing power (hash rate), and launch a 51% attack.

  3. In order to maintain an average mining speed of 1 new block every 10 mins, mining difficulty needs to increase when the hash rate (total network hashing power) increases, and vice versa. To enable the difficulty level to be adjusted, the proof-of-work algorithm includes a difficulty target. In order to solve the puzzle, miners have to keep randomly generating a number, called the nonce, such that when the nonce is input into the algorithm (together with all the other input data) the output hash value is less than, or at most equal to, this difficulty target, which acts like a threshold. The lower this threshold (difficulty target) is set, the lower the probability (and therefore the higher the difficulty) of randomly generating a nonce that meets this condition. The difficulty target itself is adjusted by increasing or decreasing the number of zeros it has at the the beginning.