a failing so these protocols the ones that I just listed operating something called the crash fault tolerance model meaning they can handle computers going away but not really much else and when we're operating in decentralized digital payment land we want to be able to tolerate more than crashes we want to be able to tolerate actively malicious behavior because if you're gonna create a digital payment system and it's money then people are gonna try to steal that money so like I said if people go away if it's up to a minority you can still have the log so there's stuff from the literature that actually supports something close to this there's something called Byzantine fault tolerance and Byzantine fault tolerance tolerates more than crashes it actually tolerates actively malicious participants it can tolerate a smaller number of actively participants up to a third so here nodes might not just fail they might actually try to subvert the protocol to to keep from landing on a single globally ordered log and like I said we have protocols that can tolerate this great however and these protocols are very very old okay like visit the Byzantine generals problem which was sort of a basic formulation of what led to Byzantine fault tolerance was formulated in nineteen eighty-two Paxos and view stamp replication also came about in the eighties those are to distribute consensus program protocols practical Byzantine fault tolerance so an actual like very practical protocol that you can implement and that you can use to create a globally ordered log that was in the NUMBER_TOKENs and you know ever since then we've had a lot of different protocols so and then in NUMBER_TOKEN Bitcoin so this idea this idea of a globally ordered log that can tolerate malicious participants the thing I want to impress upon you is that it's an old idea decades old so what's new what happened with Bitcoin well a downside the all of these systems have is that you need to know exactly who is participating in the protocol so the way that these systems work is as the protocol works based on identity so you have to know who is involved you need to know everybody in the system you know everybody in the system you can tell you know as who's sending you messages and who's not sending you messages and you can make decisions about what everybody else thinks the globally ordered log looks like the thing that these protocols did not tolerate was when you don't know everybody in the system and the problem when you don't know everybody in the system and you're not doing participation based on identity is that an attacker could create a whole bunch of identities there's nothing preventing an attacker from creating identities and remember we want a permissionless decentralized system we don't want to have some gatekeeper saying who can enter into and out of the system and given that we don't want to have that gatekeeper we can't just let people join willy-nilly and manufacture their own identities because if they do all of these protocols all of a sudden no longer work this is what's known as a Sybil attack okay when an attacker can create identities essentially for free and can swarm the good guys and take over the protocol so we're I'm gonna leave you is with this problem which is we want to figure out how to address the Sybil attack problem when creating a globally ordered log and and one way of doing that is to think about making identities costly so good guys can create new identities and can join the system and can execute the protocol bad guys could potentially create identities and join the system and execute the protocol but
NO_SEGMENT_TOKEN