14

Vitalik talks about block finalisation here, and Vlad also talks about it here.

What is a finalised block? How long does it take to finalise a block? What are the security guarantees of a finalised block?

2 Answers 2

11

"Finalization" is defined cryptoeconomically; the degree of finality that a block has can essentially be quantified by "how much ETH will other validators lose if this block turns out not to be part of the main chain?" A fully "finalized" block is one where >2/3 of Casper validators will lose their entire deposits if the block ends up being not in the main chain (estimate this at being ~2-20 million ETH depending on how many people stake).

4
  • Just to be clear, 2/3 is a somewhat arbitrary threshold, and a finalised block can be still reversed? Why not 3/4, or 51%?
    – Randomblue
    Commented Feb 14, 2016 at 23:09
  • 1
    2/3 is standard for byzantine-fault-tolerance purposes. If you require 3/4, then 26% can collude to prevent finality, and if you require 51% then with 2% byzantine actors plus a network split you can create a scenario where one half of the network finalizes A and the other half finalizes B. A 2/3 threshold ensures that both of these attacks require 1/3 byzantine to pull off, which has been mathematically proven to be as safe as you can get. Commented Feb 14, 2016 at 23:28
  • "has been mathematically proven to be as safe as you can get" -> Source?
    – Randomblue
    Commented Feb 14, 2016 at 23:29
  • 3
    pmg.csail.mit.edu/papers/osdi99.pdf Second paragraph in the introduction. Commented Feb 15, 2016 at 0:31
5

In addition to economic finality - i.e. the economic assurance of an invariant, there is also subjective finality: a client's unwillingness to change their mind.

Once a client sees a finality threshold of the security deposits behind some invariant, they can decide never to accept any claim to the contrary. There is no amount of expense an adversary can incur to revert a client's state behind their last finalized state. On the other hand, with sufficient expense an adversary can create two blocks that meet the economic finality threshold.

w.r.t. the fault tolerance numbers. 1/3 is the highest fault tolerance possible for consistency-favouring, asynchronous consensus protocols. This number very doesn't apply to Casper because it favours availability. Moreoever, not participating in order to prevent finality is expensive, something that is not ever captured in traditional BFT analysis. I am quite comfortable with a finality threshold of 80-90%.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.