Homework on Mining and Proof of Work - Questions

  1. This is to make sure sure to be honest and stick to the rules as to not generate a loss due to invalidated/rejected blocks.

  2. Because then it would invalidate all the blocks and would need to be re-mined and would be very time consuming.

  3. It takes all the miners on the network into consideration (hashrate) and the mathematical equation (nonce) is based on a random number that would have to be guessed based on a target.

1 Like

Miners are incentifised by money to follow the rules they spend money on electricity to solve the puzzle of the blockchain. If they don’t follow the rules they lose money. It costs a lot of money to mine.

If you change any of the code it changes the hash, which changes the block and all other blocks. It would be too costly and time inefficient to do so.

By changing the difficulty of finding the nonce from high too low.

1 Like
  1. To incentivize miners to earn through mining.
  2. Because it would need to rebuild the chain, (re)mining the broken links and blocks, as well as the newly created ones.
  3. By regularly checking the amount of miners, the difficult is increased proportionally by lowering the target.
1 Like
  1. Why is it important to make sure that miners spend money (on electricity) while mining?
    To have an incentive for them to follow the rules
  2. Why would it be very difficult for someone to go back change a previously added block?
    Becuase all blocks are dependent on the block before by using the previous blocks hashnumber in the block they are mining. If something changes in the previously added block, the rest of the blocks will be invalid.
    How does the network regulate mining difficulty?
    The more miners there is, the difficulty to guess the nonce is increased by lowering the target.
1 Like

1- To get the incentive, to get the block reward & transaction fees that covers that loss of money and also make profit.

2- Then they have to fix all of the links following that one. To fix them all, it is needed to guess nonce again, since the hash of the block is changed and it affects the following hashes as well, and fix the following links again and again. This process take thousands of years.

3- Mining difficulty depends on the target level, as the target bar is low the probability to guess a nonce for a hash less than target is lower, so it gets difficult. So the more miners, the lower target level.

1 Like

It is important to make sure miners spend money on electricity in order to secure the network, and have enough computing power to support transaction activity. Having miners spend money on electricity also keeps them incentivized to mine and earn financial rewards.

It would be VERY difficult to change a previously added block, because ANY change to the data would change the corresponding hash of that block, which would break all subsequent links (because hashs use the previous blocks data)

The network regulates mining difficulty through hash targets - the lower the target, the lower the chances of any given hash to be under that target, therefore increasing the relative difficulty through probability.

1 Like
  1. To make sure they are incentivized for working according to the protocol.
  2. Because they would need to then re mine all the blocks after that and at the same time become the longest chain on the network.
  3. The more the hashrate the more difficult it is to guess the nonce. Basically reducing the final accepted number as a result hash.
1 Like
  1. To incentivize them to play by the rules so that there blocks are accepted and they get paid.

  2. If you go back and try to change a previous block you will break the link and change all hashes for all blocks from there forward.

  3. The more miners there are the higher the difficulty by lowering the target/ Nonce.

2 Likes

1: To secure network, and make incentive not to make malicious blocks
2. Because of the hash functions on current block is based on previous block.
3. It reduce the range of available numbers that will accept the next block as more miners join the network.

2 Likes

target and nounce are two different things. Nounce is a random number that is guessed by the miners to solve the crypto puzzle(target). So your answer should be “The more miners there are the higher the difficulty by lowering the target”.

2 Likes

Why is it important to make sure that miners spend money (on electricity) while mining?
Because afterwards, they want to earn the spent money back and take profits. It motivates them to mine even more. The whole “spend, mine and earn” concept keeps the network secured.

Why would it be very difficult for someone to go back change a previously added block?
Because he/she would need to hash the changed block and every block after. Additionally, the miner will need to catch up with the newly created blocks made by other miners. All on its own, making the whole process very difficult and time consuming. So it is practically impossible.

How does the network regulate mining difficulty?
When the number of miners increases the difficulty increases as well, by making the target hash lower.

2 Likes
  1. To make miners spend money on electricity so they are invested in the result. So they want to generate a profit and their operation has costs to recover
  2. Because future blocks will be incorrect and they would not be able to recover the following blocks quickly enough to repair the algorithm so the future blocks would be consistent. So it is more cost effective to just go foward and mine future blocks than go backwards and disrupt previous blocks
  3. Using a target that becomes lower (or more difficult) if there are more miners on the network. This governs the mining rate in terms of time taken to mine a block.
2 Likes
  1. The ongoing functionality and security of the bitcoin network is based primarily on incentives. It is important that miners base their activities on being rewarded for securing the network. In order to uphold these incentives, they are given a reward for solving the cryptographic puzzle and if they are a faithful actor and they solve the puzzle, their block will be distributed to and accepted the nodes and added to the public blockchain. The winning miner will get their reward. If they solve the puzzle and have some malicious data (transaction) that is in contradiction of what the nodes believe to be true, the block will not be accepted by the nodes and the block will not be added to the blockchain. The miner will not get their reward and they will have spent a great deal of electricity solving the puzzle for no reward. So it is important for miners to spend lots of electricity to maintain that they will act in good faith, or they will not receive any rewards and they will spend a great deal on electricity, making it a net loss for them to act maliciously.

  2. Given that the hash of a current block is partially based on the hash of the previous block, changing the data of a previous block would change the hash of that block, and therefore the hash of the proceeding block. So if a miner were to change the data of a previous block, they would need to re-mine all blocks in between and catch up to the current block for there to be consensus across the network. As nodes will only accept the longest blockchain to be the true blockchain, a bad actor would be required to hold at least 51% of the hashing power of the entire network to attempt to catch up to the current block for there to be consensus that their version of the blockchain is the longest, and therefore the true version of the blockchain across all nodes.

  3. The network maintains mining difficulty by moving the target number of the hash to be lower when the network hash rate is high, and higher when the hash rate is low. This means that when the target number is low, it is more difficult for miners to achieve below the it, and when it is high, it is easier.

2 Likes
  1. So that miners are in a way forced to recoup the money they have spent already.

  2. Once a previous block has been altered the link between all proceeding blocks have been broken so therefore each new block must be re-mined, by the time that has happened an exponential amount of new blocks have already been created. You will be playing catch-up for the rest of your life unless you control 51% of the total hashrate.

  3. Difficulty is adjusted depending on the total hashrate. The higher the hashrate the lower the “target” needed to successfully write a new block. Reversely the lower the difficulty the higher the target needed. Lower targets require more computing power to solve.

1 Like

1.) It is important because it holds the miners accountable and creates incentive to get the correct answer.

2.) If a previously added block is changed then all blocks that come after it would not be correct.

3.) As more people start mining the difficulty increases, making the network more secure.

1 Like
  1. Why is it important to make sure that miners spend money (on electricity) while mining?
    Its important for them to spend money to have incentives through Proof of work and make sure that everything is honest and by the rules.
  2. Why would it be very difficult for someone to go back change a previously added block?
    If there are changes to the the block, all blocks will be canceled, links broken because puzzle was already solved when it was first appended.
  3. How does the network regulate mining difficulty?
    When there are many miners the difficulty to guess the NONCE is higher, once the hash of the block is lower then a specific target is set.
1 Like
  1. By spending, the miners have incentives to follow the rules since they are invested in the mining process.
  2. If anything changed in the previous block : it would break the link to the next and the following blocks.
  3. there are more miners: the difficulty to guess the nonce is increased. because lowering the target.
1 Like
  1. Why is it important to make sure that miners spend money (on electricity) while mining?
    –> to keep them motivated to follow the rules. Without financial commitment they would not be bound to play by the rules.

  2. Why would it be very difficult for someone to go back change a previously added block?
    –> because mining the connection + all transactions takes huge amounts of time and you are competing against the entire network that’s getting ahead of you while you are trying to find nonce’s they already found.

  3. How does the network regulate mining difficulty?
    hash + tx’s + previous hash get hashed with a nonce, the nonced hash needs to be lower than a given target

1 Like
  1. Why is it important to make sure that miners spend money (on electricity) while mining?
    The high electricity costs ensure that the most advanced and robust miners are upholding mempool validation according to the protocol.

  2. Why would it be very difficult for someone to go back change a previously added block?
    The most recent block contains the transaction data of all previous blocks on the chain. Changing the data on a previously added block would nullify all links after the changed block, so the party attempting to change the data would have to re-hash all the blocks after the point of change, which would take thousands of years and is virtually impossible.

  3. How does the network regulate mining difficulty?
    The more miners competing to solve the correct nonce, the lower the target nonce becomes, and the probability that a miner will hit the target becomes less, increasing the hash difficulty.

2 Likes

to make sure that they will loose a lot of money when they don’t follow the rules

When they change a previous block, all the connected blocks there after will be invalid

by using a lower target
When a lower target number has been put forward, all the above will be blocked. Only the nonces lower than the target will be accepted

1 Like