6

At some point in the future miners will depend more on the Tx fee than per-block payout.

Right now people turn on and off their equipment based on local trends such as price of electricity, etc. On the whole I don't think these local decisions affect mining as a whole. However, if a Global trend is identified and people turn off and turn off the rigs accordingly then that will weaken the network at certain times.

Suppose the most profitable Tx fees occur in a certain time of day, and people will turn on their mining rigs, and they shut it down for less efficient hours.

I think that if done to a significant scale, "peak Tx mining" can cause issues in security and network security.

Question

If the purpose of difficulty is to make mining new blocks more consistent over time, is it equally effective in making Tx-based payouts fair with short intervals?

More detail

Suppose significant portion of the mining ecosystem determines that the most valuable transactions are mined between 4pm and 5pm EST where the most profit can be made. Conversely it's not profitable at all to mine at 2am-5am EST, so shut the machine down and save on electricity.

This may result in several things

  • Difficulty for peak hashrate differs greatly from difficulty for non-peak hashrate (within a 24 hour period)
  • Certain times of day where the network is more likely to be overtaken by hostile compute power
  • Unfair /disproportionate distribution of fees among miners
  • Many more blocks are created at peak times due to the increased available hashpower

What safety nets are there to protect against this?

For what it's worth, the BitMinter client already has the ability to schedule the usage of mining resources. The intention is for minimizing local electricity cost, I don't think that would have a negative impact since this is a global mining network and electricity price changes occur every hour and should even itself out. Conversely if it is used to mine according to trends in the whole Bitcoin network... I think that could lead to negative consequences.

5
  • The purpose of difficulty is to make mining new blocks more fair over time? News to me. Nov 19, 2012 at 20:22
  • 3
    You are correct that the network is only as strong as it exists at its weakest point though. Nov 19, 2012 at 20:26
  • @StephenGornick .. Perhaps I should replace "fair" with consistent rate? Nov 19, 2012 at 20:26
  • Correct. The difficulty adjusts periodically to cause blocks to be generated at the target rate (once every 10 minutes). Nov 19, 2012 at 20:28
  • @StephenGornick - I edited the Q in response to your critique. Also I suppose the answer to this question is "the granularity is 10 minutes" and Pool-hopping safeguards protect against the threats that are mentioned above? Nov 19, 2012 at 20:34

3 Answers 3

3

Interesting thought.

Years from now we may get to a point where transaction fees are the majority of mining income and profits are so marginalized that electricity expense is a major factor. What makes sense for a miner may be to have a low-power computer with ASICs sitting idle and waiting until there are some transactions with big juicy fees, then actually start mining. Once someone mined a block with those transactions the fees are no longer up for grabs, so your equipment goes dormant again to conserve electricity.

So far not a big issue I think, because the busy and slow periods are hard to predict. The problem is if we have certain times of day when a large portion of bitcoin users are asleep, resulting in very little value available from transaction fees. Or if you could artificially create a slow period by somehow hindering the propagation of transactions.

If you know beforehand that 50% of the hashpower will switch off for a certain time period then you don't need the infamous 51% hashpower majority to pull off a double-spend - the equivalent would now be 26% of global hashpower.

So yes, if a large portion of the hashpower switches off systematically at the same time, I think that could become a weakness. But I don't see it happening until we get to a point where most, if not all, of the income from mining comes from transaction fees.

1
  • Thank you for clearly articulating the issue I was envisioning. Nov 20, 2012 at 20:54
2

An interesting question, but I don't think block difficulty is aimed to solve this problem. However, I anticipate that the free market would solve the question as posed.

In short, if we have an off-peak hour that provides a lower expectation of BTC per hour in transaction fees, then we will see the miners with higher costs per hour in operation drop out. In an ideal economic world, equilibrium will be reached when the value of the block's transactions fees equals the sum of the highest cost per hash miner still mining multiplied the remaining hashing power. (In short, equilibrium will be reached when enough miners drop out that the remaining miners can make money. In the real world, some miners may not be able to react quickly enough to decide whether to hash a block or not or you might have some hobbyists that hash regardless of whether it is profitable, but it should be close enough to reach an equilibrium.)

There are two interesting parts to this the question in my mind.

The first comes from the fact that the question highlights the fact that the rewards from blocks will not only become more reliant on transaction fees over time, but they will become increasingly variable. It is an interesting and reasonable hypothesis that will we will see "opportunistic mining" at some point, i.e. rigs that will elect whether or not to mine a particular block based on the transaction fee total for that block.

The second interesting part arises if we assume that there may be a correlation between the size of a miner's mining capacity and the efficiency of their mining operation. In the future, the largest miners may well be large ASIC miners that have (because of the size of their operation) intentionally placed their rigs in low electricity cost areas. Meanwhile the small miners might be "amateur" miners that are GPU mining with spare equipment or with old gear and therefore high relative operating costs.

If so, this "opportunistic mining" might exacerbate the 51% problem, since the number of miners mining would not only decrease during the off peak hours, but the hashing power would likely remain in the hands of the largest players. Potentially allowing for collusion if the number of players became small enough.

Nonetheless, I don't think it fundamentally changes the equation for mining. In fact, I expect that the the rise of ASIC based mining will push more of the costs of mining into fixed costs. Which would encourage price equilibrium at well above operating costs, even during off peak hours.

1

With FPGAs and even more so with ASICs, the cost of electricity is just a fraction of the costs of mining.

So while GPU miners had an incentive to operate during times of the day when it was the most profitable, and power down during other times of the day, the only approach with FPGAs and ASICs is to run them 24x7.

This may change in a year or three where the cost of electricity becomes a major factor in mining once again but hopefully by then the transaction fees are a larger part of mining revenues. Those act as a self-correcting mechanism. If capacity drops to so that only three blocks are mined per hour, the block reward subsidy (25 BTC per blocks, starting at block 210,000) is the same, but the fee revenues will be higher on a per-block basis, thus giving incentive to keep mining.

1
  • My intention in this question is to compare the variability of profitability in relation to Tx fees. It was done in the past with GPUs & electric as you said, but I'm trying to adapt that thought to a different threat model: Namely powering on and off in accordance to Tx profitability. Probably won't be an issue for several years to come, but wanted to open the door on discussion. Nov 19, 2012 at 20:59

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.