 I'm very happy to be allowed to announce the following talk. It's called a blockchain picture book and it's held by Alex. Blockchain is a topic we hear constantly everywhere in the media. It's sold as a solution for everybody and for everything. Doesn't matter what. But how it really works and what it really is, most people don't really have an idea. So today we got a beginner's introduction with pictures. So please welcome Alex on stage with a big round of applause. Hi. Hi. Yeah, my name is Alex and I'm from the Technical University of Brunswick. I'm working in the Institute of Application Security. I suppose you're here to see my blockchain picture book, right? Right from the start, this talk is not about the newest cryptocurrencies out there and it's also not about in which ICO you should invest in. I'm absolutely clueless about that topic. Sorry to disappoint you, maybe. I'm here to give you a very rough introduction to the idea and the basics of this blockchain thing out there. So maybe you can judge by your own. So I hope there are no blockchain experts in the audience, maybe. So this is a foundation talk that means I do not expect any technical or mathematical backgrounds at all. So let's just give it a try. Imagine the following situation. Once upon a time, there were two people. Let's call them Mary on the left and Alex on the right. They wanted to trade with each other. Mary, she wants to buy a house from Alex. Thus she brings the agreed amount of money and Alex on the picture brings the keys for this house that should be sold to Mary. But since Mary and Alex do not know each other, they do not trust each other as well. So they set up a contract for this trade just to be on the safe side. Here on the right, you can see a typical contract for a trade. And it consists of some important information like a description of the object that should be sold, the house of Alex, maybe the address, what's inside and stuff, the agreed amount of money. Let's say the house costs half a million, whatever. The persons who are involved in this trade, in this case, Mary and Alex, and of course the signatures. As a final step, this contract must be time stamp for being valid. So nowadays, those kind of contracts usually exist as digital documents. But for both, the digital and the analog document, if an evil party gets hands on all copies of this contract, he can modify it in a malicious way. Let's say removing the time stamp. This can void the contract and thus make the trade invalid. And by the way, the evil party can also be one of the persons involved in this trade. So let's say our Alex, the evil one, he wants to take the money from Mary but also keep the house, okay? This is our initial situation. So in 1999, Harvard proposed in a scientific paper a cryptographical solution for binding a time stamp undivisibly to a digital document. What does it mean? They both, the time stamp and the digital document, are merged into a new document and can't be separated from each other without being damaged. So we'll see later how this exactly works. So now let's pretend this block, which you can see here, contains our digital document and the time stamp. And both are binded by some mystical, fancy cryptographic technique, which is represented by this blue frame, okay? So unfortunately, we still face a problem that our evil party, remember, Alex, it's the evil party, he can just make this contract and all copies disappear and claim they've never existed before. So to tackle this problem, they propose a chain technique for those blocks, all of which contains, of course, different contracts. So the result is a chain of blocks, a blockchain, here we are, hey. And since this is a chain, it's not possible to remove one of the blocks. Removing a block from the inside of the chain will just break it completely in a way that you can't put it together anymore, without damaging it, as we will see later, okay? So this doesn't prevent that anyone can just make this whole chain disappear, maybe. So the longer the chain gets, the more people are involved in this chain. The higher the risk for our evil party's malicious task is discovered, okay? Clear so far? Right. But the problem remains, this chain has to be stored somewhere. You remember it's digital. So let's say another trusted party gets this task. So here we are. This is our trusted party, which is in charge for our blockchain. The thing is, this trusted party can also fail or become entrusted. And it doesn't have to be malicious at all. It also may happen that the storage for blockchain fails or crashes, or any data may be destroyed due to any hardware failure, maybe. Or the trusted party just deletes it accidentally, maybe. So it's like with every centralized service you have to trust. So imagine your email provider just disappears tomorrow. How many services are you using, which depends on the email address? Okay. So for that reason, the paper suggests to distribute copies of our blockchain to a lot of other parties. So here we are. Here you see a lot of other parties, whoever they are, who owns a copy, an exact copy of our blockchain. Here this blue color represents something cryptographical. Okay. So you can see there's no centralized storage anymore. Instead, we have a large number of participants which we can rely on. So let's call this a decentralized network. Remember this term? It will get important later. So for now, even if some of those parties fail, as long as the majority stores the valid and, of course, the same copy of our blockchain, we can keep going. Okay. You're still with me? Right. Okay. So the question remains how this mystical cryptography thing, stuff, whatever works. This is how such a block actually looks like. And in fact, this is the first blockchain block ever created, but I suppose you're not really interested in the math lecture. Okay. So as I promised, let's keep the mathematical details and stay visual. But just for information, this is a block. Okay. Let's pretend we observe another trade. Alice and Bob are doing a trade. And we can see Alice wants to sell her smartphone or whatever to Bob. So do you remember those Polaroid cameras where you could take a picture and it was printed instantly? You know them? I think they're back in fashion now. So while we observe this situation, we take a Polaroid picture of it. It's printed. And this picture, it has this trade. So we take this picture and put it on a blackboard, like this here. So let's say this picture represents a block. You remember those blue frame blocks, like we saw them before? Okay. Somewhat later, we observe another trade. Here Charlie wants to sell his car to Peter. And again, we take a picture. But this time, we hold the picture from before, the one which is already on the blackboard, to the background of this situation, like here. So now we take the new Polaroid picture and put it back to our blackboard. Okay? So what do we see now? The first picture, which is our first block, appears in the background of the second picture, which is our second block. So let's say the second block is chained to the first block. So if someone evil wants to change the content of the first block, he must also change the content of the second block, which means more effort for this evil party. So of course, let's keep doing the same. And add the third picture to the board. Here we can see Ethan Alex, another Alex, trading some goods. And in addition, again, we can see the second picture is in the background of this third picture. So it's the same thing. The third is chained to the second. Okay? You're with me? Nice. And of course, for the sake of completeness, we add the fourth block, where Armin and Ed are trading, and this house is more expensive this time. So again, we see the content of the third block and the fourth block, thus they're chained. So now we can see the big picture here. So if our evil party now wants to change something on this first trade, on the first picture, that means he must change the second and the third and the fourth picture as well. Else this modification is detectable. You agree? Okay. So one can say we created our very special kind of blockchain here consisting of Polaroid pictures, which represents blocks, of course. Okay. So this afford can bring us some fancy properties. And at this point, it's important to say that some of these properties are optional. There are different kinds of blockchain systems out there, and most of the properties depends on what kind of blockchain is in use, and of course the use case. But let's just take a look on some of the important properties, in my opinion. So return to our blackboard here, which we constructed earlier. So we already observed this chaining mechanism, this picture and picture thing, you remember? So this mechanism makes our blocks immutable. And thus, the contracts inside these blocks are immutable as well, of course. So they can only be modified if the complete chain is also modified. So let's take our board and place it anywhere in the public. This gives all the people walking around the possibility to keep an eye on everything happening on our chain, on the board. And maybe detect any anomalies. So we can say, well, blockchain is now as cool as open source software, maybe. Other parties who make up our distributed network, you remember? We talked about that before, creates an exact copy of our blackboard. And they update, they copy every time something new is appended to the chain. So if the original blockchain on this board becomes invalid or disappears or whatever, we can ask our distributed network for the last valid copy of this chain and put it back on the board. But even if some of those parties becomes malicious, as long as the majority of all parties is honest and own a valid copy of our blockchain, we could prevent fraud on it. And at least it's possible to ensure anonymity for all involved parties. So in summary we can say, the contracts in our blockchain are mutable, the control over the blockchain is decentralized, and it's really hard to get the majority of the network to the bad side, I suppose. Our board and thus the blockchain inside are exposed to public scrutiny. And it's not possible to remove one of the blocks from inside the chain without breaking it completely. We can provide anonymity to our distributed network and the parties involved in the transactions or the contracts inside the chain. And at least we don't have to be at the mercy of a single institution, like a bank or government or whatever. Okay, so it looks like some fancy properties, these are just some of a lot of properties which we can achieve. So let's take a closer look on a common blockchain application. I suppose most of you here heard of the so-called cryptocurrency stuff, especially Bitcoin, maybe some of you own some Bitcoin. Of course there are many more cryptocurrencies out there, Woppercoin, Walcoin and stuff. Let's talk about financial transaction on a blockchain in general. So this is a classic German bank transfer form. Before the times of online banking, this form was used to transfer money from one bank account to another. Maybe some of you still remember it, you had to write extremely clear, it was horrible, you filled out this form, give it to your bank and they take care of everything else. So you can see some fields here. These are the names of the sender and the receiver of the money, the sender is on the bottom. Here you can see the account numbers. This is the bank ID and in this case you can see it's the same bank. Of course the amount of money and the signature of the sender as well as the date. So for financial transactions via cryptocurrencies like Bitcoin, whatever, we don't need that much information. The only information we need here are the senders and the receiver's public keys. They are used the same way as account numbers but they are much longer, more cryptical. Of course still we need the amount of money, the sender's signature which also contains the timestamp. Remember this stuff is digital. So back in the good old days we just filled out this form, put it into a special letter box in the bank and forget about it. Cryptocurrencies, very simply said, all commission transactions like this here are collected by our distributed network. So let's say our distributed network collected, seven pending transaction. So these transactions are not in our blockchain yet. Let's get back to our blockchain. We have five blocks currently with any contracts or transactions inside. So now we face the question, which of those transactions shall form our sixth block in this chain? Okay, you agree on this question? Maybe some of you would say, hey, we have some time stamps on the transaction, why can't we use them? The thing is that our distributed network is in different time zones and I don't know, network delays and all this stuff. So we need another solution for this question. I suppose some of you already have an idea how to use this. So if all involved parties follows a rule on how to find an agreement on something, whatever, we can call this a consensus protocol. So maybe some of you heard this term before. Okay, so remember it. Let's replace transactions on contracts with something much similar. Let's say some fancy symbols have been proposed as candidates for our next block, the red one in the chain. So our distributed network consisting of some participants now face the question, which of those symbols shall form the next block? And there are different ways to achieve this goal. So let's talk about the best non-convenants as protocols. Maybe one of the most popular used by the Bitcoin network is the proof of work protocol. I see some people, I think. Okay, so what does it got to do with competition? Back to our initial question, which of the symbols shall form the next block? So very simply said, each time a new block shall be created. And this means, as long as they're pending transactions, we need new blocks, our network holds a public race and everyone can take part in this race. So the winner of the race can decide which symbol gets into the new block. Look simply, and in this race we can see that the winner party selects the hard symbol for the next block. So it appears there. So the outcome of this race is known to our distributed network. So each of those parties in this network appends a new block into their own local blockchain copy, holding this hard symbol inside. Okay, right. Unfortunately, as some of you may know, this protocol has some drawbacks. And the most serious of these is probably the negative impact on the environment. That means holding such races consumes many resources. And of course, in reality, not motorcycles, but a very large number of highly specialized high performance computers take part in this races. And of course, they need a huge amount of power, which is not really great for the environment. So for last year, it was estimated that the Bitcoin network needed an annual rate as much power as the whole country of Denmark, which is a lot. Okay, so you don't like this protocol? Let's take a look on another one. So this protocol depends on the vote of participants and of group. We call it the consortium vote. This is one of the names for this protocol. Back to our initial question with the fancy symbols, which of them shall form the next block in our chain. So instead of a huge network of unknown participants driving motorcycles and holding races, this time we invited some parties in a fixed group. We call this group consortium. So each time a new block shall be created, the participants of this consortium hold the vote. It's similar to a democratic election. So the symbols, the symbol most parties voted for wins. It's that simple. So in this round, we can see two parties voted for the circle, two parties voted for the heart, and three parties voted for the star symbol. So the star is selected by all of the people. And thus appears in the next block. You agree? OK, so the outcome of this vote is visible again to our distributed network, which holds copies of our blockchain. So each party in a distributed network appends a new block into their own local copy, holding the star symbol inside. So great, we see no environmental drawbacks here. Maybe this is the best solution. OK, some of you disagree? Yeah, well, the top here is the formation of the consortium. This is one of the drawbacks. We can't ensure that the invited parties or participants of our consortium aren't biased. Here we see a very huge domain, and this domain only allows participants to our consortium party who promises to vote for the circle symbol and nothing else. So we can say he's kind of a filter. So since there are only participants who refers to the circle symbol and the consortium, they also vote for it eventually, as you can see here. So among all the drawbacks, this protocol may be misused for corruption or whatever. OK, you're still with me? OK, let's check the last consensus protocol. Maybe we have more success here. So this one depends on the share or stake. Of the system that everyone owns. This consensus protocol will be called proof of stake. But what doesn't have to do with randomness, maybe you ask. So one last time we repeat our question, which of the symbols shall form the next block in our chain? So let's pretend we have any system. Let's say all existing symbols in this world form our system. We can see the system. This is the circle on the right side. And the whole system belongs to five parties, which are on the bottom left, these five colored parties. So this colored circle represents the stake of each party on the system. So each round, these parties vote on which symbol shall form the next block. But this time the decision for who is the winner is made randomly. Taking into account the stake of each party. So we can call this awaited randomness. OK, so how does this exactly work? Let's imagine this roulette wheel. I hope some of you know this kind of game. OK, usually you spend the wheel, you throw a ball on it. Sometimes the wheel stops turning and the ball lands on any number on this wheel. And this number is the winner then. But instead of numbers this time, we distribute the symbol candidates on the wheel according to the stake of his voter. OK, so let's play the game. That's how our wheel looks like. And we spin it and throw a ball on it and it keeps rolling and rolling and rolling. And it stops at some point on a symbol. Here it landed on the triangle. So the triangle is the winner symbol for our next block and appears there eventually, as you can see on the top right. OK, you're with me? All right. So what happens when the stake of one of these parties is significantly larger than the stake of others? Here, our red stakeholder is a very rich man and holds the majority of the system. So as you can imagine, even if our system chooses randomly, since this randomness is weighted, his chance to be chosen is significantly larger than the chance of others. So of course, there are even more consensus protocols out there and we can spend a few hours talking about them. But to get to the point, every effort to reach a fair consensus seems to come with drawbacks and depending on our use case and the blockchain system which we are using, those drawbacks can have negative impacts. So why are we still putting all this effort into this blockchain science? You may ask. Let's get back to our initial situation where Mary and Alex traded and Mary wanted to buy a house from Alex, you remember? So here, Mary has to trust Alex that the house he sells to her is really his own property and that he won't evoke the trade afterwards. On the other hand, Alex has to trust Mary that she gives him the promised amount of money for this house. So if a bank is involved in this trade, they both, Mary and Alex, has to trust this bank for transferring the money safely from Mary to Alex and of course, the right amount of money and the right currency. And in big trades like house selling, usually a notary is involved. Mary and Alex has to trust this notary to be impartial. So we see traditionally such trades involves a lot of trust and trusting in such things as trades is not really popular as there has been a lot of disappointments in the past, as you may know. And all this blockchain science is the most promising approach for mitigating the need of this trust so far. But I think we're still a long way from reaching this goal. So let's see what the future may bring us. Thanks for your attention. Thank you very much for this nice introduction. If you have questions, please go to the mics and there's three simple rules to follow now. First, if you want to ask a question, a question is normally one sentence ended by a question mark, nothing else. Second, if you speak into a mic, keep it close to your mouth, just like you would like to bite into it, but please don't do so. And third, for everybody who is leaving now, please do this quietly. Thank you very much. So let's start with a question from the internet. Hi, there is a question from IRC. So you talked about how blockchains provide anonymity. And could you explain what that means in the context of a blockchain because after all, it's like real people having a transaction. So what is the definition of anonymity in this context? This is a very technical question, I suppose, for the technical people anonymity means we don't have names like we've seen on the German bank transfer form where you can exactly see Mary and Alex are trading. So you have the names and you exactly know who these people are. In the technical case, that means we use public keys. And of course, we can create public keys without seeing the person behind it. So in this case, it's possible to ensure anonymity, but as some of you may know, it comes to drawbacks. It's technical. Microphone number three. You showed us different ways of choosing which which transaction is next, but I was think I don't know how if there is a possibility that some transaction will be lost like. You know, it doesn't take that one of the transactions just disappear from this cloud. Because all other are chosen before before it. Like, or how long does it take to do the vote? Oh, that really depends on the protocol. As some of you may know, in case of blockchain, we have this time, minute stuff. That means every 10, I think 10 minutes, we do a new round because of this cryptographical hash, whatever. But it absolutely depends on the protocol as this voting protocol works completely different. So that's the reason why I didn't want to go into details because it depends on the protocol. So we can talk about it later if you want to, but I think this is out of scope here. Okay, microphone number two, please. Thanks for the talk. A lot of the example I see on blockchain are basically database owned by one company, so it doesn't really... So what is for you the most exciting usage of blockchain that you see today? I cannot answer this question because I don't really know what kind of solutions are there. Of course, I know the popular stuff like hyper legend, whatever. For me personally, the current solution are not really cool, but because of technical backgrounds. But I can imagine that the distributed computing protocols behind this blockchain thing can lead us to some very cool stuff, but we need to put much more science inside it. And that means really science. We have another question at microphone number two. Great talk. For distributed computation, there was already a lot of... Sorry, can you go a bit closer to the mic, please? Yeah, sorry. If one of the most interesting usage is distributed computation, there was SETI at home, there is a bunch of Bababla at home. So I'm not sure then again that what's the competitive advantage, let's say, of blockchain to those previous distributed computation protocols. I'm not sure if I understand your question, but do you ask what exactly is new about all this thing? If the advantage is distributed computation, that was done before. And I'm not sure what's the advantage of doing it via blockchain. Technically, a blockchain is absolutely nothing new. So distributed computing is a quite old topic. It's nothing else than just a distributed database, in fact, with some other properties which can be combined. So that means blockchain is a combination, for me personally, of a lot of techniques. So I think we just should use many more distributed computing solutions for stuff like financial transactions or smart contracts, stuff, whatever. So this blockchain term, you must be really careful with it. That's a very nice warning. So please give another warm round of applause for Alex.