1 of 20

Time is Money�Strategic Timing Games in PoS

1

Barnabé Monnot

Robust Incentives Group (RIG), Ethereum Foundation

CryptoEconDay Paris, 2023

2 of 20

Short intro

Research scientist at the Robust Incentives Group,�an Ethereum Foundation research team for mechanism design

Joined EF in 2020, since then work on:

  • EIP-1559
  • Proof-of-Stake consensus
  • MEV / Proposer-Builder Separation
  • Collaborations with grantees, events etc.

2

3 of 20

Outline

  1. What are timing games? Where do they appear?
  2. A game-theoretic model of timing games.
  3. Empirical measurements from MEV-Boost.

3

4 of 20

What are timing games?

4

5 of 20

PoS Ethereum 101

Deposit 32 ETH to the staking contract,� get activated as a validator (today, ~675,000 validators)

Once activated, expected to perform some duties:

  • Block proposer: 1 validator sampled every 12 seconds (slot)
  • Attester: All validators do it once every 6.4 mins (epoch)

5

6 of 20

Anatomy of a slot

  • Proposer expected to release block at t=0s
  • Attesters vote as soon as they see the block or at t=4s (whichever is earliest)

6

7 of 20

The value of time

Proposer fill their blocks with incoming transactions� => The longer they wait, the more value they can pack

7

8 of 20

Slippery slope

Proposers may want to be as late as possible…� But then would attesters also be late?

Attesters care about two things:

  • Correctness: They want to vote on the correct head
  • Freshness: They want to release their vote before the next proposer

Late => More info, more correct, but risk of missing the slot…

8

9 of 20

Game-theoretic model of timing games

9

10 of 20

Slippery slope model

We were sort of stumped, couldn’t get a handle on the model.

Would there just be an unstoppable “fuite en avant?”

10

11 of 20

First approach: Dynamic model

  • Player sequences: Proposers 1:N, attester committees 1:N
  • Proposer chooses when to release
  • Attesters choose when to release, vote for the block of their slot, or vote “empty” (no block-tree)
  • No latency (wlog?)
  • Strategies are dynamic: Function mapping time and history to some action
    • Hard to reason about + measurability problems…

11

12 of 20

Second approach: Static model

  • Player sequences: Proposers 1:N, Attester committees 1:N
  • Proposer chooses when to release
  • Attesters choose when to release, vote for the block of their slot, or vote “empty” (no block-tree)
  • Player-specific latency from Attesters to Proposer
  • Strategies are static: Players choose their schedule of actions at the start of the game
    • “Game time” ≠ “Clock time”

12

13 of 20

Equilibrium in the static model

In the static model, we find an equilibrium� (in fact, many, but shifted by a constant amount of time)

High-level takeaways of equilibrium analysis:

  • Attester committees “force” timely release of the Proposer.
  • Proposer will still release at the last possible moment.
  • Next Proposer would receive the rewards of a missing Proposer.

13

14 of 20

Empirical measurements from MEV-Boost

14

15 of 20

Empirical questions

  • Are timing games being played now?
  • What is the incentive for proposers to play them?

We can answer these questions partially with data from the builder market!

Dataset: ~150,000 slots (~1 month)� ~150,000,000 bids (~800 bids/slot)

15

16 of 20

Proposer-Builder Separation

Today, many Proposers delegate block construction to specialised entities known as Builders.

16

17 of 20

Are timing games played?

Seems like not…

  • receivedAt�Relay receives bid
  • eligibleAt�Relay validates bid
  • signedAt�Relay receives signed bid from Proposer

17

18 of 20

Is this unique to Ethereum?

Probably not… We don’t assume much about the structure of Ethereum in the game.

In Proof-of-Work, could always get your slot “stolen” by another Proposer who solved the puzzle� In PoS, you don’t have this exogenous randomness…

Generally, review consensus algorithms in the light of incentives and rational participant model!

18

19 of 20

Economists!�There is so much data!

20 of 20

Thank you!

https://tinyurl.com/ethrig

Get in touch! barnabe@ethereum.org

20