Epicenter - Learn about Crypto, Blockchain, Ethereum, Bitcoin and Distributed Technologies - Jae Kwon: Cosmos – The Internet of Blockchains
Episode Date: February 14, 2017One 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)
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.
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
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
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
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.
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
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.
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?
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.
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.
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.
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
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
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.
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
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.
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.
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.
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.
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,
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?
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.
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.
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.
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.
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
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?
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.
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.
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.
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.
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,
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
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.
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
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,
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,
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,
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.
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.
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
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
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
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.
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.
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.
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
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
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.
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.
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,
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,
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.
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.
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.
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.
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
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
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.
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
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.
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.
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.
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?
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,
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
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.
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.
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.
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.
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
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,
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
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.
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,
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.
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.
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.
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.
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
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.
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.
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.
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,
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.
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.
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.
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
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.
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?
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.
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.
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.
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
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?
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.
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
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.
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
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.
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.
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,
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,
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.
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.
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.
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,
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.
