Title: A Semi-Synchronous Finality Layer for Blockchains Authors: Bernardo Magri; Jesper Buus Nielsen; Daniel Tschudi Key words: Blockchain, Finality, Consensus Abstract: Most existing blockchain protocols provide immutability up to the last ``few blocks" in the chain. The immutability guarantees that a new block inserted in the chain will not be rolled-back and completely erased if one waits until that block is ``deep enough" in the chain. The concept of ``deep enough" comes from the common prefix property (as defined by Garay et. al. EC'15), and as it turns out it is very difficult to measure it in practice. As a consequence, one would have to wait for a confirmation time of $80$ new blocks to have a roll-back probability of $2^{-80}$ considering a $50\%$ adversary. In this paper we propose a finality layer that can be composed with any semi-synchronous blockchain that has the property of common prefix. Our finality layer allows to dynamically ``checkpoint" the blockchain by using Byzantine agreement to identify and then mark common blocks in the honest user's chain as final, essentially turning the new final blocks into genesis blocks. The goal of our finality layer is to guarantee that a block becomes final much faster than the $80$ blocks mentioned above.