We investigate the strategy where miners mine empty blocks to reduce the uncertainty of mining a block which is invalid because it contains a transaction that is already included by another block. In this case, the miner is aware of the new block, already has its hash and/or header, but has not downloaded the rest of the block which contains the transactions.
A lazy miner mines an empty block every
The revenue per second of a lazy miner is
The revenue per second of an honest miner is
In order for a rational miner to choose the honest strategy,
If assume that block time is a linear function of the gas in the block, we get the following formula for block time
which also gives us the following formula for the revenue per second
For the miners to be incentivized to include as many transactions as possible, the revenue must be an increasing function of the gas amount, i.e.
The linearity assumption should not be a problem as long as processing time scales linearly with gas amount, and its effect on the time required to hash the block is negligible.
Research has been done on Ethereum that miners used the lazy strategy from time to time. There, empty blocks are mined in ~13.2s and full blocks in ~14.6s, with a difference of ~1.4s on average. From these, we can calculate the minimum gas price that should be attached to the transactions, so that miners are incentivized to include them. We substitute
This is close to but higher than the average gas price that we are used to in the last couple of years. In fact, gas price was in the 2-10 Gwei range at nominal demand, but historically went up to 40 Gwei and higher when demand surged and blocks became full.
The result is unexpected: the gas price at nominal demand is not enough to incentivize a miner to mine a full block. Let's assume that the gas price stays at 4 Gwei. The difference in revenue between mining an empty block and mining a full block is 3/13.2-(3+4e-9*8e6)/14.6 ≈ 0.0196 ETH/s
. That makes a ~1700 ETH "loss" incurred per day by the totality of Ethereum miners, comparing the case where everyone mines empty blocks with the one where everyone mines full blocks. However, if everyone started mining empty blocks all of a sudden, two things would happen:
For these reasons, the number of miners following the lazy strategy has been limited.
Formulation of a lazy strategy for Highway is similar to that of Proof of Work, but also fundamentally different. In Proof of Work, the difference between durations required to mine an empty block
In Highway, however, it is the feature of the protocol that round lengths are adaptable. Without hashing, the duration between blocks is only devoted to
(1) and (2) are directly proportional to block fullness and size, so by proposing empty blocks, validators could dramatically increase the frequency at which they propose. For example, an empty block on Ethereum is around half a kilobyte, whereas the average block is around 25kB. If Highway had a similar distribution of block sizes, validators could collectively choose to propose an empty block every 2 seconds, as opposed to a full block e.g. every 15 seconds. Such a situation would be very destabilizing for a protocol which had constant block rewards. Thankfully, Highway's reward distribution is designed in a way that mitigates such malicious strategies.
To compare lazy and honest strategies, we introduce a similar toy model:
We consider and compare two versions of the validator set:
Quantities subscripted with "lazy" will correspond to the group from (1) which proposes empty blocks, whereas quantities subscripted with "honest" will correspond to the group from (2) with the same weight, but proposes full blocks. Also, note that
for a rational lazy group [1].
We assume that validators receive rewards proportional to the number of the blocks that they propose, i.e.
The era reward
whereas
Formulating payouts in such a way will give us the ability to find out for which size of a lazy group
We keep in mind that
To simplify our model, we define
We then explore the values
The result is significant: the lazy group would ideally emerge at a size which maximized their payout, i.e.
In addition to their seigniorage payout
Although
For a rational group of validators to choose the honest strategy,
Payouts are similar to the previous case, but this time collected fees
We substitute
In that case, the terms with the gas price cancel out and the condition
Reward distribution in Highway is actually a bit more complex: we assign reward weights to each block, which determine the amount of block reward for a given block. Since the reward weight is proportional to the weight of validators that have announced to participate on that block, lazy validators would receive less rewards than what is used in the toy model, because they would be going faster than honest validators, participating on blocks with low reward weight. ↩︎