BC-1.1.7 Distributed Decentralized Ledgers


As you might have guessed: The downsides of the risk categories of the centralised ledgers, are mainly caused because there is centralised entity in control. So if we are able to remove that centralised entity, we are able to reduce these risk categories significantly. The less centralisation, the more these risks decreases. But, unfortunately, we have never been able to do transactions between each other, without using an intermediary on a global scale. History has shown us that we can do peer-to-peer transactions without an intermediary, but to do this on a global scale, with people we don’t “trust”, we always needed a party that we trusted. If I don’t know you, if I can’t trust you, we both appoint somebody that we can trust. And than that person or entity will manage our transactions for a small fee and of course: to see our data etc. Hence resulting in more efficient transactions, because otherwise I would need to check and audit you, do a background check, this is a more efficient way. Unfortunately creating the three main risk categories though. And here is where decentralisation kicks in. Decentralisation removes this single entity controlling the ledger. So in the example where you are recording your friends their transactions, we remove you from that equation :-)! But still these transaction need to be recorded. We will explain later on how this works. Most importantly is that you will be removed from this picture…no hard feelings 😉 IMPORTANT: in a decentralised ledger, there is no one single entity in control –>The less power lies with one entity, the more decentralised a ledger is. Increasing decentralisation means decreasing power for one single entity. OVERVIEW: that was the second component: we tackled a ledger, we tackled decentralised, and now we need to tackle distributed. So what does distributed means? Distributed basically means that the ledgers is “distributed” across a certain region. So it is spread out for example across the globe. Imagine once more the example where you are the entity registering your friends their transactions, but now all of a sudden it is not only you recording the transactions, but let’s say you copied yourself, in 100 fold, spread it across the room, in every corner there are a bunch of “you”‘s basically, recording the same transactions. That is a distributed ledger. So a distributed ledger means that there are multiple entities recording the transactions. These entities, these versions of “you”, we often call nodes in the blockchain realm. So there are multiple nodes recording and maintaining the ledger. Just to know what the current truth is / the current state is, of who owns what, you just need to ask one of these nodes in the corners. Distribution means that you make a copy of yourself and spread it across the room, or in the real world spread it across the globe, and decentralisation means that you not only make a copy of yourself, you also remove yourself. It won’t be only you recording the transactions, but other people can equally join as a node as well. So not only will there be a multiple variances of you, recording and maintaining the ledger, but others as well. So not only you are in control, but the other parties as well. Ladies and gentlemen… Take a few seconds here (and enjoy)…. you know now what a distributed, decentralised ledger is and what it does: it records transactions, without the use of a trusted third party! Check :-)! Okay…but how does this work? The process of consensus in short, consensus is a new word we introduce here: consensus is nothing more than “what is the truth” / “what is the current state of truth”. In other words if there are multiple entities, multiple parties, maintaining the ledger, where the ledger is about your friends in the middle of the room, if multiple entities are recording those transactions, we all need to be sure that we have the exact same ledger. Imagine from now on that it is not only 10 friends in a room, but where we replace the room for the world, so now all of a sudden we have a world, and not only 10 friends any more, but people from all around the world that start to transact. and here there are multiple nodes spread across the world. We have a node in South Africa, we have a node in the Netherlands, a node in Ghana, wherever you are, there are most likely nodes. If we have multiple nodes, spread across the globe, we encounter several new problems. Because they need to reach consensus, all across the globe, about all the transactions. Which is quite difficult as I will show you later on. Because there is no one party stating “that is the truth”, we need all parties to agree “that is the truth”. And that is quite difficult! Because perhaps somebody from New Zealand recorded different transactions, before you recorded another transaction. So for example the ordering of transactions is really difficult to manage without a coordinating party, that determines “that is how we are going to do it and that is how we record transactions”. So by removing a controling third party, we create a new problem: How do we reach consensus? Who determines “what is the truth”? And this is where we create a so-called “consensus algorithm”. Basically what this means is that all the nodes around the world, will agree, beforehand (!): “these kind of transactions are valid, these kind of transactions are invalid. ” “If we wrote down a new page, we will present it like this” etc. You set a certain amount of rules.
Among each other! So there is not one party determining the rules, there are no external and internal rules any more. There are just rules between all these nodes across the world. We call this the protocol, the consensus protocol. Also known as a consensus algorithm, because it is embedded in the software, which the nodes use to connect. More importantly is that we removed you as TTP, and we introduced a standardised set of rules, in which we all agree upon. So once more: you are removed, no more TTP. We just have a set of rules and abide by those rules. Those are the rules, that is the holy grail, what those rules state: that is the truth. When a transaction happens the ledgers updates. Each node constructs the transaction, independently, on a new page. What this means is that when you finish a page, you create a new page where you start recording new transactions. Everybody (nearly) simultaneously turns on to the new page and starts recording new transactions. As soon as one of the nodes finished their page, they present it to all the other nodes. When they are finished, they will show their page: “hey node on the other side of the world, I am finished”. You can stop your work, I have done it already. The only thing the other needs to do on the other side of the world is validate your page. Did this node correctly recorded all the transactions, if yes “okay!” and then we all flip to the next page. This continuously keeps on happening. People will keep on writing pages. As soon as the first one finishes the page, they will present it to the other nodes. The other nodes will update their ledger and they will start over again. In the meanwhile people keep on transacting, all the nodes (“miners” actually) keep on picking out these transactions and record them in the ledger. Most importantly here is that there is no single entity, there is no TTP, but instead we have a set of rules among each other. So where a single entity needs to follow internal and external rules, a decentralised ledger abides by a consensus protocol, which all the nodes agreed upon between them selves. The final slide here gives you a decent overview. Where you can see the centralised versus the decentralised and distributed ledger. Definitely read the source there! I think it is Vitalik Buterin’s explanation of centralised, decentralised and distributed systems. Definitely dive in the background, of course we will discuss more of this. Most important part here, what you might or might not have realised: is that we rearranged trust!! So normally to transact, where I for example money to this teddy beaver, I needed to send it to a TTP. The TTP would record it and then, according to the ledger of the TTP, this beaver had money. In a decentralised world we remove this TTP, so I will send my money directly to the beaver, which we call peer-to-peer, so not peer-intermediate (TTP)-peer, but “peer”-to-“peer”, reducing transaction cost (increasing transaction cost efficiency!), and more importantly: everybody surrounding us, so basically this other beaver and 10,000 other beavers, are witnessing our p2p transaction where they check “that is a valid transaction”. That is a valid transaction because you used the set of rules we agreed upon. And not only are each of these nodes “above”us, like TTP’s, but also among us. It is between us, it is peer-to-peer, we are all interacting. And that is the bottom line here: we rearranged trust. Now all of a sudden this beaver doesn’t need to trust me any more. This beaver only needs to trust the set of rules and the fact that we will all use the same set of rules because if we don’t, this transaction won’t be accepted by all the other parties, which we will later on. KABOEMA! Take a second here. For the first time in human history, we can actually send value to the other side of the world, without trusting an intermediary party. Directly connecting me to persons in SA, China, Russia, wherever you are from. I can actually send them value. Which is insane and opens a lot of new possibilities. And later on you will see that we can do all different kind of awesome things with this value. For example program it! I think this video might became a bit too long. Rewatch video’s if you don’t fully understand or dive in the further readings and viewings. I will patiently wait on the other side of the digital realm and I’ll see you in 1.1.8, where we encounter some problems with distributed decentralised ledgers.

Leave a Reply

Your email address will not be published. Required fields are marked *