Finality

F

In a blockchain set­ting, final­i­ty is reached when a trans­ac­tion becomes irreversible. 

In Nakamo­to style con­sen­sus, nodes fol­low the “heav­i­est chain” rule. Nodes will switch to the chain with the most accu­mu­lat­ed work, EVEN if that means revert­ing already con­firmed blocks. This process offers prob­a­bilis­tic final­i­ty. After a trans­ac­tion has been includ­ed in a block and a few addi­tion­al blocks were mined on top of that block, it is very unlike­ly but not impos­si­ble that some­body will invest the nec­es­sary amount of work to reor­ga­nize the chain and revert the trans­ac­tion in ques­tion. For that rea­son, ser­vices accept­ing pay­ments on Bit­coin, Ethereum or oth­er Nakamo­to style chains will wait for a num­ber of con­fir­ma­tions (addi­tion­al blocks) before con­sid­er­ing a pay­ment to be final. 

Oth­er con­sen­sus mech­a­nisms offer absolute final­i­ty: the guar­an­tee that under no cir­cum­stances, a trans­ac­tion can be revert­ed once it has been includ­ed in a block. 

Eco­nom­ic final­i­ty is a spe­cial kind of final­i­ty in proof of stake sys­tems. Eco­nom­ic final­i­ty is reached when a rever­sal of a trans­ac­tions can be con­sid­ered extreme­ly unlike­ly because the super­ma­jor­i­ty (usu­al­ly 75%) of sign­ers of a block would face severe eco­nom­ic penal­ties if they would come back on their deci­sion to sign the block in question. 

Additional Details

Fast final­i­ty is a desired attribute of a blockchain archi­tec­ture. Only once a trans­ac­tion is final, sub­se­quent trans­ac­tions should be ini­ti­at­ed. Be it oth­er blockchain trans­ac­tions, or the dis­pens­ing of a cof­fee pur­chased via a cryp­to pay­ment system. 

How­ev­er, prob­a­bilis­tic final­i­ty and absolute final­i­ty come with their respec­tive trade­offs. Sys­tems with prob­a­bilis­tic final­i­ty pri­or­i­tize avail­abil­i­ty. They will con­firm trans­ac­tions in time, but that con­fir­ma­tion is not always 100% guar­an­teed. Sys­tems with absolute final­i­ty pri­or­i­tize con­sis­ten­cy. An absolute final­i­ty chain will stall, should the nodes not be able to reach the nec­es­sary super­ma­jor­i­ty to final­ize the next block. 

In nor­mal oper­a­tion, both mod­els will con­firm trans­ac­tions with­in one block. On prob­a­bilis­tic chains, the user faces the risk of already con­firmed trans­ac­tions being revert­ed. On absolute chains, the user faces the risk of not receiv­ing a quick con­fir­ma­tion, due to a con­sen­sus “out­age”. Depend­ing on the con­crete use case, one or the oth­er trade­off might be eas­i­er to accept. 

In real-life use cas­es, actors often accept prob­a­bilis­tic final­i­ty as part of their every­day busi­ness pro­ceed­ings. A cred­it card pay­ment, for exam­ple, can be revert­ed under cer­tain cir­cum­stances. Many shops will still accept cred­it card pay­ments as instant­ly final and hand out the goods or per­form the ser­vices that their client pur­chased. In case of a revert­ed trans­ac­tion, the shop, the cred­it card com­pa­ny, or a 3rd par­ty respon­si­ble for pay­ment guar­an­tees will try to enforce the pay­ment, reclaim the goods, or book a loss.

Sources

About the author

Chris Lüscher

Cryptocurrency researcher at Mountains and Valleys.

Like the way we think? Subscribe below, follow our crypto strategy on Iconomi, or receive regular updates on Twitter.

Recent Posts

Homepage Cover Image

Kungsleden hiking trail, Sweden. Photo by Marie Sahlén.