notes

Personal notes
git clone git://git.laack.co/notes.git
Log | Files | Refs

DistributedConsensus.md (938B)


      1 # Distributed Consensus
      2 
      3 **Source:** MIT MAS.S62 Cryptocurrency Engineering and Design L2
      4 
      5 **Definition:** Distributed consensus is the problem of trying to get multiple systems to agree on a value in the presence of faults.
      6 
      7 ## Crash fault tolerance (CFT)
      8 
      9 CFT algorithms can achieve consensus despite the failure of some network nodes. Despite this, they are not resilient to adversarial nodes on the network, an issue that must be addressed for [Cryptocurrency](Cryptocurrency.md).
     10 
     11 ## Byzantine fault tolerance (BFT)
     12 
     13 Byzantine fault tolerant algorithms can achieve consensus even if some network nodes are malicious or malfunctioning.
     14 
     15 Historically, these algorithms have been identity-based, requiring the identity of every node to be known. This could allow adversaries to create many identities, known as a [Sybil attack](SybilAttack.md). 
     16 
     17 A possible solution to this problem is to make identity creation cost a scarce resource.