[Confirmation Rule for Ethereum](https://www.adiasg.me/confirmation-rule-for-ethereum/) Paper posted here: [Confirmation Rule for Ethereum PoS - Consensus - Ethereum Research](https://ethresear.ch/t/confirmation-rule-for-ethereum-pos/15454) Fast confirmation rule for Ethereum PoS - sub-1 min latency Ethereum's PoS/[[Casper]] provides a strong finalization guarantee with average latency 16 mins No fast confirmation rule Post outlines a confirmation rule that can give fast block confirmations with weaker safety guarantees than finality Ideally would confirm immediately after slot Realistically, confirm in under a minute Computes a q value and a min safe q value for each block If q values of all blocks in a chain is above their min safe q values, then the head block of that chain is confirmed Difference between the two values is a measure of the max adversarial tolerance the block achieves **Proposed change:** If j is the highest justified checkpoint block, and the current epoch is e, then allow a branch with leaf block b if the latest justified checkpoint in the post-state of b is either j or from an epoch $\geq$ e - 2 Not a substitute for finality, which provides the guarantee that the block will always be in the canonical chain This rule is for users who believe network synchrony will hold for the near future ![[Pasted image 20230921131435.png]] **Assumptions:** Adversary controls less than 1/3, adversarial fraction $\beta$ <= 1/3 Synchronous network, votes received by all validators by end of slot # LMD Safety ![[Pasted image 20230921131945.png]] where $q^{n_{b}}= \frac{support for block b}{total weight}$ b' is an ancestor of b Under certain conditions, a block remains in the chain *as long as it has not been filtered out of the block tree* # Combining LMD Safety with FFG Safety We'll identify conditions that would ensure the block doesn't get filtered out of the block tree ![[Pasted image 20230921132151.png]] **isConfirmed(b,n) if:** - the latest justified checkpoint in the post-state of b is from epoch e-1 - isLMDConfirmed(b,n) - S + (1- $\beta$ )$W_{f} \geq \frac{2}{3}W_{t}$ - The amount of FFG votes from e in support of c plus the honest voters who havent voted must be greater than or equal to 2/3 the weight of all validators isConfirmed(b,n) implies that b will remain in the canonical chain Proof strategy is to prove by indufction that every honest validator sees b as canonical in every future slot At the start of every epoch, b is not filtered out and will gather honest votes At the end, there is no justified checkpoint from the epoch that conflicts with b We're guaranteed that b won't be filtered out We're basically saying we need the latest justified checkpoint to be one epoch back, the support for b's ancestor is greater than 1/2 + 1/3 = 5/6, and FFG votes plus honest voters who have yet to vote is greater than or equal to 2/3 weight of all validators By getting that big support group on b', we know that the majority will always support that chain and thus b should be considered LMDConfirmed Then, if we know that there isn't a competing epoch or checkpoint, we're good