The short version: the floor is the honest hashrate below which renting hash to attack this chain pays. At today’s rental prices and today’s coin price, the chain sits at the floor, not above it. A week of rented hash at twice the network pays its rental bill in three of the four cases we ran. A one-day 51 percent attack costs less than a day of the coin’s trading in three of four. Under a 144-block window a four-times week loses money in every case. The coinbase lock moves the floor one to five percent, and changes what the attacker gets: locked coins instead of cash.
An 88-second animated version of this post is here.
The follow-up, The rentable ceiling, asks whether an attacker could rent the hash at all.
Bitcoin Mechanic, on Chris Guida’s October 20 Space: “the less you pay miners, the more the miners you have care about the network … you need a minimum for it to actually work. So someone needs to make some blog posts on this and go, all right, here’s the threshold.” This is the arithmetic. A floor in hashrate, inputs stated, no recommendation.
The table
Difficulty tracks the honest hash. Whatever that hash is, the chain pays 144 blocks a day, 450 XBT. An attacker who rents earns the same coins at any honest hashrate and pays a bill that grows with it. The floor is where the bill equals the take.
The inputs, each with its source. The four cases in the table are the high and low ends of the first two.
- Rent: 0.00004 to 0.00006 BTC per terahash a day. Mining Stacker’s Mining Rig Rentals readings, September 25 to October 19.
- Price: 0.0109 BTC per XBT on October 9 and 0.0056 on October 21, the NeoxEX BTC pair’s closes. In USDC, 897 and 467. Both pairs put a bitcoin near $83,000.
- Today’s honest hash: 42.5 PH/s, from the October 17 retarget.
- The week of mercenary hash: the shorten-the-window post’s. Hash arrives at today’s difficulty, stays seven days, leaves. The clankers ran each week under today’s window, 2,016 blocks with a four-times cap. They ran it again under the 144-block window that post proposed.
| The attack | Low price, high rent | Low price, low rent | High price, high rent | High price, low rent |
|---|---|---|---|---|
| A week at twice the hash, today’s window | 42 | 63 | 82 | 123 |
| A week at four times, today’s window | 30 | 45 | 59 | 88 |
| A week at twice, 144-block window | 23 | 34 | 44 | 66 |
| A week at four times, 144-block window | 12 | 18 | 23 | 35 |
| A one-day 51 percent attack, per 1,000 XBT a reorg could take | 84 | 126 | 165 | 248 |
Floors in PH/s, against today’s 42.5. For a week at twice the hash the chain is below the floor in three cases. In the fourth the floor is 42, a hair under today’s hash. For four times, below in three. Under the 144-block window it is above the floor for four times in every case, and for twice in two. Twice the hash is what the market could supply today. Mining Stacker read 58.66 PH listed for rent on October 19, against a 43 PH network. A listing is capacity, not hash.
The last row has no single floor, because nobody outside an exchange knows how much a double spend could withdraw. A day of trading on NeoxEX has run 500 to 1,670 XBT since October 9. Renting more than half the hash for that day costs 172 to 505 XBT. If a reorg can take more than that, the day pays for itself.
The method
Everything turns on one ratio: a day’s rent for the whole network’s hash, over a day’s block rewards. Eric Budish wrote it down in 2018. The cost of attacking a proof-of-work chain is paid by the day, for as long as the attack lasts. At a ratio of one, renting the network for a day costs what it earns in a day. Below one, renting hash to mine here pays. Mining Stacker’s readings put it near half on October 10 and 0.71 on October 19. At 0.71 a week at twice the hash returns 1.4 times its rent under today’s window. A week at four times breaks even. Under 144 blocks both lose. The table turns those ratios into hashrate through the price and the rent. Rented hash of any size earns the old rate until the retarget. More hash only brings the retarget sooner. A week at twice the hash fills one 2,016-block window and never meets a retarget. The simulator starts each week at four points in the window and runs it twenty times with random block luck. The table reports the start that pays the attacker most.
The lock
The coinbase lock is 45 days today and 180 days rolling under Knots PR #468. It moves the floor two ways. The cost of waiting for the coins is small, about 1 percent at 45 days and 5 at 180. Those are kwsantiago’s figures, on the Space and on the pull request. The other change is not a percent. An attacker’s take is thousands of coins, locked, in a coin whose close halved in twelve days. At today’s hash a four-times week under today’s window pays only if XBT is worth 0.0053 to 0.0079 BTC when it unlocks. That is $437 to $655 at a bitcoin near $83,000. The October 21 close was 467, or 0.0056 BTC. The lock also removes the one-day attacker’s easiest payback. Without it, the attack day’s own 495 XBT of block rewards cover 98 to 288 percent of the rent. That is Budish’s result on this chain’s numbers. With it, they wait out the lock on a chain that has just seen a day-long reorg. The front page carries this week’s maturity rule.
Three things move the floor
The price of XBT in bitcoin. Halve the price and every floor halves; the USDC close and bitcoin’s dollar price both enter through it. The rent per terahash. Halve the rent and every floor doubles. The window. It sets how long rented hash earns the old rate, and it is the one input the chain writes. A lower price moves the floor and the honest hash together. Paying miners less does not by itself move the chain relative to the floor. What it changes is who stays. The arithmetic cannot see that.
The full tables and the code are in the repo. Ask and we will send them. Corrections welcome.
Saved you an hour? Tip the node and the clankers.