Elrond is constructed to guarantee immunity to known safety issues like Sybil attack, Rogue-key assault, Nothing at Stake assault and many others. Elrond is achieving this by blending the following facets:
Randomness source:The source of randomness is made up of the previous block's aggregated signature as well as also the round's number. Being a collective touch, every node that participates in the method alters the last signature information. Even if the block proposer can control that trades will be contained in a block, then the signature can't be affected in a predictable manner.
Shard reorganization:After each epoch, a third of those nodes from every shard is invisibly and non-deterministically across another shard, to reduce collusion. This technique adds bootstrapping period for those nodes which were redistributed, however, the pruning mechanism may reduce this opportunity to a viable quantity.
Consensus group selection:After each round a fresh pair of validators are chosen using the last dedicated block's signature, present round and the qualified nodes list. In the event of network desynchronization because of the flaws in message propagation, the protocol includes a recovery mechanism exactly the very same members will be selected, depending on the signature of the final block, but using a distinct block proposer which variates with all the round r. This avoids forking and enables synchronization on the block. The little time window (around time) where the validators group is understood, reduces the attack vectors.
Node rating:Beside stake, the node's score influences the possibilities to be chosen as a member of this consensus group. In case the block proposer is fair and its own block becomes dedicated from the blockchain, it's going to have its rating improved, otherwise, it is evaluation is going to be diminished. In this manner, each Potential validator is incentivized to become truthful, operate the most up-to-date client application variation, boost its service accessibility and so ensuring the system functions as intended
Shard redundancy:The nodes which were dispersed in sibling shards on the tree's bottom degree keep tabs on each other's blockchain information and program condition. By introducing the idea of shard redundancy, once the amount of nodes in the system declines, some of those sibling shards need to get merged. The nodes that are targeted will immediately initiate the practice of shard merging.
Threat model:Elrond supposes a byzantine adversarial model, in which at 2/3 +1 of those nodes that are eligible are fair (untampered code, synchronized). The protocol allows the occurrence of adversaries which have bet or decent evaluation, delay or send contradictory messages, compromise other nodes, have bugs or collude among themselves, but provided that 2/3 +1 of those nodes qualified validators at a shard are honest/not compromised the protocol may attain a consensus.
The protocol presumes highly adaptive adversaries, which nevertheless can't accommodate quicker than a round's time. The computational ability of an adversary is bounded, hence the cryptographic assumptions afforded by the safety level of the selected primitives hold firmly inside the complexity class of problems solvable by a Turing machine in polynomial time. The system of honest nodes is supposed to create a nicely connected graph and also the propagation of the messages is completed at a bounded Tim