Homework on Mining and Proof of Work - Questions

  1. They have to spend money before they can start mining, therefor they are incentivized to play by the rules, otherwise they will lose money.
  2. If something is changed in a previous block, all the chains between the following blocks will break and have to be remined. This will take a lot of time, so the miner can#t keep up with the network.
  3. When the hashrate goes up, the mining difficulty is increasing. The target for the cryptographic puzzle will be lowered.
  1. proof of work comes with a difficult and expansive task which keeps away miners from cheating the system. it is also securing the network.
  2. remining takes a lot of time and money compared to mining itself.
  3. an approximation mining time is set which also changes over time to ensure the hash rate is high enough and the system is running smoothly
  1. It is important to make sure that miners spend money (on electricity) while mining because they must always keep the network secure. This strategy is part of their being incentivized.

  2. It would be very difficult for someone to go back and change a previously added block because anything the person changes in the block (i.e. a transaction) changes something else within the block (i.e. the hash). Consequently, he would have to re-hash the entire blockchain, which will take many years to re-do.

  3. The network regulates mining difficulty by assigning a specific target number to reach. If the target number is low, the difficulty will be high because most of the numbers from 0 to infinity are higher than the target number. Therefore, the block would very likely be rejected.

  1. To assure they are incentivised to secure the network. The reward is a price for taking the risk of solving a block. Solving blocks requires upfront consumption of energy and for miners engaging in that cost makes sense as the reward will compensate them over and above the cost they incurred
  2. Blocks are chained together by referencing the hashes of the preceding blocks. The information of any block is determined by hashing its information, including the hash of the previous block. Anybody who decides to tamper with the content of a block will change its hash and by doing that change the hash of all following blocks hence invalidating the blockchain as of the hacked block forward. Trying to recompute all these invalidated blocks is theoretically possible but practically undoable.
  3. If the price of BTC increases and consequently attracts more miners (growth in hashing power), the protocol automatically adjusts the difficulty by reducing the target value for solving the puzzle. If the price of BTC drops and miners leave the network, the protocol lowers difficulty by increasing the target value for solving the puzzle.

hello,
1) It is important to ensure that the minors spend money while mining as a way to keep the minors honest and ensure they follow the rules by having a vested interest in the network…
2) Changing one of the previous blocks would require an unrealistic amount of hash power to re-establish the links not only for that block but for all blocks created thereafter.
3) When there are a lot of minors, the network becomes more difficult by lowering a target number(amount of possible hashes} forcing the minors to exert more energy guessing the nonce and hashing.

  1. Miners use electricity for their PoW guessing of the nonce. So they use electricity and spend money for that electricity before they are able to reap the financial rewards for their computational labor (in the form of new coins and transaction fees). Consequently, the money they spend on electricity incentivizes them to do their work honestly because if, for example, they fraudulently change a block and thereby prevent its acceptance by the network of miners, they will fail to reap the financial rewards that would normally enable them to pay for their electricity usage.
  2. To understand why it is so difficult to change a transaction in a block, we need to understand antecedently how blocks are constructed: each block consists of a header and a body of transactions. The transactions form the leaves of a corresponding Merkle tree, and the root hash (or Merkle root) of that tree effectively encodes all of the block’s transactions in a single hash. This single hash, representing all transactions in a block, is placed in the block’s header together with the hash of the previous block’s header, a time stamp, and a nonce. The nonce is a number, the determination of which is made by means of the PoW computational labor (so it is this determination of the nonce that requires the large amounts of electricity referred to above). More precisely, the nonce must be determined—or computationally guessed—in such a way that the hash of the entire block header (including the nonce itself) is smaller than a certain target value that in turn defines the current PoW level of difficulty for the entire bitcoin network. Now suppose that a transaction is changed in a block somewhere down the line in the blockchain. The change of this transaction changes the top-hash in the corresponding Merkle tree and thereby the header because the top-hash, by definition, is contained in the header. So as the header is changed in this way, the hash of the entire header will likely change drastically (because of the inherent discontinuity of the hashing algorithm) and most likely therefore the hash of the header will no longer be less than the target. Consequently, in order for the header to be in line with the bitcoin protocol, the nonce has to be guessed anew in a new PoW computational effort. Furthermore, as the header is changed in this way (in the Merkle root and the nonce) its hash is changed as well and so is, by implication, the header of the succeeding block in the chain because the header of that succeeding block contains that altered hash by definition. So since then the header of this succeeding block is changed in this way there is produced an attendent change in its hash and this latter change in turn necessitates in all likelihood a PoW re-determination of the nonce. In effect therefore, as we follow this argument to its natural conclusion, the entire PoW chain from the block that was fraudulently changed all the way up to the most recently added block must be reworked. In principle, implementing all these changes is possible if the available computing power is sufficiently large, but ultimately, what is needed in order for the overall corruption effort to succeed is a computational power that this greater than 50% of the total mining power of the bitcoin network. And this in turn is so for the following reason: while the dishonest miners are reworking the PoW determinations of the nonces in their corrupted version of the blockchain, the honest miners are working to extend the competing uncorrupted version. So by the time the dishonest miners are done, the uncorrupted chain is longer than the corrupted one and therefore, by definition, it is accepted as the true chain. So now the dishonest miners need to play catch-up and try to mine more blocks than the honest miners until their corrupted chain is longer than the uncorrupted one and therefore finally accepted as the true chain. But according to a certain binomial law of probability, this game of catch-up is likely to succeed only if the dishonest miners control more than 50% of the total mining power. In summary therefore, the obstacles that must be overcome by the fraudsters are enormous.
  3. The network regulates mining difficulty by choosing the value of the target (referred to above) in dependence on the overall mining power (as expressed in the hash rate). As the mining power grows, the difficulty level is increased by decreasing the value of the target. Moreover, the reason why a lowering of the target increases the mining difficulty is that the probability for the hash of the header (including the nonce) to be smaller than the target naturally decreases in direct proportion to the value of the target.
1 Like
  1. Why is it important to make sure that miners spend money (on electricity) while mining?

    It incentivizes minors to play by the rules and ensure that the network is secure by requiring work/electricity/money is done/used/spent to make a block. This means that the network is more secure since is requires a lot of money and work to create/change blocks.

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

    It requires a lot of money and work to change a previous block and they would have to re-mine the blocks that were mined after that block which becomes very expensive and labor intensive.

  3. How does the network regulate mining difficulty?

    The network regulates the nonce target by increasing the target when there are a lot of miners and decreasing it when there are less miners. The miners have to keep guessing at the nonce so they can be in the range under the target value. The lower the target the higher the difficulty.

  1. It makes sure that every miner follows the rules. They need the bitcoin reward (inflation + txn fees) to recoup the cost (plus some profit) and will get it only if they produce blocks with valid transactions only. You basically lose money if you try to cheat the system.

  2. Because of the hashes. The hash of a block consists of all data + the hash of the previous block + nonce. Changing data in a block would change the hash of this block. This means that the link to all following blocks is broken, since the hash of a previous block is always part of a block. One would have to mine all following blocks again with the changed hashes. On top of this one have to mine so fast to catch up and eventually take over the original blockchain, since the next block will always be added to the longest chain.

  3. Few miners = low difficulty, many miners = high difficulty

  1. to provide proof of work POW justifying their reimbrusement in fees
  2. the time, work and money would take an astronomical amount to ā€˜adjust’ all the following links, hashs and blocks
  3. by adjusting the target value so each block is completed every 10 minutes
1 Like
  1. This is to make the miners follow the rules. It costs a lot of electricity to mine, and if you don’t follow the rules, your block won’t be accepted by the network. That means no block reward and no transaction fees, just a huge electricity bill.

  2. All links between the blocks are based on the information in the previous block. If you change a previously added block, the link to the next block will be broken. That means that all links after that block will be broken, all puzzles will be invalid.
    Now you have to solve all the new puzzles to the newest added block, which is more or less impossible.

  3. The more miners there is on the network, the lower the target will be. Only the hashes between 0 and the target will be accepted, everyone else will be rejected.

1 Like

1. Why is it important to make sure that miners spend money (on electricity) while mining?
This is done to ensure that they follow the rules by giving them a lot to lose if they don’t. By paying with electricity up front, there is no way to ā€˜undo’ used electricity so they are essentially forced to comply.

2. Why would it be very difficult for someone to go back change a previously added block?
Each block hash is made up of the previous block’s hash, the transaction data and the nonce. If anything is changed in that block, it would mean that every block’s hash after that would change. This would result in a miner having to remine all the subsequent blocks and catch up (and overtake) which would be practically impossible and would be incredibly expensive.

3. How does the network regulate mining difficulty?
Mining difficulty increases and decreases as the volume of miners increases and decreases; The difficulty increases with more miners in the picture by lowering the target which in turn gives miners less options to guess from. The lower the target, the lower the probability of guessing the nonce.

1 Like
  1. To show proof of work - they have to expend resources.
  2. Because the other links in the chain would have their hashes altered.
  3. To accommodate the change in the number of miners working on the block: more miners need a more difficult target as they will stand a better chance of getting it. The target is made more difficult through a change in the algorithm that sets the nonce.
  1. that is how they are incentivised to solve cryptographic puzzles by the rules, and add transactions to a block which become confirmed

  2. if they did that it would change the hash and then the miner would have to remine the affected blocks and catch up with the ones ahead that are being mined. It would be virtually impossible for one person to do

  3. the more difficult it is to mine the higher the transaction fees, the more electricity is used and paid for by the miner, and the harder it is to guess the nonce which needs to be below a set target

  1. It incentives the miners to follow the rule. Having to spend money before earning it means that miners are incentivized to follow the rules if they want to earn bitcoin.

  2. Each block will only get accepted if it solves a puzzle. That puzzle is exceptionally difficult to solve and uses a lot of money via electricity. If you change a previous block you have to solve a new puzzle not only for that block but for all the blocks after it which is practically impossible.

  3. Network regulates mining difficulty based on lowering or increasing the target which is a random number that the current block needs to be lower than. With more miners mining, the target is lowered which means that each miners hash becomes more difficult to achieve.

1 Like
  1. To encourage them to follow the rules and collect their rewards afterwards.
  2. Changes in previous block would affect all the rest of the blocks and all hashes become invalid. Meaning that all blocks has to be mined again.
  3. More people mining on the network, makes it more difficult to guess the nonce.
  1. Miners spend money before they get paid their reward. If they try to do something wrong the block will never be confirmed and they get no reward.
  2. All blocks are linked and you would have to re mine every block if you changed something in the link.
  3. The network makes it harder to mine the more people that are mining. The target for the nonce is lower.
  1. It is important to make sure that miners spend money on electricity while mining because it is part of the process in order to solve the puzzle that will reward them. The proof of work algorithm is an incentive for them to use electricity and get rewarded for doing so.

  2. It will be very difficult for someone to go back and change a previously added block because the information (hash) on that block was already shared with all the computers in the network. This would mean that every computer with the information would have to change its ledger and it would be practically impossible.

  3. The network regulates mining difficulty by increasing network difficulty when it becomes easier for miners to mine. It lowers difficulty when it becomes harder to mine. A block needs to be mined every 10 minutes so the protocol will decide which transactions to take from the mempool.

incentivise
changes all blocks after that one and then need to re-min and try to catch up to the ever forming chain
Depending on how many minners are trying to guess the nonce

  1. Money for electricity is what the miners are contributing to the process and gives them ā€œskin in the gameā€ so that they are less incentivized to cheat. Also, it makes it very expensive to try to change or delete a transaction from a block.

  2. This would be difficult because each block’s hash depends on hash from the previous block. If a miner changes one transaction in a block, it invalidates the chain moving forward . Then, a new puzzle will be created, and the cheating miner will have to re-mine all of the following blocks in the chain, and catch up with the new blocks that have been mined since then. This is extremely difficult if not impossible as it would take too much time and resources just to change one transaction. You would need 51% of computing power, and therefore would be incentivized just to mine Bitcoin rather than changing transactions.

  3. The hash for each new block (previous block hash + data + nonce) must be lower than the target difficulty set by the network. The network can adjust this target down, making it more difficult to mine or adjust the target up, making it easier to mine.

1 if money spent is incentive for completing quality work
2 all block thereafter would also have to be changed making it nearly computationally Impossible
3 its tapered up or down to mine a block every ten minutes