  There exist many forms of Blockchain finality conditions, from deterministic
to probabilistic terminations. To favor availability against consistency in the
face of partitions, most blockchains only offer probabilistic eventual
finality: blocks may be revoked after being appended to the blockchain, yet
with decreasing probability as they sink deeper into the chain. Other
blockchains favor consistency by leveraging the immediate finality of
Consensus-a block appended is never revoked-at the cost of additional
synchronization. In this paper, we focus on necessary and sufficient conditions
to implement a blockchain with deterministic eventual finality, which ensures
that selected main chains at different processes share a common increasing
prefix. This is a much weaker form of finality that allows us to provide a
solution in an asynchronous system subject to unlimited number of byzantine
failures. We study stronger forms of eventual finality as well and show that it
is unfortunately impossible to provide a bounded displacement. By bounded
displacement we mean that the (unknown) number of blocks that can be revoked
from the current blockchain is bounded. This problem reduces to consensus or
eventual consensus depending on whether the bound is known or not. We also show
that the classical selection mechanism, such as in Bitcoin, that appends blocks
at the longest chain is not compliant with a solution to eventual finality.
