Epicenter - Learn about Crypto, Blockchain, Ethereum, Bitcoin and Distributed Technologies - Jae Kwon: Cosmos – The Internet of Blockchains

Episode Date: February 14, 2017

One of the key issues with blockchain networks is the lack of interoperability. In the early days of Bitcoin, blockchain interoperability was far from people’s minds. However, as new networks contin...ued to emerge and gain traction, the ability to move assets freely from one blockchain to another has become a critical feature. We’re joined by Jae Kwon, CEO and Founder of Tendermint, the team which is launching the Cosmos Network. Cosmos aims to build the internet of blockchains: A global network of blockchains, connected through hubs that allow trustless token transfer. Jae joined us to discuss the Cosmos vision, the underlying Tendermint consensus algorithm and upcoming fundraiser. Topics covered in this episode: What Cosmos is and the problems it hopes to solve How Tendermint and Ethereum relate to Cosmos How Cosmos differs from other attemps to solve blockchain interoperability Cosmos’ consensus algorithm, BFT-PoS The role of Hubs and Zones in the Cosmos Network Cosmos’ native asset, Atom, and its role in creating liquidity for inter-blockchain exchange How validator nodes will be chosen Governance in the Cosmos Network Applications for Cosmos The Atom fundraiser and Cosmos’ product roadmap Episode links: Cosmos: Internet of Blockchains Tendermint Epicenter 113: Tendermint - Private Modularized Blockchains Cosmos Whitepaper This episode is hosted by Meher Roy and Sébastien Couture. Show notes and listening options: epicenter.tv/170

Transcript
Discussion (0)
Starting point is 00:00:00 This is Epicenter, Episode 169 with guest, Jay Kwan. This episode of Epicenter is brought to you by the Merkel Week, a blockchain conference, training seminar, and hackathon taking place in Paris from March 9th to 12th. Learn from leading experts and get certified on building blockchain applications designed to enhance organizational governance. Get your tickets at Merkelweek.com and use the promo code Epicenter to get 30% off early bird tickets. And by Jax. Jacks is the user-friendly wallet that works across all your devices and handles both Bitcoin and Ether.
Starting point is 00:01:03 Go to JAWX.io and embrace the future of cryptocurrency wallets. Hi, welcome to Epicenter, the show at stocks about the technologies, projects, and startups driving decentralization and the global blockchain revolution. My name is Sebastian Kuchio. And I'm Meheroy. So when I went to DevCon last year, what I realized is that the Internet of Blockchains is going to be one of the big themes for this year. There are multiple projects that are trying to build systems in which multiple blockchains
Starting point is 00:01:38 could somehow coordinate with each other and transfer money or programming logic, etc. One of the projects in this field that is about to do a crowd sale is called Cosmos. The Cosmos project comes out of the same team that got us tendermint. Today we are joined by Jake Wan, who is the co-founder of Cosmos to discuss the internet of of blockchains and their specific approach to it. Jay, welcome to the show. Hey, great to be here. So Jay, you have been on the show before and I think a lot of our listeners know you, but perhaps it would be nice for us to know your journey into the blockchain space and what you've been up to the past few years. Sure. So I guess to summarize the past three years, we got really excited about
Starting point is 00:02:28 Bitcoin in 2012, 13, and I wanted to find a better way to have consensus without the proof of work component. And so I discovered BFT algorithms, Byzantine fault-tolerant algorithms that was developed in academia. And I iterated upon it to create a tendermint consensus algorithm. And we created this open-source project called tendermint so that anyone can create their own blockchain easily without having to worry about like peer-to-peer networking or consensus or transaction broadcasting. So we solve all of that for you so anyone can create their own blockchain and cryptocurrency easily. And with that, we're creating Cosmos, which is the internet of blockchains. So tendermint has been around for for a few years now. It has
Starting point is 00:03:22 definitely gained traction and reputation as I say one of the leading permission blockchain systems that is often referred to when you talk to enterprise clients. It was also a major component of the ERIS stack. Tell us, since you started tendermint and since the last time we spoke, what have you seen in terms of applications being used on tendermint? What does that last year and a half, I think, look like? Well, we haven't even released like a production version of Tendermit yet, so it's still early in the beginning. And we haven't seen any proof of stake blockchains launch on Tendarmint yet.
Starting point is 00:04:13 So Cosmos should be the first live proof of stake network. And the purpose, you know, one of the main reasons to get Cosmos running soon is so that we can prove and that tendermint. But that said, there has been a lot of support and usage of tendermint in the enterprise blockchain space. So you mentioned ERIS and ERISDB was based on tendermint. They had a proof of concept with Swift creating a system there. It was looked at internally by R3 and we've got many new startups, blockchain startups, building on tendermint today. The applications are varied. So we've got like energy companies with energy credits building on tenement. I've got companies building logging systems so proof of
Starting point is 00:05:05 existence of documents and we've built out some proof of concepts as well. So people were looking for like an Ethereum blockchain that didn't require Ethereum's proof of work. So we created Etherment which is a combination of tendermint and Go Ethereum so you can much your Ethereum test net or private net without having to deal with the proof work part. And people are building on that too. Yeah, I mean, that speaks to me. Stratum is also building things on tendermint.
Starting point is 00:05:39 In fact, we're working on some technologies that are utilizing the tendermint BFT, proof of stake algorithm. And it's been really well received by our clients. and then the projects that we're working on. So, yeah, thank you for building such a great platform. Awesome. Glad to hear. So now you're using, like, the Tendament Consensus algorithm to build a new kind of network, right?
Starting point is 00:06:07 And most of our show is going to be concerned with the new features of this network, which is called Cosmos. But once you start building Cosmos, what happens to Tendoment? Do you keep supporting the enterprise customers that are building on? on just pure tendermint? Yeah, absolutely. So the reason why we split off tendermint into this like standalone component. And what it does, it's the problem that it solves, it's very well-defined in narrow and scope. It solves peer-to-peer networking, consensus, and transaction broadcasting.
Starting point is 00:06:45 It has RPC endpoints, so you can program with it. It provides the blockchain structure. But, you know, the way it's designed, you're supposed to provide. your own state machine or your application logic so that the transactions have meaning. And we've designed tendermint so that it is, it can be a common component, infrastructure layer for all blockchains. And we need it for Cosmos. So certainly we'll be continuing to maintain it and develop it further and make it more even more secure as time goes by. Yeah, tendermint is here to stay.
Starting point is 00:07:22 All right, so let's launch in to Cosmos. I mean, those who are interested in learning more about Tenement, obviously you can go to Tenement's website, or you can listen to Episode 113 of Epicenter, which actually we did a year ago in January, early January of 2016, where we interviewed Jay. I think Ethan was on and also... Dustin Bindon.
Starting point is 00:07:46 Dustin, yeah, Dustin Bindon. So do check that out if you're coming, into tendermint and not really sure about what it is. So yeah, let's talk about Cosmos then. So explain to us, in your words, what is Cosmos and what problem it's trying to solve fundamentally? So Cosmos is, it's a network. It's an internet of blockchains. So, okay, so what's the blockchain network? Today, we've got many blockchains, public and private, and they're not really talking to each other. There are ways to like get tokens from one chain to another using like a centralized exchange or there are advanced
Starting point is 00:08:29 protocols for even cross-chain exchanges but nothing quite on the order of like TCPIP or two computers like my laptop speaking to a server using the internet like this hasn't happened yet and the reason why is because of the limitations of the consensus approaches and whatnot. So with tendermint, we figured out a way to have blockchains communicate. And we discovered that some of the major pain points of cryptocurrencies and public blockchains today, namely interoperability, scalability, and speed can be all of them simultaneously addressed with a better architecture for blockchain communication. So Cosmos is a network of blockchains. And it's, meant to bridge many independent sovereign blockchains together. It's meant to connect to Ethereum
Starting point is 00:09:30 and Bitcoin. These are two public blockchains that will be connected to the Cosmo system. And we'll also make it very easy to develop new proof of stake public change, but also private and consortium change to connect to the Cosmos network so that tokens, coins, can be transferred from one blockchain to another, seamlessly. So it seems that in this space, there's now starting to be a lot of different visions about internet of chains. So I think I remember in 2014, the sidechains project with Bitcoin was probably one of the first projects that I could see headed towards the vision of an internet of chains.
Starting point is 00:10:20 but assuming that all of these chains would basically handle one asset that is Bitcoin. And now you have Cosmos and then there are other projects as well like I think PolkaDot is one of the ones we interviewed. So during the call it might be very interesting to go through like what is the difference in your approach, right? And what is the speciality of your approach? Before we get to that, perhaps you could start with a simple. question that why did you name this thing cosmos so I like simple names and I'd struggle to find a name for this one for a long time and and it just kind of came out of the blue cosmos means when you look up a definition it means the
Starting point is 00:11:07 universe as seen you know the universe seen as a well-ordered hole and that seemed to fit well with what like blockchains are about you can think of blockchains as being a tool for committing transactions and defining the order of them in such a way that it's secure and immutable. So if you think of the internet of blockchains, it's full of these blockchain, you know, galaxies or whatever, all committing transactions in order. And so, you know, the whole universe of these blockchains seems like it should be called Cosmos. Okay, that's a nice analogy. So describe to us what the Cosmos network is. How does it work? So it's many things, particularly many blockchains.
Starting point is 00:11:55 And, you know, there's also protocols for blockchain communication. So I'll try to dive into all those. The first blockchain that's going to be launched in the Cosmo system is called the Hub. So we call it the Cosmos Hub. We haven't really decided on a name for it yet. So we'll just call it the Cosmos Hub for now. And it is a simple proof of stake blockchain with one purpose. The purpose is to be a light client for many other blockchains.
Starting point is 00:12:23 So whether it be a different sovereign chain that's based on tenement proof of stake, or whether it be like an adapter bridge blockchain to connect to things like Ethereum and Bitcoin, or even blockchains that the Cosmos hub validators decide to launch as auxiliary services for Cosmos, they will all be connected to the Cosmos Hub. The Cosmos Hub will be a like client for all of them, and all of those blockchains will be tracking and be a like client of the Cosmos Hub as well. So we've got this kind of clearinghouse or custodian at the center called the Cosmos Hub. It's at the center, by the way, but it doesn't mean it's centralized necessarily.
Starting point is 00:13:14 It's a decentralized custodian, because it's a blockchain with many independent actors working together to come to consensus about its state. So that's the first component that we're going to launch. Then we're going to build bridges to Ethereum and Bitcoin. Those two being the primary public blockchains, it's, I think, important to bridge them. And we will bridge them by creating adapter zones or bridge zones that sit in between the Cosmos Hub and, say, Ethereum and the Cosmos Hub and say Bitcoin. And once we have that, we're also going to build another zone or blockchain called the Cosmos Dex, D-E-X, meaning distributed exchange.
Starting point is 00:14:01 So that will be its own blockchain run by the same validators as the Cosmos Hub. And its purpose is to function as a distributed exchange so that any token in the Cosmos network can be exchanged for one another. So that's it. Starting with the hub, a multi-asset token at proof of stake chain, building bridges out, the cosmos decks, and making it easy for new proof of state chains to connect to the cosmos ecosystem. One thing that's really telling in the way that you present Cosmos,
Starting point is 00:14:35 you present it as a solution that is scalable, that is interoperable, and that is fast, right? That addresses this issue of speed. And there's, it's kind of funny to me when I saw this little video on your website and you present these issues. It says that, you know, Cosmos addresses the issue of blockchains existing in silos. And it's so telling that even in the world of blockchains, these infrastructures are existing in silos when blockchains, from my perspective, and the way that I sort of sell them to people. just this afternoon, right?
Starting point is 00:15:14 It's like, what are blockchains trying to address? They're trying to address the issue of silo databases. And already we're seeing that the blockchains themselves are siloed. It's incredible that we now have to create, you know, unsilored blockchains by building overlay networks and that this wasn't, you know, one of the things that this wasn't addressed when construction blockchain architectures. You know what I mean? Yeah.
Starting point is 00:15:39 A lot of people think that because blockchains are decent. centralized and it's got many machines connected to it all working together in unison that like you know Obviously that's it right like you only need one blockchain and they're all going to be connected together and and and and and and committing you know running transactions and so on But but in reality the problem with a single blockchain is that they're all going to be doing the same thing They're going to be running the same replicated logic And so, you know, it's not one blockchain, it's not sufficient for scaling out to the, you know, transaction throughput that we're looking for, like visa scale transactions. For that, you're going to need many parallel blockchains. Of course, you can use the Lightning Network.
Starting point is 00:16:30 That's fantastic. But if you want to expand into other systems, other use cases like secondary securities, for example, then, and you want to support the trade throughput, that existing markets have in the primary securities market, you're going to need multiple parallel blockchains. Yeah, a blockchain, you're right, it does function as a as a, as a, as a, as a conduit for multiple independent actors who don't trust each other to share a database.
Starting point is 00:17:00 But that's, it's just one database. We still need to connect them together. Let's take a short break to talk about the Merkel week, a blockchain training seminar, conference, and hackathon, taking place here in Paris for March 9th to 12th. The Merkel Week is organized by Eureka certification and it's an event that is designed to help entrepreneurs, developers, and decision makers gain practical experience using blockchain technologies to build distributed governance in their organizations. So it's a four-day event and it's broken up in the two parts.
Starting point is 00:17:33 First, March 9th, there's a full-day training seminar featuring an impressive list of speakers including Gavin Wood, William Mugayar and Peter Todd. You can get the full list of speakers over at Merkelweek.com. And as an attendee, you'll get to participate in training courses and demonstrations for Bitcoin and Ethereum. And these are designed to help you build and test blockchain applications meant to enhance operational efficiency in your businesses and organizations. Then, over the weekend, from March 10th to 12th, you can put all that knowledge to practical use by participating. in the hackathon. And here you're going to get to work with other developers, designers, and entrepreneurs, and you're going to come together, and you're going to work on
Starting point is 00:18:17 real live Bitcoin and Ethereum applications under the close mentorship of those leading experts. And by the way, there's a 10,000 euro prize for the top three teams in the hackathon. So come join us, come spend the weekend here in Paris for the Merkel week from March 9th to 12th. Remember, all you listeners in the UK, that's only a two-hour trip on the Eurostar, so don't miss out. So get your tickets over atmerkowweek.com and be sure to use the promo code epicenter at the top of the checkout page for 30% off your early bird tickets. And that offer is valid until March 3rd. So we'd like to thank the Merkel Week and Jericho certification for their supportive ambassador. What do you think, Jay?
Starting point is 00:19:00 Can there be multiple networks that operate with each other? Or is this like a one-winner type game? I don't think it's a one-winter type game at all. I think of the internet of blockchains as being this concept, just like the internet, where no single sovereignty, no single blockchain can own. So like we can say, and we say that Cosmos is the internet of blockchains because we're promoting Cosmos and we are looking at the infrastructure and the connectivity from the eyes of, you know, cosmos. But all the, even all the blockchains that are connecting to the Cosmos hub, they can connect with other systems too.
Starting point is 00:19:39 So we see, I see, a network of these protocols. There will be a protocol war. It's going to happen all over again. And we're just early to act, but it's going to have to play out. And, you know, let the best protocol win. So, well, that's just a protocol. So when it comes to like inter-block chain communication, you know, we're proposing this one protocol called IBC for packet transmission.
Starting point is 00:20:07 But there are other protocols too, like interledger, to communicate between two desperate, two disjoint ledgers. And it works well, especially with connecting to, like, you know, they've designed it so that it works well with connecting to the banking system, right? So there's still a need for many kinds of protocols, right? So, but in the end, sure, one protocol will shake out. But I don't think that's really what we're, where the drama will unfold. I feel like maybe another thing, another aspect to this, you know, another aspect is these sovereign blockchains, these staking distributions, right? So the, the Cosmo system is going to have stakeholders who hold atom tokens.
Starting point is 00:20:59 Pocodot will have dot holders, and they're going to be a different distribution. So, you know, what does that look like? Is one going to win? I don't think so. I think just like the internet has many popular websites that serve different functions like Google is a search engine Facebook is a social network Twitter is a message bus Different networks are going to come to Define their own niche and solve a particular problem and they will all be connected together. That's how I see it playing out and so for us the Cosmos hub is solving a solving a very particular problem of token coin interoperability. Pocodot is solving the problem of like smart contract scaling.
Starting point is 00:21:44 So like when you've got multiple smart contract systems and you've defined this virtual machine where it is a smart contract and call another contract and do things with it and get a value return back, like that's more general than tokens and it's a different kind of problem, arguably a more difficult problem. And that's what Pocod is trying to solve. And the solution that they're going to come up with is going to look different. Their concerns are going to be different. And I hope, though, that in the end, we both create all of us. We create solutions that can interoperate and leverage the strengths of each of the respective systems. I think that will be the internet of blockchains. So for the instance,
Starting point is 00:22:32 sense, just trying to understand the difference between difference in approach between, say, Cosmos and Polka dot. With Cosmos, what you're trying to do is, let's say, let's say me and my friends, we run one blockchain, Sebastian and his friends run another blockchain somewhere else, and then JN is co-validators are running the hub, right? So in the, in the cosmos network, some token, some asset could flow from our blockchain, the blockchain I am running, let's say, with my friends, to Sebastian's blockchain. And the Cosmos Hub, UJ, basically allow us to manage this token transfer, right? But on the other side, the sense I get is with PolkaDot, the difference that they are trying to do is
Starting point is 00:23:27 there is some smart contract running on one chain. and some other smart contract running on Sebastian's chain and now these two smart contracts have to send messages to each other, trigger computations in the other smart contract and then send replies back. So this is somehow like a harder problem. In your case, you're tracking the simpler problem, which is just transferability of financial assets across chains and there they are trying to solve the transferability of computational results across chains.
Starting point is 00:23:58 Is that right? Yeah, I think that's one way to look at it. I think that's a valid point. Now, like in the future, I think we would like to, you know, when there is, when it makes sense to, we may expand to, you know, solve all kinds of different interoperability problems. But like, we're not trying to create a better EVM. We're not trying to solve the problem of like smart contracts calling other smart. contracts across different zones. We're focused on tokens because I think given the narrow scope
Starting point is 00:24:35 of that problem, it's got the biggest, it'll bring the biggest reward to the entire community. And, you know, I like simple problems that can be solved, that can be limited in scope with the biggest impact. I think it makes for faster iterations. I think, you know, a feature creep is not going to be an issue as long as we like focus on a core mission. And, you know, like, think about the every person that I know who holds cryptocurrency tokens has been affected or nearly been affected by like an exchange hack, right? And these things are bound to happen again because it's hard to secure essential server. And that's what blockchains kind of solve. Blockchains make it so that even if one actor or a few actors in the network get hacked,
Starting point is 00:25:27 as long as the majority are not affected, the system will continue to function just fine. So centralized exchanges getting hacked. The blockchain solves that. And that's why we're creating the cosmos decks, the cosmos distributed exchange, to connect to the cosmos hub so that we don't have this problem anymore. And I think, you know, by us focusing on this,
Starting point is 00:25:52 particular problem of like token security and token interoperability, we can help promote the greater internet of blockchains to develop. So tell us how the consensus in the cosmos hub would work. Under in the very bottom most layer, it's tendermint BFT. So it's a Byzantine fault-tolerant consensus algorithm. There are going to be in the beginning 100 validators and this number 100 will grow exponentially over time. We've said it to grow up to 300 in 10 years. But these 100 validators who are determined by, we'll get into that a bit,
Starting point is 00:26:35 they are signing. They sign messages, they sign votes with each other to come to consensus about what the next block will be. So it's a round-based protocol. Most Byzantine fault-tolerant algorithms that are not based on proof of stake kind of follow this paradigm. And it's not really something that we've created out thin air.
Starting point is 00:26:57 It's based on existing research that had been going on, even before Bitcoin in the academic world for a while. So there's this algorithm called PBFT that came out in 1999 based on, you know, quorum of assigners to come to consensus. We've kind of taken a similar approach. It was based on a different consensus algorithm. that we've iterated upon, but we've arrived at something quite similar to PBFT, but much more suited for the blockchain world.
Starting point is 00:27:29 And that's the underlying consensus algorithm. The reason why we chose we've designed tenement BFT to be this way is because it provides some fantastic properties. One, bot commits are final and they're very fast. So, like, we can have transaction finality on the the order of like three to five seconds and you don't have to wait for any more blocks to get confirmed it's just every block is final um number two uh when it comes to proof of stake algorithms unlike proof of work like you know you've got to think about what's really at stake here
Starting point is 00:28:11 why aren't signers signing you know many blocks uh to try to i don't know make the most money like How is it secure unless there's something actually being burned as there is in Bitcoin? Well, the tenement white paper solved this a while ago, and it starts with the property of our BFT algorithm that makes it accountable. So when there is a double spend attack, you can figure out who's responsible, who caused it, and the number of those who caused the attack is necessarily significant. So, you know, it's robust. And if there is a double spin attack, you can figure out who it is and you can punish them. So it's fast. So that's why we're using tendermint at the consensus layer. On top of tendermint, we've designed a delegated proof of stake system. So, you know, because there's only going to be a limited number of validators, if you have staking tokens and you don't have enough to become a validator, you can, delegate your stake to any number of these validators of your choice and thereby participate
Starting point is 00:29:25 in figuring out who the validators are. So you can, you can, you can, you have a vote in what policies they choose to adopt, right? Unlike other delegated proof stake systems like the BIT shares delegated proof of stake are, or the delegators in Cosmos are actually putting their tokens that stake. So they have skin in the game. So it's a different kind of delegated proof of stake. Maybe we should be calling it something else, like nominated proof of stake. I think it's what Pocodoc calls our system. I don't know. But I think I like delegated proof of state. It seems to encapsulate the concept quite well. So in essence, do you have a cryptocurrency at the hub level? Yeah. So yeah, I mentioned the staking token. So the Cosmos hub is a must. So the cosmos hub is a
Starting point is 00:30:18 multi-asset system. Any number, you know, it's a permissionless system. Anyone can come in and declare, you know, this is my token. And we want to support that. That's what it's about. But there's one special token called the atom. And it is a staking token. It's not meant to be like a medium of exchange like Bitcoin. It's not meant to be gas, although initially it will be used as gas, like ether, but it's more conceptually close to like virtualized Bitcoin miners. And so the Bitcoin miners are the ones who are securing the Bitcoin network. And similarly, the atom holders in the Cosmos network are the ones who are determining consensus.
Starting point is 00:31:04 So if you have atom tokens, then you can participate in consensus, but you can also participate in governance. So you can make decisions about the future. of the Cosmo system and pass proposals to change the constitution or the purpose of this network or how it functions. And you can even vote to inflate the admin supply, rewarded this unlawed to develop a certain thing.
Starting point is 00:31:35 So you can do all kinds of things. When people use the Cosmos hub and any of its affiliated blockchains, we have to charge a transaction fee to prevent like spam. And the transaction fees will be divided among the atom stakers. So the atom holders are earning transaction fees by running validators and delegating, you know, and also participating in governance. Okay. I mean, I think we'll, I think we'll come back to the, to the atom token at the end, because there's a lot of questions there. So on the setup of the network, So initially you're going to have a fundraiser.
Starting point is 00:32:18 The company behind the Cosmos Network is Tendermint or is a new company? Yeah. So Tendermint is a separate company called All in Bits. It's a Delaware C-Corp. And that's a software company. What we're creating, we're creating a new independent entity called the Interchain Foundation for the, for managing, you know, the Cosmos Network. So it's a Swiss entity. It's a foundation. It's not a for-profit and it will be contracting All InBits and other companies to develop the system, the Cosmos
Starting point is 00:32:59 network. Okay. So that's a lot clearer then. So the foundation will be deploying these hubs sort of basically creating the network, correct? Yeah, yeah. It's a, it will be conducting the fundraiser to raise funds for the development of the Cosmos Hub, the decks, and the bridge peg zones, you know, all the software. And it will also coordinate the launch of the Genesis for the Cosmos Hub. But of course, this being a blockchain, like the stakers, the atom holders can really decide to do whatever they want. You know, it's a, it's, so it's not like the blockchain is being a. operated by the Interchain Foundation, certainly not by all in bits. It's the atom holders who are coordinating the blockchain. So the atom holders are running nodes that are essentially hubs. So that's
Starting point is 00:33:58 how you get the distributed nature is as an atom holder and a validator who chooses to validate transactions, I have to instantiate and make a hub node available to network. Is that correct? Yeah, that's right. After the fundraiser, we're going to decide on the atom distribution. And before the hub actually launches, we're going to have a process called the delegation game where everybody figures out who they want to delegate to and the top 100 validators, including the delegated stake will become the Genesis validators for the Cosmos Hub.
Starting point is 00:34:49 I guess what I'm getting to out here is that the foundation will decide through the government's model and we can talk more about the government's model later who the validators will be. So it's not like Bitcoin when anybody just can come in and say, okay, I want to invest as a miner.
Starting point is 00:35:06 I can connect to the network and start mining. the validators will be known and identified authorities chosen by the foundation? No, the foundation does not choose the validators. The atom holders who choose delegate to determine who the validators are. The foundation has no say on who the validators are. And also, going forward, the validator set, of the Cosmos Hub can change. You know, for example, if you want,
Starting point is 00:35:43 if a major stakeholder decides to, you know, like delegate their stake to some other validator, then, you know, the original validator might drop off. So the state will change. It's dynamic. And that is not done through governance. It's not done through governance on the chain. It's just an automated process that handles these,
Starting point is 00:36:04 this bonding and unbonding. I get the feeling maybe, maybe it's not. to think of like Bitcoin mining and then cloud mining so so you have like I guess like Bitcoin miners that that buy specialized equipment have have access to the right electricity etc and then I could also have cloud mining where I say I'm just going to ship some money to a miner who actually builds the equipment but when the minor earns money is going to give me a return right so So this sort of, to me it seems like what the atom token allows people is to become sort of a minor in the cosmos network.
Starting point is 00:36:49 So they can basically commit blocks. So either when I have a lot of atom tokens, I could become a validator myself and start committing blocks and earning transaction fees. But say, Sebastian, so I might be somebody who has atom tokens and I'm committing blocks and I'm earning fees. but Sebastian is another atom holder. He doesn't want to take the responsibility of committing blocks. Then he could just delegate his atom tokens to my power, and I can use that to validate on his behalf and then give him some returns of band. It's just like the cloud mining.
Starting point is 00:37:29 This delegation is like the cloud mining of the cosmos network. I don't really like cloud miners in general. It's like, you know, the cloud miners still own all the hardware and they can basically, like, you know, not honor their contract. Maybe it's more like a pool or a mining pool where you hold the miners as a delegator. So it's your mining hardware, but you can choose to connect it to a pool operator. And so it's as if the validators are like pool operators. And the atom stakeholders have their own atoms. It should be theirs.
Starting point is 00:38:16 And they can delegate their voting power to whoever they want. Okay. So you mentioned that in the beginning there would be about 100 validators. Is this something that would stay consistent? Do you feel that at some point there would need to be more validators for some reason? And can the PBFT proof of stake algorithm scale to more than a 100 validators? Yeah, that's a good question. So to start off with, tenorrent BFT can scale to much more than 100 validators.
Starting point is 00:38:55 It can scale to thousands, even today. the only the reason why you don't want a thousand like validators in a BFT consensus system is because with more validators
Starting point is 00:39:09 more signers the system becomes slower especially if you want to keep it accountable it necessarily gets slower no matter what BFT algorithm you use if you're okay with like
Starting point is 00:39:21 10 minute block times then you can have thousands of validators or if you wait a while in the future if we assume mean we have, say, exponentially more parallel compute power or exponentially faster internet speeds, then we can also support more validators as well.
Starting point is 00:39:42 So like in a hundred years, I don't know how many validators it would be. There might be hundreds of thousands or more. But today, you know, if we want to target like three to five second block times, so being able to commit a transaction to finality, within like five seconds. And we're targeting three seconds, but, you know, five to be safe. Then we need to limit the number of validators because that's, you know, based on the speed
Starting point is 00:40:11 and compute speeds available today. But you can imagine that there might be like a sister hub connected to the Cosmos hub that has, that decides to say, you know, we don't like 100 validators. We're going to have 10,000 validators and have the blocks be slow. That's fine. But I think it's okay.
Starting point is 00:40:32 I think practically having 100 validators starting with 100 is fine because if you compare it to the situation with like Bitcoin, I think Bitcoin is very secure. You know, it's got maybe like 10 major mining pools, but the power is not centralized to any single pool. And when it starts centralizing, I've seen the miners move away from the powerful pools and putting your mining power in other ones to keep it decentralized. The same kind of dynamics should play out, I think, in the cosmos system. That's what it's designed for. So there's that.
Starting point is 00:41:14 And also, even in the cosmos white paper, we've decided to start with 100, but over 10 years we're going to increase this number to 300. And then after that, we'll see if we need to grow it any further. Today's magic word is Adam, A-T-O-M. Head over to let's-stock bitcoin.com to sign in, enter the magic word, and claim you're a part of the listener award. So let's now talk about one of the big inventions that Cosmos is trying to bring, which is the notion of inter-blockchain communication.
Starting point is 00:41:58 So explain to us what inter-blockchain communication is and how it works. Inter-blockchain communication is a, it's a term that has general meaning, so I'm sure no matter how I define it, its meaning will change. But for Cosmos, what it means is the ability to send packets, packets of data from one chain to another chain and also the other way around. So it's very similar to TCP IP or UDP. We have in our white paper specification for a packet transfers that kind of that encapsulates both use cases. So if you want to send off a data packet and optimistically, that's fine. If you want to get acknowledgement, then it's similar to TCPIP. Okay, so how does this work?
Starting point is 00:42:53 The way that blockchains will be used in the future, Today, if you want to send a Bitcoin payment using your mobile phone, for example, that transaction, you're not going to wait for that transaction in Bitcoin because you would have to wait six hours, right? So what most people do is they trust a server or maybe a federation of servers, but usually a server, to accurately report the state of that transaction. but you're not taking advantage of the security of proof of work, Nakamoto consensus from your phone to validate a transaction that you just committed if you don't want to wait a whole hour for it. But with tendermint, BFT, that confirmation, that proof of commit can come to you very fast. So in the case of the Cosmos Hub, instead of 10,
Starting point is 00:43:53 to an hour, it only takes five seconds. And that proof is short. So it's not, you don't need a whole chain of hashes. You just need essentially more than two thirds of the signatures of the validators. So now, well, in the future, my phone will be able to make a transaction and get a short data packet that proves that this blockchain's latest block hash is XYZ
Starting point is 00:44:20 and the proof is a bunch of signatures, right? So that light client SPV is the essence of Cosmos IBC. So for a blockchain to send a packet to another blockchain, each blockchain is a like client of the other. So in essence, this blockchain is keeping track of the validator set and the latest block hash of this one. And every time you want to update that, so every time you want this blockchain to know about a more recent block hash.
Starting point is 00:44:53 committed by this blockchain, you need to commit the like-client SPV packet into this blockchain as a transaction. So that's how two blockchains can keep up to tabs with each other's latest consensus. And then from that it's just don't throw away to proving that the existence of packets. So, you know, Ethereum has this notion of a petition tree that lets you like prove, that some key value pair in D3 in blockchain is whatever. You can provide a Merkel proof that goes all the way up to the block cache.
Starting point is 00:45:34 And so if you have the block cache and you have to commit and you have the Merkel proof for the data packet, you want to prove, that's all you need. Same thing with Cosmos. We have our own implementation of a balancing Merkel tree based on an AVL tree. It's got a very short Merkel proof because it's a binary tree. And that's it.
Starting point is 00:45:59 So the first step is the destination chain learns about the latest block cache of the receiver chain, of the sender chain. And so that's the block hash with the proof, which is the signatures. And the second step is posting a packet with the Merkel proof, which goes all the way up to the block hash. And so that's how you send. to pack it from one chain to another. Let's take a short break to talk about Jacks.
Starting point is 00:46:30 Jacks is a multi-coin wallet created by the people at the Central. Now, in the past, if he had a whole bunch of cryptocurrencies, it was a pain to handle them. You either had to leave them on an exchange, which was insecure, or you had to have all these different wallets, which was a hassle. Fortunately, now with Jacks, those medieval days of darkness, misery, and suffering are over. Jack supports multiple cryptocurrencies and new ones are being added. But it's not just storing cryptocurrencies you can do with Jacks, but you can also exchange them directly from within side the wallet
Starting point is 00:47:05 thanks to their shape shift integration. And since there's only one seed, Jax makes it super easy to back up and sync to the other devices. Jax works with Windows, MacOS, Linux, Android, iOS, and has browser extensions for Firefox and Chrome. So go to jacks.io, that's j-a-a-double-x.io, to download the wallet and get started today. We'd like to thank Jax for the support of Epicenter. So in essence, what we are trying to do here is, so imagine me as like a group of validators running one chain,
Starting point is 00:47:38 which is one of the spokes. Imagine J as a group of validators that basically own the cost, the atom tokens and are running the hub, and Sebastian as a group of validators that is running another chain, right? Now, in my chain, we are maintaining the balances of, say, asset one, right? Like, for maybe, maybe lack of a better word, let's call them Apple shares. We are tracking the balances of Apple shares, and Sebastian is tracking the balances of Microsoft shares. right and what in essence we are trying to do is we're trying to move apple shares from my chain to Sebastian's chain that's assuming that both chains both zones can actually like is a multi-asset system
Starting point is 00:48:30 but even if it's not maybe the first example is moving those tokens into the cosmos hub so you can have an account in the cosmos hub and you can have an account on the cosmos hub and you can have an account on the Cosmos Hub, and then you can do a swap transaction on the Cosmos Hub, and so now you have ownership of the other system. Of course, we can, there's also the distributed exchange connected to it. We can use that, but you don't necessarily need that in order to have this swap happen. Okay, so what's going to happen is, first, mirror on your chain, you're going to commit a, in your application state, like basically in the patriciary, a packet saying, here's a coin packet, and I'm going to move 100 Apple shares to the Cosmos hub to this address.
Starting point is 00:49:25 That packet is going to be stored in the patrician of your blockchain in a special place, in a special path that is reserved for outbound packet transactions, outbound packets. So once you've committed that packet into your state, the Merkel root of that state will be applied to the block hash. And then that block hash eventually is going to get committed by the validators. So, okay, just to recap, what happened is first you committed a packet into your state and that affected the block hash of your blockchain. and then the validators of your blockchain committed it with signatures. Now, when it comes to the Cosmos Hub, this information gets committed as transactions to the Cosmos Hub in reverse. First, the Cosmos Hub is going to learn about the latest block cash of your chain,
Starting point is 00:50:29 and it's going to learn about that because as soon as you post the latest block cash along with the commit, which is the signatures. Now the Cosmos Hub is convinced that this block hash XYZ was committed in your chain. And then the second thing that is going to get posted to Cosmos Hub is the packet data. So that is the outbound packet to the Cosmos Hub along with the Merckle root to the aforementioned block hash. So these are two separate transactions that get committed to the Cosmos Hub. And now the Cosmos Hub says, okay, I've received 100 Apple shares from near chain. Okay, so the essence of the problem here is that the, that the Cosmos Hub wants to do further transactions on these Apple shares, right? So when we are moving Apple shares from my blockchain or our blockchain to the Cosmos Hub, the Cosmos Hub, the Cosmos Hub sort of need.
Starting point is 00:51:36 needs assurance that once this transfer is done, I'm not going to change some of the old accounts. Right. So maybe when I made the transfer, I needed to subtract, let's say 100 Apple shares from somebody's account and then transfer it to Cosmos Hub. Now the Cosmos Hub needs assurance that once Cosmos Hub like gets the 100 Apple shares, I'm not going to go back and mess with the old accounts in a way that. that I end up giving the Apple shares back to the holder on my chain. So how is Cosmos Hub being assured that I'm not going to fudge with my accounting once I have transferred to your chain? Yeah, that's a great question.
Starting point is 00:52:25 So the Apple shares that the Cosmos Hub received in this example, the Apple shares, the only reason why your chain was able to do that? Well, there's two cases. So the first case, I think, is a simple one. We're assuming that your chain issued these Apple shares. So the home of these shares is your chain, right? And if it's the case that your chain is double spending these Apple shares and, you know, saying it's going to go to the Cosmos Hub, but then double spending it and giving it to some other blockchain or some other hub, like people should, you know.
Starting point is 00:53:02 That's a failure of the issuing chain. and that's just a fundamental problem. So I think we should assume, we can assume that that won't happen. If it does happen, it can happen. It just means that the underlying shares are worthless anyways. What happens when my chain is attacked in a way that the double spend becomes possible? Okay, sure.
Starting point is 00:53:23 So the first case I was just talking about was a case where your chain is the issuing chain. If the issuing chain fails, then that's a problem that the problem that the issuing chain is to address. Let's say that you're not the issuing chain. And so actually the Apple shares were issued by an Apple chain, right? And the Apple chain would first transfer those Apple shares to the Cosmos Hub. And then through the Cosmos Hub, your chain can receive these Apple shares. So let's say there are a million Apple shares, but your chain received 100 through the Cosmos Hub. later you can choose to send those 100 shares back and if that happens then your total apple shares drops to zero you can't send 200 shares to the cosmos hub because you don't have 200 you can only
Starting point is 00:54:14 send 100 which is the amount you have because the cosmos hub makes sure that you know zones or side chains can only transfer as much as they have unless you're an issue so the cosmos hub then has accounts with all of the zones. Like the Cosmos Hub is operating clients for every zone so that they can, in fact, receive the funds. They're actually receiving funds on addresses of each network. I'm not sure what you mean by running clients. It's being a light client.
Starting point is 00:54:53 Okay, so there's a light client. So let's say that you have a hub. and this hub is creating is enabling improbability with five blockchains. That hub is running five light clients for those five blockchains. Yeah, yeah. It is. Yeah, that's, and that is basically the core logic of this blockchain. It is only there to act as a light client and keep track of the total number of coins on every single chain.
Starting point is 00:55:22 And whether this chain is an issuer of this token or not and how many tokens that each zone has. So going back to your example with like meter chain breaking, you know, because you can only send as many coins as you have when you're not the issuing chain, you know, it's possible that there's some failure of consensus or something and you, those 100 Apple shares gets sent to somebody else and, you know, maybe something else happens. But at least when it comes to the Apple shares issued by the Apple chain and, you know, brought on to the Cosmosystem, the failure will be isolated because no chain can spend more than they have. So I had a question regarding privacy. This is a topic that comes up a lot in Europe because the Europeans and sort of European regulation tends to favor privacy, I think, probably a lot more than U.S. regulation.
Starting point is 00:56:21 And so it's an issue that comes up a lot here with enterprise clients, you know, when when talking about blockchains is user privacy. And recently we've seen things like Zcash become prominent. And a lot of people are talking about zero knowledge proofs as a way to preserve privacy. In fact, there's an organization here in French called Knil, and they're sort of the regulatory body that, that makes recommendations on how companies should handle their best practices for user privacy. And they've awarded some prizes to researchers researching zero knowledge proof. So just as a side note, I think that there's a lot of promise in those types of technologies for preserving user privacy. Now, when it comes to the cosmos, how does, is this, so how would Cosmos then handle, say, a,
Starting point is 00:57:21 Zcash, zero knowledge proofs type chain interacting with a non, sort of like, you know, a standard, you know, non-transparent or non-privacy preserving blockchain. Let's say Bitcoin and Zcash were interacting and, you know, you're selling, you're transferring some Zcash to a Bitcoin account. How would privacy be preserved there if possible? Yeah. So as it is today, like the only, okay, without Cosmos, and let's assume that there's like Zcash, there's also Monaro, which is based on the Crypto node engine, and it's completely different.
Starting point is 00:58:04 It doesn't use zero knowledge proofs, but it's another way to preserve privacy. And there's like Bitcoin, Ethereum. The problem is all these tokens are separate. So if you want to take advantage of the privacy preserving features of Zcash or Monero, you have to first acquire these coins, right, to use them. The benefit of Cosmos is that you don't necessarily have to exchange tokens anymore. Let's say that in the Cosmos ecosystem, there's one particular token that gains a lot of traction. People are using it.
Starting point is 00:58:42 And maybe this is the pegged Bitcoin token, or maybe it's the pegged ether token, or maybe it's another new token that was born inside the Cosmos system. It doesn't matter. At some point, people might say, like, we like this, you know, but we also want the ability to plug in like a Zcash zone so that you can send your tokens into the zone and take advantage of the logic of the Zcash zone. So now that's possible because you can plug in any blockchain into the system. The question, so, you know, whether it be a crypto note, Monero, or Zcash, or any other system, As long as that source code is like open source, we can plug it in, you know, power the consensus by tendermint and just plug it right into the cosmos up. The question, so now, you know, then you can use the same token with different logic.
Starting point is 00:59:38 So this is an interoperability of logic across different chains using the same token. The question is, who is running, which validators are going to be running? like this new chain, right? So that's a question that's going to be fleshed out in the future. In the beginning, the Cosmos Hub validators, so the Adam token holders will be running the initial blockchains, right? So the Cosmos hub, the distributed exchange, and any chain that requires like the maximum global security will be run by the atom validators. But anyone can really create their own validator side, and choose to connect to the Cosmos Hub. So it could be that the Cosmos atom token holders
Starting point is 01:00:28 are running Zcash zone for a particular token. Maybe that Zcash zone is made generic so it can work with any token. Or maybe some other staking distribution comes around and plugs into the Cosmos system and offers Zcash as a service. It could be anything. So Jay, we've walked through how the Cosmos Hub works, its consensus, its native token, and how inter-blockchain communication would look like roughly.
Starting point is 01:01:02 I think there's one final question before we will wrap up and talk about the crowd sale. And that question is that suppose I am running a blockchain, right? I'm an enterprise. I'm a group of enterprises or I'm a group of enthusiasts. or gaming enthusiasts that are running a blockchain together. And we want to join the Cosmos Hub in, let's say, in five or six months. So what would the technical requirements from our side be? Do we need to change our consensus algorithm?
Starting point is 01:01:36 Or what do we need to comply with in order to become part of the Cosmos network? What do we gain and what do we lose when you do that? Well, there's a lot of ways to do it. So if you look at the example with Ethereum, because Ethereum is not using tendermint BFT, we need to have a bridge zone or a peg zone that says in between. And the peg zone will be running tendermint, but all the validators on that bridge zone would also be running like an Ethereum client, an Ethereum node.
Starting point is 01:02:14 So that's how it functions as an adapter. But when it comes to new blockchains created for, whether it be a private chain or a consortium chain or even a public one, if they're using tendermint directly, so if it's running, if the consensus algorithm is tendermint, that will probably be the easiest way to plug into the Cosmo system. So tendermint, you know, we've made it. pretty easy with the ABCI protocol, which is the interface between tendermint and your application. It's a network socket protocol. We've made it easiest to plug in tendermint into any existing stack. So if you already have logic written out for your blockchain, it should be easy to plug in tendermint.
Starting point is 01:03:08 But if that's not the case and you're building a system from scratch, then check out base coin. So it's a framework that we're developing for creating cryptocurrency applications, powered by tendermint. It's written in Go-Lang for now, and it's got this plug-in architecture that is very similar to HyperLedger's chain code. So chain code is the system where you can, you're basically given like an underlying key value store, and you just have to write the logic to read from the store and write to the store given a transaction. So it's a very simple interface.
Starting point is 01:03:51 Basecoin supports that. In fact, we just created an IBC demo written as a plugin on Basecoin. So check it out. GitHub.com slash tendermint slash Basecoin. And so we'll make sure that when you develop your cryptocurrency or application on Basecoin, it will be natively plugable into Declayment
Starting point is 01:04:13 Cosmos system. So if I understand correctly then within within Cosmos, there are some sort of preferred stacks that are natively compatible and others that would require some sort of connector such, you know, for instance, Bitcoin, I think you mentioned Ethereum as well. Within the, you know, the broader scale of things, do users need to have some, you know, have some, you know, the broader scale of things? do users need to have some sort of trust in these connecting nodes? So let's say if we have a native token interacting through a hub with Bitcoin and that's going through one of these connectors, what is the trust that I need to put into that connector?
Starting point is 01:05:04 Do I need to trust it? Is it fully trustless? or is there like a level of trust I need to have there? Yeah, great question. So that depends on each connector. So with Ethereum, because the Ethereum smart contracting system is so flexible, we can have the smart contract on Ethereum track the full 10-minute validator set. So all 100, 300 validators can be tracked and updated fairly easily on Ethereum.
Starting point is 01:05:35 But with Bitcoin, there's a complication for two reasons. One is that it only supports up to 15 signers per Bitcoin UTXO. And also the UTXO system itself makes it difficult to update the validator set for all Bitcoin UTXOs that have gone, that have spent a cent money to this, you know, this, you know, this peg to cosmos because you know whenever the the the cosmos validator set or the peg the bridge zone validator sets change whenever those signers change we we kind of need to migrate all of those UTXOs to to the new signing set and imagine having like you know a 10,000 UTXOs all sending money in to this bridge and the signers changes we're going to have to migrate all of them so there's complications and
Starting point is 01:06:35 and solutions to them that maybe we don't have time to get into. So it depends. The short answer is it depends on the capabilities of the respective blockchains. And when your blockchain has, I can say this, when your blockchain has a flexible system that can keep track of the Cosmos Hub's validator set. Maybe it has a virtual machine or it has a very flexible multi-sig system that allows for arbitrary voting power among designers.
Starting point is 01:07:13 Then it's pretty easy to have an adapter that reflects the whole validator set. And, you know, if the cosmos atom holders want, they can choose to. through governance, choose to run the adapter themselves. So we're going to do this for Ethereum because Ethereum is a strong, you know, a partner blockchain to connect to. But when another blockchain comes around and people want a cosmos atom stakeholders
Starting point is 01:07:53 to run the adapter zone, we can do that as long as it is accepted by governance. But when it comes to other chains, you know, Cosmos Hub being a permissionless system, anyone can create their own staking token set and try to offer a service as well. But it's going to be up to the users to decide whether they trust that set or not. So we've talked about Adam and Adam being the native currency that will allow this network to run and for economic incentives to be aligned between validators and users. So tell us then about this fundraiser that will be launching soon. Sure.
Starting point is 01:08:42 The fundraiser is to collect funds for the development of the software necessary for the initial cosmos ecosystem. So the funds collected during the fundraiser will be used to develop the cosmos. hub, the cosmos distributed exchange, the adapter zones, and so on. Now, we've got a lot of the software already created. So I've been working on tendermint. Ethan Buckman and I have been in our team at All InBits, our Delaware Sea Corp, has been developing tendermint.
Starting point is 01:09:19 And we've made a lot of progress in the past two years. We've also demonstrated a proof of concept of IBC, with a plugin that we've developed on top of the base coin framework. But there's still a lot of software left to develop. And so that's what the fundraiser is for. The contributors to the fundraiser will be receiving Adam staking tokens. And after the fundraiser is over, around Q3,
Starting point is 01:09:49 we will launch the Cosmos Hub with the 100 validators. And we'll be rolling out additional blockchain. as we developed them. Do you have like a certain minimum quantity that you want to raise or different plans depending on how much you will raise? Yes, we will have, so the milestone roadmap is supposed to be released a while ago, but we're still finalizing them. And so we will release them as soon as possible when we have finalized the plans. the plans. I've got a whiteboard full of details that need to be, you know, written out into a document. So we will be releasing those as soon as possible. So yes, for the fundraiser,
Starting point is 01:10:40 there will be milestones. And so depending on how much a raise, we will be doing more work. And there will be a cap as well. So when does the fundraiser start? So the date was initially set for a while. It's been a delayed. And we're very close now. We know all the steps that need to be taken in order to ensure the safety of our fundraiser. But we're not sure that all the like the auditing, security auditing, and even some of our ongoing partnership negotiations will be ready in time. So we're going to delay the fundraiser. It will happen no sooner than February 28th, but it will probably happen later.
Starting point is 01:11:33 What I can say is that if you are interested, then come to our Slack channel at least once a week. And we will be announcing the final fundraiser date at least two weeks in advance. So we will have to see how everything settles before. we are certain that it will be a safe fundraiser. And that's very important. Let's have a safe fundraiser and avoid any type of catastrophes like we've seen already in the space. Well, Jay, listen, we're, thank you so much for coming on. We're running very late.
Starting point is 01:12:10 I mean, I think we could have kept going for another hour, but for the sake of keeping this as concise as possible for our listeners. We'll end here. we'll definitely, I think most likely have you on again in the future. Maybe we can come back and revisit this in six to 12 months, you know, once the network is up and running and we have some real, you know, feedback on how things are going. And, you know, once we've learned about, you know, how an inter-blockchain network actually, you know, actually operates and what types of things are being built there.
Starting point is 01:12:45 So it'll be fascinating to see how this progresses, see how Cosmon. how the deployment goes, and we'll be happy to have you on again in the future. Yeah, it's been a pleasure, and I'm looking forward to the next episode. Thank you, and thank you for our listeners for tuning in. Epicenter is part of the Let's Stock Bitcoin Network. We release new episodes every Monday, and you can find lots of great shows about Bitcoin,
Starting point is 01:13:08 blockchains, cryptocurrencies, decentralized apps and technologies over at let's talk Bitcoin.com. If you like, you can also follow us on Twitter.com at www.com. in BTC and do follow us on YouTube as well. You can subscribe to the show there. You can also subscribe to the show for the audio version on SoundCloud, iTunes, or wherever you get your podcast. So thanks so much for tuning in, and we look forward to being back next week.

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