Skip to main content

Penalties

What Triggers Penalties?

Penalties are triggered when the selected proposer for a slot is from the PoN Relay's registered set of validators, but the Payout Pool doesn't receive the expected payment. This can be due to the proposer being offline, builders griefing the relay, or other factors. The calculation and types of penalties are discussed in detail below.

Types of Penalties

The penalties can be categorized broadly into three types:

  1. Validator Penalties
  2. Building Penalties
  3. Validator Removal

Validator Penalties

Penalties are applied to validators, who are also known as proposers, if they are at fault. The penalties will be collected from the proposers and paid to the builders.

Builder Penalties

Penalties are applied when builders are at fault and are taken from the staked amount that was locked by builders at the time of registration. Penalties occur when the builder commits to a slot but fails to request a block, effectively hindering block proposal since blocks are proposed by builders using the proposer's signature.

Validator Removal

These penalties impact proposers by removing them from the PoN Relay and rendering them ineligible to receive any Ethereum rewards.

Penalty Fee Calculation

Proposer Penalties

For proposer penalties, builders are paid average EIP 1559 rewards of the last 5 proposed slots. Builders earn based on the average Priority Fee (Gas Price) as that is the lost opportunity cost of the builder.

Penalty fee = i=Latest Block  5Latest Block(average Priority Fee for Block i)(Gas Used for Block i)5\frac{\sum_{i=Latest\ Block\ -\ 5}^{Latest\ Block} (average\ Priority\ Fee\ for\ Block\ i)\cdot(Gas\ Used\ for\ Block\ i)}{5}

Builder Penalties

Builder penalties are paid to the Payout Pool from the builder’s collateral. The penalty amount is twice the value builder bid to create s block. 50% goes to the payout pool and 50% goes to the reporter. This disincentivized griefing of the proposers.

Graphic 1

Validator Penalities

Penalty 1

It is possible that the builder and proposer go outside the PoN Relay and send blocks to each other. In this case they are effectively griefing the PoN Relay. For such a block, they don’t include the transaction which would pay the payout pool. The proposer will be punished for accepting blocks outside of PoN Relay.

The payout pool doesn’t receive any payment even after the block is proposed. The penalty occurs because the validator is a registered builder.

Graphic 2

Penalty 2

If the proposer does not respond to a block bid for whatever reason and the block is not proposed, the payout pool will not receive payments for that slot. The proposer will face penalties as the builder and arbitrageurs will incur losses.

The proposer is considered in violation if:

  • The proposer does not request a block from the relay, and thus cannot reply with a signature.
  • The proposer requests the block from the relay but fails to reply with a signature, which in turn prohibits the builder from proposing the block.
  • The proposer responds with their signature but the proposer responds after the threshold time has passed. The threshold for the slot is calculated as:
    • The slot number is N
    • The proposer has to respond within (Genesis Time + (N * 12)) + Threshold)
  • The proposer responds but there is a mismatch in the signature between the builder’s original signature and the recalculated signature on the returned bid.

If the proposer doesn’t respond, the builder can’t propose/broadcast the block to the Ethereum consensus network and hence the proposer is penalized.

Graphic 3

Penalty 3

The proposer requests a block and returns with the signature, expecting to receive the promised payment from the builder. If the block is not proposed, it is the builder's responsibility and they have failed to meet their obligation to pay the reporter. As a result, the builder should face consequences for their breach of promise.

The builder may not propose the block if:

  • It didn’t request the block signature from the relay.
  • It didn’t propose the block even after the relay replied with the block signature.

Penalty 3

Validator Removal

Proposers may face penalties that kick them from the PoN Relay and prohibit them from receiving rewards from Ethereum. The penalties are triggered when:

  1. Effective balance goes below 32 ETH.
  2. The validator is slashed.
  3. The validator completes a withdrawal.

Builder Penalties

Penalty 1

The builder bids for a block and receives the signature. When it is time to send the block to beacon chain, the builder fails to do so, causing a loss to the proposer’s payment via the PBS adaptive payout pool.

The builder is at fault if:

  • It didn't respond to the relay’s request for block contents when the relay sent the signature.
  • It didn’t submit a block to the beacon chain even though the relay gave the signature bid.

Graphic 4

Penalty 2

In the PoN Relay where blocks are not accessible to the relay, the signature is accompanied by a promise to pay the proposer (Payout Pool). If the actual payment received by the proposer is less than the promised amount, the builder will face consequences.

The builder will be penalized twice the amount they promised, with 50% going to the Payout Pool and 50% to the reporter. Penalty enforcement takes place after the slot has been proposed, as the final transaction for that slot must be checked for payment to the Payout Pool.

Graphic 5

ActionsProposerBuilderWho's at Fault?Penalty Amount
  • Block was not proposed
  • There was a request from a builder
The proposer didn’t sign the blockProposer2x Average rewards of last 5 slots paid from Payout Pool
  • Block was not proposed
  • There was a request from a builder
  • The proposer signed the block
The builder didn’t request the block from the relayBuilder2x Amount the builder promised paid from the builder registry
  • Block was proposed
  • There was a request from the builder
  • The payment received was less than promised
The builder didn’t pay what it promisedBuilder2x Amount the builder promised paid from the builder registry
  • Block was proposed
  • There was no request from the builder
  • There was no payment
  • Builder was a PoN relay builder
The proposer requested a block externallyProposer2x Average reward of last 5 slots
  • Block was proposed
  • There was a request from the builder
  • There was no payment
  • Block Coinbase was not a PoN relay builder
The proposer requested a block externallyProposer2x Average reward of last 5 slots