Co-founder of Telegram messenger Nikolay Durov published article, which speaks about the consensus mechanism of the Telegram Open Network called Catchain. The solution is a Proz or Stake (PoS) Byzantine Fault Tolerant (BFT) algorithm, similar to that used in NEO or Cosmos.
Catchain works until one third of the nodes becomes harmful, which corresponds to the theoretical limit set for BFT solutions. The system focuses on checking each block while it is being created. Each new block is created using a block generation round, during which the validators have a limited time for approval. If no agreement has been made, this block is skipped.
During the block voting process, each validator plays a clear role – some make blocks, others offer a vote to vote and the rest of the nodes vote for the proposal. Roles change with every new round, which must guarantee the fairness of the procedure.
Telegram has a limit of no more than 100 validators for the main chain and 10-30 for each shard chain. According to tests performed in 2018, a block can be generated every five seconds, each time the complete approval procedure is completed.