Epicenter - Learn about Crypto, Blockchain, Ethereum, Bitcoin and Distributed Technologies - Peter Czaban: Polkadot – The Internet of Blockchain Networks

Episode Date: September 5, 2017

Scalability and interoperability are two of the main issues facing blockchain protocols today. In a future in which entire industries and economies rely on distributed technologies, it is unclear how ...blockchain networks will support massive amounts of data, and exchange transactions in a trusted way. Peter Czaban, co-founder of Polkadot, joins us as we dive deep into the Polkadot Network. Polkadot is a heterogeneous multi-chain network, consisting of many connected chains (or parachains), all of which have their own set of features and characteristics. Transactions flow across chains, while Polkadot ensures the global security and consensus of the network, forming an ‘Internet of Blockchain networks’. Scalability is achieved through the parallel processing of transactions on the different parachains. Topics covered in this episode: Peter’s background and his role at Parity technologies What is the Polkadot project and what problems it is addressing How Polkadot handles the issue of scaling The different components of the Polkadot Network The various players in the network The consensus model used in Polkadot The types of applications Polkadot would enable The Web3 Foundation and its goals Episode links: Polkadot Website Polkadot Pre-Sale Website Polkadot Community Chat Aura Consensus This episode is hosted by Meher Roy and Sébastien Couture. Show notes and listening options: epicenter.tv/199

Transcript
Discussion (0)
Starting point is 00:00:00 This is Epicenter. Episode 199 with guest, Peter Chabon. This episode of Epicenter is brought you by Ledger and the Ledger NanoS. Half piece of mind in knowing your private keys are protected by industry standard physical security. Go to ledgerWalt.com to learn more. And by Shapeshift.io, the easiest, fastest, and most secure way to swap your digital assets. Don't run the risk of leaving your funds on a centralized exchange. Visit Shapeshift.comto-I.O. to get started. Hi, welcome to Epicenter, the show which talks about the technologies, projects, and startups driving decentralization and the global blockchain revolution.
Starting point is 00:01:02 My name is Sebastian Kujo. And I'm Meher Roy. Today we are talking to Peter Chabahn, co-founder of the PolkaDot project. PolkaDot is an interesting project that is pioneering how an internet of blockchains would work or how many blockchains would work together. Peter, we are pleased to welcome you on the show. Hi, guys. Nice to be on. So before we start talking about Polkarat, tell us a bit about your background and how you came to be interested in this space.
Starting point is 00:01:36 So I've been interested in this space since the university time. I first, I mostly did some algorithmic trading of Bitcoin because I was mostly interested in machine learning. but then I noticed all the different currencies popping up such as peer coin and prime coin and so on and then I got a little bit more into the space being interested in the protocols went to a number of Ethereum meetups in London and then after university kind of decided to go more into the space and joined parity technologies to build some protocols and decentralized stuff. And at parity, I've been mostly working on the consensus algorithms
Starting point is 00:02:33 and generally contributing to the parity codebase. So can you tell us a bit about, I mean, I'm sure most listeners will have heard of parity and some may even downloaded the parody, the parody wall, But can you tell us a bit about parity, you know, what you do at parity and what is the goal of the company? Yeah, so we make one of the most used Ethereum clients, which is we try to make it as performant and as usable as possible. But in general, we also build other decentralized technologies such as Whisper and, And now we are getting involved in other projects such as PolkaDOT and then building also enterprise type Ethereum applications with proof of authority. And in general, building technologies that will enable people to build decentralized applications.
Starting point is 00:03:42 Fantastic. And so the team, it's generally based in London or are you sort of spread out across the world? What does the team look like? So the team is pretty spread out. We have some people, most people in Berlin, but I'm based in London and we have a number of people in different places, but mostly coalescing around Berlin. Cool. So let's jump into PolkaDot. Tell us about, give us a high level overview of the PolkaDot project and what shortcomings you saw in the community that led to it. is being supported now by the Web3 Foundation, which hopefully we'll get to talk more about a bit later. But basically, we notice a particular phenomenon in the blockchain space. We saw that there have been a number of different blockchains starting to appear, both in the public space and consortium, private blockchains.
Starting point is 00:04:46 So the reason for most public blockchains is that they want to introduce some kind of a new feature. So Zcash wanted to introduce a new type of cryptography in order to enable privacy. Or Tesos wants to make a new blockchain to make formal verification easier. And let's say, waves may make, has a blockchain that makes handling tokens very easy. So in a public space is mostly driven by functionality. Then in the private space, it's mostly driven. So different consortia, banks and so on, want to make their own blockchains. Because, for instance, transaction fees are too high on the public network.
Starting point is 00:05:35 Some of the clients that we had a priority couldn't run stuff on the public network because they're limited by the fees. the throughput of the network is not there sometimes and also some privacy features which potentially could be there on the public chain but are not there yet but they need it right now but there are two main issues with this
Starting point is 00:06:01 sort of approach of adding new chains first of all all those different chains cannot communicate with each other So at first, you know, we thought that the blockchain, a blockchain may be, or blockchains could connect everyone together and enable them to interact in a trustless manner. But now when we start building those blockchains and we don't have a trustless way to make them interact, then it defeats the purpose. And second of all, each blockchain has to be secured separately. So we have with Bitcoin, Bitcoin is extremely secure.
Starting point is 00:06:43 But now if we want to add another chain that has different features, then we need to gather a new set of miners or a new set of staking parties, if it's proof of stake, to secure that chain, because otherwise it will be well as secure than the existing ones. So those are the kind of two main motivation, the lack of interaction and this sort of disperged security. So Polka.A.OtK aims to solve those by providing trust-free transactions and pooled security. So the pooled security and trust-free transactions are provided by the relay chain that we can get into.
Starting point is 00:07:21 And then we have different para-chains or different bridge chains that provide varying functionality and varying capabilities for the network. So, I mean, blockchain interoperability is a topic that we've. We've covered at length here on the show. We've had DFINITY on. We've talked about Cosmos. We've also talked about Pocod in a previous episode about Mail Import, where we spent a significant amount of time in Pocod. And the way you describe it is what's desirable is,
Starting point is 00:07:58 or at least from the standpoint of Pocod, is for blockchains to be able to interoperate. And so in this sense, blockchain should be able to talk to each other in some form of fashion, and that there is another sort of undesirable side effect of having multiple blockchains and multiple consensus models operating on each of those blockchains independently. And that is that each of those blockchains need to secure the data independently of each other. and we can't sort of pool resources or have sort of a global consensus mechanism as a service sort of thing. Is that a good way of describing the high-level thesis of Pocodot? Yeah, those are the two main points. And of course, lots of other things fall out of it.
Starting point is 00:08:50 So, of course, you could argue that multiple chains give you scalability, but now this scalability actually makes sense because just adding new chains kind of, scale, you know, I just adds new, new entities rather than actually scales that, that's the network, the single community. So I think I can sort of see the value in having this sort of a consensus mechanism as a service, right? If you're going to have multiple blockchains and each of those blockchains might have different functionality, different features, even different types of users. And maybe we can get into some of that, right?
Starting point is 00:09:30 like, you know, this chain over here might be what you would consider a public blockchain, while another chain might be restricted to some sort of consortium or something like that. But in terms of interoperability, you know, two blockchains talking to one another, or sending data or sending transactions from one another to one another. Can you sort of talk about some of the applications where this would be desirable? Yeah, absolutely. So, of course, we have a lot of capabilities, for instance, on Ethereum. But as we see, for instance, different chains being made in the energy sector,
Starting point is 00:10:13 where there might be a blockchain that handles trading of energy and has certain permissioning features and so on. where that particular blockchain right now cannot use that different facilities that are there on the public chain. So, for instance, if there is a certification contract on the main chain or there is some token on the main chain, this energy sector chain cannot make use of it. And communication, for instance, let's say you want to pay for, for your electric car with US dollars and there is already a fully collateralized token on the main net, then you could, for instance, pay with that token on the energy sector chain as well.
Starting point is 00:11:12 Or if there is a Zcash-like chain, for instance, Zcash is great at providing privacy, but now we have different ICOs on the Ethereum chain, and people cannot leverage this privacy for Ethereum. With PolkaDot, what we could have is a Zcash-like chain that has those privacy features and a more general chain like an Ethereum chain where there is a contract that does an ICO. And then if someone wants to contribute in an anonymous way, they could send a transaction which goes through the Zcash chain in order to anonymize. and then goes into the sale contract on the Ethereum-like chain.
Starting point is 00:12:00 Basically, anywhere where there are some varying capabilities on different parachains or different bridge chains, you can have one chain leverage the capabilities of the other chain and vice versa. So you're using these words like relay chain and para-chain. So just explain to us like the old. all architecture of the Polka. Dot network. Yeah, absolutely. So the Polka dot network at its core consists of the relay chain,
Starting point is 00:12:37 which is the chain that relays their messages and provides consensus to all the different chains. And then there are para chains. And then often what we also distinguish, which could be another type of para chain, which are bridged chains. So chains that are independent but yet are connected to the PolkaDOT network. So para chains are fully reliant on the relay chain for it to provide the consensus to them. So basically they can have all sorts of different characteristics. There might be a Zcash-like para-chain or Ethereum-like para-chain
Starting point is 00:13:21 or tesos like parachain or some other type of parachain. So those are the things that actually provide the functionality. Relay chain then holds them and enables validators to know how to validate those different chains and ensures that they can communicate with each other. And then there are those bridged chains, so connected via bridges, which do not really rely on the POCA dot network to provide the consensus. So for instance, something like Ethereum already has its own minor network or something like Bitcoin and it doesn't need any other consensus algorithm. It just needs this ability to
Starting point is 00:14:03 communicate. So in this case, they are kind of less tightly coupled and they are also possible. So those are the kind of main structural elements. Would there be an incentive or would it even be possible? I mean, outside of, you know, community and governance issues to, uh, to, uh, uh, port an existing chain like Bitcoin or Ethereum to use the the the the the the the the the the the the the the consensus as a service model yeah absolutely absolutely so so probably probably one of the first chains on the polka dot network will be a probably a probably a slightly different chain which is also very very very a very slightly different chain which is also very very general purpose.
Starting point is 00:14:52 So it will be based on web assembly rather than on EVM. But then also one of the first parachains could be an Ethereum-like parachain, which is basically identical from the functional perspective to Ethereum, but is kind of directly plugged into PolkaDOT. So you could even take a state snapshot of the Ethereum network and put it on PolkaDot. And of course, one of the, also one of the first bridges that we are already working on would be connecting the actual Ethereum network to Polka. This episode of Epicenter is brought to you by Ledger,
Starting point is 00:15:36 makers of the best hardware key security solution on the planet. But Ledger is more than just a hardware wallet. It's your path to eternal bliss and happiness and peacefulness. Do I look like I'm losing sleep? I am, but it's not because I'm worried about my cryptocurrency, my Bitcoin or my Ether, and that's because I use a Ledger. Ledger devices for multiple cryptocurrencies like Bitcoin, Ether, Zcash and more, and you can even secure your ERC, Ethereum tokens with them, or you can add the security support from Ledger to some of the wallets you already love and use like Electrum, copay, my Ether wallet, and others. All your keys and segregated accounts are derived from one unique seed. Seeds are generated on the device and are never exposed to the host computer. So when you make a transaction, your ledger will present you with the details and kindly ask you for your confirmation before signing.
Starting point is 00:16:32 How polite is that? So the best choice right now for anyone looking to invest in security is the Ledger NanoS. It's a keychain size device that fits in your pocket. It has a screen and buttons and connects your computer or Android phone using USB. Look, if you're holding crypto and you're storing your keys on your computer, on your phone, or worse, in exchange, you know that's a disaster waiting to happen. Don't be the person that loses their keys because they were careless with them. So don't wait any longer. Secure your Bitcoin, secure your Zcash, secure ether.
Starting point is 00:17:02 Go to ledger wallet.com and get your Ledger NanoS today. We'd like to thank Ledger for their support of Epicenter. So, like, from the outside, it looks at this description of they being like the central relay chain and then there are, which is like you can think of it as a hub, and then these parachines, which are like the spokes of the network. Like this, this sort of design pattern has occurred before in the space in the form of the idea of side chains, right? So even in side chains, what a lot of proponents were saying is like there would be
Starting point is 00:17:40 Bitcoin, which is like sort of a hub, and then there are these side chains, which would be like spokes, each of these side chains could have like different functionality, but then people could move like Bitcoin from the central chain to the side chain and then do some specialized transactions there, like anonymizing transactions, et cetera, and then go back to the main Bitcoin chain later. So in this case, the main, like there is a few differences. First of all, an important part is to make it very. general. So basically any sort of data can be transferred between the chains. It's not only
Starting point is 00:18:20 balances of tokens that can be moved across. And second of all is this is this validation and pull security which which makes it possible to like the validation of all the para chains is part of the of the protocol itself, which is very important. Okay. So let's sort of walk through how this validation would work. In order to build, to maintain the PolkaoDnetwork, there is a number of different roles that have to be fulfilled. The relay chain is maintained by the validators primarily, which are heavily bonded parties. they can gather stake from the community in the form of nominators and they perform the active role in the in the in the in the relay chain consensus mechanism
Starting point is 00:19:27 but in order to be able to have multiple para chains and support multiple para chains there are there are a few other roles so there are also collators and Collators also perform a role of a fisherman, which have been something that has been mentioned in polka dot paper. So collators are basically responsible. They are a little bit as like current miners. So they are responsible for sitting on a particular chain, gathering up the transactions, and then proposing blocks on that. on that particular parachain.
Starting point is 00:20:14 So then the validators, when they are assigned to a particular parachain, so on each block of the relay chain, a different group of validators gets assigned to a different parochain. And then they have to receive the candidate blocks from the collators, perform validation, then broadcasts some statements, and then the validators come together in order to canonicalize a set of a set of parachain blocks on the relay chain. So there are validators and collators are the main roles. Collators also do fishermening, which is basically looking at the para chain blocks that get included
Starting point is 00:21:05 and making sure that they are valid and they are able to. submit proofs of invalidity, if that's not the case, which can lead to removing bonds. And then validators also somewhat function as fishermen reporting invalid actions in the consensus process. And yeah, and those are the main roles. And basically because we can have lots of different para chains and with different different state machines because because decolators don't actually need to make they only need to maintain a node for that particular para chain and validators don't need to provide don't need to run
Starting point is 00:21:51 notes for all the different parachains because they are getting light proofs so so basically state transition proofs from the collators which do not require them to maintain a database and validate every single block on a particular power chain so we are able to parallelize this process of generating state transition proofs across all those different collators, which makes it possible to have lots of different chains in parallel, basically. But at the same time, then we come to the validators, and in the end, we end up with a global consensus that enables us to then relay messages in a trustless way between arbitrary data messages between the different chains.
Starting point is 00:22:37 So in effect, we have the central chain, which is the relay chain. That chain has its own token. And that token is used for the selection of validators. Yeah, so that's a bonding token used for bonding and for governance of the network. Of the network. So this central chain and central token is used for the selection of a set of parties that are going to validate not only the central chain, but all of these side chains or para chains. And now, I guess the central challenge here is when there's, let's say,
Starting point is 00:23:15 like one central chain, but there's like, say, 10 different parachines, then the problem for these validators is that they would, if they want to validate all of these side chains, then they would start to be full nodes to all of these chains and, like, listen to all of the- That's a scale. that doesn't scale and it listened to all of the transactions and compose blocks and stuff so in order to like remove this burden of being a full node on all of these side chains
Starting point is 00:23:47 if I'm a validator on the main chain I have this other group of parties that are called collators that will basically take away the burden of me needing to have a full node listen to transactions and compose blocks. Yeah, exactly. And what validators have to do. So that is also can go into a little bit, how would you add a new para chain? So basically the relay chain has, if you want to add a new para chain, you need to write the state transition validation logic.
Starting point is 00:24:24 So you basically write a little program that is able to validate proofs from a particular para chain. And then this program is written compiled to WebAssembly. So it's a little program that every validator can run. So and anyone can basically run it. And given that program and they can judge if a state transition proof that has been supplied by a collator is valid or not. And, you know, in case of, for instance, in case of all blockchains, because the state, machine is deterministic, we can with absolute certainty say, you know, this state transition
Starting point is 00:25:09 proof is valid or not valid. So it just returns good or not good. And then validators from that know to, you know, how to treat it. Is it? Should they include it in the consensus process or not? So it will be a little bit like deploying, a little bit like deploying a little bit like deploying a contract now, a new parachain. So assume, like, I am the validator of the main chain.
Starting point is 00:25:32 Sebastian is another validator and like there's like 50 50 of us and we have our old, you know, like full nodes of the main Gle chain. And now you, now we have like 10 parachines and you are the collator of the parachines seven. So assuming let's say let's the block time is like two seconds or something, like two seconds later, you send me a block like saying, okay, according to you, this is the next block. do I need to trust you in any way that? No. Because so what I actually get, so normally, if I just get the block, then I wouldn't be able to judge if it's correct or not. What really needs to be supplied is a state transition proof. So basically it's like a light client proof.
Starting point is 00:26:19 So it's basically tells you everything, tells the collator, everything they need to know, all the parts of the state. and whatever happened in order for the validator to judge it as correct or not. So they don't need to trust the collator at all in order to validate it. They just look on the relay chain, look at this logic for this particular
Starting point is 00:26:39 parachain, execute this logic and then they see, is it good or not? But suppose let's say the block you send has like 100 transactions. I do need to run all of these 100 transactions on my end. So I have the state of
Starting point is 00:26:56 ledger before these 100 transactions and now you send me the block with these 100 transactions and we stayed after executing these 100 transactions. Only the relevant state to your execution. But I do need to run all of these transactions myself as a validator in order to be sure that this block is valid. Yeah, but what I don't need to do is I don't need to do it for every single block. I can be just kind of randomly picked. Oh, now at this block, you are a task with checking this proof.
Starting point is 00:27:30 And I don't need to know anything. The only thing I need to know is be provided this proof in order to check it. So now, like, once I get one of these blocks from you, and I've sort of verified that that block is correct. or in the second case maybe trusted that that block is correct. So when I'm choosing blocks randomly for checking, I'm trusting you for some blocks and in some other blocks I'm actually very fine. Then I as a validator, I take that block.
Starting point is 00:28:04 And with the other group of validators, I sort of finalize that block on behalf of... Yeah, exactly. So there is two types of statements that are broadcasted on the network. One type of statement is validity statement. So basically a validator says, yeah, I got this block and I verified it and I say it's valid. And of course, if someone then says it's invalid, then it can be easily proven and then they can be penalized. So it's very important for the validators to make sure that the statements they make are actually good, valid.
Starting point is 00:28:43 And then another type of statement is just, I've seen this block. It's floating around. It's available to me. And this kind of tells other validators, which blocks, which valid blocks they might want to prefer to other valid blocks. Because they are kind of more validators are claiming that it's actually available and it's actually floating around the network. And given those two criteria, then whoever is assigned to be a primary or proposer on the relay chain is able to then assemble this list of parochain blocks that should be included. And then once that's done, then a normal kind of consensus process can continue from there. okay okay so in effect what it is this is allowing you to do is like for the for us the set of validators of the main chain it is allowing us to leverage the efforts of all of these collators in order to give like scalability to the system yeah exactly it enables us to parallelize this this state construction it does it does enable certain level of scalability
Starting point is 00:30:08 which is definitely beyond something that we have right now and we'll have for a while. But we are thinking about doing things such as second order relay chains. So basically, para chains, which function as relay chains, which enable us to paralyze the action even more of the protocol. So then you could have even more scalability out of that. But that's a difficult topic. So let's talk about scalability a little bit. In the white paper you mentioned, and this is sort of one of the core premises of Pocod,
Starting point is 00:30:50 is that in order to achieve scalability, one of the ways that we can do that is to separate consensus and the state change or validity. Can you explain why a blockchain that combines those two functionality, is unable to scale, in your opinion? There's two things. So when we run a blockchain, the primary concern is for all the state transition to be to be valid. So we don't want any transaction that come out of zero balance accounts and things like
Starting point is 00:31:30 that to be in our chain. But given the state transition rules, we still can have a large, number of different chains. So then once we, once we have this large family of different possible histories, we need to choose just a single history out of all of those. And then this is, you can call it canonicalization or coming to consensus over the state of the network over the chain. And basically that the thing is that validity of the,
Starting point is 00:32:08 a particular blockchain is completely objective. So to a certain degree of because given a particular implementation that can check if a if a if a blockchain is valid, it will always give the same output. There can be no disagreement. And if there is this agreement, then it can be proven that, like, who, is the misbehaving party basically or who is who is the party that is not not following the protocol. So this validity checking can become like it can be done by as many people as as we want and they can be all providing us with lots of information about this validity. And the second thing is
Starting point is 00:32:58 picking among all those valid solutions is which which has to be done in some in in in in a communicating between communication between different parties. So for instance, a consensus algorithms such as tender mint or pbft requires lots of lots of a few rounds of communication between different nodes in order to figure out what is that the canonical chain or even with with Bitcoin or Ethereum you could argue that the confirmation time is basically the time for the network to agree on a particular chain because basically with every issued block, a particular minor communicates to other people that they trust the chain that is below that block or they think it's canonical that chain below that block.
Starting point is 00:33:51 So basically by splitting the two and not trying to have everyone that is participating in the consensus also validating stuff and the other way around also not everyone validating having to participate in consensus. We can have this tight group of people that can actually communicate because the communication scales pretty badly, but a much larger group of people that validate stuff. So in this case, all the collators are looking at all the blocks on all the different parochains and checking their validity. Well, you have a smaller group of validators that are only responsible for doing the actual communication and validation, which scales pretty badly to large numbers.
Starting point is 00:34:36 Okay. And so talking about some things in a more practical sense in a Pocod world. So let's imagine, say, like, you know, in five to 10 years from now, you know, Pocod is a massively successful network. There are, you know, hundreds, if not thousands of parochains using the Pocodot consensus and validators validating transactions from those pair of chains. You know, Bitcoin ported over and now Bitcoin is using that consensus. And, you know, we can wish we'll thinking, right? Yeah. Now, so what would that look like in practice? Who would, so where would the, you know, say the Bitcoin blockchain, where would the blocks be stored? The transactions, would they be stored with the parochane users or are the validators or perhaps the collators storing the finality, the blocks?
Starting point is 00:35:34 Yeah, so most users would actually have clients that synchronize the relay chain. And then if they want to look at any sort of information or want to submit transactions on the paracchain, there will be a light client protocol that will enable them to fetch their relevant bits that kind of hang off of their relay chain. So they would be able to access all the different parochains at the same time. But actually who would be providing the full notes on all the different paracains, it would be the collators. So for them, it is necessary in order to provide valid state transition proofs. It's necessary for them to maintain state and also maintain potentially history of that parachain. So they could be providing both the proofs and the.
Starting point is 00:36:34 for users and for the validators. Okay, so the collators that are sort of sitting, that have full nodes are relaying blocks and sort of storing the blockchain for that parochane so that, for instance, like the Bitcoin blockchain users don't have to store like the, you know, the, like, Pocodot Ethereum implementation, and the validators in the network
Starting point is 00:37:01 don't have to store every single, from all of the different parochains that are on. Yeah, they don't have to store anything. They just listen to network messages, do some computation, and reply to those messages. Okay. And what is the incentive for the collator? So can you talk about the incentive mechanisms for validators, collators, the nominators, the nominators, like all the different participants?
Starting point is 00:37:25 Do they all hold staking tokens? Do they all stake something? Yeah, so a lot of it is actually pretty flexible in the protocol. So, for instance, when we think about why would the validators decide to add a parachain or not, one of the reasons might be because simply this parachain provides some utility to the network as a whole. And because they hold a lot of stake in the network and they use it potentially as well, you know, they just want to add that parachain. Or maybe the parachain proposes a one of a fee to the validators for adding it.
Starting point is 00:38:12 Or any other, or maybe some sort of sharing of the transaction fees that are happening on that particular parochain. So a mechanism kind of for reward can be anything. For validators, thanks to the fact that they are staking, their dot-tube. tokens are not getting diluted on the network. So that's the primary thing. And then there might be some additional mechanisms where they are able to actually manage some of the issuance of the token on the relay chain as well for the validators. And of course they are penalized for invalid actions as it is usual in proof of stake.
Starting point is 00:39:00 for collators it can also vary like most of the time they will most likely be rewarded with the transaction fees because they are the ones to include or not include
Starting point is 00:39:15 transactions so they are the ones that should be you know at least through the rewards will be going through them for the transactions so just like minors but they could be provided also additional additional rewards
Starting point is 00:39:30 especially because they maintain full nodes on the parachain. They will be provided services to light clients and other things like that. And as for the stake, it might be that the validators, because they don't want to have any invalid proofs being provided. They can either make use of a reputation system or they might actually require the collator to hold some stake in them or in the network as a whole in order to be considered as a collator. So regarding all of these incentive structures, so my impression is like one of the things that seems to be lacking in the Polka dot paper is a very defined incentive model. right so what what is the current state for for these incentive incentives
Starting point is 00:40:28 incentives structures are you going to propose like one one particular incentive structure or are you going to leave it open for the market to discover what I mean here is like for example the incentive structure for collators this sort of seems quite quite open at this time there will be definitely there needs to be at least one one incentive mechanism I think a reasonable one is to have collators to be given the transaction fees. The validators simply be the ones that receive the issuance on the relay chain. And that's the simplest thing.
Starting point is 00:41:16 And of course, any sort of fisherman or invalidity proof submission, First of all, it requires a small bond to be submitted so that you cannot expand the network with invalidity proofs. And then there is a large reward for providing any proof of invalidity. And that's a kind of simple scheme. I'm just saying that it's important just as the consensus mechanism, state validation. it's also important to leave the incentivization open because we want to keep it fairly minimal what sort of things are specified
Starting point is 00:42:01 and imposed by the protocol so that it's flexible and can adapt into the future and only specifies the per minimum of things. But of course, we need to have at least one set of kind of, you know, at least one para chain so anyone someone can at least use it at least one incentivization mechanism so yeah the one that I mentioned is a good contender this episode is brought to you by ShapeShift the world's leading
Starting point is 00:42:33 trustless digital asset exchange quickly swap between dozens of leading cryptocurrencies including Bitcoin Ether Zcash Gnosis Monero Golem Ochre and so many more when you go to shapeshift.io you simply select your current pair, give them your receiving address, sent the coins, and boom. Shapeshift is not your traditional cryptocurrency exchange. You don't need to create an account. You don't need to give them your personal information, and they don't hold your coins. So you are never at risk from a hacker or other malicious actor.
Starting point is 00:43:07 Shapeshift has competitive rates and has even integrated in some of your favorite wallet apps like Jacks. So you can swap your digital assets directly within your wallet just as easily as putting on your slippers. Whenever you see that good-looking fox, you know that's where Shapeshift is. So to get started, visit Shapeshift.io and start trading. And we'd like to thank Shapeshift for their supportive Epicenter. Can you talk about the consensus algorithm in Pocodat?
Starting point is 00:43:33 Which consensus algorithm will you be using? Is it sort of an off-the-shelf algorithm or something that you've developed internally? So really in parity, the consensus is there is a pretty good abstraction or division between the state machine and the consensus mechanism. So it's pretty easy to swap out what kind of consensus is being used in a particular situation. We are still going back and forth between something that requires more messages. and has more of an instant finality, so something like PBFT, and something that is a bit more delayed in finality, or you could say as asynchronous in some way,
Starting point is 00:44:28 where actually blocks can be released just as in proof of work sequentially, and then after a while, after a while, that particular, chain becomes final given the blocks that have been issued on top of that particular chain, which makes it possible to have much less communication between the nodes, but at the same time delays the finality. So I think that the consensus that we are converging on now is a consensus where a bit similar again to something like proof of work, or maybe you're familiar with Aura consensus that is implemented in parity where where where their their blocks are being issued without any negotiation
Starting point is 00:45:17 between validators but then but then as the as the blockchain grows validators can issue can sign off on particular chains ahead of time so so normally they would only sign off once the new they release a block on that particular chain by kind of confirm that this chain is good that I'm building on But now they will be also, in addition to that, be able to issue some statements about the chain to kind of finalize it ahead of time. So it will be kind of optimistically releasing blocks and then trying to also as soon as possible finalize them. So in some cases the finalization would take a bit longer or a bit shorter, but you'll be always sure that once it's finalized, it's finalized. So no probabilistic finality like in proof of work. but at the same time less work to be done than with something like tender mint
Starting point is 00:46:11 where you need to have two rounds of messaging in order to agree on a block before it's being released. So is this another version of practical Byzantine fault tolerance or is it like a completely different consensus mechanism? It's different since all of the practical Byzantine fault tolerance stuff always kind of it's always instant finality so basically you know every every block is treated
Starting point is 00:46:40 as a separate kind of consensus issue rather than something like NACA motto consensus where you know really the whole chain is treated as a kind of eventual consensus issue so
Starting point is 00:46:55 it kind of draws from the from both of those things by kind of achieving finality only once the kind of traditional BFT conditions are met, but at the same time being a little bit more lenient in a way, such as Nakamoto consensus, by allowing blocks to be built without having to agree on every single block ahead of time.
Starting point is 00:47:24 Can you repeat the name of this consensus algorithm? It's not named anything. So you can have a look at Aura, which is in parity right now, and then you can look at BFT. And, you know, so I'm working on prototyping it right now and, you know, we'll be releasing more information, hopefully getting the community involved in some of the research work as well. Okay, so Folka.Dar the project is inventing both a new consensus mechanism and a mechanism for... So that might not be actually the case.
Starting point is 00:48:04 We could, you know, it could be start working straight away with something like hendermint or with something, you know, like our route, we just want to make it, you know, as good as possible. And if we think there is some kind of nice way to improve it, and we will, the way it will be built, it will be upgradable. So again, this is just one example strategy that we are providing for the, you know, for the validators to communicate with each other, while actually the mechanism will be described in the logic
Starting point is 00:48:39 that is on the relay chain that can be changed as the time goes on. So it's a little bit maybe akin to what... Yeah, definitely something like Casper, for instance, also the aim is to have it implemented. as contracts. So once the PocaDot network is launch, I guess the assumption is that there will be
Starting point is 00:49:09 developers that will want to build parachains on top of Pocod. So, for instance, one could imagine a Zcash implementation on Pocod, an Ethereum implementation on Pocod, or even any type of
Starting point is 00:49:29 blockchain, really. Now, would it be possible and how would this work if Bitcoin or the existing Ethereum blockchain or the existing ZCAS blockchain would want to interact and transact with these sort of natively compatible polka dot relay chains or a pair of chains, sorry. So there is, for the existing chains, there will be those bridges, which I was talking about before. And each bridge will be a bit different for each kind of existing chain. There will have a number of similarities, but each chain has to be treated separately.
Starting point is 00:50:20 And basically for Ethereum, it will be fairly straightforward. So there will be a particular. contract on the Ethereum network that that will be like a breakout contract which enables Ethereum contracts to issue messages onto the polka dot network and then communicate with other with parachains on the polka dot network with with Bitcoin it will require some protocol alterations so in particular snore signatures which are actually on the roadmap of the of the Bitcoin project so so it might be that will be implemented.
Starting point is 00:51:01 For other chains, it all depends on a particular chain, what sort of capabilities it has. But there will be usually some account or a contract that enables you to issue messages out of that parochain. And then the messages that are being received will be injected as simply as transactions
Starting point is 00:51:24 into that particular parochain. So any other parachain will be able to construct a transaction that then is issued on that parochain. And of course, you know, another way is just to simply, you know, we've been speaking with Zcash company to, for instance, implement a parachain with similar capabilities that is more tightly coupled with PolkaDOT. So then, you know, you can leverage the same functionality if you are not actually very tight to. to that independent chain. So I was thinking about something earlier and I want to bring it up at this point and that is sort of the economic
Starting point is 00:52:06 the economics at play in blockchains. And so if you think about the network effects that are required for blockchain to be successful, that is very much dependent on that blockchain sort of living in a silo as opposed to another one. So if Bitcoin is very successful, it's because a lot of people are using it.
Starting point is 00:52:31 There is a security model that is robust and that is trusted, and people are building applications and businesses and things on top of that. And that's very much true for Ethereum as well. And they sort of compete in their own, in their separate silos. But as soon as you create an interoperability layer, my feeling is that some of those assumptions kind of go away. So if all of a sudden we have an Ethereum implementation on Pocodot, and that implementation provides the exact same features as Ethereum, and all these blockchains can interact with each other, that there would be some consequences to how we perceive the value of these of these blockchains. I want to know if you thought about this, if you agree with this, and how do you think this
Starting point is 00:53:24 this new ecosystem will play out. Yeah, I think it's a good point. Like a lot of momentum behind the blockchain spaces due to those effects. I think, I think, of course, there will be one effect, which is, you know, the relay chain by itself doesn't have any functionality. So really, you know, adding the capabilities of the different parochain will make people want to use Polkazil. and will make it kind of, you know, the polka dot itself will become something, something that is,
Starting point is 00:54:03 that is interesting to people and they want to potentially get involved with. So just the community will be much bigger. It will consist of lots of sub-communities that kind of all try to work on this kind of common network. hopefully. The other thing is that I think it's true of many different industries and many different issues of many different projects in the world in general
Starting point is 00:54:39 where, of course, by opening yourself up, you do give up some stuff, but at the same time you are able to leverage if there is a group of people, it's like prisoners, a dilemma or in general some game theoretic dilemma where you have a group of people that open themselves up, then the sum of all those different things is hopefully much bigger than any single one of those things.
Starting point is 00:55:07 So in general, I think hopefully PolkaDot will kind of unlock this and make everyone better off by being part of the, of the network, both from the functionality perspective, you know, you will still, like on Ethereum, a lot of, a lot of the tokens that are being issued don't create actually a new blockchain. Right now they create different platforms that are running on the top of the blockchain, you know, you don't really need all those kind of fundamental different protocols. And it's yet to, you know, it's yet to be seen how much utility is, you know, up to a certain
Starting point is 00:55:48 case, this incentive will be there in the early days, but once we need to have some applications on the particular para chain, then maybe some of those completely separate chains will fall flat and won't be actually delivered much while PovCadot will be hopefully very fully featured and able to provide everything that is needed for someone to build a good decentralized application. So one question I had is on a high level Like PolkaDot seems to be like part of this This next wave of blockchain protocols Which can be called like internet of blockchains in some form
Starting point is 00:56:32 Right like many different blockchains interoperating in some way And giving like a total set of functionality Is much bigger than current blockchains can ever give So another project in this space is cosmos. So, like, tell us how PolkaDot and Cosmos are different. Yeah, for sure. So, so first of all, I think that kind of from a more general perspective, PolkaDOT is designed to be pretty low level, very generic.
Starting point is 00:57:11 So one outcome of that is that the transactions that can be related between different chains can contain any sort of data. They're not limited to just token transfers. And it's very important for us not to not to make that, not to impose that it's supposed to be only tokens. We already see some certification contracts, let's say, or maybe some identity services, up and although all of those require general data transfer and we'll see what comes out later. So the kind of general messaging focus is something that PolkaDOT brings in. Second of all, this ability to have basically any sort of, so there are two things are linked, different state machines and the pooled security. So something like Cosmos, it does connect different chains together,
Starting point is 00:58:17 but each of the chains has to run its own consensus mechanism, potentially have its own set of stakers that are securing that chain. So if you want to run a new chain, then it can be a bit of a hassle. You need to gather a whole community around it, and only then it will be secured. With polka dot, you the only thing, you can just persuade the rest of the existing polka dot community that actually this state machine brings some utility to the table.
Starting point is 00:58:51 And then it's a little bit like deploying a contract. So you just put this logic up there. And then it just becomes magically a new chain. And then it's secured with the whole force of the, of the full stake of the PolkaDot network. So this brings, you know, the ability to innovate much easier, iterate on the different state machines and so on. So I think those are the two main differences,
Starting point is 00:59:20 kind of pull security and those more general transactions. So this means like if in the future there's both like Cosmos and PolkaDot working? Yeah, yeah, absolutely. If, if, if, if, if, if, if, if, if, if, if, if, if, if, if, I'm thinking in from the perspective of, like, an investor that's taking a bet, right? So in, in cosmos, sort of the, the kind of bet you're taking is that there will be, like, many successful coins. And because there are many successful coins, there can be, like, many successful blockchains, each very secure. And then you can move these coins. around in the cosmos system.
Starting point is 01:00:06 Whereas like with Polka dot, you're taking a more a bet on the other kind of future in which you're saying there may not be a lot of big successful coins. There might be just a few like the dot coin might be very massive market cap and you don't need other coins to have big market cap. So the dot token can have a huge market cap and it itself can secure a lot of different change together. So for instance, in the case of in the case of of of of of of of of customers you don't necessarily need to have new tokens for for each chain. It, you know, there can be any sort of tokens and and existing tokens can be used for securing different
Starting point is 01:00:51 chains. It's just that it's more about gathering the communities together and the same for on the other hand for polka dot you could have you could also have have multiple tokens and potentially multiple protocols as well interacting with each other and where on different para chains you also make a new native token with each para chain that you deploy and in order to pay for computation on that para chain you need to have that that token which is basically like deploying an Ethereum chain right with the token where you need to pay for smart contracts right so so you could also have lot of of different tokens on PolkaDots.
Starting point is 01:01:35 So I think, I think it's just, I would characterize this cosmos focus on maybe more, more of a very particular problem. And like it's, I think, I think it's very, it's very good to kind of have a good solution for this particular problem of a token exchange or on independent tender mean chains. And, you know, it can work with the PolkaD network as well. But I think it's important for Polkao to be generic and provide at least similar functionality as well. But yeah, we'll see, I think. But it will be definitely that the two networks can interact with each other and both can support different tokens. So these are not the only projects that are aiming for blockchain interrobability. There are others.
Starting point is 01:02:34 And I presume that there will be more projects trying to achieve this sort of high-level blockchain interoperability, right? So this idea of internet of blockchains, as mayor was referring to earlier. What do you think the ecosystem looks like in the future? Do you envision a future where there is one blockchain of blockchains? similar to like the internet, we have one internet network that is, you know, that's predominant and that has the monopoly. Or do you see an ecosystem where there are multiple blockchains of blockchain of blockchains running, you know, different types of networks with different types
Starting point is 01:03:14 of characteristics? And we haven't even talked about like consortium chains and, you know, in this context and how they would interact with these types of blockchain of blockchains, like a polka dot. What do you see in the future? consortium chains as well. But I think, I think, so what is important for the Polkao project is to enable, basically enable as much as possible. And then it will be up to, up to the community that uses the technology to decide how they want to use it. So it certainly can be, it can evolve in such a way that there is this top level relay chain. and then there are those lower order relay chains in the polka dot network
Starting point is 01:04:01 and it's kind of all kind of ends up in a one huge clamp that is very distributed and very parallelized but at the same time can all kind of is under the same umbrella of polka dot and this certainly seems to make a lot of sense if we are able to nail down this extensibility so varying state machines so that everyone can do their own thing and this parallel validation so that we don't you know there is no kind of bottleneck to this do the scalability
Starting point is 01:04:35 but at the same time because because you can you can bridge other chains to polka dot which are kind of independent you could have potentially other chains that also communicate with polka dot but are more independent and this is something this is a case where with something like consortium chains where a consortium might want to rely on the might want to make use of the communication with other chains they might not want to have anything to do with any tokens or anything like that but they still might want to use some some information from the relay chain like identity and they
Starting point is 01:05:16 might want to sometimes outsource their consensus algorithm but they might want to have an option to always step out and use their own kind of set of authorities to maintain the chain. And polka dot should support this sort of stepping in and out and and being connected while separated and potentially, you know, if the community thinks it's right, maybe maybe have another relay chain that is connected as a bridge to this relay chain and lots of other things. So I think what polka dot enables is it enables this sort of more tightly neat community. that is very extensible and very kind of evolvable, but at the same time, you know,
Starting point is 01:05:59 I don't think it imposes this sort of framework. I think it will be very interesting to see. And I think we haven't seen just that much of this single, extensible network type of thing before. So, and we see a lot of potential for it in terms of use cases, consortium and public chains. Yeah, I mean, I can definitely, if we look at the recent history, I think it would be difficult to see a future in which there is one, you know, one internet of one internet of blockchains, uh, blockchain, um, that is sort of running the consensus for everything a one. I mean, you know, just look at what's happening in, in Bitcoin and what happened earlier with Ethereum and, uh, and the, the, the communities that are, you know, divided, uh, about,
Starting point is 01:06:49 you know, sort of mean, not meaningless topics, but pretty trivial topics. sometimes. So, yeah, but this sort of discussion can also, like, we are, think, pretty early stages. I think a lot of, a lot of this disagreement could stay there, but it could be at the lower levels in the stack, so to say. So people might stop being concerned about some kind of, or actually might stop being concerned about some low level things in the stack and actually be pretty happy with the utilities that are being provided and slowly evolve some of them.
Starting point is 01:07:21 I don't know, like TCP. or some kind of low-level protocol, but then still, you know, have wars about some, you know, how the state machine should be changed or like where you should migrate your stuff and like all sorts of other things. So I think we'll see how the whole space evolves. I think we are early with maybe, maybe it is the case that it will kind of coalesce at one layer on that. You're very optimistic because I can see, you know, the people, you know, like people in the
Starting point is 01:07:49 community is definitely fighting over things like. you know, like low level functionality. But, you know, I guess we'll, we'll see. Let's not put our money on that. So let's briefly talk about the Web 3 Foundation. So we mentioned earlier, you're a council member there. Can you talk about the Web 3 foundation and what its goal is with regards to Pocodon? Yeah, absolutely.
Starting point is 01:08:14 So with Pocadot, we want to make sure that the wider community is, is being built around it and PolkaDot is just one part of the wider Web3 vision idea and by itself it won't enable people to build decentralized applications that are very useful
Starting point is 01:08:41 I think it will provide some useful tool but it won't provide everything so the Web3 Foundation has been established to promote and support the development of different Web3 technology. So the first project is PolkaDOT, but there is a number of different projects. We are looking at the project called Matrix for distributed messaging, and then, of course,
Starting point is 01:09:14 whispers, swarm, and potentially other technologies later down the line, and supporting different groups. So the foundation itself won't be doing any of the work. It will be just supporting external groups that do the work. There will be technical counsel in the foundation to kind of figure out what are good things to pursue, what kind of research should be done. So there will be a bit of research done at the Web 3 Foundation
Starting point is 01:09:42 that supports all the people that implement stuff. But also research will be funded at universities, that contributes to the work that the people that implement staff are doing because often as we found, for instance, at parity, we don't have that much time to research stuff and it will be great to kind of point someone in the direction or we are curious about that and then someone do a bit of research that then we can leverage to build some cool technology
Starting point is 01:10:14 for people to build on top of. So that's the Web3 Foundation. and yeah hopefully we will be talking more about it and have some more information available about it as the time goes on and I presume that at some point there will also be some sort of funding period do you can you just not to go into details but can you tell us about when that that will be yeah so we are planning to we are planning to do it um like hopefully in the in the in the next month we'll see how it goes. But basically it will be related to the polka dot project. There will be the dots, which are the staking token in the polka dot network will be distributed. And if you go to polka dot network, you can see a bit more information about it and you can subscribe yourself to kind of keep posted.
Starting point is 01:11:19 the most of the tokens will be distributed and fund the development of Pocadot, but also of some of the other projects supported by the Web3 Foundation. So where can people find you? Where can the communities of gather around Web3 and Pocodot? Yeah. So we are looking out for different types of community members, so definitely people that are working on new blockchains, reach out. We would be very interested to kind of think
Starting point is 01:11:55 how we could work together to make your chain part of the PolkaDot network. You can reach out to me at Peter at Web3.Foundation or go to the channel on polka dot network where most of the team hangs out. Or if you are more interested in the technical side of things and actual polka.com implementation, have a look at polka.com.io.
Starting point is 01:12:32 It's a separate website which deals more with the current progress of the project. It outlines the roadmap. And also there is a link to a more technical chat about the paper and the protocol economics and so on. All right. Well, Peter, thank you so much for coming on the show today. It was a fascinating discussion about Pocodot
Starting point is 01:12:54 will be looking forward to hearing more about that network in the future. And then hopefully, you know, it will be very successful and a lot of different pair chains will come out of that. I'm looking forward to, we didn't really get to talk about this very much, but I'm looking forward to seeing how this can be used or leverage as a general consensus as a service for, you know, things like enterprise chains.
Starting point is 01:13:16 and consortium chains and things like that. So looking forward to hearing more about Pocodot and good luck on the funding. All right. Thanks. And thank you to our listeners for once again tuning in. We are part of Let's Talk Bitcoin Network. You can find this show and lots of other great shows at let's talk bitcoin.com. If you want to support us, there's lots of ways you can do that. You can leave us a tip.
Starting point is 01:13:35 The tipping address will be in the show description. And you can also leave us a review wherever you get your podcast, whether that be iTunes, Stitcher or anywhere else. So thanks so much. And we look for being back next week. Thank you.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.